«Re: Chicago Chord Pad» by grirgz
on 30 Jul'12 15:11 ina little fork of the Chicago chord pad. Edit: eliminate the click by replacing adsr by dadsr
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
(
SynthDef(\ChicagoPad2, { |out = 0, freq = 440, freq2=660, freq3=528, cutoff = 500, amp = 0.2, gate=1|
var snd;
var delay = 0.045+0.05;
freq = freq + SinOsc.kr(freq*1/2, 0, freq/2, 0);
snd = Saw.ar([freq, freq+1, freq-1, freq2, freq3] * [0.99,1])*0.1;
snd = snd + VarSaw.ar(0.99*[freq, freq+1, freq-1, freq2, freq3, freq2+1, freq3+1],0, LFTri.kr(7.13).range(0.00,0.1))*0.1;
snd = Mix(snd);
snd = FreeVerb.ar(snd, 0.51,10,0.1)*2;
snd = snd *8;
snd = RLPF.ar(snd, SinOsc.kr([0.1,4.2], 0, [1700,480], [4000,700,5000])/[20.51,20], SinOsc.ar(0.1,1.5*pi)+1.05)/3;
snd = Mix(snd);
snd = MoogFF.ar(snd, SinOsc.kr(0.08, 0.5, cutoff/10, cutoff), 3, 0);
snd = snd * EnvGen.ar(Env.dadsr(delay,0.4, 0.01,0.8,0.4), gate, doneAction:2);
//snd = snd * EnvGen.ar(Env.adsr(0.4, 0.01,0.8,0.4), gate, doneAction:2);
snd = [snd , AllpassC.ar(snd, delay, 0.05+SinOsc.ar(0.11).range(0,0.045), 0.3)];
snd = snd * amp;
Out.ar(out, snd);
}).add;
)
(
Pdef(\plop2, Pbind(
\instrument, \ChicagoPad2,
\degree, Pseq([0,4,0,3,1],inf),
\root, -4,
\freq2, Pkey(\freq)*(3/2) / 2,
\freq3, Pkey(\freq)*(5/6) / 2,
\legato, 1,
\cutoff, 4500,
\dur, 4,
\amp, 0.2
)).play;
);
ancestors
full graph
Beautiful! change the root and you change the pitch! and the changing are not noisy because of nature of the sound with a kind of reverberation, a kind of fading out...