This commit is contained in:
Nico 2021-09-29 19:51:32 +01:00
parent 4a23d8832d
commit ea98a7ada1
1 changed files with 0 additions and 319 deletions

319
looper.pd
View File

@ -1,319 +0,0 @@
#N canvas 429 92 1210 970 12;
#X floatatom 285 28 5 33 240 0 bpm - -;
#X obj 144 481 dac~;
#X text 249 420 run click track for 5 bars;
#X obj 440 176 grid;
#X msg 440 143 connect;
#X obj 440 232 route 1;
#X obj 543 156 r grid;
#X obj 440 307 t b b;
#X msg 472 356 set 0 0 0;
#X obj 472 385 s grid;
#X obj 144 373 line~;
#X obj 144 397 tabread4~ loop;
#X obj 144 213 t b b, f 13;
#X obj 144 241 v buffer-len;
#X obj 144 307 pack f f, f 10;
#X msg 144 335 0 \, \$1 \$2;
#X obj 14 111 t b b, f 19;
#X obj 14 135 t b b;
#X obj 14 220 del, f 5;
#X obj 46 165 v beat-length;
#X obj 232 262 v beat-length;
#X obj 232 287 * 16;
#X obj 46 190 * 16;
#X text 25 89 play in a loop;
#X obj 501 328 s playback;
#X obj 53 229 r playback;
#X obj 14 80 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 440 257 route 0;
#X obj 14 257 spigot;
#X obj 501 307 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 14 27 r playback;
#X obj 14 52 sel 1;
#X obj 751 195 r playback;
#X msg 751 220 set 0 1 \$1;
#X obj 751 245 s grid;
#X obj 144 445 *~;
#X obj 181 425 r unmute;
#X obj 195 27 loadbang;
#X msg 195 53 1;
#X obj 195 77 s unmute;
#X obj 836 193 r unmute;
#X msg 836 245 set 0 2 \$1;
#X obj 836 270 s grid;
#X obj 836 218 expr 0-($f1-1);
#N canvas 2 570 633 444 setbpm 0;
#X text 4 30 1 beat in ms;
#X obj 93 29 expr (1/($f1/60))*1000;
#X obj 93 111 * 16;
#X text 127 112 4 bars \, in milliseconds;
#X text 147 137 in seconds;
#X obj 93 136 / 1000;
#X obj 93 231 *;
#X obj 125 211 samplerate~;
#X obj 93 161 t f b;
#X msg 125 290 resize \$1;
#X obj 125 315 s loop;
#X text 120 232 samples for 4 bars;
#X text 204 290 set buffer length;
#X obj 125 87 s beat-length;
#X obj 93 62 t f f;
#X obj 93 336 s buffer-len;
#X obj 93 256 t f f;
#X obj 93 2 inlet;
#X connect 1 0 14 0;
#X connect 2 0 5 0;
#X connect 5 0 8 0;
#X connect 6 0 16 0;
#X connect 7 0 6 1;
#X connect 8 0 6 0;
#X connect 8 1 7 0;
#X connect 9 0 10 0;
#X connect 14 0 2 0;
#X connect 14 1 13 0;
#X connect 16 0 15 0;
#X connect 16 1 9 0;
#X connect 17 0 1 0;
#X restore 285 56 pd setbpm;
#X obj 440 409 s rec;
#X obj 421 499 r rec;
#X text 190 7 init;
#X text 9 4 playback;
#X text 436 115 grid I/O;
#N canvas 0 50 450 250 (subpatch) 0;
#X array loop 504000 float 2;
#X coords 0 1 504000 -1 200 140 1 0 0;
#X restore 619 29 graph;
#X text 419 479 recording;
#X obj 384 772 dac~;
#N canvas 1248 59 533 529 clicktrack 0;
#X obj 146 98 inlet;
#X obj 210 127 inlet;
#X obj 240 453 outlet~;
#X obj 240 362 osc~ 440;
#X obj 240 418 *~;
#X obj 99 398 line~;
#X obj 99 217 metro 500;
#X obj 201 237 f;
#X obj 201 262 + 1;
#X obj 201 287 mod 4;
#X msg 186 341 440;
#X msg 247 331 220;
#X msg 99 271 1 \, 0 200;
#X obj 201 312 sel 0;
#X msg 178 198 3;
#X obj 146 151 t f b;
#X connect 0 0 15 0;
#X connect 1 0 6 1;
#X connect 3 0 4 0;
#X connect 4 0 2 0;
#X connect 5 0 4 1;
#X connect 6 0 12 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 7 1;
#X connect 9 0 13 0;
#X connect 10 0 3 0;
#X connect 11 0 3 0;
#X connect 12 0 5 0;
#X connect 13 0 10 0;
#X connect 13 1 11 0;
#X connect 14 0 7 1;
#X connect 15 0 6 0;
#X connect 15 1 14 0;
#X restore 385 694 pd clicktrack;
#X obj 473 663 r beat-length;
#X obj 536 897 tabwrite~ loop;
#X obj 537 780 adc~;
#X msg 580 752 start;
#X msg 385 592 1;
#X obj 417 640 del, f 6;
#X msg 417 665 0;
#X obj 453 590 v beat-length;
#X obj 385 617 t f b;
#X obj 453 616 * 20;
#X obj 580 777 t a b, f 8;
#X obj 580 636 del;
#X obj 421 564 t b b;
#X obj 619 616 * 4;
#X obj 619 591 v beat-length;
#X obj 580 564 t b b;
#X obj 728 784 * 4;
#X obj 633 813 del, f 14;
#X msg 633 873 stop;
#X text 736 814 wait 4 bars;
#X obj 612 719 s grid;
#X msg 612 691 lset 0 0 15;
#X msg 671 962 lset 0 0 2;
#X obj 671 996 s grid;
#X obj 619 640 t f f, f 16;
#X text 620 566 record for 4 bars after a bar's wait;
#X obj 580 661 t b b;
#X msg 710 919 \; loop normalize;
#X obj 740 611 s playback;
#X msg 740 587 0;
#X obj 421 539 t b b b, f 46;
#X obj 815 611 s unmute;
#X text 772 587 disable playback when rec starts;
#X obj 633 838 t b b b b, f 17;
#X obj 749 890 s unmute;
#X msg 749 863 1;
#X text 756 837 on recording end;
#X obj 440 282 route 0 1, f 18;
#X text 395 15 grid keys:;
#X text 395 31 0 \, 0: record;
#X obj 440 201 t a a, f 26;
#X text 382 225 toggles;
#X msg 619 241 \$2 \$3 \$1;
#X text 633 200 momentary;
#X obj 619 381 route 2;
#X obj 619 437 s unmute;
#X obj 617 402 expr 0-($f1-1);
#X msg 357 144 disconnect;
#X text 394 47 0 \, 1: playback on/off;
#X text 394 61 0 \, 2: trigger mute;
#X obj 677 345 s stutter;
#X obj 877 350 r stutter;
#X obj 876 441 metro;
#X obj 926 396 v beat-length;
#X obj 876 469 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 876 489 s unmute;
#X obj 877 376 t f b;
#X obj 878 401 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 792 445 sel 0;
#X obj 792 495 s unmute;
#X msg 792 470 1;
#X msg 751 346 set 8 0 \$1;
#X obj 751 371 s grid;
#X obj 677 316 t f f;
#X obj 926 421 / 2;
#X obj 619 291 route 0;
#X obj 677 291 route 0;
#X text 843 161 TODO replace this route-ing with something better;
#X msg 747 303 2;
#X msg 786 303 4;
#X msg 827 297 8;
#X obj 619 266 route 0 8 9 10 11, f 30;
#X obj 998 351 r stutter-time;
#X obj 850 328 s stutter-time;
#X connect 0 0 44 0;
#X connect 3 0 94 0;
#X connect 4 0 3 0;
#X connect 5 0 27 0;
#X connect 6 0 3 0;
#X connect 7 0 45 0;
#X connect 7 1 8 0;
#X connect 8 0 9 0;
#X connect 10 0 11 0;
#X connect 11 0 35 0;
#X connect 12 0 13 0;
#X connect 12 1 20 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 10 0;
#X connect 16 0 17 0;
#X connect 16 1 12 0;
#X connect 17 0 18 0;
#X connect 17 1 19 0;
#X connect 18 0 28 0;
#X connect 19 0 22 0;
#X connect 20 0 21 0;
#X connect 21 0 14 1;
#X connect 22 0 18 1;
#X connect 25 0 28 1;
#X connect 26 0 16 0;
#X connect 27 0 91 0;
#X connect 28 0 26 0;
#X connect 29 0 24 0;
#X connect 30 0 31 0;
#X connect 31 0 26 0;
#X connect 32 0 33 0;
#X connect 33 0 34 0;
#X connect 35 0 1 0;
#X connect 35 0 1 1;
#X connect 36 0 35 1;
#X connect 37 0 38 0;
#X connect 38 0 39 0;
#X connect 40 0 43 0;
#X connect 41 0 42 0;
#X connect 43 0 41 0;
#X connect 46 0 84 0;
#X connect 53 0 52 0;
#X connect 53 0 52 1;
#X connect 54 0 53 1;
#X connect 56 0 55 0;
#X connect 57 0 64 0;
#X connect 58 0 62 0;
#X connect 59 0 60 0;
#X connect 60 0 53 0;
#X connect 61 0 63 0;
#X connect 62 0 53 0;
#X connect 62 1 59 0;
#X connect 63 0 59 1;
#X connect 64 0 55 0;
#X connect 64 1 71 0;
#X connect 65 0 80 0;
#X connect 66 0 58 0;
#X connect 66 1 61 0;
#X connect 67 0 78 0;
#X connect 68 0 67 0;
#X connect 69 0 65 0;
#X connect 69 1 68 0;
#X connect 70 0 71 1;
#X connect 71 0 87 0;
#X connect 72 0 55 0;
#X connect 75 0 74 0;
#X connect 76 0 77 0;
#X connect 78 0 65 1;
#X connect 78 1 70 0;
#X connect 80 0 57 0;
#X connect 80 1 75 0;
#X connect 83 0 82 0;
#X connect 83 0 85 0;
#X connect 84 0 66 0;
#X connect 84 1 69 0;
#X connect 84 2 83 0;
#X connect 87 0 72 0;
#X connect 87 1 76 0;
#X connect 87 2 81 0;
#X connect 87 3 89 0;
#X connect 89 0 88 0;
#X connect 91 0 7 0;
#X connect 91 1 29 0;
#X connect 94 0 5 0;
#X connect 94 1 96 0;
#X connect 96 0 125 0;
#X connect 98 0 100 0;
#X connect 100 0 99 0;
#X connect 101 0 3 0;
#X connect 105 0 110 0;
#X connect 106 0 108 0;
#X connect 107 0 118 0;
#X connect 108 0 109 0;
#X connect 110 0 111 0;
#X connect 110 1 107 0;
#X connect 111 0 106 0;
#X connect 111 0 112 0;
#X connect 112 0 114 0;
#X connect 114 0 113 0;
#X connect 115 0 116 0;
#X connect 117 0 104 0;
#X connect 117 1 115 0;
#X connect 118 0 106 1;
#X connect 119 0 98 0;
#X connect 120 0 117 0;
#X connect 122 0 127 0;
#X connect 123 0 127 0;
#X connect 124 0 127 0;
#X connect 125 0 119 0;
#X connect 125 1 120 0;
#X connect 125 2 122 0;
#X connect 125 3 123 0;
#X connect 125 4 124 0;
#X connect 126 0 118 1;