var input, fBLoopIn, fBLoopOut, processing, speed;
speed = LFNoise0.kr(0.5, 2, 2.05);
// input is our sound source, a little noise -- note the lowered amplitude // of 0.15 input = Crackle.ar(1.5,0.15); // fBLoopIn is our feedback loop insertion point. fBLoopIn = LocalIn.ar(1); // in processing, we mix the input with the feedback loop // the delay time of the DelayN UGen is not controlled by the // 'speed' variable. The gain is now fixed at 1.1. processing = input + LeakDC.ar((DelayN.ar(fBLoopIn, 3.5, speed, 1.1)));
// use a resonant low-pass filter that moves at various rates
// determined by the 'speed' variable with frequencies between 400 - 1200 processing = RLPF.ar(processing, LFNoise0.kr(speed, 400, 800), 0.5);
// square off the wave form (distortion)
processing = processing.clip;
// fBLoopOut is our feedback loop output point
fBLoopOut = LocalOut.ar(processing);
// Out routes the audio to the speakers. the square brackets send the output to both left // and right channels. Out.ar([0,1], processing);