«Re: Infinite rhythmic marimba clusters» by grirgz
on 01 Sep'13 00:22 infairies and ghosts
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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
(
~name = \ghosts;
SynthDef(~name, {
arg freq=440, detune=3.0, atk=6, sus=4, rel=6, curve1=1, curve2=(-1),
minCf=30, maxCf=6000, minRq=0.005, maxRq=0.04,
minBpfHz=0.02, maxBpfHz=0.25,
lowShelf=220, rs=0.85, db=6,
gate=1, amp=1, spread=1.0, out=0;
var sig, env;
env = EnvGen.kr(Env([0,1,1,0],[atk,sus,rel],[curve1,0,curve2]), gate, levelScale:amp, doneAction:2);
sig = Saw.ar(
freq +
LFNoise1.kr({LFNoise1.kr(0.5).range(0.15,0.4)}!8).range(detune.neg,detune));
sig = BPF.ar(
sig,
LFNoise1.kr({LFNoise1.kr(0.13).exprange(minBpfHz,maxBpfHz)}!8).exprange(minCf, maxCf),
LFNoise1.kr({LFNoise1.kr(0.08).exprange(0.08,0.35)}!8).range(minRq, maxRq)
);
sig = BLowShelf.ar(sig, lowShelf, rs, db);
sig = SplayAz.ar(4, sig, spread);
sig = sig * env * 2;
Out.ar(out, sig);
}).add;
);
(
Pdef(~name, Pbind(
\instrument, ~name,
\freq, Pseq([8,4,2,4],inf) * Pwhite(0.9,1.3),
\detune, 7,
\minBpfHz, 0.01,
\maxBpfHz, Pwhite(0.1,76),
\minRq, 0.003,
\maxRq, exprand(0.008,0.8),
\minCf, Pseq([70,20,30,80,50,60,98],inf).midicps * Pwhite(0.9,1.3),
\maxCf, Pkey(\minCf) * Pwhite(1.3,4),
\amp, exprand(0.20,0.25) *2,
\atk, exprand(0.7,8),
\rel, 1.5,
\sus, rrand(2.6,3.0),
\spread, exprand(1.5,8.0),
\dur, Pseq([2,1],inf)*Pwhite(0.9,1.3),
)).play
);
)
(
Pdef(~name, Pbind(
\instrument, ~name,
\freq, Pseq([8,4,2,4,1],inf) * Pwhite(0.9,1.3),
\detune, 7,
\minBpfHz, 0.01,
\maxBpfHz, 1.expexp(1.0,16.0,0.1,76.0),
\minRq, 0.003,
\maxRq, Pexprand(0.008,0.128).stutter(3),
\minCf, Pseq([70,20,30,80,50,60,98],inf).midicps * Pwhite(0.9,1.3),
//\maxCf, Pkey(\minCf) * Pwhite(1.3,4),
\maxCf, 51.midicps * [1,1.1,1.5].wchoose([0.87,0.1,0.03]),
\amp, exprand(0.20,0.25) *2,
\atk, exprand(0.7,8),
\rel, 1.5,
\sus, rrand(0.6,1.0),
\spread, exprand(1.5,8.0),
\dur, Pseq([2,1]/2,inf)*Pwhite(0.8,1.3),
)).play
);
(
Pdef(~name, Pbind(
\instrument, ~name,
\freq, Pseq([8,4,2,4,1],inf) * Pwhite(0.2,3.3).stutter(2),
\detune, 0,
\minBpfHz, 0.1,
\maxBpfHz, Pseq([1,2,3,2],inf).expexp(1.0,16.0,0.1,076.0),
\minRq, 0.003,
\maxRq, Pseq([
Pexprand(0.008,0.028,4).stutter(2),
Pexprand(0.008,0.228,1).stutter(1),
],inf),
//\minCf, Pseq([65,75,50,55,58,60,78],inf).midicps * Pwhite(0.9,3.3),
\minCf, Pseq([90,94,80,150],inf) * Pexprand(1.0,4.3).stutter(3),
\maxCf, Pkey(\minCf) * Pwhite(1.3,1.5),
\amp, Pexprand(0.20,0.21) *2,
\atk, Pexprand(0.007,8),
\rel, Pwhite(0.5,3.5),
\sus, Pwhite(0.2,4.0),
\spread, Pexprand(1.5,8.0),
\dur, Pseq([2,1],inf)*Pwhite(0.8,2.3),
)).play
);
(
Pdef(~name, Pbind(
\instrument, ~name,
\freq, Pseq([1,2,4,2,1],inf) * Pwhite(1,4)/4,
\detune, 0,
\minBpfHz, 0.1,
\maxBpfHz, Pseq([7,2,13,2],inf).expexp(1.0,16.0,0.1,076.0),
\minRq, 0.003,
\maxRq, Pseq([
Pexprand(0.008,0.028,4).stutter(2),
Pexprand(0.008,0.228,1).stutter(1),
],inf),
//\minCf, Pseq([65,75,50,55,58,60,78],inf).midicps * Pwhite(0.9,3.3),
\minCf, Pseq([90,94,80,150],inf) * Pexprand(1.0,4.3).stutter(3),
\minCf, Pseq([490,94,80,150],inf) * Pexprand(1.0,1.3),
\maxCf, Pkey(\minCf) * Pwhite(1.3,1.5),
\amp, Pexprand(0.20,0.21) *2,
\atk, Pexprand(0.007,8),
\rel, Pwhite(0.5,3.5),
\sus, Pwhite(0.2,4.0),
\spread, Pexprand(1.5,8.0),
\dur, Pseq([2,1],inf)*Pwhite(0.8,2.3),
\dur, Pseq([1],inf),
)).play
);
Pdef(~name).stop;
ancestors
full graph
reception
comments