-
Notifications
You must be signed in to change notification settings - Fork 0
/
goat_tilde.pd
714 lines (714 loc) · 20.8 KB
/
goat_tilde.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
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
#N struct template-grain float color float x1 float y1 float x2 float
y2;
#N canvas 1000 151 960 910 12;
#X obj 42 248 goat~;
#X obj 16 433 dac~;
#X obj 17 204 readsf~;
#X msg 163 170 1;
#X obj 22 68 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 22 96 t b b;
#X obj 107 208 r cmd;
#X obj 25 25 loadbang;
#X msg 69 73 \; pd dsp 1;
#X obj 42 274 *~ 0.5;
#X obj 56 654 textfile;
#X msg 101 628 rewind;
#X obj 56 628 until;
#X obj 259 725 s cmd;
#X msg 232 629 param-reset;
#X obj 73 511 r presetid;
#N canvas 470 130 1006 633 gui 1;
#X obj 25 153 hsl 128 15 0 1 0 0 grainsize grainsize_d Grain_Size -2
-8 0 10 -261682 -1 -1 635 1;
#X obj 24 205 hsl 128 15 -1 1 0 0 graindist graindist_d Grain_Distance
-2 -8 0 10 -261682 -1 -1 1587 1;
#X obj 24 267 hsl 128 15 0 1 0 0 graindelay graindelay_d Grain_Delay
-2 -8 0 10 -261682 -1 -1 0 1;
#X obj 24 329 hsl 128 15 -36 36 0 0 grainpitch grainpitch_d Grain_Pitch
-2 -8 0 10 -261682 -1 -1 6350 1;
#X obj 64 441 hradio 15 1 0 4 grainenv grainenv_d Grain_Envelope -44
-8 0 10 -261682 -1 -1 2;
#X obj 22 63 hradio 15 1 0 10 presetid empty Load_Preset 0 -8 0 10
-261234 -1 -1 0;
#X text 20 112 GRANULAR ENGINE;
#X text 19 13 GOAT;
#X text 232 112 LFO 1;
#X obj 237 150 hsl 128 15 0 50 0 0 lfo1.frequency lfo1.frequency_d
Frequency -2 -8 0 10 -204786 -1 -1 254 1;
#X obj 442 149 hsl 128 15 0 50 0 0 rand1.frequency rand1.frequency_d
Frequency -2 -8 0 10 -204800 -1 -1 254 1;
#X text 437 110 RAND 1;
#X obj 442 205 hsl 128 15 -10 10 0 0 rand1.value rand1.value_d Value
-2 -8 0 10 -204800 -1 -1 6350 1;
#X obj 442 259 hsl 128 15 0 5 0 0 rand1.variation rand1.variation_d
Variation -2 -8 0 10 -204800 -1 -1 2540 1;
#X obj 281 114 bng 15 250 50 0 lfo1_src empty empty 17 7 0 10 -204786
-1 -1;
#X obj 161 146 vsl 15 20 0 1 0 0 grainsize_dst empty empty 0 -9 0 10
-261682 -1 -1 0 1;
#X obj 160 198 vsl 15 20 0 1 0 0 graindist_dst empty empty 0 -9 0 10
-261682 -1 -1 700 1;
#X obj 160 260 vsl 15 20 0 1 0 0 graindelay_dst empty empty 0 -9 0
10 -261682 -1 -1 200 1;
#X obj 160 321 vsl 15 20 0 1 0 0 grainpitch_dst empty empty 0 -9 0
10 -261682 -1 -1 0 1;
#X obj 984 515 vsl 15 20 0 1 0 0 empty empty empty 0 -9 0 10 -261682
-1 -1 0 1;
#X obj 955 496 bng 15 250 50 0 empty empty empty 17 7 0 10 -204786
-1 -1;
#X text 657 495 to connect a modulator \, press its button \,;
#X obj 189 61 bng 15 250 50 0 global_detach empty Detach 0 -7 0 10
-261234 -1 -1;
#X obj 493 113 bng 15 250 50 0 rand1_src empty empty 17 7 0 10 -204800
-1 -1;
#X obj 373 142 vsl 15 20 0 50 0 0 lfo1.frequency_dst empty empty 0
-9 0 10 -204786 -1 -1 0 1;
#X obj 578 142 vsl 15 20 0 50 0 0 rand1.frequency_dst empty empty 0
-9 0 10 -204800 -1 -1 900 1;
#X obj 578 198 vsl 15 20 0 10 0 0 rand1.value_dst empty empty 0 -9
0 10 -204800 -1 -1 0 1;
#X obj 578 251 vsl 15 20 0 10 0 0 rand1.variation_dst empty empty 0
-9 0 10 -204800 -1 -1 400 1;
#X text 658 516 then click the amount slider at the parameter;
#X text 433 327 PITCH DETECTOR;
#X obj 544 328 bng 15 250 50 0 vodec_src empty empty 17 7 0 10 -262130
-1 -1;
#X obj 20 390 tgl 15 0 relativepitch relativepitch_d Use_Relative_Pitch
0 -7 0 10 -261682 -1 -1 0 1;
#X obj 261 211 hradio 15 1 0 5 lfo1.curve lfo1.curve_d Curve -28 -8
0 10 -204786 -1 -1 0;
#X floatatom 234 165 5 0 0 0 - - -;
#X floatatom 22 168 5 0 0 0 - - -;
#X floatatom 21 220 5 0 0 0 - - -;
#X floatatom 21 282 5 0 0 0 - - -;
#X floatatom 21 344 5 0 0 0 - - -;
#X floatatom 439 164 5 0 0 0 - - -;
#X floatatom 439 220 5 0 0 0 - - -;
#X floatatom 439 274 5 0 0 0 - - -;
#X symbolatom 22 78 16 0 0 0 - presetname _dummy;
#X text 231 224 sin tri sqr sw1 sw2;
#X text 18 454 none parab trap cos;
#X obj 22 497 hsl 48 15 0 0.4 0 0 attacktime attacktime_d Attack -2
-8 0 10 -261682 -1 -1 1410 1;
#X obj 78 489 vsl 15 20 0 1 0 0 attacktime_dst empty empty 0 -9 0 10
-261682 -1 -1 0 1;
#X floatatom 19 512 5 0 0 0 - - -;
#X obj 109 496 hsl 48 15 0 0.4 0 0 releasetime releasetime_d Release
-2 -8 0 10 -261682 -1 -1 1410 1;
#X obj 165 488 vsl 15 20 0 1 0 0 releasetime_dst empty empty 0 -9 0
10 -261682 -1 -1 0 1;
#X floatatom 106 511 5 0 0 0 - - -;
#X obj 236 305 hsl 128 15 0 50 0 0 lfo2.frequency lfo2.frequency_d
Frequency -2 -8 0 10 -204786 -1 -1 254 1;
#X obj 280 269 bng 15 250 50 0 lfo2_src empty empty 17 7 0 10 -204786
-1 -1;
#X obj 372 297 vsl 15 20 0 50 0 0 lfo2.frequency_dst empty empty 0
-9 0 10 -204786 -1 -1 0 1;
#X obj 260 366 hradio 15 1 0 5 lfo2.curve lfo2.curve_d Curve -28 -8
0 10 -204786 -1 -1 0;
#X floatatom 233 320 5 0 0 0 - - -;
#X text 230 379 sin tri sqr sw1 sw2;
#X text 231 267 LFO 2;
#X obj 236 461 hsl 128 15 0 50 0 0 lfo3.frequency lfo3.frequency_d
Frequency -2 -8 0 10 -204786 -1 -1 254 1;
#X obj 280 425 bng 15 250 50 0 lfo3_src empty empty 17 7 0 10 -204786
-1 -1;
#X obj 372 453 vsl 15 20 0 50 0 0 lfo3.frequency_dst empty empty 0
-9 0 10 -204786 -1 -1 0 1;
#X obj 260 522 hradio 15 1 0 5 lfo3.curve lfo3.curve_d Curve -28 -8
0 10 -204786 -1 -1 0;
#X floatatom 233 476 5 0 0 0 - - -;
#X text 230 535 sin tri sqr sw1 sw2;
#X obj 415 461 hsl 128 15 0 50 0 0 lfo4.frequency lfo4.frequency_d
Frequency -2 -8 0 10 -204786 -1 -1 254 1;
#X obj 459 425 bng 15 250 50 0 lfo4_src empty empty 17 7 0 10 -204786
-1 -1;
#X obj 551 453 vsl 15 20 0 50 0 0 lfo4.frequency_dst empty empty 0
-9 0 10 -204786 -1 -1 0 1;
#X obj 439 522 hradio 15 1 0 5 lfo4.curve lfo4.curve_d Curve -28 -8
0 10 -204786 -1 -1 0;
#X floatatom 412 476 5 0 0 0 - - -;
#X text 409 535 sin tri sqr sw1 sw2;
#X text 231 423 LFO 3;
#X text 410 423 LFO 4;
#X obj 631 148 hsl 128 15 0 50 0 0 rand2.frequency rand2.frequency_d
Frequency -2 -8 0 10 -204800 -1 -1 254 1;
#X obj 631 204 hsl 128 15 -10 10 0 0 rand2.value rand2.value_d Value
-2 -8 0 10 -204800 -1 -1 6350 1;
#X obj 631 258 hsl 128 15 0 10 0 0 rand2.variation rand2.variation_d
Variation -2 -8 0 10 -204800 -1 -1 1270 1;
#X obj 682 112 bng 15 250 50 0 rand2_src empty empty 17 7 0 10 -204800
-1 -1;
#X obj 767 141 vsl 15 20 0 50 0 0 rand2.frequency_dst empty empty 0
-9 0 10 -204800 -1 -1 0 1;
#X obj 767 197 vsl 15 20 0 10 0 0 rand2.value_dst empty empty 0 -9
0 10 -204800 -1 -1 0 1;
#X obj 767 250 vsl 15 20 0 10 0 0 rand2.variation_dst empty empty 0
-9 0 10 -204800 -1 -1 0 1;
#X floatatom 628 163 5 0 0 0 - - -;
#X floatatom 628 219 5 0 0 0 - - -;
#X floatatom 628 273 5 0 0 0 - - -;
#X text 626 109 RAND 2;
#X obj 839 149 hsl 128 15 0 50 0 0 rand3.frequency rand3.frequency_d
Frequency -2 -8 0 10 -204800 -1 -1 254 1;
#X obj 839 205 hsl 128 15 -10 10 0 0 rand3.value rand3.value_d Value
-2 -8 0 10 -204800 -1 -1 6350 1;
#X obj 839 259 hsl 128 15 0 10 0 0 rand3.variation rand3.variation_d
Variation -2 -8 0 10 -204800 -1 -1 1270 1;
#X obj 890 113 bng 15 250 50 0 rand3_src empty empty 17 7 0 10 -204800
-1 -1;
#X obj 975 142 vsl 15 20 0 10 0 0 rand3.frequency_dst empty empty 0
-9 0 10 -204800 -1 -1 0 1;
#X obj 975 198 vsl 15 20 0 10 0 0 rand3.value_dst empty empty 0 -9
0 10 -204800 -1 -1 0 1;
#X obj 975 251 vsl 15 20 0 10 0 0 rand3.variation_dst empty empty 0
-9 0 10 -204800 -1 -1 0 1;
#X floatatom 836 164 5 0 0 0 - - -;
#X floatatom 836 220 5 0 0 0 - - -;
#X floatatom 836 274 5 0 0 0 - - -;
#X text 834 110 RAND 3;
#N canvas 945 88 387 119 graingraph 0;
#X scalar template-grain 955 0.0150032 0 0.0234146 0.168228 \;;
#X scalar template-grain 955 0.0128059 0 0.0212173 0.168228 \;;
#X scalar template-grain 955 0.0106087 0 0.0190201 0.168228 \;;
#X scalar template-grain 955 0.00841141 0 0.0168228 0.168228 \;;
#X coords 0 1 0.2 -0.2 370 80 2 0 0;
#X restore 437 17 pd graingraph;
#X obj 236 61 hsl 128 15 0 1 0 1 drywet empty Dry_______________Wet
-2 -8 0 10 -261234 -1 -1 9400 1;
#X floatatom 233 76 5 0 0 0 - - -;
#X obj 235 17 bng 15 250 50 0 param_post empty post_parameters 17 7
0 10 -261234 -1 -1;
#X obj 440 358 hsl 128 15 -0.1 0.1 0 0 vodec.factor vodec.factor_d
Amount -2 -8 0 10 -262130 -1 -1 12700 1;
#X floatatom 437 373 5 0 0 0 - - -;
#X obj 785 455 s filename;
#X text 651 348 your filename -->;
#X msg 810 419 oom.wav;
#X msg 785 347 .wav;
#X text 679 372 example 1 -->;
#X text 679 396 example 2 -->;
#X text 680 420 example 3 -->;
#X msg 803 396 dsmn.wav;
#X msg 796 372 piano.wav;
#X connect 0 0 34 0;
#X connect 1 0 35 0;
#X connect 2 0 36 0;
#X connect 3 0 37 0;
#X connect 9 0 33 0;
#X connect 10 0 38 0;
#X connect 12 0 39 0;
#X connect 13 0 40 0;
#X connect 44 0 46 0;
#X connect 47 0 49 0;
#X connect 50 0 54 0;
#X connect 57 0 61 0;
#X connect 63 0 67 0;
#X connect 71 0 78 0;
#X connect 72 0 79 0;
#X connect 73 0 80 0;
#X connect 82 0 89 0;
#X connect 83 0 90 0;
#X connect 84 0 91 0;
#X connect 94 0 95 0;
#X connect 97 0 98 0;
#X connect 101 0 99 0;
#X connect 102 0 99 0;
#X connect 106 0 99 0;
#X connect 107 0 99 0;
#X restore 254 774 pd gui;
#N canvas 8 254 333 114 cmdreceivers 0;
#N canvas -1636 123 580 549 granular_engine 0;
#X obj 72 25 r grainsize;
#X obj 72 80 r graindist;
#X obj 72 135 r graindelay;
#X obj 72 185 r grainpitch;
#X obj 345 28 r grainenv;
#X obj 174 26 r grainsize_dst;
#X obj 141 361 s conn_dst;
#X msg 174 51 grainsize \$1;
#X obj 175 80 r graindist_dst;
#X msg 175 105 graindist \$1;
#X obj 177 134 r graindelay_dst;
#X msg 177 159 graindelay \$1;
#X obj 177 183 r grainpitch_dst;
#X msg 177 208 grainpitch \$1;
#X obj 448 28 r grainenv_dst;
#X msg 448 53 grainenv \$1;
#X msg 345 54 grainenv \$1;
#X msg 72 210 grainpitch \$1;
#X msg 73 160 graindelay \$1;
#X msg 72 108 graindist \$1;
#X msg 72 50 grainsize \$1;
#X obj 28 362 s param_set;
#X msg 181 263 relativepitch \$1;
#X obj 180 238 r relativepitch_dst;
#X obj 55 240 r relativepitch;
#X msg 60 265 relativepitch \$1;
#X obj 344 81 r attacktime;
#X msg 344 107 attacktime \$1;
#X obj 447 81 r attacktime_dst;
#X msg 447 106 attacktime \$1;
#X obj 343 136 r releasetime;
#X obj 446 136 r releasetime_dst;
#X msg 343 162 releasetime \$1;
#X msg 446 161 releasetime \$1;
#X connect 0 0 20 0;
#X connect 1 0 19 0;
#X connect 2 0 18 0;
#X connect 3 0 17 0;
#X connect 4 0 16 0;
#X connect 5 0 7 0;
#X connect 7 0 6 0;
#X connect 8 0 9 0;
#X connect 9 0 6 0;
#X connect 10 0 11 0;
#X connect 11 0 6 0;
#X connect 12 0 13 0;
#X connect 13 0 6 0;
#X connect 14 0 15 0;
#X connect 15 0 6 0;
#X connect 16 0 21 0;
#X connect 17 0 21 0;
#X connect 18 0 21 0;
#X connect 19 0 21 0;
#X connect 20 0 21 0;
#X connect 22 0 6 0;
#X connect 23 0 22 0;
#X connect 24 0 25 0;
#X connect 25 0 21 0;
#X connect 26 0 27 0;
#X connect 27 0 21 0;
#X connect 28 0 29 0;
#X connect 29 0 6 0;
#X connect 30 0 32 0;
#X connect 31 0 33 0;
#X connect 32 0 21 0;
#X connect 33 0 6 0;
#X restore 28 29 pd granular_engine;
#N canvas 1302 749 873 561 lfos 0;
#X obj 177 81 r lfo1.frequency;
#X msg 131 54 lfo1;
#X obj 25 511 s conn_src;
#X obj 131 29 r lfo1_src;
#X msg 177 106 lfo1.frequency \$1;
#X obj 365 511 s param_set;
#X obj 751 504 s conn_dst;
#X msg 314 104 lfo1.frequency \$1;
#X obj 314 79 r lfo1.frequency_dst;
#X obj 177 132 r lfo1.curve;
#X msg 177 157 lfo1.curve \$1;
#X obj 126 187 r lfo2_src;
#X msg 126 212 lfo2;
#X obj 172 239 r lfo2.frequency;
#X msg 172 264 lfo2.frequency \$1;
#X obj 172 290 r lfo2.curve;
#X msg 172 315 lfo2.curve \$1;
#X obj 309 237 r lfo2.frequency_dst;
#X msg 309 262 lfo2.frequency \$1;
#X obj 481 25 r lfo3_src;
#X msg 481 50 lfo3;
#X obj 527 77 r lfo3.frequency;
#X msg 527 102 lfo3.frequency \$1;
#X obj 527 128 r lfo3.curve;
#X msg 527 153 lfo3.curve \$1;
#X obj 664 75 r lfo3.frequency_dst;
#X msg 664 100 lfo3.frequency \$1;
#X obj 476 191 r lfo4_src;
#X msg 476 216 lfo4;
#X obj 522 243 r lfo4.frequency;
#X msg 522 268 lfo4.frequency \$1;
#X obj 522 294 r lfo4.curve;
#X msg 522 318 lfo4.curve \$1;
#X obj 659 241 r lfo4.frequency_dst;
#X msg 659 266 lfo4.frequency \$1;
#X connect 0 0 4 0;
#X connect 1 0 2 0;
#X connect 3 0 1 0;
#X connect 4 0 5 0;
#X connect 7 0 6 0;
#X connect 8 0 7 0;
#X connect 9 0 10 0;
#X connect 10 0 5 0;
#X connect 11 0 12 0;
#X connect 12 0 2 0;
#X connect 13 0 14 0;
#X connect 14 0 5 0;
#X connect 15 0 16 0;
#X connect 16 0 5 0;
#X connect 17 0 18 0;
#X connect 18 0 6 0;
#X connect 19 0 20 0;
#X connect 20 0 2 0;
#X connect 21 0 22 0;
#X connect 22 0 5 0;
#X connect 23 0 24 0;
#X connect 24 0 5 0;
#X connect 25 0 26 0;
#X connect 26 0 6 0;
#X connect 27 0 28 0;
#X connect 28 0 2 0;
#X connect 29 0 30 0;
#X connect 30 0 5 0;
#X connect 31 0 32 0;
#X connect 32 0 5 0;
#X connect 33 0 34 0;
#X connect 34 0 6 0;
#X restore 170 30 pd lfos;
#N canvas 1058 609 824 639 rands 0;
#X obj 78 94 r rand1.frequency;
#X obj 78 147 r rand1.value;
#X obj 79 200 r rand1.variation;
#X obj 34 33 r rand1_src;
#X msg 79 225 rand1.variation \$1;
#X msg 78 172 rand1.value \$1;
#X msg 78 119 rand1.frequency \$1;
#X obj 10 578 s conn_src;
#X obj 352 576 s param_set;
#X obj 226 92 r rand1.frequency_dst;
#X msg 226 117 rand1.frequency \$1;
#X obj 226 143 r rand1.value_dst;
#X msg 226 168 rand1.value \$1;
#X obj 226 198 r rand1.variation_dst;
#X msg 226 223 rand1.variation \$1;
#X obj 699 572 s conn_dst;
#X msg 34 58 rand1;
#X obj 32 293 r rand2_src;
#X msg 32 318 rand2;
#X obj 76 354 r rand2.frequency;
#X msg 76 379 rand2.frequency \$1;
#X obj 76 407 r rand2.value;
#X msg 76 432 rand2.value \$1;
#X obj 77 460 r rand2.variation;
#X msg 77 485 rand2.variation \$1;
#X obj 224 352 r rand2.frequency_dst;
#X msg 224 377 rand2.frequency \$1;
#X obj 224 403 r rand2.value_dst;
#X msg 224 428 rand2.value \$1;
#X obj 224 458 r rand2.variation_dst;
#X msg 223 483 rand2.variation \$1;
#X obj 438 32 r rand3_src;
#X msg 438 57 rand3;
#X obj 482 93 r rand3.frequency;
#X msg 482 118 rand3.frequency \$1;
#X obj 482 146 r rand3.value;
#X msg 482 171 rand3.value \$1;
#X obj 483 199 r rand3.variation;
#X msg 483 224 rand3.variation \$1;
#X obj 630 91 r rand3.frequency_dst;
#X msg 630 116 rand3.frequency \$1;
#X obj 630 142 r rand3.value_dst;
#X msg 630 167 rand3.value \$1;
#X obj 630 197 r rand3.variation_dst;
#X msg 629 222 rand3.variation \$1;
#X connect 0 0 6 0;
#X connect 1 0 5 0;
#X connect 2 0 4 0;
#X connect 3 0 16 0;
#X connect 4 0 8 0;
#X connect 5 0 8 0;
#X connect 6 0 8 0;
#X connect 9 0 10 0;
#X connect 10 0 15 0;
#X connect 11 0 12 0;
#X connect 12 0 15 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 16 0 7 0;
#X connect 17 0 18 0;
#X connect 18 0 7 0;
#X connect 19 0 20 0;
#X connect 20 0 8 0;
#X connect 21 0 22 0;
#X connect 22 0 8 0;
#X connect 23 0 24 0;
#X connect 24 0 8 0;
#X connect 25 0 26 0;
#X connect 26 0 15 0;
#X connect 27 0 28 0;
#X connect 28 0 15 0;
#X connect 29 0 30 0;
#X connect 30 0 15 0;
#X connect 31 0 32 0;
#X connect 32 0 7 0;
#X connect 33 0 34 0;
#X connect 34 0 8 0;
#X connect 35 0 36 0;
#X connect 36 0 8 0;
#X connect 37 0 38 0;
#X connect 38 0 8 0;
#X connect 39 0 40 0;
#X connect 40 0 15 0;
#X connect 41 0 42 0;
#X connect 42 0 15 0;
#X connect 43 0 44 0;
#X connect 44 0 15 0;
#X restore 236 31 pd rands;
#N canvas 1204 630 450 300 vodec 0;
#X obj 18 14 r vodec_src;
#X msg 18 39 vodec;
#X obj 18 241 s conn_src;
#X obj 161 238 s param_set;
#X obj 161 81 r vodec.factor;
#X msg 161 106 vodec.factor \$1;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 3 0;
#X restore 28 60 pd vodec;
#X restore 254 803 pd cmdreceivers;
#X msg 594 778 param-post;
#X obj 594 803 s cmd;
#X obj 289 399 unpack s f;
#X obj 289 424 t b s;
#X obj 289 449 f;
#X obj 289 474 s;
#X msg 321 449 symbol \$1_d;
#X obj 119 586 t b b b a b;
#X msg 155 628 param-get;
#X obj 618 457 r param-reset;
#X msg 655 508 param-reset;
#X obj 618 534 s cmd;
#X obj 618 482 t b b;
#X msg 575 507 param-get;
#X text 295 377 handle param-get;
#X text 589 727 debug print all parameters;
#X text 593 435 handle param-reset;
#X obj 656 27 r conn_src;
#X obj 557 27 r conn_dst;
#X text 549 5 handle connections;
#X text 53 489 load preset files;
#X obj 603 171 pack s s;
#X obj 656 54 symbol;
#X msg 603 196 param-attach \$1 0 \$2;
#X msg 670 82 1;
#X msg 617 106 0;
#X obj 557 53 unpack s f;
#X obj 603 133 spigot;
#X msg 539 223 param-amount \$1 0 \$2;
#X obj 539 171 pack s f;
#X obj 557 79 t s b s;
#X obj 603 272 s cmd;
#X obj 748 27 r global_detach;
#X obj 709 133 spigot;
#X msg 748 53 1;
#X msg 709 166 param-detach \$1 0;
#X text 585 579 handle param-set;
#X obj 586 626 list;
#X obj 586 676 s cmd;
#X obj 586 601 r param_set;
#X msg 586 651 param-set \$1 \$2;
#X obj 299 297 print cmd;
#X obj 56 738 s presetname;
#X obj 56 678 route name #;
#X msg 119 562 read preset_\$1.txt;
#X obj 56 711 symbol;
#X obj 747 494 s presetname;
#X obj 747 469 symbol Reset;
#X obj 73 535 route 0;
#X obj 18 562 s param-reset;
#X obj 109 51 s param-reset;
#X obj 289 322 route param-get graintable grain;
#X msg 374 682 graintable-get;
#X obj 374 707 s cmd;
#X obj 374 607 loadbang;
#X msg 374 632 1;
#X text 364 583 update the grain graph;
#X msg 441 378 clear;
#X text 494 357 handle graintable-get;
#X msg 491 378 grain \$1 \$2 \$3 \$4;
#X obj 388 778 r graphcontroller;
#N canvas 238 225 632 474 graphcontroller 0;
#X obj 28 31 inlet;
#N canvas 293 417 481 140 template-grain 0;
#X obj 30 35 struct template-grain float color float x1 float y1 float
x2 float y2;
#X obj 30 81 drawpolygon color 2 x1 y1 x2 y2;
#X restore 450 26 pd template-grain;
#X msg 130 417 \; pd-graingraph clear;
#X obj 28 389 t b b;
#X msg 405 184 traverse pd-graingraph \, bang;
#X obj 405 208 pointer;
#X obj 503 158 loadbang;
#X obj 28 431 s \$0-initptr;
#X obj 405 156 r \$0-initptr;
#X obj 28 85 route clear grain;
#X obj 188 236 +;
#X obj 156 211 t f f;
#X obj 61 209 moses 1;
#X obj 128 159 unpack f f f f f;
#X obj 246 238 expr $f1 * 20 * $f2;
#X msg 107 233 955;
#X msg 61 233 0;
#X obj 246 214 f;
#X obj 271 188 t b f;
#X obj 105 331 append template-grain color x1 y1 x2 y2;
#X msg 179 305 0;
#X obj 179 279 loadbang;
#X connect 0 0 9 0;
#X connect 3 0 7 0;
#X connect 3 1 2 0;
#X connect 4 0 5 0;
#X connect 5 0 19 5;
#X connect 6 0 4 0;
#X connect 8 0 4 0;
#X connect 9 0 3 0;
#X connect 9 1 13 0;
#X connect 10 0 19 3;
#X connect 11 0 19 1;
#X connect 11 1 10 0;
#X connect 12 0 16 0;
#X connect 12 1 15 0;
#X connect 13 0 12 0;
#X connect 13 1 11 0;
#X connect 13 2 10 1;
#X connect 13 2 18 0;
#X connect 13 3 17 1;
#X connect 14 0 19 4;
#X connect 15 0 19 0;
#X connect 16 0 19 0;
#X connect 17 0 14 0;
#X connect 18 0 17 0;
#X connect 18 1 14 1;
#X connect 20 0 19 2;
#X connect 21 0 20 0;
#X restore 388 802 pd graphcontroller;
#X obj 441 408 s graphcontroller;
#X obj 374 657 metro 20;
#X obj 108 235 r drywet;
#X obj 184 264 min 0.5;
#X obj 184 289 * 2;
#X floatatom 184 314 5 0 0 0 - - -;
#X floatatom 108 337 5 0 0 0 - - -;
#X obj 108 264 max 0.5;
#X obj 108 288 - 1;
#X obj 108 314 * -2;
#X obj 42 388 *~;
#X obj 17 387 *~;
#X obj 594 751 r param_post;
#X obj 314 31 r filename;
#X msg 29 148 open piano.wav;
#X msg 297 163 open \$1;
#X obj 314 53 symbol;
#X msg 210 99 0;
#X obj 288 38 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X text 109 21 on startup;
#X text 292 6 user soundfile;
#X obj 314 79 t b s;
#X obj 28 174 spigot 1;
#X obj 157 132 spigot 1;
#X obj 213 12 spigot 0;
#X msg 221 52 1;
#X connect 0 0 9 0;
#X connect 0 1 69 0;
#X connect 2 0 0 0;
#X connect 2 0 91 0;
#X connect 2 1 4 0;
#X connect 2 1 104 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 103 0;
#X connect 5 1 94 0;
#X connect 6 0 0 0;
#X connect 7 0 4 0;
#X connect 7 0 8 0;
#X connect 7 0 68 0;
#X connect 9 0 90 0;
#X connect 10 0 61 0;
#X connect 10 1 12 1;
#X connect 11 0 10 0;
#X connect 12 0 10 0;
#X connect 14 0 13 0;
#X connect 15 0 66 0;
#X connect 18 0 19 0;
#X connect 20 0 21 0;
#X connect 20 1 22 1;
#X connect 21 0 22 0;
#X connect 21 1 24 0;
#X connect 22 0 23 0;
#X connect 24 0 23 1;
#X connect 25 0 26 0;
#X connect 25 1 12 0;
#X connect 25 2 11 0;
#X connect 25 3 10 0;
#X connect 25 4 14 0;
#X connect 26 0 13 0;
#X connect 27 0 30 0;
#X connect 28 0 29 0;
#X connect 30 0 31 0;
#X connect 30 1 28 0;
#X connect 30 1 65 0;
#X connect 31 0 29 0;
#X connect 35 0 40 0;
#X connect 36 0 44 0;
#X connect 39 0 41 0;
#X connect 40 0 39 1;
#X connect 40 0 42 0;
#X connect 41 0 49 0;
#X connect 42 0 45 1;
#X connect 43 0 45 1;
#X connect 43 0 51 1;
#X connect 44 0 48 0;
#X connect 44 1 47 1;
#X connect 45 0 39 0;
#X connect 46 0 49 0;
#X connect 47 0 46 0;
#X connect 48 0 47 0;
#X connect 48 1 43 0;
#X connect 48 2 45 0;
#X connect 48 2 51 0;
#X connect 50 0 52 0;
#X connect 51 0 53 0;
#X connect 52 0 51 1;
#X connect 53 0 49 0;
#X connect 55 0 58 0;
#X connect 57 0 55 0;
#X connect 58 0 56 0;
#X connect 61 0 63 0;
#X connect 61 2 13 0;
#X connect 62 0 25 0;
#X connect 63 0 60 0;
#X connect 65 0 64 0;
#X connect 66 0 67 0;
#X connect 66 1 62 0;
#X connect 69 0 20 0;
#X connect 69 1 75 0;
#X connect 69 2 77 0;
#X connect 70 0 71 0;
#X connect 72 0 73 0;
#X connect 73 0 81 0;
#X connect 75 0 80 0;
#X connect 77 0 80 0;
#X connect 78 0 79 0;
#X connect 81 0 70 0;
#X connect 82 0 83 0;
#X connect 82 0 87 0;
#X connect 83 0 84 0;
#X connect 84 0 85 0;
#X connect 85 0 90 1;
#X connect 86 0 91 1;
#X connect 87 0 88 0;
#X connect 88 0 89 0;
#X connect 89 0 86 0;
#X connect 90 0 1 1;
#X connect 90 0 1 0;
#X connect 91 0 1 1;
#X connect 91 0 1 0;
#X connect 92 0 18 0;
#X connect 93 0 96 0;
#X connect 94 0 102 0;
#X connect 95 0 2 0;
#X connect 96 0 101 0;
#X connect 97 0 102 1;
#X connect 97 0 103 1;
#X connect 98 0 96 0;
#X connect 101 0 97 0;
#X connect 101 0 3 0;
#X connect 101 0 105 0;
#X connect 101 1 95 0;
#X connect 102 0 2 0;
#X connect 103 0 3 0;
#X connect 104 0 98 0;
#X connect 105 0 104 1;