-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathenvgen~.pd
202 lines (202 loc) · 4.89 KB
/
envgen~.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
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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
#N canvas 379 230 1248 740 12;
#X obj 512 298 f \$16;
#X obj 232 298 f \$2;
#X obj 269 298 f \$4;
#X obj 306 298 f \$6;
#X obj 343 298 f \$8;
#X obj 380 298 f \$10;
#X obj 424 298 f \$12;
#X obj 468 298 f \$14;
#X obj 363 408 stagedaccumulator;
#X obj 63 330 t f b;
#X obj 363 456 f;
#X obj 363 432 t b f, f 8;
#X obj 363 480 pack f f;
#X obj 63 258 inlet;
#X obj 232 193 loadbang;
#X obj 232 217 t b b b b b b b b, f 45;
#X obj 363 552 del;
#X obj 470 552 del;
#X obj 577 552 del;
#X obj 684 552 del;
#X obj 792 552 del;
#X obj 899 552 del;
#X obj 1006 552 del;
#X obj 363 504 route 0 1 2 3 4 5 6 7, f 123;
#X obj 63 306 countrange 0 8;
#X obj 95 355 counter 8;
#X obj 363 528 t f b;
#X obj 1113 705 outlet;
#X obj 1113 552 del;
#X msg 123 533 stop;
#X text 39 10 /// AN ENVELOPE GENERATOR. INITIALIZE WITH \$1-\$16 BEING
\; /// TARGET VALUE AND TIME TO GET THERE FROM THE PRVEIOUS \; ///
STAGE. FOR INSTANCE \, "1 5 0.4 200 0 300" WILL JUMP \; /// FROM 0
TO 1 IN 5ms \, THEN LOWER TO 0.4 IN 200ms \, THEN \; /// LOWER TO 0
IN 300ms. \; /// THE ENVELOPE VALUE ALWAYS STARTS AT 0 \; /// BANG
THE INLET TO RUN THE ENVELOPE. \; /// ENV VALUE RETURNED FROM LEFT
OUTLET \, AND RIGHT OUTLET \; /// BANGS WHEN THE ENVELOPE IS COMPLETE.
;
#X obj 256 624 pack f f;
#X obj 256 600 f \$1;
#X obj 309 600 f \$2;
#X obj 256 576 t b b, f 8;
#X obj 363 624 pack f f;
#X obj 363 576 t b b, f 8;
#X obj 470 624 pack f f;
#X obj 470 576 t b b, f 8;
#X obj 577 624 pack f f;
#X obj 577 576 t b b, f 8;
#X obj 684 624 pack f f;
#X obj 684 576 t b b, f 8;
#X obj 792 624 pack f f;
#X obj 792 576 t b b, f 8;
#X obj 899 624 pack f f;
#X obj 899 576 t b b, f 8;
#X obj 1006 624 pack f f;
#X obj 1006 576 t b b, f 8;
#X obj 363 600 f \$3;
#X obj 416 600 f \$4;
#X obj 470 600 f \$5;
#X obj 523 600 f \$6;
#X obj 577 600 f \$7;
#X obj 630 600 f \$8;
#X obj 684 600 f \$9;
#X obj 737 600 f \$10;
#X obj 792 600 f \$11;
#X obj 845 600 f \$12;
#X obj 899 600 f \$13;
#X obj 952 600 f \$14;
#X obj 1006 600 f \$15;
#X obj 1059 600 f \$16;
#X obj 808 157 unpack f f f f f f f f f f f f f f f f;
#X text 449 10 /// PASS A LIST TO SECOND INLET TO REPLACE \$1-\$16.
\; /// USING THE SECOND INLET KILLS ANY IN-PROGRESS ENVELOPES.;
#X obj 147 222 t b b b;
#X obj 63 282 t b b;
#X text 4 222 kill current env ->;
#X obj 808 109 inlet;
#X obj 256 681 line~;
#X obj 256 705 outlet~;
#X msg 92 533 0 1;
#X obj 808 133 t a b;
#X connect 0 0 8 0;
#X connect 1 0 8 0;
#X connect 2 0 8 0;
#X connect 3 0 8 0;
#X connect 4 0 8 0;
#X connect 5 0 8 0;
#X connect 6 0 8 0;
#X connect 7 0 8 0;
#X connect 8 0 11 0;
#X connect 9 0 8 1;
#X connect 9 1 25 0;
#X connect 10 0 12 0;
#X connect 11 0 10 0;
#X connect 11 1 12 1;
#X connect 12 0 23 0;
#X connect 13 0 66 0;
#X connect 14 0 15 0;
#X connect 15 0 0 0;
#X connect 15 1 7 0;
#X connect 15 2 6 0;
#X connect 15 3 5 0;
#X connect 15 4 4 0;
#X connect 15 5 3 0;
#X connect 15 6 2 0;
#X connect 15 7 1 0;
#X connect 16 0 36 0;
#X connect 17 0 38 0;
#X connect 18 0 40 0;
#X connect 19 0 42 0;
#X connect 20 0 44 0;
#X connect 21 0 46 0;
#X connect 22 0 48 0;
#X connect 23 0 26 0;
#X connect 23 1 17 0;
#X connect 23 2 18 0;
#X connect 23 3 19 0;
#X connect 23 4 20 0;
#X connect 23 5 21 0;
#X connect 23 6 22 0;
#X connect 23 7 28 0;
#X connect 24 0 9 0;
#X connect 25 0 10 1;
#X connect 26 0 16 0;
#X connect 26 1 34 0;
#X connect 28 0 27 0;
#X connect 29 0 16 0;
#X connect 29 0 22 0;
#X connect 29 0 21 0;
#X connect 29 0 20 0;
#X connect 29 0 19 0;
#X connect 29 0 18 0;
#X connect 29 0 17 0;
#X connect 29 0 28 0;
#X connect 29 0 69 0;
#X connect 31 0 69 0;
#X connect 32 0 31 0;
#X connect 33 0 31 1;
#X connect 34 0 32 0;
#X connect 34 1 33 0;
#X connect 35 0 69 0;
#X connect 36 0 49 0;
#X connect 36 1 50 0;
#X connect 37 0 69 0;
#X connect 38 0 51 0;
#X connect 38 1 52 0;
#X connect 39 0 69 0;
#X connect 40 0 53 0;
#X connect 40 1 54 0;
#X connect 41 0 69 0;
#X connect 42 0 55 0;
#X connect 42 1 56 0;
#X connect 43 0 69 0;
#X connect 44 0 57 0;
#X connect 44 1 58 0;
#X connect 45 0 69 0;
#X connect 46 0 59 0;
#X connect 46 1 60 0;
#X connect 47 0 69 0;
#X connect 48 0 61 0;
#X connect 48 1 62 0;
#X connect 49 0 35 0;
#X connect 50 0 35 1;
#X connect 51 0 37 0;
#X connect 52 0 37 1;
#X connect 53 0 39 0;
#X connect 54 0 39 1;
#X connect 55 0 41 0;
#X connect 56 0 41 1;
#X connect 57 0 43 0;
#X connect 58 0 43 1;
#X connect 59 0 45 0;
#X connect 60 0 45 1;
#X connect 61 0 47 0;
#X connect 62 0 47 1;
#X connect 63 0 32 1;
#X connect 63 1 33 1;
#X connect 63 2 49 1;
#X connect 63 3 50 1;
#X connect 63 4 51 1;
#X connect 63 5 52 1;
#X connect 63 6 53 1;
#X connect 63 7 54 1;
#X connect 63 8 55 1;
#X connect 63 9 56 1;
#X connect 63 10 57 1;
#X connect 63 11 58 1;
#X connect 63 12 59 1;
#X connect 63 13 60 1;
#X connect 63 14 61 1;
#X connect 63 15 62 1;
#X connect 65 0 25 1;
#X connect 65 1 71 0;
#X connect 65 2 29 0;
#X connect 66 0 24 0;
#X connect 66 1 65 0;
#X connect 68 0 72 0;
#X connect 69 0 70 0;
#X connect 71 0 69 0;
#X connect 72 0 63 0;
#X connect 72 1 65 0;