/
#recordScratcher.sc#
39 lines (31 loc) · 1.18 KB
/
#recordScratcher.sc#
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
// =====================================================================
// SuperCollider Workspace
// =====================================================================
// LMFAP: Little Man From Another Place (the dwarf in the Red Room)
// (thor magnusson) (2006)
// better use headphones !!!
(
s = Server.local;
b = Buffer.alloc(s, 44100 * 6.0, 2);
)
(
SynthDef(\LMFAP, {|combdecay=1, allpassdecay=0.5, wet=0.1, bufnum, rate=1, end=264600|
var in, signal;
in = AudioIn.ar([1,2]);
z = DelayN.ar(in, 0.1, 0.51);
y = Mix.ar(Array.fill(3,{ CombL.ar(z, 0.05, rrand(0.03, 0.05), combdecay) }));
6.do({ y = AllpassN.ar(y, 0.030, rrand(0.01, 0.03), allpassdecay) });
BufWr.ar(in+(y*wet), bufnum, Phasor.ar(0, 1, 0, end));
signal = BufRd.ar(2, bufnum, Phasor.ar(0, BufRateScale.kr(0)*rate, 0, end));
y = Mix.ar(Array.fill(7,{ CombL.ar(signal, 0.05, rrand(0.03, 0.05), combdecay) }));
6.do({ y = AllpassN.ar(y, 0.050, rrand(0.03, 0.05), allpassdecay) });
Out.ar(0, signal+(y*wet));
}).load(s);
)
// wait a bit
c = Synth(\LMFAP, [\bufnum, b.bufnum, \rate, -1]);
c.set(\combdecay, 3)
c.set(\allpassdecay, 0.4)
c.set(\rate, -0.8)
c.set(\wet, 0.4) // more reverb
c.set(\end, 44100*3) // 3 sec loop