lowpass2
Prev | Orchestra Opcodes and Operators | Next

## lowpass2

lowpass2 — A resonant lowpass filter.

## Description

Implementation of a resonant second-order lowpass filter.

## Syntax

    ares lowpass2 asig, kcf, kq [, iskip]

## Initialization

iskip -- initial disposition of internal data space. A zero value will clear the space; a non-zero value will allow previous information to remain. The default value is 0.

## Performance

asig -- input signal to be filtered

kcf -- cutoff or resonant frequency of the filter, measured in Hz

kq -- Q of the filter, defined, for bandpass filters, as bandwidth/cutoff. kq should be between 1 and 500

lowpass2 is a second order IIR lowpass filter, with k-rate controls for cutoff frequency (kcf) and Q (kq). As kq is increased, a resonant peak forms around the cutoff frequency, transforming the lowpass filter response into a response that is similar to a bandpass filter, but with more low frequency energy. This corresponds to an increase in the magnitude and "sharpness" of the resonant peak. For high values of kq, a scaling function such as balance may be required. In practice, this allows for the simulation of the voltage-controlled filters of analog synthesizers, or for the creation of a pitch of constant amplitude while filtering white noise.

## Examples

Here is an example of the lowpass2 opcode. It uses the file lowpass2.csd.

Example 538. Example of the lowpass2 opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    ; Audio out   Audio in
    -odac             ;;;RT audio out
    ; For Non-realtime ouput leave only the line below:
    ;-o lpf18.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    ; by Sean Costello

    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs  = 1

    instr 1

    idur    = p3
    ifreq   = p4
    iamp    = p5
    iharms  = (sr*.4) / ifreq
    asig    gbuzz .3, ifreq, iharms, 1, .9, 1           ; Sawtooth-like waveform
    kfreq   linseg 1, idur * 0.5, 5000, idur * 0.5, 1   ; Envelope to control filter cutoff
    afilt   lowpass2 asig,kfreq, 30
    kenv    linseg 0, .1, iamp, idur -.2, iamp, .1, 0   ; Simple amplitude envelope
    outs    afilt * kenv, afilt * kenv

    endin

    </CsInstruments>
    <CsScore>
    f1 0 8192 9 1 1 .25
    ;       frq     amp
    i1 0 5  100     .15
    i1 5 5  200     .12
    e
    </CsScore>
    </CsoundSynthesizer>

## Credits

Author: Sean Costello
Seattle, Washington
August 1999

New in Csound version 4.0

Prev | Up | Next
loscilx | Home | lowres