// title: Dub Echo // author: Bjorn Westergard // description: // A pretty simple Dub echo, approximating something like the [Space Echo](https://secure.wikimedia.org/wikipedia/en/wiki/Space_Echo) made popular by King Tubby, Scientist, Lee Perry, et al. Built around the Feedback Quark, though I'm not really leaning on the functionality it provides over a simple LocalOut-based feedback path. // code: SynthDef(\dubecho,{|length = 1, fb = 0.8, sep = 0.012| var input = In.ar(0, 2); var output = input + Fb({ arg feedback; // this will contain the delayed output from the Fb unit var left,right; var magic = LeakDC.ar(feedback*fb + input); magic = HPF.ar(magic, 400); // filter's on the feedback path magic = LPF.ar(magic, 5000); magic = magic.tanh; // and some more non-linearity in the form of distortion #left, right = magic; // let's have named variables for the left and right channels magic = [DelayC.ar(left, 1, LFNoise2.ar(12).range(0,sep)), DelayC.ar(right, 1, LFNoise2.ar(12).range(sep,0))]; // In addition to the main delay handled by the feedback quark, this adds separately modulated delays to the left and right channels, which with a small "sep" value creates a bit of spatialization },length); ReplaceOut.ar(0, output); }).store; // Example Usage ~echo = Synth(\dubecho, [\length, TempoClock.default.tempo*(3/8), \fb, 0.7, \sep, 0.0012], addAction: \addToTail); ~echo.free; ~echo.set(\gate, 0);