47 lines
1.2 KiB
Text
47 lines
1.2 KiB
Text
|
class:: MoogFF
|
||
|
summary:: Moog VCF implementation, designed by Federico Fontana
|
||
|
categories:: UGens>Filters
|
||
|
related:: Classes/RLPF, Classes/LPF
|
||
|
|
||
|
description::
|
||
|
A digital implementation of the Moog VCF (filter). footnote::
|
||
|
The design of this filter is described in the conference paper Fontana, F. (2007) emphasis::Preserving the Digital Structure of the Moog VCF::. In Proc. ICMC07, Copenhagen, 25-31 August 2007.
|
||
|
::
|
||
|
footnote::
|
||
|
Original Java code created by F. Fontana - August 2007 - federico.fontana@univr.it
|
||
|
Ported to C++ for SuperCollider by Dan Stowell
|
||
|
::
|
||
|
|
||
|
classmethods::
|
||
|
method:: ar, kr
|
||
|
|
||
|
argument:: in
|
||
|
the input signal.
|
||
|
argument:: freq
|
||
|
the cutoff frequency.
|
||
|
argument:: gain
|
||
|
the filter resonance gain, between zero and 4.
|
||
|
argument:: reset
|
||
|
when greater than zero, this will reset the state of the digital filters at the beginning of a computational block.
|
||
|
argument:: mul
|
||
|
argument:: add
|
||
|
|
||
|
examples::
|
||
|
code::
|
||
|
s.boot;
|
||
|
// Play it with the mouse...
|
||
|
x = { MoogFF.ar(WhiteNoise.ar(01.1), MouseY.kr(100, 10000, 1), MouseX.kr(0, 4)) }.play(s);
|
||
|
x.free;
|
||
|
|
||
|
// Mmmm, throbby
|
||
|
(
|
||
|
x = {
|
||
|
MoogFF.ar(
|
||
|
Pulse.ar([40,121], [0.3,0.7]),
|
||
|
SinOsc.kr(LFNoise0.kr(0.42).range(0.001, 2.2)).range(30, 4200),
|
||
|
0.83 * 4)}.play(s);
|
||
|
)
|
||
|
x.free;
|
||
|
::
|
||
|
|