«randochestra» by vividsnow
on 17 May'12 02:55 inexploring of morphing cycled envelopes (i.e. kind of grains) as a sound source; give it some tries - there are possibly interesting ones
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
(
Ndef(\ro_v19, {
var freq = 40.rrand(90).debug('base freq');
var seed = thisThread.randSeed = 1000000000.rand.debug('seed');
var gen = [LFNoise2,LFNoise0,SinOsc,LFPulse,LFSaw];
var sig = Splay.ar({
var i = 4.exprand(40).asInteger;
Median.ar(
3.exprand(18),
EnvGen.ar(
Env( // wave form
[0] ++ Array.fill(i-1, {
gen.choose.kr(
0.25.coin.if({ gen.choose.kr(0.01.exprand(0.1)).exprange(0.1,1) }, { 0.1.exprand(1) }),
mul: 0.25.coin.if({ gen.choose.kr(0.05.exprand(10)).range(0.1,1) }, { 0.1.rrand(1) })
)
}) ++ [0],
Array.rand(i-1, 0.1,1.0).normalizeSum,
[[-5.0.rrand(5),\sin].choose] ++ Array.fill(i-2, {
[\sin ! 1.rrand(6), -5.0.rrand(5) ! 1.rrand(4)].flat.choose
}) ++ [[-5.0.rrand(5),\sin].choose]
).circle,
timeScale: Duty.kr( // freq
Drand([4,8,16,24], inf), 0,
Dwrand([1,2,4,8,16,32,64]*freq, ((14..7) ** 1.rrand(3)).normalizeSum, inf) // octave
* 0.75.coin.if({ Duty.kr( // note
[Dxrand, Drand].choose.new([0.125,0.25,0.5,1,2,4,6,8,12], inf), 0,
Dshuf({ (0..11).choose.midiratio } ! 1.exprand(8), inf)
) }, { (0..11).choose.midiratio })
).reciprocal
)
) * EnvGen.kr( // rhythm
Env.perc(
0.01.exprand(0.4) * 0.25.coin.if({ Duty.kr( // atk
Drand([0.5,1,2,4,8,12,16], inf), 0,
Dshuf({ [1,2,3,4].choose } ! 1.exprand(8), inf)
) }, { 1 }),
0.1.exprand(4) * 0.75.coin.if({ Duty.kr( // release
Drand([0.5,1,2,4,8,12,16], inf), 0,
Dshuf({ [1,2,4,8,16].choose.reciprocal } ! 1.exprand(8), inf)
) }, { 1 }),
LFNoise2.kr(0.1.exprand(10)).range(0.05,1), // appearance
LFNoise2.kr(0.1.exprand(10)).range(-4,4),
).circle
);
} ! 3.rrand(9).debug('source'));
BHiShelf.ar(
GVerb.ar(
Rotate2.ar(sig[0], sig[1], Duty.kr(Drand([2,4,8],inf), 0, Drand([-1,1,0],inf)) * LFSaw.kr(0.1.exprand(1))),
40.rrand(150).debug('room')
),
LFNoise2.kr(0.1.exprand(0.5)).range(4000,6500),
LFNoise2.kr(0.1.exprand(1)).range(1,3),
LFNoise2.kr(0.1.exprand(1)).range(-24,-16)
);
}).play
)
reception
looks interesting but i get no sound output from this one. i'm on osx 10.6.8 with sc 3.5.2. no errors - just deafening silence.
it works on 3.6-dev branch, I checked it on 3.5.2 - got silence too.. don't know why :\
just a guess... your patch makes heavy use of envelopes. when did you write it? before or after julian's 3.6 envelope reform? that happened around 9-12may.
yes, i did it after 12 may - it seems, that very good reform is coming to supercollider )