+++ /dev/null
-declare name "bandfilter";
-declare version "1.0";
-declare author "Grame";
-declare license "BSD";
-declare copyright "(c)GRAME 2006";
-
-import("math.lib");
-import("music.lib");
-
-//---------------------second order filter--------------------------
-// filter(Q,F,G)
-// Q : quality factor [1..100]
-// F : frequency (Hz)
-// G : gain [0..1]
-//------------------------------------------------------------------
-
-filter(Q,F,G) = TF2( (1 + K/Q + K*K) / D,
- 2 * (K*K - 1) / D,
- (1 - K/Q + K*K) / D,
- 2 * (K*K - 1) / D,
- (1 - V*K/Q + K*K) / D
- )
- with {
- V = db2linear(G);
- K = tan(PI*F/SR);
- D = 1 + V*K/Q + K*K;
- };
-
-
-
-//--------------- Band Filter with user interface ------------------
-// bandfilter(F)
-// F : default frequency (Hz)
-//
-//------------------------------------------------------------------
-
-bandfilter(F) = filter( nentry("Q factor",50,0.1,100,0.1),
- nentry("freq (Hz)", F, 20, 20000, 1),
- 0 - vslider("gain (dB)", 0, -50, 50, 0.1)
- );
-
-
-
-//------------------------- Process --------------------------------
-
-process = vgroup("Bandfilter", bandfilter(1000));
-