Pan, Lo Pass

Download

     Disclaimer...

29   desc:Pan: Lo Pass, v1.1.0
30  
31   slider1:0<-120,120,0.1>Pan Angle [degrees]
32  
33   @init
34   x=0;
35   x1=0;
36   x2=0;
37   y=0;
38   y1=0;
39   y2=0;
40   d=1.414;
41   who = 0;
42  
43   @slider
44   who = slider1;
45   f = slider1 * 60/120; // 0 < f < 60
46   f > 0 ? f = f * -1; // -60 < f < 0
47   dd = pow(2, f/8.0)*16000; // 16,000 -> 500 Hz
48   w = 2.0 * $pi * dd / srate;
49   mBeta = 0.5 * (( 1.0 - d / 2.0 * sin(w) ) / ( 1.0 + d / 2.0 * sin(w) ));
50   mGamma = ( 0.5 + mBeta ) * cos(w);
51   mAlpha = ( 0.5 + mBeta - mGamma ) / 4.0;
52  
53   @sample
54   who == 0 ? (
55   spl0=spl0;
56   spl1=spl1;
57   ) : (
58   who < 0 ? (
59   x = spl1;
60   y = 2.0 * ( mAlpha * ( x + 2.0 * x1 + x2 ) + mGamma * y1 - mBeta * y2 );
61   x2 = x1;
62   x1 = x;
63   y2 = y1;
64   y1 = y;
65   spl1 = y;
66   spl0 = spl0;
67  
68   ) : (
69   x = spl0;
70   y = 2.0 * ( mAlpha * ( x + 2.0 * x1 + x2 ) + mGamma * y1 - mBeta * y2 );
71   x2 = x1;
72   x1 = x;
73   y2 = y1;
74   y1 = y;
75   spl0 = y;
76   spl1 = spl1;
77   );
78   );
79  

Download