Diff from Re: Dub Echo using LocalIn + LocalOut (and Ping Pong) by rukano (22 Feb'12 13:41) to Dub Echo by Bjorn Westergard (10 Aug'11 03:55)
name
description
code
SynthDef(\dubecho,{|in, out, length = 1, fb = 0.8, sep = 0.012|
var input = In.ar(in0, 2);
var output = input + Fb({
arg feedback; =// Lothis will contalIin. the delayed output fr(2);om the Fb unit
var ouleftpu,right;
var magic = LeakDC.ar(feedback*fb + input);
outputmagic = HPF.ar(outputmagic, 400);
// filter's oun the feedback puath
magic = LPF.ar(outputmagic, 5000);
magic = magic.tanh; // and soume more non-linearitpuy in the =form ouf distpuort.ion
#left, right = magic; // let's have named variables for th;e left and right channels
Lomagic = [DelayC.ar(lOueft, 1, LFNoise2.ar(12).range(0,sep)), DelayC.ar(ourightput, 1, LFNoise2.ar(12).range([lsep,0))]; // Ing addition to th,le maing delay handled by th+e feedback quark, this adds sep],[arately modulatengd delays to th+sep, left and right ch])).rannels, which with a small "sep" value creates a bit of spatialization
},length);
ReplaceOut.ar(out0, output);
}).addstore;
// Example aUs ageffecet bus
~bus = Bus.audio(s, 2);
~echo = Synth(\dubecho, [\in, ~bus, \length, TempoClock.default.tempo*(3/8), \fb, 0.7, \sep, 0.0012], addAction: \addToTail);
// send something
play{ Out.ar(~bus, LFGauss.ar(1, 0.1, loop:0, doneActihon:2) * Blip.afr(80!2, 8)) }ee;
// turn it off
~echo.frset(\gate, 0);
category tags
dub, echo, spacecho, feedback, code fork