/
sample.play~.pd
357 lines (357 loc) · 8.21 KB
/
sample.play~.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
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
#N canvas 0 24 1247 915 10;
#X obj 26 50 sample.handler;
#X obj 25 18 inlet sample_id;
#X obj 12 565 synth.adsr~;
#N canvas 1477 270 899 627 table.play~ 0;
#X obj 26 482 tabread4~;
#X obj 357 -99 inlet table;
#X msg 357 9 set \$1;
#X obj 357 -48 symbol;
#X obj 294 563 outlet~;
#X obj 437 559 outlet done;
#X obj 34 191 pack f f f;
#X obj 71 28 t f f;
#X obj 35 125 expr (1/$f1)*$f2;
#X obj 24 -101 inlet speed start length;
#X obj 735 -91 inlet stop;
#X obj 31 -25 unpack f f f;
#X obj 118 31 t f f;
#X obj 148 92 convert.smp2ms;
#X obj 102 70 +;
#X msg 34 282 \$2 \, \$3 \$1;
#X obj 36 335 timing.line~;
#X msg 735 -41 stop;
#X obj 32 57 < 0;
#X obj 3 31 t f f;
#X obj 5 82 abs;
#X obj 38 242 demultiplex 0 1;
#X msg 161 288 \$3 \, \$2 \$1;
#X obj 513 -96 inlet table_2;
#X text 778 550 0=normal \, 1=reverse;
#X obj 670 550 outlet reverse;
#X obj 670 509 f;
#X obj 23 213 t b a;
#X obj 143 573 outlet~ right;
#X obj 35 572 outlet~ left;
#X msg 506 5 set \$1;
#X obj 506 -52 symbol;
#X obj 127 487 tabread4~;
#X connect 0 0 29 0;
#X connect 1 0 3 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 6 0 27 0;
#X connect 7 0 6 1;
#X connect 7 1 14 0;
#X connect 8 0 6 0;
#X connect 9 0 11 0;
#X connect 10 0 17 0;
#X connect 11 0 19 0;
#X connect 11 1 7 0;
#X connect 11 2 12 0;
#X connect 12 0 14 1;
#X connect 12 1 13 0;
#X connect 13 0 8 1;
#X connect 14 0 6 2;
#X connect 15 0 16 0;
#X connect 16 0 4 0;
#X connect 16 0 0 0;
#X connect 16 0 32 0;
#X connect 16 1 5 0;
#X connect 17 0 16 0;
#X connect 18 0 21 1;
#X connect 18 0 26 1;
#X connect 19 0 20 0;
#X connect 19 1 18 0;
#X connect 20 0 8 0;
#X connect 21 0 15 0;
#X connect 21 1 22 0;
#X connect 22 0 16 0;
#X connect 23 0 31 0;
#X connect 26 0 25 0;
#X connect 27 0 26 0;
#X connect 27 1 21 0;
#X connect 30 0 32 0;
#X connect 31 0 30 0;
#X connect 32 0 28 0;
#X restore 180 425 pd table.play~;
#X obj 650 745 outlet done;
#X obj -63 721 *~;
#X obj 537 -49 inlet speed(trig);
#X obj 712 241 *;
#X obj 713 295 *;
#X text 748 238 *playback speed;
#X obj 303 156 unpack f f f;
#X text 390 155 frames samplerate channels;
#N canvas 0 0 454 304 relative_samplerate 0;
#X obj 174 172 /;
#X obj 150 138 t f b;
#X obj 192 148 samplerate~;
#X obj 139 40 inlet;
#X obj 166 264 outlet;
#X connect 0 0 4 0;
#X connect 1 0 0 0;
#X connect 1 1 2 0;
#X connect 2 0 0 1;
#X connect 3 0 1 0;
#X restore 374 183 pd relative_samplerate;
#X text 744 295 *relative_samplerate;
#X msg 334 259 \$1s0;
#X text 111 141 region;
#X obj 160 378 pack f f f;
#X msg -60 138 0;
#X obj -61 76 == 1;
#X obj -37 223 s \$0ready;
#X obj 591 38 spigot;
#X obj 725 -31 r \$0ready;
#X obj -60 104 sel 0 1;
#X msg -27 140 1;
#X obj -14 433 unpack f f f f f;
#X obj -59 459 *;
#X text -8 410 gain a d s r;
#X obj -64 811 outlet~;
#X text -67 43 state;
#X obj -122 421 r \$0vel;
#X obj -120 179 s \$0vel;
#X obj 219 650 s \$0vel;
#N canvas 0 0 916 634 manage_float&midi_input 0;
#X obj 308 251 convert.m2speed;
#X obj 93 201 sel 0;
#X obj 288 113 unpack f f;
#X obj 236 89 route float list;
#X obj 392 137 sel 0;
#X obj 299 163 spigot;
#X obj 122 460 s \$0vel;
#X msg 154 245 127;
#X msg 90 224 0;
#X obj 473 303 s \$0vel;
#X msg 397 159 0;
#X obj 405 196 t f f;
#X obj 447 150 t b f;
#X msg 451 172 1;
#X obj 238 26 inlet;
#X obj 279 443 outlet;
#X obj 208 280 s \$0trigData;
#X msg 208 253 \$1 0;
#X obj 127 221 t f b f;
#X obj 370 324 s \$0trigData;
#X msg 370 297 \$1 0;
#X obj 316 197 t f f;
#X connect 0 0 15 0;
#X connect 1 0 8 0;
#X connect 1 1 18 0;
#X connect 2 0 5 0;
#X connect 2 1 4 0;
#X connect 3 0 1 0;
#X connect 3 1 2 0;
#X connect 4 0 10 0;
#X connect 4 1 12 0;
#X connect 5 0 21 0;
#X connect 7 0 6 0;
#X connect 8 0 6 0;
#X connect 10 0 11 0;
#X connect 11 0 5 1;
#X connect 11 1 9 0;
#X connect 12 0 13 0;
#X connect 12 1 9 0;
#X connect 13 0 5 1;
#X connect 14 0 3 0;
#X connect 17 0 16 0;
#X connect 18 0 15 0;
#X connect 18 1 7 0;
#X connect 18 2 17 0;
#X connect 20 0 19 0;
#X connect 21 0 0 0;
#X connect 21 1 20 0;
#X restore 626 93 pd manage_float&midi_input;
#X obj 461 817 switch~;
#X msg 457 783 0;
#X obj 712 322 t b b f b;
#X obj 69 808 outlet~;
#X obj 68 721 *~;
#X obj 345 229 t f f;
#X obj 409 268 demultiplex 0 1;
#X obj 541 199 > 1;
#X obj 72 157 unpack f f f f;
#X obj 134 197 *;
#X obj 165 198 *;
#X obj 891 767 outlet~ progress;
#X obj 884 711 /~ 1;
#X msg 411 294 \$1s0;
#X msg 505 292 \$1s1;
#X obj 306 429 s \$0reverse;
#X obj 117 232 s \$0start;
#X obj 111 314 r \$0start;
#X obj 74 349 r \$0play;
#X obj 816 389 s \$0play;
#X obj 187 231 s \$0length;
#X obj 191 333 r \$0length;
#X obj 292 180 s \$0frames;
#X obj 910 663 r \$0frames;
#X obj 184 157 r \$0frames;
#X obj 93 607 s \$0stop;
#X obj 456 749 r \$0stop;
#X obj 532 748 r \$0play;
#X msg 531 779 1;
#N canvas 1410 108 944 751 autorelease 0;
#X obj 540 38 inlet reset;
#X obj 21 26 inlet~ progress;
#X obj 83 645 threshold~;
#X obj 468 232 convert.ms2smp;
#X msg 80 730 0;
#X obj 125 422 -;
#X obj 526 366 t b b;
#X obj 102 518 +;
#X obj 147 601 r \$0reverse;
#X obj 83 705 spigot;
#X obj 148 622 t f f;
#X obj 143 675 == 0;
#X obj 197 682 spigot;
#X msg 196 713 0;
#X obj 135 485 r \$0start;
#X obj 133 282 r \$0length;
#X obj 97 299 f;
#X obj 463 187 r \$0release;
#X obj 82 781 outlet;
#X obj 510 737 outlet;
#X obj 177 210 t b b b b;
#X obj 178 327 f;
#X obj 214 310 r \$0start;
#X obj 207 420 +;
#X obj 596 248 r \$0length;
#X obj 120 560 pack;
#X msg 102 580 set \$1 0 \$2 0;
#X msg 652 472 ADSR Error... Release set too high... bypassing!;
#X obj 499 301 moses;
#X obj 601 278 t f f;
#X obj 525 448 / 2;
#X obj 521 411 f;
#X obj 363 367 f;
#X connect 0 0 20 0;
#X connect 1 0 2 0;
#X connect 2 0 9 0;
#X connect 2 1 12 0;
#X connect 3 0 28 0;
#X connect 4 0 18 0;
#X connect 5 0 7 0;
#X connect 6 0 31 0;
#X connect 6 1 27 0;
#X connect 7 0 25 0;
#X connect 8 0 10 0;
#X connect 9 0 4 0;
#X connect 10 0 2 1;
#X connect 10 1 11 0;
#X connect 10 1 12 1;
#X connect 11 0 9 1;
#X connect 12 0 13 0;
#X connect 13 0 18 0;
#X connect 14 0 7 1;
#X connect 15 0 16 1;
#X connect 16 0 5 0;
#X connect 17 0 3 0;
#X connect 20 0 16 0;
#X connect 20 1 21 0;
#X connect 21 0 23 0;
#X connect 22 0 21 1;
#X connect 23 0 25 1;
#X connect 24 0 29 0;
#X connect 25 0 26 0;
#X connect 26 0 2 0;
#X connect 27 0 19 0;
#X connect 28 0 32 0;
#X connect 28 1 6 0;
#X connect 29 0 28 1;
#X connect 29 1 31 1;
#X connect 30 0 32 0;
#X connect 31 0 30 0;
#X connect 32 0 23 1;
#X connect 32 0 5 1;
#X restore 224 615 pd autorelease;
#X obj 330 395 r \$0stop;
#X obj 88 477 s \$0release;
#X obj 80 531 r \$0release;
#X obj 319 656 print sample.play~;
#X obj 606 659 r \$0stop;
#X obj -64 764 mix.switch.ramp~;
#X obj 69 763 mix.switch.ramp~;
#X obj 102 383 t a b;
#X obj 650 715 list;
#X obj 684 670 r \$0trigData;
#X connect 0 0 18 0;
#X connect 0 3 24 0;
#X connect 0 4 41 0;
#X connect 0 6 38 0;
#X connect 0 7 10 0;
#X connect 0 8 7 1;
#X connect 1 0 0 0;
#X connect 2 0 5 0;
#X connect 2 0 37 0;
#X connect 2 3 58 0;
#X connect 3 0 5 1;
#X connect 3 1 37 1;
#X connect 3 2 45 0;
#X connect 3 2 62 0;
#X connect 3 4 48 0;
#X connect 5 0 68 0;
#X connect 6 0 20 0;
#X connect 7 0 8 0;
#X connect 8 0 35 0;
#X connect 10 0 55 0;
#X connect 10 1 12 0;
#X connect 10 2 40 0;
#X connect 12 0 8 1;
#X connect 14 0 3 1;
#X connect 16 0 3 0;
#X connect 17 0 19 0;
#X connect 17 0 30 0;
#X connect 18 0 22 0;
#X connect 20 0 32 0;
#X connect 21 0 20 1;
#X connect 22 0 17 0;
#X connect 22 1 23 0;
#X connect 23 0 19 0;
#X connect 24 0 25 1;
#X connect 24 1 2 1;
#X connect 24 2 2 2;
#X connect 24 3 2 3;
#X connect 24 4 64 0;
#X connect 25 0 2 0;
#X connect 29 0 25 0;
#X connect 32 0 7 0;
#X connect 34 0 33 0;
#X connect 35 1 62 1;
#X connect 35 2 52 0;
#X connect 37 0 69 0;
#X connect 38 0 14 0;
#X connect 38 1 39 0;
#X connect 39 0 46 0;
#X connect 39 1 47 0;
#X connect 40 0 39 1;
#X connect 41 2 42 0;
#X connect 41 3 43 0;
#X connect 42 0 49 0;
#X connect 43 0 53 0;
#X connect 45 0 44 0;
#X connect 46 0 3 2;
#X connect 47 0 3 2;
#X connect 50 0 16 1;
#X connect 51 0 70 0;
#X connect 54 0 16 2;
#X connect 56 0 45 1;
#X connect 57 0 43 1;
#X connect 57 0 42 1;
#X connect 59 0 34 0;
#X connect 60 0 61 0;
#X connect 61 0 33 0;
#X connect 62 0 31 0;
#X connect 62 1 66 0;
#X connect 63 0 3 3;
#X connect 65 0 2 4;
#X connect 67 0 71 0;
#X connect 68 0 27 0;
#X connect 69 0 36 0;
#X connect 70 0 16 0;
#X connect 70 1 69 1;
#X connect 70 1 68 1;
#X connect 71 0 4 0;
#X connect 72 0 71 1;