-
Notifications
You must be signed in to change notification settings - Fork 2
/
SlowSampler.pd
786 lines (786 loc) · 22 KB
/
SlowSampler.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
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
#N canvas -1 0 1920 966 12;
#X obj 238 24 bng 15 250 50 0 \$0-loadWav empty empty 17 7 0 10 -262144
-1 -1;
#X obj 20 583 s camomile;
#X obj 20 805 soundfiler;
#X obj 20 663 symbol;
#X obj 23 1306 dac~;
#X msg 20 543 openpanel -s;
#X obj 20 623 r openpanel;
#X obj 21 1146 line~;
#X floatatom 124 1281 5 0 0 0 - - -;
#X obj 146 578 openpanel;
#X obj 146 542 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 829 46 param.change;
#X obj 829 108 gui.link 2 \$0-pitch;
#X obj 829 77 gui.link 1 \$0-volume;
#X text 168 541 // For test in Pd;
#X obj 402 24 tgl 15 0 \$0-autoPitch empty empty 17 7 0 10 -262144
-1 -1 0 1;
#X text 427 23 Enable Auto Pitch Detection;
#X floatatom 247 1281 5 0 0 0 - - -;
#X obj 45 111 hsl 128 15 -50 10 0 0 \$0-volume-sld-s \$0-volume-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 183 112 nbx 5 14 -50 10 0 0 \$0-volume-nbx-s \$0-volume-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 242 110 dB;
#X text 11 58 [Sample Setting];
#X obj 45 152 hsl 128 15 -24 24 0 0 \$0-pitch-sld-s \$0-pitch-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 183 153 nbx 5 14 -24 24 0 0 \$0-pitch-nbx-s \$0-pitch-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 19 474 // Load .wav sample;
#X text 90 1068 // Preview the sample & pitch detection;
#X floatatom 75 1016 5 0 0 0 - - -;
#X obj 76 938 /;
#X obj 75 975 * 1000;
#X obj 72 897 t f;
#X text 120 986 // Sample length in ms;
#X msg 21 1106 0 \, \$1 \$2;
#X obj 21 1067 pack f f;
#X obj 247 1330 *;
#X text 3846 1882 comment;
#X obj 286 1354 <= 84;
#X obj 220 1354 >= 36;
#X obj 247 1380 *;
#X obj 124 1330 - 60;
#X floatatom 124 1430 5 0 0 0 - - -;
#X obj 124 1380 * -1;
#X obj 45 193 hsl 128 15 0 100 0 0 \$0-startpoint-sld-s \$0-startpoint-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 183 194 nbx 5 14 0 100 0 0 \$0-startpoint-nbx-s \$0-startpoint-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 242 192 %;
#X obj 45 233 hsl 128 15 0 100 0 0 \$0-endpoint-sld-s \$0-endpoint-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 183 234 nbx 5 14 0 100 0 0 \$0-endpoint-nbx-s \$0-endpoint-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 242 232 %;
#X obj 829 139 gui.link 3 \$0-startpoint;
#X obj 829 170 gui.link 4 \$0-endpoint;
#X obj 45 275 hsl 128 15 25 400 0 0 \$0-timescale-sld-s \$0-timescale-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 183 276 nbx 5 14 25 400 0 0 \$0-timescale-nbx-s \$0-timescale-nbx-r
empty 0 -8 0 10 -262144 -1 -1 25 256;
#X text 242 274 %;
#X obj 829 201 gui.link 5 \$0-timescale;
#X text 591 58 [Polyphony Mode];
#X text 328 58 [Time Stretching Mode];
#X text 381 94 None;
#X text 381 125 Fixed;
#X obj 386 208 hsl 64 15 1 8 0 0 \$0-samplingdelay-sld-s \$0-samplingdelay-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 459 209 nbx 1 14 1 8 0 0 \$0-samplingdelay-nbx-s \$0-samplingdelay-nbx-r
empty 0 -8 0 10 -262144 -1 -1 1 256;
#X obj 829 232 gui.link 6 \$0-samplingdelay;
#X text 830 19 // GUI logics;
#X obj 1746 1002 int;
#X floatatom 1746 1035 5 0 0 0 - - -;
#X obj 1746 967 r \$0-samplingdelay;
#X text 381 156 Adaptive:;
#X text 242 151 semitone;
#X text 482 208 beat;
#X text 13 318 [Envelope];
#X obj 20 503 r \$0-loadWav;
#X obj 1506 968 r \$0-tMode;
#X obj 247 1231 r \$0-autoPitch;
#X floatatom 1507 1061 5 0 0 0 - - -;
#X obj 1047 43 array define sampleWave;
#X msg 20 764 read -resize \$1 sampleWave;
#X obj 21 1186 tabread4~ sampleWave;
#X obj 44 374 hsl 128 15 0 5000 0 0 \$0-attack-sld-s \$0-attack-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 182 375 nbx 5 14 0 5000 0 0 \$0-attack-nbx-s \$0-attack-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 241 373 ms;
#X obj 44 415 hsl 128 15 0 5000 0 0 \$0-release-sld-s \$0-release-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 182 416 nbx 5 14 0 5000 0 0 \$0-release-nbx-s \$0-release-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 241 414 ms;
#X obj 829 263 gui.link 7 \$0-attack;
#X obj 829 294 gui.link 8 \$0-release;
#X obj 829 325 gui.link 9 \$0-portamento;
#X text 646 94 Poly;
#X text 646 125 Mono;
#X text 646 156 Legato;
#X floatatom 841 1528 5 0 0 0 - - -;
#X obj 841 1501 r \$0-pMode;
#X obj 651 207 hsl 64 15 0 1000 0 0 \$0-portamento-sld-s \$0-portamento-sld-r
empty -2 -8 0 10 -262144 -1 -1 0 1;
#X obj 726 208 nbx 4 14 0 1000 0 0 \$0-portamento-nbx-s \$0-portamento-nbx-r
empty 0 -8 0 10 -262144 -1 -1 0 256;
#X text 775 207 ms;
#X text 40 90 * Volume;
#X text 40 131 * Pitch (Relative to C4);
#X text 40 172 * Start Position;
#X text 40 212 * End Position;
#X text 40 254 * Time Scale;
#X text 39 353 * Attack;
#X text 39 393 * Release;
#X text 381 184 * Sampling Delay;
#X text 646 184 * Portamento;
#X obj 124 1231 sigmund~ note;
#X obj 171 1525 send \$0-pitch-sld-s;
#X obj 1230 44 loadbang;
#X obj 1307 43 array define window 4096;
#X obj 758 1931 sampling.core sampleWave window;
#X obj 940 1561 - 60;
#X obj 940 1601 +;
#X obj 982 1561 r \$0-pitch;
#X obj 1239 1448 r \$0-volume;
#X floatatom 1205 1614 5 0 0 0 - - -;
#X obj 1238 1536 dbtopow;
#X obj 1240 1478 float;
#X obj 1239 1508 + 100;
#X obj 1205 1584 *;
#X obj 659 643 r \$0-timescale;
#X msg 1230 81 \; window read hann4096.txt;
#X obj 173 1480 spigot;
#X obj 413 643 r \$0-startpoint;
#X obj 547 644 r \$0-endpoint;
#X obj 414 796 *;
#X text 414 607 // Time labels calculation;
#X obj 517 786 *;
#X obj 661 1706 pack 0 f f f;
#X obj 644 789 -;
#X obj 644 826 abs;
#X obj 626 856 *;
#X obj 626 892 *;
#X obj 413 739 t b f;
#X obj 547 741 t b f;
#X obj 661 743 t b f;
#X floatatom 414 866 5 0 0 0 - - -;
#X floatatom 517 865 5 0 0 0 - - -;
#X floatatom 626 934 5 0 0 0 - - -;
#X floatatom 413 706 5 0 0 0 - - -;
#X floatatom 545 706 5 0 0 0 - - -;
#X floatatom 660 708 5 0 0 0 - - -;
#X floatatom 230 836 5 0 0 0 - - -;
#X obj 413 667 * 0.01;
#X obj 547 668 * 0.01;
#X obj 659 667 * 0.01;
#X obj 612 1756 t b f;
#X obj 612 1787 delay;
#X msg 661 1730 \$2 \, \$3 \$4;
#X msg 612 1731 \$4;
#X obj 810 999 pow;
#X obj 844 935 / 12;
#X obj 763 938 float 2;
#X obj 632 1129 spigot;
#X obj 826 1123 spigot;
#X obj 911 1648 t b f;
#X obj 824 1055 /;
#X obj 810 1026 t b f;
#X obj 1508 992 t b f;
#X obj 1507 1030 int;
#X text 761 910 // Adjust duration to match the frequency;
#X text 406 1028 // Start & end sample \, duration in ms;
#X obj 1102 1418 spigot;
#X obj 1154 1388 ||;
#X obj 1187 1261 r \$0-notePlaying;
#X obj 890 1422 s \$0-notePlaying;
#X obj 1160 1334 ==;
#X floatatom 1187 1297 5 0 0 0 - - -;
#X obj 924 1326 spigot 1;
#X obj 1000 1299 > 0;
#X obj 1069 1248 swap;
#X obj 1102 1462 select 0;
#X obj 1103 1504 int -1;
#X obj 1103 1535 s \$0-notePlaying;
#X obj 891 1355 t f b f;
#X obj 701 1563 spigot 1;
#X obj 815 1582 ||;
#X obj 798 1555 < 0;
#X floatatom 798 1528 5 0 0 0 - - -;
#X obj 613 1839 int -1;
#X obj 613 1930 s \$0-notePlaying;
#X obj 1337 1681 value \$0-release;
#X obj 902 1771 line;
#X obj 913 1707 pack;
#X msg 901 1744 \$1 \$2;
#X obj 1049 1620 r \$0-portamento;
#X obj 989 1695 *;
#X obj 1049 1648 t b f;
#X obj 992 1650 != -1;
#X text 873 1970 // Sampling in mono and legato modes;
#X obj 1079 1807 line;
#X msg 1079 1783 \$1 \$2;
#X obj 1079 1757 pack;
#X obj 1198 1681 value \$0-attack;
#X obj 1205 1647 t f b;
#X obj 1130 1732 spigot;
#X obj 1315 1738 spigot;
#X obj 1382 1707 == 0;
#X msg 822 1818 stop \, 0;
#X obj 1204 1712 > 0;
#X obj 1650 966 r playhead;
#X obj 1650 990 route bpm;
#X text 1516 939 // Delay calculation in the adaptive mode;
#X obj 1654 1095 /;
#X obj 1650 1028 t b f;
#X obj 1697 1136 *;
#X obj 1630 1174 *;
#X obj 1630 1198 s \$0-delayedTime;
#X obj 1027 1849 pipe;
#X obj 910 1832 pipe;
#X obj 1215 1801 r \$0-delayedTime;
#X floatatom 1215 1825 5 0 0 0 - - -;
#X obj 1601 1061 float 60000;
#X obj 992 1104 notein;
#X obj 993 1133 pack f f;
#X obj 993 1166 spigot;
#X floatatom 1065 1130 5 0 0 0 - - -;
#X obj 1065 1103 r \$0-pMode;
#X obj 994 1203 unpack f f;
#X obj 2134 1229 notein;
#X obj 2135 1258 pack f f;
#X obj 2135 1291 spigot;
#X floatatom 2207 1255 5 0 0 0 - - -;
#X obj 2207 1228 r \$0-pMode;
#X obj 2136 1328 unpack f f;
#X obj 2136 1363 poly 16 1;
#X obj 347 988 s \$0-regionLeft;
#X obj 474 987 s \$0-regionRight;
#X obj 613 986 s \$0-t1Duration;
#X obj 2259 1348 r \$0-regionLeft;
#X obj 2390 1351 r \$0-regionRight;
#X obj 2595 1355 r \$0-t1Duration;
#X obj 3008 1364 r \$0-delayedTime;
#X obj 2913 1362 r \$0-volume;
#X obj 2508 1352 r \$0-pitch;
#X obj 2722 1358 r \$0-attack;
#X obj 2811 1359 r \$0-release;
#X obj 3150 1365 r \$0-tMode;
#X text 2385 1594 // Sampling in poly mode;
#X obj 2136 1472 route 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16, f 142
;
#X obj 2136 1523 grouped.unit;
#X obj 2197 1552 grouped.unit;
#X obj 2259 1524 grouped.unit;
#X obj 2321 1553 grouped.unit;
#X obj 2382 1523 grouped.unit;
#X obj 2443 1552 grouped.unit;
#X obj 2505 1524 grouped.unit;
#X obj 2567 1553 grouped.unit;
#X obj 2632 1525 grouped.unit;
#X obj 2693 1554 grouped.unit;
#X obj 2755 1526 grouped.unit;
#X obj 2817 1555 grouped.unit;
#X obj 2878 1525 grouped.unit;
#X obj 2939 1554 grouped.unit;
#X obj 3001 1526 grouped.unit;
#X obj 3063 1555 grouped.unit;
#X obj 777 1614 r \$0-tMode;
#X obj 684 1663 spigot;
#X obj 1673 1824 pack 0 f f f, f 30;
#X obj 1624 1890 t b f;
#X obj 1720 1705 r \$0-regionLeft;
#X obj 1743 1731 r \$0-regionRight;
#X floatatom 1733 1527 5 0 0 0 - - -;
#X obj 2019 1699 -;
#X obj 2037 1646 r \$0-delayedTime;
#X obj 2019 1723 * -1;
#X obj 1723 1495 timer;
#X obj 1735 1574 spigot;
#X obj 1624 1388 spigot;
#X obj 1663 1331 r \$0-pMode;
#X obj 1905 1337 spigot;
#X obj 1944 1280 r \$0-pMode;
#X obj 1624 1281 r \$0-notePlaying;
#X obj 1624 1305 select -1;
#X obj 1901 1650 r \$0-release;
#X obj 1879 1700 +;
#X obj 1672 1794 pipe;
#X msg 1695 1855 \$2 \, \$3 \$4;
#X msg 1646 1856 \$4;
#X obj 1740 1794 pipe;
#X obj 1810 1789 pipe;
#X obj 1878 1790 pipe;
#X obj 1494 1338 spigot;
#X obj 1533 1281 r \$0-pMode;
#X obj 1802 1282 r \$0-notePlaying;
#X obj 1624 1944 delay;
#X obj 1735 1643 t b b f f;
#X obj 1847 1446 spigot;
#X obj 1905 1362 t f b b;
#X obj 1953 1395 int -1;
#X obj 1953 1419 != -1;
#X text 261 23 Load .wav File;
#X obj 138 624 loadbang;
#X obj 829 356 gui.link 10 \$0-tMode;
#X obj 829 387 gui.link 11 \$0-pMode;
#X obj 340 88 vradio 30 1 0 3 \$0-tMode-nbx-s \$0-tMode-nbx-r empty
0 -8 0 10 -262144 -1 -1 0;
#X obj 604 89 vradio 30 1 0 3 \$0-pMode-nbx-s \$0-pMode-nbx-r empty
0 -8 0 10 -262144 -1 -1 0;
#X obj 841 1557 != 2;
#X obj 1065 1159 != 0;
#X obj 777 1662 < 2;
#X obj 1563 1134 == 2;
#X obj 672 1097 == 1;
#X obj 832 1091 == 0;
#X obj 1533 1305 == 2;
#X obj 1663 1355 == 2;
#X obj 1944 1304 == 1;
#X obj 2207 1284 == 0;
#X obj 1045 386 list prepend save;
#X obj 1045 407 list trim;
#X obj 1045 428 send camomile;
#X obj 1045 260 receive save;
#X obj 1204 263 receive load;
#X obj 1046 204 text define \$0-text;
#X obj 1045 281 text size \$0-text;
#X obj 1045 302 t f b, f 7;
#X obj 1045 323 until;
#X obj 1117 323 f 0;
#X obj 1045 344 f, f 7;
#X obj 1121 344 + 1;
#X obj 1045 365 text get \$0-text;
#X obj 1270 301 text set \$0-text 1e+015;
#X text 1044 180 // State load & save;
#X msg 138 648 default.wav;
#X obj 33 701 text set \$0-text \$1;
#X obj 1204 332 text get \$0-text;
#X msg 1204 293 0;
#X obj 1204 356 route symbol;
#X obj 829 421 gui.link 12 \$0-alg;
#X obj 338 348 vradio 30 1 0 3 \$0-alg-nbx-s \$0-alg-nbx-r empty 0
-8 0 10 -262144 -1 -1 0;
#X text 326 318 [Algorithm];
#X text 379 354 Granular(4096);
#X text 379 385 Granular(8192);
#X text 1044 17 // Array operations;
#X obj 1545 44 r \$0-alg;
#X msg 1429 153 \; window resize 4096 \; window read hann4096.txt;
#X msg 1641 153 \; window resize 8192 \; window read hann8192.txt;
#X obj 1075 1860 r \$0-alg;
#X obj 1075 1884 + 1;
#X obj 1075 1908 * 4096;
#X obj 1545 68 select 0 1;
#X obj 2136 1417 pack 1 f f f f f f f f f f f f, f 159;
#X obj 3244 1364 r \$0-alg;
#X obj 1861 42 array define p0;
#X obj 1861 65 array define p1;
#X obj 1861 88 array define p2;
#X obj 1861 111 array define p3;
#X obj 1861 134 array define p4;
#X obj 1861 157 array define p5;
#X obj 1861 180 array define p6;
#X obj 1861 203 array define p7;
#X obj 1861 226 array define p8;
#X obj 1861 249 array define p9;
#X obj 1981 42 array define a0;
#X obj 1981 65 array define a1;
#X obj 1981 88 array define a2;
#X obj 1981 111 array define a3;
#X obj 1981 134 array define a4;
#X obj 1981 157 array define a5;
#X obj 1981 180 array define a6;
#X obj 1981 203 array define a7;
#X obj 1981 226 array define a8;
#X obj 1981 249 array define a9;
#X msg -1429 956 \; p0 resize \$1 \; p1 resize \$1 \; p2 resize \$1
\; p3 resize \$1 \; p4 resize \$1 \; p5 resize \$1 \; p6 resize \$1
\; p7 resize \$1 \; p8 resize \$1 \; p9 resize \$1 \; a0 resize \$1
\; a1 resize \$1 \; a2 resize \$1 \; a3 resize \$1 \; a4 resize \$1
\; a5 resize \$1 \; a6 resize \$1 \; a7 resize \$1 \; a8 resize \$1
\; a9 resize \$1, f 14;
#X obj -1431 1287 sigmund~ -npts 4096 -hop 64 -npeak 10 peaks;
#X text -1430 912 // Freq analysis for additive synthesizer;
#X obj -1799 1296 bang;
#X obj -1728 1374 route 0 1 2 3 4 5 6 7 8 9, f 161;
#X obj -1788 1426 unpack 0 0 0 0;
#X obj -1836 1546 tabwrite~ p0;
#X obj -1756 1472 tabwrite~ a0;
#X obj -1639 1418 unpack 0 0 0 0;
#X obj -1489 1440 unpack 0 0 0 0;
#X obj -1616 1467 tabwrite~ a1;
#X obj -1636 1577 tabwrite~ p1;
#X obj -1424 1501 tabwrite~ a2;
#X obj -1489 1571 tabwrite~ p2;
#X obj -1285 1436 unpack 0 0 0 0;
#X obj -1220 1497 tabwrite~ a3;
#X obj -1285 1567 tabwrite~ p3;
#X obj -1113 1441 unpack 0 0 0 0;
#X obj -1113 1572 tabwrite~ p4;
#X obj -1048 1502 tabwrite~ a4;
#X obj -938 1443 unpack 0 0 0 0;
#X obj -873 1504 tabwrite~ a5;
#X obj -938 1574 tabwrite~ p5;
#X obj -800 1440 unpack 0 0 0 0;
#X obj -735 1501 tabwrite~ a6;
#X obj -800 1571 tabwrite~ p6;
#X obj -641 1441 unpack 0 0 0 0;
#X obj -641 1572 tabwrite~ p7;
#X obj -576 1502 tabwrite~ a7;
#X obj -481 1443 unpack 0 0 0 0;
#X obj -416 1504 tabwrite~ a8;
#X obj -481 1574 tabwrite~ p8;
#X obj -309 1445 unpack 0 0 0 0;
#X obj -309 1576 tabwrite~ p9;
#X obj -244 1506 tabwrite~ a9;
#X text 379 416 Additive Resynthesis;
#X obj -95 793 samplerate~;
#X obj -95 711 receive pd;
#X obj -95 739 route dsp;
#X obj -95 767 sel 1;
#X connect 2 0 27 0;
#X connect 2 0 137 0;
#X connect 2 0 32 0;
#X connect 2 0 357 0;
#X connect 3 0 318 0;
#X connect 3 0 73 0;
#X connect 5 0 1 0;
#X connect 6 0 3 0;
#X connect 7 0 74 0;
#X connect 8 0 33 0;
#X connect 8 0 38 0;
#X connect 9 0 3 0;
#X connect 10 0 9 0;
#X connect 17 0 33 1;
#X connect 26 0 32 1;
#X connect 26 0 126 0;
#X connect 27 0 28 0;
#X connect 28 0 26 0;
#X connect 29 0 27 1;
#X connect 31 0 7 0;
#X connect 31 0 360 0;
#X connect 32 0 31 0;
#X connect 33 0 36 0;
#X connect 33 0 35 0;
#X connect 35 0 37 1;
#X connect 36 0 37 0;
#X connect 37 0 117 1;
#X connect 38 0 40 0;
#X connect 39 0 117 0;
#X connect 40 0 39 0;
#X connect 61 0 62 0;
#X connect 62 0 200 1;
#X connect 63 0 61 0;
#X connect 68 0 5 0;
#X connect 69 0 153 0;
#X connect 70 0 17 0;
#X connect 71 0 295 0;
#X connect 71 0 296 0;
#X connect 71 0 297 0;
#X connect 73 0 2 0;
#X connect 74 0 4 0;
#X connect 74 0 4 1;
#X connect 74 0 101 0;
#X connect 74 0 358 0;
#X connect 87 0 292 0;
#X connect 88 0 87 0;
#X connect 101 0 8 0;
#X connect 103 0 116 0;
#X connect 106 0 107 0;
#X connect 107 0 150 0;
#X connect 108 0 107 1;
#X connect 109 0 112 0;
#X connect 110 0 189 0;
#X connect 111 0 114 1;
#X connect 112 0 113 0;
#X connect 113 0 111 0;
#X connect 114 0 110 0;
#X connect 115 0 140 0;
#X connect 117 0 102 0;
#X connect 118 0 138 0;
#X connect 119 0 139 0;
#X connect 120 0 131 0;
#X connect 122 0 132 0;
#X connect 123 0 143 0;
#X connect 123 0 144 0;
#X connect 124 0 125 0;
#X connect 125 0 126 1;
#X connect 126 0 127 0;
#X connect 127 0 133 0;
#X connect 128 0 137 0;
#X connect 128 0 26 0;
#X connect 128 1 120 1;
#X connect 128 1 124 1;
#X connect 129 0 137 0;
#X connect 129 0 26 0;
#X connect 129 1 122 1;
#X connect 129 1 124 0;
#X connect 130 0 26 0;
#X connect 130 0 135 0;
#X connect 130 1 127 1;
#X connect 131 0 123 1;
#X connect 131 0 221 0;
#X connect 132 0 123 2;
#X connect 132 0 222 0;
#X connect 133 0 148 0;
#X connect 133 0 151 0;
#X connect 133 0 223 0;
#X connect 134 0 128 0;
#X connect 135 0 129 0;
#X connect 136 0 130 0;
#X connect 137 0 120 0;
#X connect 137 0 122 0;
#X connect 138 0 134 0;
#X connect 139 0 135 0;
#X connect 140 0 136 0;
#X connect 141 0 142 0;
#X connect 141 1 142 1;
#X connect 142 0 105 0;
#X connect 142 0 193 0;
#X connect 142 0 174 0;
#X connect 143 0 105 1;
#X connect 144 0 141 0;
#X connect 145 0 152 0;
#X connect 146 0 145 1;
#X connect 147 0 145 0;
#X connect 148 0 123 3;
#X connect 149 0 123 3;
#X connect 150 0 147 0;
#X connect 150 1 146 0;
#X connect 150 1 178 0;
#X connect 151 0 149 0;
#X connect 152 0 133 0;
#X connect 152 1 151 1;
#X connect 153 0 133 0;
#X connect 153 1 154 0;
#X connect 154 0 71 0;
#X connect 157 0 114 0;
#X connect 157 0 166 0;
#X connect 158 0 157 1;
#X connect 159 0 162 0;
#X connect 161 0 158 0;
#X connect 162 0 161 1;
#X connect 162 0 173 0;
#X connect 162 0 183 0;
#X connect 163 0 169 0;
#X connect 164 0 158 1;
#X connect 164 0 163 1;
#X connect 165 0 157 0;
#X connect 165 1 161 0;
#X connect 166 0 167 0;
#X connect 167 0 168 0;
#X connect 169 0 160 0;
#X connect 169 1 170 0;
#X connect 169 1 173 0;
#X connect 169 2 106 0;
#X connect 170 0 252 0;
#X connect 170 0 277 0;
#X connect 171 0 170 1;
#X connect 172 0 171 0;
#X connect 173 0 172 0;
#X connect 174 0 175 0;
#X connect 176 0 191 0;
#X connect 177 0 204 0;
#X connect 178 0 179 0;
#X connect 179 0 177 0;
#X connect 180 0 182 0;
#X connect 181 0 178 1;
#X connect 182 1 181 1;
#X connect 183 0 181 0;
#X connect 185 0 203 0;
#X connect 186 0 185 0;
#X connect 187 0 186 0;
#X connect 188 0 190 0;
#X connect 189 0 187 0;
#X connect 189 1 188 0;
#X connect 189 1 176 0;
#X connect 190 0 187 1;
#X connect 191 0 187 1;
#X connect 192 0 191 1;
#X connect 193 0 185 0;
#X connect 194 0 190 1;
#X connect 195 0 196 0;
#X connect 196 0 199 0;
#X connect 198 0 200 0;
#X connect 199 0 207 0;
#X connect 199 1 198 1;
#X connect 200 0 201 0;
#X connect 201 0 202 0;
#X connect 203 0 105 3;
#X connect 204 0 105 2;
#X connect 205 0 206 0;
#X connect 206 0 204 1;
#X connect 206 0 203 1;
#X connect 207 0 198 0;
#X connect 208 0 209 0;
#X connect 208 1 209 1;
#X connect 209 0 210 0;
#X connect 210 0 213 0;
#X connect 211 0 293 0;
#X connect 212 0 211 0;
#X connect 213 0 163 0;
#X connect 213 0 165 0;
#X connect 213 1 164 0;
#X connect 213 1 165 1;
#X connect 213 1 192 0;
#X connect 213 1 194 0;
#X connect 214 0 215 0;
#X connect 214 1 215 1;
#X connect 215 0 216 0;
#X connect 216 0 219 0;
#X connect 217 0 301 0;
#X connect 218 0 217 0;
#X connect 219 0 220 0;
#X connect 219 1 220 1;
#X connect 220 0 335 0;
#X connect 220 1 335 1;
#X connect 220 2 335 2;
#X connect 224 0 335 3;
#X connect 225 0 335 4;
#X connect 226 0 335 6;
#X connect 227 0 335 10;
#X connect 228 0 335 9;
#X connect 229 0 335 5;
#X connect 230 0 335 7;
#X connect 231 0 335 8;
#X connect 232 0 335 11;
#X connect 234 0 235 0;
#X connect 234 1 236 0;
#X connect 234 2 237 0;
#X connect 234 3 238 0;
#X connect 234 4 239 0;
#X connect 234 5 240 0;
#X connect 234 6 241 0;
#X connect 234 7 242 0;
#X connect 234 8 243 0;
#X connect 234 9 244 0;
#X connect 234 10 245 0;
#X connect 234 11 246 0;
#X connect 234 12 247 0;
#X connect 234 13 248 0;
#X connect 234 14 249 0;
#X connect 234 15 250 0;
#X connect 251 0 294 0;
#X connect 252 0 123 0;
#X connect 253 0 273 0;
#X connect 253 0 272 0;
#X connect 254 0 280 0;
#X connect 254 1 280 1;
#X connect 255 0 274 0;
#X connect 256 0 275 0;
#X connect 257 0 262 0;
#X connect 258 0 260 0;
#X connect 259 0 258 1;
#X connect 260 0 271 1;
#X connect 260 0 274 1;
#X connect 260 0 275 1;
#X connect 260 0 276 1;
#X connect 261 0 257 0;
#X connect 262 0 281 0;
#X connect 263 0 261 1;
#X connect 264 0 299 0;
#X connect 265 0 283 0;
#X connect 266 0 300 0;
#X connect 267 0 268 0;
#X connect 268 0 263 0;
#X connect 269 0 270 1;
#X connect 270 0 276 0;
#X connect 271 0 253 0;
#X connect 272 0 105 1;
#X connect 273 0 254 0;
#X connect 274 0 253 1;
#X connect 275 0 253 2;
#X connect 276 0 253 3;
#X connect 277 0 261 0;
#X connect 278 0 298 0;
#X connect 279 0 265 0;
#X connect 281 1 271 0;
#X connect 281 2 270 0;
#X connect 281 3 258 0;
#X connect 282 0 261 1;
#X connect 283 0 284 0;
#X connect 283 1 261 0;
#X connect 283 2 282 0;
#X connect 284 0 285 0;
#X connect 285 0 282 1;
#X connect 287 0 317 0;
#X connect 292 0 171 1;
#X connect 293 0 210 1;
#X connect 294 0 252 1;
#X connect 295 0 201 1;
#X connect 295 0 262 1;
#X connect 296 0 148 1;
#X connect 297 0 149 1;
#X connect 298 0 277 1;
#X connect 299 0 263 1;
#X connect 300 0 265 1;
#X connect 301 0 216 1;
#X connect 302 0 303 0;
#X connect 303 0 304 0;
#X connect 305 0 308 0;
#X connect 306 0 315 0;
#X connect 306 0 320 0;
#X connect 308 0 309 0;
#X connect 309 0 310 0;
#X connect 309 1 311 0;
#X connect 310 0 312 0;
#X connect 311 0 312 1;
#X connect 312 0 313 0;
#X connect 312 0 314 0;
#X connect 313 0 312 1;
#X connect 314 0 302 0;
#X connect 319 0 321 0;
#X connect 320 0 319 0;
#X connect 321 0 73 0;
#X connect 328 0 334 0;
#X connect 331 0 332 0;
#X connect 332 0 333 0;
#X connect 333 0 105 4;
#X connect 334 0 329 0;
#X connect 334 1 330 0;
#X connect 335 0 234 0;
#X connect 336 0 335 12;
#X connect 358 0 361 0;
#X connect 360 0 363 0;
#X connect 360 0 364 0;
#X connect 360 0 368 0;
#X connect 360 0 367 0;
#X connect 360 0 370 0;
#X connect 360 0 369 0;
#X connect 360 0 375 0;
#X connect 360 0 373 0;
#X connect 360 0 372 0;
#X connect 360 0 376 0;
#X connect 360 0 379 0;
#X connect 360 0 378 0;
#X connect 360 0 382 0;
#X connect 360 0 381 0;
#X connect 360 0 384 0;
#X connect 360 0 385 0;
#X connect 360 0 388 0;
#X connect 360 0 387 0;
#X connect 360 0 390 0;
#X connect 360 0 391 0;
#X connect 361 0 362 0;
#X connect 361 1 365 0;
#X connect 361 2 366 0;
#X connect 361 3 371 0;
#X connect 361 4 374 0;
#X connect 361 5 377 0;
#X connect 361 6 380 0;
#X connect 361 7 383 0;
#X connect 361 8 386 0;
#X connect 361 9 389 0;
#X connect 362 0 363 0;
#X connect 362 1 364 0;
#X connect 365 0 368 0;
#X connect 365 1 367 0;
#X connect 366 0 370 0;
#X connect 366 1 369 0;
#X connect 371 0 373 0;
#X connect 371 1 372 0;
#X connect 374 0 375 0;
#X connect 374 1 376 0;
#X connect 377 0 379 0;
#X connect 377 1 378 0;
#X connect 380 0 382 0;
#X connect 380 1 381 0;
#X connect 383 0 384 0;
#X connect 383 1 385 0;
#X connect 386 0 388 0;
#X connect 386 1 387 0;
#X connect 389 0 390 0;
#X connect 389 1 391 0;
#X connect 393 0 29 0;
#X connect 394 0 395 0;
#X connect 395 0 396 0;
#X connect 396 0 393 0;
#X coords 0 -1 1 1 800 450 2 4 4;