-
Notifications
You must be signed in to change notification settings - Fork 0
/
d-sampdecay~.pd
58 lines (58 loc) · 1.58 KB
/
d-sampdecay~.pd
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
#N canvas 64 399 726 443 10;
#X obj 138 177 t b f;
#X obj 116 141 moses 0;
#X obj 136 301 vline~;
#X obj 318 280 metro 100;
#X obj 318 236 loadbang;
#X msg 337 258 bang;
#X obj 318 318 snapshot~;
#X obj 168 221 pack f \$1;
#X obj 135 384 outlet~;
#X obj 98 42 inlet;
#X text 343 20 sample-and-decay;
#X text 370 143 args: \$1 = attack time;
#X text 412 179 \$3 = release time;
#X text 46 92 only pass on messages > current;
#X text 320 341 propagate current up to moses;
#X text 353 56 on input \, if input > current then ramp up;
#X text 353 70 to current over (attack time);
#X text 353 103 if input <= current \, ignore;
#X obj 153 44 inlet;
#X obj 207 44 inlet;
#X obj 257 43 inlet;
#X text 91 23 level;
#X text 146 23 attack;
#X text 201 23 sustain;
#X text 263 22 release;
#X text 409 161 \$2 = sustain time;
#X obj 255 150 loadbang;
#X obj 255 209 + \$1;
#X obj 136 268 pack 0 \$3 f;
#X obj 199 152 t b f;
#X obj 255 179 f \$2;
#X obj 318 385 outlet;
#X text 354 116 and continue to slowly decay over (release time);
#X text 351 88 if no higher input \, hold this level for sustain time
;
#X connect 0 0 28 0;
#X connect 0 1 7 0;
#X connect 1 1 0 0;
#X connect 2 0 6 0;
#X connect 2 0 8 0;
#X connect 3 0 6 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 6 0 1 1;
#X connect 6 0 31 0;
#X connect 7 0 2 0;
#X connect 9 0 1 0;
#X connect 18 0 29 0;
#X connect 19 0 27 0;
#X connect 20 0 28 1;
#X connect 26 0 30 0;
#X connect 27 0 28 2;
#X connect 28 0 2 0;
#X connect 29 0 27 0;
#X connect 29 1 7 1;
#X connect 29 1 27 1;
#X connect 30 0 27 0;