SynthDef(\padoo, { |gate=0| var sig, env,freq; freq = \freq.kr(120); // three notes. root note, 7th, octave. vibrato sig = Saw.ar( [freq, (freq.cpsmidi + 7).midicps, (freq.cpsmidi + 12).midicps] + SinOsc.ar(\vibrato.kr(6)).linlin(-1, 0.5, 0, Rand(3, 5)) ); // sig = Saw.ar(freq + SinOsc.ar(\vibrato.kr(6)).linlin(-1, 1, 0, Rand(3, 5))); // detuning through slight pitch shifting sig = 6.collect({|item| PitchShift.ar(sig, 0.05, Rand(0.98, 1.02))}).sum / 6; sig = Splay.ar(sig, 0.2); sig = 8.collect({ var mod = LFTri.kr(ExpRand(0.2, 0.3), Rand(0.0, 2.0)).range(0.001, 0.02); DelayL.ar(sig, 0.02, mod); }); sig = Splay.ar(sig, 0.2); // env = Env.perc(\attack.kr(1), \decay.kr(3)).ar(Done.freeSelf); env = EnvGen.ar(Env.asr(\attack.kr(1), \decay.kr(3), \release.kr(1)), gate, doneAction: Done.freeSelf); sig = sig * env; sig = RLPF.ar(sig, Env([500, 700, \ff.kr(1500)], [0.5, 1, 0.5]).ar, 0.9); sig = sig * \amp.kr(0.2); sig = Limiter.ar(sig); Out.ar(\out.kr(0), sig); } ).add;