«Re: Infinite rhythmic marimba clusters» by grirgz

on 31 Aug'13 18:22 in rhythmicrelaxedcode forkendlessclustersreverbspatializationmellowhypnoticmarimba

fairies 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;
raw 3418 chars (focus & ctrl+a+c to copy)
reception
comments