-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathUEN reference.scd
59 lines (40 loc) · 953 Bytes
/
UEN reference.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
54
55
56
57
58
59
(
f = {
var w = Window.new.front;
var sl1 = Slider().orientation_(\horizontal);
var sl2 = Slider().orientation_(\horizontal);
var slEv1 = sl1.enIn;
var slEv2 = sl2.enIn;
w.layout_( VLayout( sl1, sl2 ) );
slEv1.debug("sl");
( freq: USpecArg( {|a,b| a.mod(b) } <%> slEv1 <*> slEv2) )
};
y = UChain( [\sine, [\freq, 400], UENModDef(f)], \stereoOutput);
y.gui;
y.start
)
y.asCompileString
(
f = {
var slEv1 = MIDIMKtl('nnkn0').signalFor(\sl_1_1).enIn;
var slEv2 = MIDIMKtl('nnkn0').signalFor(\sl_2_1).enIn;
( freq: USpecArg(slEv1) , amp: USpecArg(slEv2) )
};
x = UENModDef(f);
y = UChain( [\sine, [\freq, 400], x], \stereoOutput);
y.gui;
y.start
)
y.asCompileString
(
f = { |t|
var freq = t.collect{ |t| sin(2*pi*t*0.1) }.linlin(-1.0,1.0, 400, 800);
freq.debug("freq");
( freq: UArg(freq) )
};
x = UENTModDef(f, 0.1);
y = UChain( [\sine, [\freq, 400, \lag, 0.1], x], \stereoOutput);
y.gui;
y.start
)
y.asCompileString