-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathbnm.scd
53 lines (53 loc) · 1.75 KB
/
bnm.scd
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
(
Pdef(0,
Pseed(3,
Pbind(*[
type: \cln,
snd: \blp,
pan: Pmeanrand(0.0, 1.0),
dur: Pseg(Pdup(2, Pexprand(0.08, 1.2)), Plprand(15.0, 30.0), \wel, inf),
atk: Pkey(\dur) * 7,
hld: Pkey(\dur) * Pexprand(1.0, 19.0),
rel: Pkey(\dur) * 8,
crv: 8,
crt: -8,
sustain: Pkey(\atk) + Pkey(\hld) + Pkey(\rel),
nmh: Plprand(0, 7),
scale: Scale.mixolydian(\sept1),
degree: Pdup(Plprand(1, 39), Plprand(0, 7)),
octave: Pdup(Plprand(1, 39), Plprand(3, 7)),
mtranspose: Pdup(Plprand(1, 39), Pmeanrand(-4, 3).asInteger),
calcFreq: Pfunc{|ev|ev.use{ev.freq.asStringPrec(48).postln}},
frq: Pfunc{|ev|ev.use{ev.freq}},
amp: Pseg(Pdup(2, Phprand(0.4, 0.7)), Plprand(15.0, 30.0), \wel, inf)
/ Pkey(\frq).linlin(87, 941 * 2, 1, 1.5),
lpf: Phprand(20, 20000),
lhf: Plprand(0.0, 1.0),
hpf: 80,
tri: Phprand(0.0, 1.0),
jpr: 2,
jts: 1,
jpd: 0,
jps: 1,
jed: 1,
jpl: 0.5,
jpm: 0.25,
jph: 0.125,
jlc: 0,
jhc: 0,
psd: Pwhite(0.0, 1.0),
psa: Pwhite(0.0, 1.0),
psi: Pwhite(0.0, 1.0),
pso: Pwhite(0.0, 1.0),
psb: Pwhite(0.0, 1.0),
rma: 1,
rmf: Pexprand(0.001, 1.0),
rdf: Pexprand(0.01, 2.0),
rdt: Pkey(\sustain) / Phprand(1.0, 2.0),
bnd: Pseq([0, 0, 0, 0, Pmeanrand(-0.0125, 0.01251, 1)], inf),
bnt: Pkey(\sustain) / Pwhite(2.0, 4.0),
tnh: 1,
])
)
).play
)