«distobass» by grirgz
on 23 Oct'14 21:41 in1 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
SynthDef(\bass, { arg out=0, amp=0.1, gate=1, pan=0, spread=0.8, freq=200, doneAction=2;
var sig, sig1, sig2, sig3;
freq = SinOsc.ar(freq*\fmfreq.kr(1).lag(0.3)) * \fmrange.kr(0.5).lag(0.3) * LFNoise1.kr(1/7).range(0.9,1.1) + 1 * freq;
sig = SinOsc.ar(freq.lag(0.1) * [1,8,2,4,1.002]);
sig1 = LFPulse.ar(freq * [1,4,1.001,2 * LFNoise1.kr(1/10).range(0.999,1.001),1/2], mul:1.00);
sig = sig + sig1;
sig = sig.fold2(SinOsc.kr(1/13).range(0.9,1));
sig = sig.wrap2(SinOsc.kr(1/14).range(0.9,1));
sig = RLPF.ar(sig, \lpf.kr(500).lag(0.4) * LFNoise1.kr(1/9).range(0.9,1.1), \rq.kr(0.5));
sig = HPF.ar(sig, \hpf.kr(40));
sig = sig * EnvGen.ar(\iadsr.kr(Env.adsr(0.01,0.1,0.8,0.1)),\igate.kr(1),doneAction:0);
sig = sig * EnvGen.ar(\adsr.kr(Env.adsr(0.01,0.1,0.8,0.1)),gate,doneAction:doneAction);
sig = Splay.ar(sig, spread, amp, pan);
Out.ar(out, sig);
}).add;
(
Pdef(\bass, Pmono(\bass,
\freq, 70 * Pseq([0,1].midiratio,inf).stutter(16) * Pseq([1,2],inf).stutter(64),
\fmrange, Pseq([0.5,1,1.5],inf),
\fmfreq, Pseq([0.5,1,2,4],inf),
\dur, 1/4,
\igate, Pseq([
1,0,0,0,
0,0,0,0,
],inf),
\iadsr, Pseq([
[ Env.adsr(0.1,0.1,0.8,4.1) ],
],inf),
\lpf, Pkey(\freq) * Pseq([
2,1,4,8,
2,1,4,8,
2,1,4,8,
4,2,2,4,
],inf).stutter(8),
\hpf, Pkey(\freq) / 2,
\amp, Pkey(\amp) * 2,
\isRest, false,
));
Pdef(\bass).play;
)
reception
comments