moogvcf
Prev | Orchestra Opcodes and Operators | Next

## moogvcf

moogvcf — A digital emulation of the Moog diode ladder filter configuration.

## Description

A digital emulation of the Moog diode ladder filter configuration.

## Syntax

    ares moogvcf asig, xfco, xres [,
        iscale, iskip]

## Initialization

iscale (optional, default=1) -- internal scaling factor. Use if asig is not in the range +/-1. Input is first divided by iscale, then output is mutliplied iscale. Default value is 1. (New in Csound version 3.50) iskip (optional, default=0) -- if non zero skip the initialisation of the filter. (New in Csound version 4.23f13 and 5.0)

## Performance

asig -- input signal

xfco -- filter cut-off frequency in Hz. As of version 3.50, may i-,k-, or a-rate.

xres -- amount of resonance. Self-oscillation occurs when xres is approximately one. As of version 3.50, may a-rate, i-rate, or k-rate.

moogvcf is a digital emulation of the Moog diode ladder filter configuration. This emulation is based loosely on the paper “Analyzing the Moog VCF with Considerations for Digital Implemnetation” by Stilson and Smith (CCRMA). This version was originally coded in Csound by Josep Comajuncosas. Some modifications and conversion to C were done by Hans Mikelson

Note: This filter requires that the input signal be normalized to one.

## Examples

Here is an example of the moogvcf opcode. It uses the files moogvcf.orc and moogvcf.sco.

Example 232. Example of the moogvcf opcode.

    /* moogvcf.orc */
    ; Initialize the global variables.
    sr = 44100
    kr = 4410
    ksmps = 10
    nchnls = 1

    ; Instrument #1.
    instr 1
      ; Use a nice sawtooth waveform.
      asig vco 32000, 220, 1

      ; Vary the filter-cutoff frequency from .2 to 2 KHz.
      kfco line 200, p3, 2000

      ; Set the resonance amount to one.
      krez init 1

      ; Scale the amplitude to 32768.
      iscale = 32768

      a1 moogvcf asig, kfco, krez, iscale

      out a1
    endin
    /* moogvcf.orc */

    /* moogvcf.sco */
    ; Table #1, a sine wave for the vco opcode.
    f 1 0 16384 10 1

    ; Play Instrument #1 for three seconds.
    i 1 0 3
    e
    /* moogvcf.sco */

## See Also

biquad, rezzy

## Credits

Author: Hans Mikelson
October 1998

Example written by Kevin Conder.

New in Csound version 3.49

Prev | Up | Next
moogladder | Home | moscil