Skip to content
Permalink
683c7bd967
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
executable file 1445 lines (1445 sloc) 37.1 KB
#N canvas 0 23 1748 1030 12;
#X obj 422 9 r smithd32_control;
#X obj 324 145 throw~ smithd32_audio_1;
#N canvas -1929 -9 1600 796 version1 0;
#X floatatom 869 73 5 0 0 0 - - -;
#X obj 869 101 * 12;
#X floatatom 869 127 5 0 0 0 - - -;
#X obj 358 16 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 358 44 metro 1000;
#X obj 402 297 route 1 2 3 4 5 6;
#X obj 312 338 s I;
#X obj 363 338 s II;
#X obj 420 338 s III;
#X obj 484 338 s IV;
#X obj 171 25 r I;
#X obj 171 88 s chord;
#X msg 171 55 48 52 55;
#X obj 171 191 s chord;
#X obj 171 302 s chord;
#X msg 171 158 50 53 57;
#X msg 171 269 53 57 60;
#X obj 171 407 s chord;
#X obj 171 510 s chord;
#X obj 171 621 s chord;
#X msg 171 374 55 59 62;
#X msg 171 588 59 62 65;
#X obj 718 127 r chord;
#X msg 171 477 57 60 64;
#X obj 718 196 list prepend set;
#X obj 718 219 list trim;
#X msg 718 242 60 64 67;
#X obj 171 128 r II;
#X obj 171 239 r III;
#X obj 171 344 r IV;
#X obj 541 338 s V;
#X obj 593 338 s VI;
#X obj 171 447 r V;
#N canvas 1002 29 678 460 diatonic_harmony 0;
#X obj 273 11 inlet;
#X text 154 11 current chord in;
#X obj 273 64 sel 1 2 3 4 5 6;
#X obj 176 119 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X floatatom 313 316 5 0 0 0 - - -;
#X msg 244 142 5;
#X obj 244 118 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 281 118 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 281 142 6;
#X obj 316 119 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 316 142 random 2;
#X obj 316 170 sel 0 1;
#X msg 301 203 1;
#X msg 334 203 5;
#X obj 396 118 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 433 118 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 396 142 1;
#X msg 433 142 2;
#X obj 313 353 outlet;
#X text 16 116 Diatonic Harmony;
#X text 16 144 1 - ANY;
#X text 16 163 2 - 5;
#X text 16 181 3 - 6;
#X text 16 199 4 - 1 or 5;
#X text 16 216 5 - 1;
#X text 16 234 6 - 2;
#X obj 176 142 random 5;
#X obj 176 170 + 2;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 6 0;
#X connect 2 2 7 0;
#X connect 2 3 9 0;
#X connect 2 4 14 0;
#X connect 2 5 15 0;
#X connect 3 0 26 0;
#X connect 4 0 18 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 11 1 13 0;
#X connect 12 0 4 0;
#X connect 13 0 4 0;
#X connect 14 0 16 0;
#X connect 15 0 17 0;
#X connect 16 0 4 0;
#X connect 17 0 4 0;
#X connect 26 0 27 0;
#X connect 27 0 4 0;
#X restore 402 237 pd diatonic_harmony;
#X msg 324 148 1;
#X obj 356 247 f;
#X floatatom 402 260 5 0 0 0 - - -;
#X obj 294 340 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 342 340 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 399 340 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 464 340 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 521 340 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 572 340 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 451 260 << current chord;
#X text 737 73 Select octave >> (base -1 from center C), f 17;
#X text 26 259 C major scale;
#X text 26 279 I - CEG \,;
#X text 26 298 II - DFA \,;
#X text 26 318 III - EGB \,;
#X text 26 338 IV - FAC \,;
#X text 26 358 V - GBD \,;
#X text 26 376 VI - ACE;
#X obj 593 222 s tempo;
#X obj 484 174 s start;
#X obj 319 435 r start;
#X obj 386 435 r tempo;
#X obj 319 495 metro 1000;
#X obj 386 465 / 4;
#X obj 358 76 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 708 273 unpack f f f;
#X obj 718 155 list-abs/list-math + 0;
#X obj 683 429 sine_synth;
#X obj 789 429 sine_synth;
#X obj 919 430 sine_synth;
#X obj 171 558 r VI;
#X obj 869 24 loadbang;
#X msg 869 49 1;
#X obj 695 770 s dur;
#X obj 750 367 r dur;
#X obj 856 347 r dur;
#X obj 986 367 r dur;
#X obj 319 529 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 247 724 route 1 2 3 4;
#X obj 247 648 f;
#X obj 283 648 + 1;
#X obj 247 673 expr ($f1 % 4)+1;
#X floatatom 247 696 5 0 0 0 - - -;
#X obj 504 531 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 319 616 sel 0 1;
#X obj 393 648 f;
#X obj 429 648 + 1;
#X obj 393 673 expr ($f1 % 4)+1;
#X floatatom 393 696 5 0 0 0 - - -;
#X obj 319 593 * 1;
#X msg 319 561 1;
#X obj 387 816 s s1;
#X obj 431 816 s s2;
#X obj 471 816 s s3;
#X obj 269 758 s all;
#X obj 716 367 r s1;
#X obj 822 347 r s2;
#X obj 952 367 r s3;
#X obj 833 370 r all;
#X obj 619 599 sel 0 1;
#X msg 504 505 1;
#X obj 482 476 loadbang;
#X obj 609 692 f;
#X obj 627 626 r tempo;
#X obj 627 649 * 0.75;
#X obj 765 694 f;
#X obj 783 634 r tempo;
#X obj 783 657 * 0.25;
#X text 635 188 << TEMPO;
#X text 292 16 START >>;
#X text 418 530 ARPEGGIO?>>;
#X obj 370 103 s beat;
#X obj 446 383 r beat;
#X obj 446 431 sel 0;
#X obj 593 56 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 593 103 * 1;
#X msg 593 75 1;
#X obj 628 76 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 593 132 sel 0 1;
#X obj 593 162 timer;
#X floatatom 593 189 5 0 0 0 - - -;
#X obj 274 81 loadbang;
#X obj 593 20 r beat;
#X floatatom 426 16 5 0 0 0 - - -;
#X obj 484 20 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X obj 520 75 + 1;
#X floatatom 484 103 5 0 0 0 - - -;
#X msg 428 103 0;
#X obj 484 75 f;
#X obj 484 -38 loadbang;
#X msg 484 -13 1;
#X msg 426 -12 1000;
#X obj 484 150 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 292 -28 hsl 128 15 200 2000 0 0 empty empty empty -2 -8 0 10
-262144 -1 -1 5644 1;
#X obj 435 199 s arp;
#X obj 431 487 r arp;
#X msg 431 509 1;
#X obj 435 176 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 484 48 metro 500;
#X obj 435 153 sel 1;
#X obj 716 404 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 822 410 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 952 408 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X floatatom 695 735 5 0 0 0 - - -;
#X obj 547 479 * 1;
#X msg 547 451 1;
#X obj 547 508 sel 1;
#X msg 579 451 0;
#X obj 547 533 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 611 451 1;
#X obj 547 385 r tempo;
#X obj 547 409 delay 100;
#X obj 435 127 > 2;
#X obj 484 126 < 5;
#X obj 237 41 r smithd32_tempo;
#X obj 238 18 inlet;
#X obj 819 -15 inlet;
#X obj 1098 549 outlet;
#X obj 681 -15 r smithd32_control;
#X msg 516 684 0;
#X msg 550 684 5;
#X obj 701 312 s n1;
#X obj 745 312 s n2;
#X obj 789 313 s n3;
#X obj 682 395 r n1;
#X obj 786 393 r n2;
#X obj 918 396 r n3;
#X obj 1101 400 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 1207 406 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 1337 404 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 1067 391 r n1;
#X obj 1171 389 r n2;
#X obj 1303 392 r n3;
#X obj 1068 425 envelopes;
#X obj 1174 425 envelopes;
#X obj 1304 426 envelopes;
#X obj 393 772 route 1 2 3 4;
#X obj 1101 363 r s4;
#X obj 1207 343 r s5;
#X obj 1337 363 r s6;
#X obj 393 736 + 0;
#X obj 540 831 route 1 2 3 4;
#X obj 540 793 - 4;
#X obj 534 875 s s4;
#X obj 578 875 s s5;
#X obj 618 875 s s6;
#X obj 517 570 sel 1;
#X obj 790 797 + 20;
#X obj 790 852 s decay;
#X obj 1135 363 r decay;
#X obj 1241 343 r decay;
#X obj 1371 363 r decay;
#X floatatom 790 827 5 0 0 0 - - -;
#X obj 751 753 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 790 770 random 300;
#X obj 518 632 sel 0;
#X obj 550 664 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 517 601 random 5;
#X text 959 634 By Darius Smith;
#X text 960 653 Tutorials used:;
#X text 949 779 https://www.youtube.com/watch?v=I88Cxi86Zu8&feature=youtu.be
;
#X text 949 801 https://www.youtube.com/watch?v=gqpvIwYko3o&feature=youtu.be
;
#X text 952 759 By Really Useful Plugins;
#X text 953 697 By Programming for People;
#X text 951 718 https://www.youtube.com/watch?v=gdIAq7Kg-gI;
#X text 997 -3 Plans for the Future:;
#X text 994 74 2) Learn how to make more sounds;
#X text 994 100 3) Complete the drum sounds tutorials by Really Useful
Plugins;
#X text 994 147 4) Build a semi-randomized drum machine addon to this
;
#X text 995 177 5) Map controls to input from smithd32_contol;
#X text 1094 632 (^‿^);
#X text 996 15 1) Try to fix bug: envelopes instrument makes static
sound when first activated (ARPEGGIO is switched ON) - FIXED (appears
to be clipping issue);
#X text 996 241 NOTE: This patch will take a few seconds to start and
continue for a few seconds after it has stopped recieving pulses form
the master BPM. This is expected.;
#X msg 524 -12 10;
#X obj 1028 514 *~;
#X obj 1028 549 outlet~;
#X obj 1188 489 loadbang;
#X msg 1188 515 0;
#X obj 1232 515 delay 1000;
#X msg 1232 541 1;
#X floatatom 618 570 5 0 0 0 - - -;
#X obj 651 505 r tempo;
#X obj 651 533 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 446 408 random 50;
#X obj 1224 633 throw~ smithd32_audio_1;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 60 1;
#X connect 3 0 4 0;
#X connect 4 0 58 0;
#X connect 5 0 6 0;
#X connect 5 0 37 0;
#X connect 5 1 7 0;
#X connect 5 1 38 0;
#X connect 5 2 8 0;
#X connect 5 2 39 0;
#X connect 5 3 9 0;
#X connect 5 3 40 0;
#X connect 5 4 30 0;
#X connect 5 4 41 0;
#X connect 5 5 31 0;
#X connect 5 5 42 0;
#X connect 10 0 12 0;
#X connect 12 0 11 0;
#X connect 15 0 13 0;
#X connect 16 0 14 0;
#X connect 20 0 17 0;
#X connect 21 0 19 0;
#X connect 22 0 60 0;
#X connect 23 0 18 0;
#X connect 24 0 25 0;
#X connect 25 0 26 0;
#X connect 27 0 15 0;
#X connect 28 0 16 0;
#X connect 29 0 20 0;
#X connect 32 0 23 0;
#X connect 33 0 36 0;
#X connect 34 0 35 1;
#X connect 35 0 33 0;
#X connect 36 0 35 1;
#X connect 36 0 5 0;
#X connect 54 0 56 0;
#X connect 55 0 57 0;
#X connect 56 0 71 0;
#X connect 57 0 56 1;
#X connect 58 0 35 0;
#X connect 58 0 105 0;
#X connect 58 0 121 0;
#X connect 59 0 155 0;
#X connect 59 1 156 0;
#X connect 59 2 157 0;
#X connect 60 0 24 0;
#X connect 60 0 59 0;
#X connect 61 0 208 0;
#X connect 62 0 208 0;
#X connect 63 0 208 0;
#X connect 64 0 21 0;
#X connect 65 0 66 0;
#X connect 66 0 0 0;
#X connect 68 0 61 2;
#X connect 69 0 62 2;
#X connect 70 0 63 2;
#X connect 71 0 84 0;
#X connect 72 1 88 0;
#X connect 73 0 74 0;
#X connect 73 0 75 0;
#X connect 74 0 73 1;
#X connect 75 0 76 0;
#X connect 76 0 72 0;
#X connect 77 0 83 1;
#X connect 77 0 180 0;
#X connect 77 0 214 0;
#X connect 77 0 187 0;
#X connect 78 0 73 0;
#X connect 78 1 79 0;
#X connect 79 0 80 0;
#X connect 79 0 81 0;
#X connect 80 0 79 1;
#X connect 81 0 82 0;
#X connect 82 0 174 0;
#X connect 83 0 78 0;
#X connect 84 0 83 0;
#X connect 89 0 134 0;
#X connect 90 0 135 0;
#X connect 91 0 136 0;
#X connect 92 0 134 0;
#X connect 92 0 135 0;
#X connect 92 0 136 0;
#X connect 93 0 96 0;
#X connect 93 1 99 0;
#X connect 94 0 77 0;
#X connect 95 0 94 0;
#X connect 96 0 137 0;
#X connect 97 0 98 0;
#X connect 98 0 96 1;
#X connect 99 0 137 0;
#X connect 100 0 101 0;
#X connect 101 0 99 1;
#X connect 106 0 217 0;
#X connect 107 0 77 0;
#X connect 108 0 110 0;
#X connect 108 0 111 0;
#X connect 109 0 112 0;
#X connect 110 0 109 0;
#X connect 111 0 109 1;
#X connect 112 0 113 0;
#X connect 112 1 113 1;
#X connect 113 0 114 0;
#X connect 114 0 52 0;
#X connect 115 0 34 0;
#X connect 116 0 108 0;
#X connect 117 0 4 1;
#X connect 118 0 132 0;
#X connect 119 0 122 1;
#X connect 120 0 146 0;
#X connect 120 0 147 0;
#X connect 121 0 122 1;
#X connect 122 0 120 0;
#X connect 122 0 119 0;
#X connect 123 0 124 0;
#X connect 123 0 125 0;
#X connect 123 0 207 0;
#X connect 124 0 118 0;
#X connect 125 0 127 0;
#X connect 126 0 53 0;
#X connect 127 0 117 0;
#X connect 129 0 130 0;
#X connect 130 0 77 0;
#X connect 131 0 128 0;
#X connect 132 0 122 0;
#X connect 133 0 131 0;
#X connect 134 0 61 1;
#X connect 135 0 62 1;
#X connect 136 0 63 1;
#X connect 137 0 67 0;
#X connect 138 0 140 0;
#X connect 139 0 138 0;
#X connect 140 0 142 0;
#X connect 140 0 77 0;
#X connect 141 0 138 1;
#X connect 143 0 138 1;
#X connect 144 0 145 0;
#X connect 145 0 139 0;
#X connect 145 0 141 0;
#X connect 146 0 133 0;
#X connect 147 0 126 0;
#X connect 149 0 58 0;
#X connect 153 0 174 1;
#X connect 154 0 174 1;
#X connect 158 0 61 0;
#X connect 159 0 62 0;
#X connect 160 0 63 0;
#X connect 161 0 167 1;
#X connect 162 0 168 1;
#X connect 163 0 169 1;
#X connect 164 0 167 0;
#X connect 165 0 168 0;
#X connect 166 0 169 0;
#X connect 167 0 208 0;
#X connect 168 0 208 0;
#X connect 169 0 208 0;
#X connect 170 1 85 0;
#X connect 170 2 86 0;
#X connect 170 3 87 0;
#X connect 170 4 176 0;
#X connect 171 0 161 0;
#X connect 172 0 162 0;
#X connect 173 0 163 0;
#X connect 174 0 170 0;
#X connect 175 1 177 0;
#X connect 175 2 178 0;
#X connect 175 3 179 0;
#X connect 176 0 175 0;
#X connect 180 0 191 0;
#X connect 181 0 186 0;
#X connect 183 0 167 2;
#X connect 184 0 168 2;
#X connect 185 0 169 2;
#X connect 186 0 182 0;
#X connect 187 0 188 0;
#X connect 188 0 181 0;
#X connect 189 0 153 0;
#X connect 189 1 190 0;
#X connect 190 0 154 0;
#X connect 191 0 189 0;
#X connect 207 0 122 1;
#X connect 208 0 209 0;
#X connect 210 0 211 0;
#X connect 210 0 212 0;
#X connect 211 0 208 1;
#X connect 212 0 213 0;
#X connect 213 0 208 1;
#X connect 214 0 93 0;
#X connect 215 0 216 0;
#X connect 216 0 214 0;
#X connect 217 0 107 0;
#X restore 101 85 pd version1;
#X obj 290 9 r smithd32_tempo;
#N canvas -5 0 1916 976 version2 1;
#N canvas 8 23 1920 1030 karplus_strong 0;
#N canvas -9 -9 1920 976 strummer 0;
#X obj 73 581 outlet;
#X obj 157 581 outlet;
#X obj 241 581 outlet;
#X obj 325 581 outlet;
#X obj 409 581 outlet;
#X obj 498 581 outlet;
#X obj 228 114 i 0;
#X obj 228 139 + 1;
#X obj 228 168 % 8;
#X obj 273 131 i;
#X obj 272 220 == 0;
#X obj 228 191 t f f;
#X obj 272 243 route 1;
#X obj 241 548 i 52;
#X obj 73 549 i 40;
#X obj 157 549 i 49;
#X obj 325 548 i 55;
#X obj 409 548 i 59;
#X obj 498 548 i 64;
#N canvas 101 96 857 446 chords 0;
#X obj 249 26 inlet;
#X obj 82 265 outlet;
#X obj 132 265 outlet;
#X obj 180 264 outlet;
#X obj 227 265 outlet;
#X obj 276 266 outlet;
#X obj 330 266 outlet;
#X obj 144 201 unpack f f f f f f;
#X msg 202 125 40 45 52 57 61 64;
#X msg 326 126 43 47 52 55 59 67;
#X msg 81 124 40 47 52 55 59 64;
#X obj 249 52 random 4;
#X obj 250 80 route 0 1 2 3;
#X msg 451 124 42 47 54 59 62 64;
#X text 348 50 randomly choose one of four chords \, and output the
midi pitches for each of the six strings.;
#X connect 0 0 11 0;
#X connect 7 0 1 0;
#X connect 7 1 2 0;
#X connect 7 2 3 0;
#X connect 7 3 4 0;
#X connect 7 4 5 0;
#X connect 7 5 6 0;
#X connect 8 0 7 0;
#X connect 9 0 7 0;
#X connect 10 0 7 0;
#X connect 11 0 12 0;
#X connect 12 0 10 0;
#X connect 12 1 8 0;
#X connect 12 2 9 0;
#X connect 12 3 13 0;
#X connect 13 0 7 0;
#X restore 272 304 pd chords;
#X text 270 187 Generate a simple 8 note strum pattern;
#X text 327 245 Every 8 notes \, randomly change chords;
#X obj 483 37 r ds_q;
#X obj 533 37 r ds_w;
#X obj 583 37 r ds_e;
#X obj 633 37 r ds_r;
#X obj 683 37 r ds_t;
#X obj 733 37 r ds_y;
#X obj 163 473 r ds_q;
#X obj 213 473 r ds_w;
#X obj 263 473 r ds_e;
#X obj 313 473 r ds_r;
#X obj 363 473 r ds_t;
#X obj 413 473 r ds_y;
#X obj 615 116 s ds_strum;
#X obj 228 78 r ds_strum;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 8 0 11 0;
#X connect 9 0 6 1;
#X connect 10 0 12 0;
#X connect 11 1 10 0;
#X connect 12 0 19 0;
#X connect 13 0 2 0;
#X connect 14 0 0 0;
#X connect 15 0 1 0;
#X connect 16 0 3 0;
#X connect 17 0 4 0;
#X connect 18 0 5 0;
#X connect 19 0 14 0;
#X connect 19 1 15 0;
#X connect 19 2 13 0;
#X connect 19 3 16 0;
#X connect 19 4 17 0;
#X connect 19 5 18 0;
#X connect 22 0 34 0;
#X connect 23 0 34 0;
#X connect 24 0 34 0;
#X connect 25 0 34 0;
#X connect 26 0 34 0;
#X connect 27 0 34 0;
#X connect 28 0 14 0;
#X connect 29 0 15 0;
#X connect 30 0 13 0;
#X connect 31 0 16 0;
#X connect 32 0 17 0;
#X connect 33 0 18 0;
#X connect 35 0 6 0;
#X restore 334 153 pd strummer;
#X obj 496 187 hsl 180 15 1 40 0 0 empty \$0-width_ctrl width -2 -8
1 10 -262144 -1 -1 3213 1;
#X obj 495 218 hsl 180 15 0.9 0.999 0 0 empty \$0-decay_ctrl decay
-2 -8 1 10 -262144 -1 -1 17177 1;
#X obj 495 248 hsl 180 15 100 8000 0 0 empty \$0-cutoff_ctrl cutoff
-2 -8 1 10 -262144 -1 -1 12689 1;
#N canvas 540 332 847 508 plucked_instrument 0;
#X obj 22 63 inlet;
#X obj 92 60 inlet;
#X obj 175 60 inlet;
#X obj 241 59 inlet;
#X obj 311 60 inlet;
#X obj 374 63 inlet;
#X obj 473 65 inlet;
#X obj 515 65 inlet;
#X obj 557 65 inlet;
#X text 17 16 6 inlets representing the six strings of our instrument.
A midi note integer message to any inlet excites that particular string
at the specified pitch.;
#X text 469 46 Width \, decay \, and cutoff inlets;
#X obj 21 165 karpluck~;
#X obj 21 373 outlet~;
#X obj 21 349 *~ 0.25;
#X obj 473 128 s \$0-width;
#X obj 516 107 s \$0-decay;
#X obj 557 87 s \$0-cutoff;
#X obj 106 87 r \$0-width;
#X obj 188 89 r \$0-decay;
#X obj 264 90 r \$0-cutoff;
#X obj 92 181 karpluck~;
#X obj 175 203 karpluck~;
#X obj 241 224 karpluck~;
#X obj 309 233 karpluck~;
#X obj 374 264 karpluck~;
#X text 334 112 comment;
#X text 73 343 scale the output down by approx 12dB to avoid clipping
;
#X connect 0 0 11 0;
#X connect 1 0 20 0;
#X connect 2 0 21 0;
#X connect 3 0 22 0;
#X connect 4 0 23 0;
#X connect 5 0 24 0;
#X connect 6 0 14 0;
#X connect 7 0 15 0;
#X connect 8 0 16 0;
#X connect 11 0 13 0;
#X connect 13 0 12 0;
#X connect 17 0 11 1;
#X connect 17 0 20 1;
#X connect 17 0 21 1;
#X connect 17 0 22 1;
#X connect 17 0 23 1;
#X connect 17 0 24 1;
#X connect 18 0 11 2;
#X connect 18 0 20 2;
#X connect 18 0 21 2;
#X connect 18 0 22 2;
#X connect 18 0 23 2;
#X connect 18 0 24 2;
#X connect 19 0 11 3;
#X connect 19 0 20 3;
#X connect 19 0 22 3;
#X connect 19 0 21 3;
#X connect 19 0 23 3;
#X connect 19 0 24 3;
#X connect 20 0 13 0;
#X connect 21 0 13 0;
#X connect 22 0 13 0;
#X connect 23 0 13 0;
#X connect 24 0 13 0;
#X restore 329 281 pd plucked_instrument;
#X obj 411 118 hsl 180 15 1 250 0 0 empty \$0-strum_speed_ctrl strum_speed
-2 -8 1 10 -262144 -1 -1 503 1;
#X obj 334 118 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 786 117 loadbang;
#X msg 781 147 0.995;
#X msg 824 147 5700;
#X obj 751 241 s \$0-width_ctrl;
#X obj 781 217 s \$0-decay_ctrl;
#X obj 824 196 s \$0-cutoff_ctrl;
#X text 83 112 Click here to start strummer -->;
#X msg 751 147 8;
#X obj 857 173 s \$0-strum_speed_ctrl;
#X msg 864 148 8;
#X obj 329 342 outlet~;
#X text 94 426 Karplus-Strong algorithm - physical model of a string
;
#X connect 0 0 4 0;
#X connect 0 1 4 1;
#X connect 0 2 4 2;
#X connect 0 3 4 3;
#X connect 0 4 4 4;
#X connect 0 5 4 5;
#X connect 1 0 4 6;
#X connect 2 0 4 7;
#X connect 3 0 4 8;
#X connect 4 0 17 0;
#X connect 7 0 14 0;
#X connect 7 0 8 0;
#X connect 7 0 9 0;
#X connect 7 0 16 0;
#X connect 8 0 11 0;
#X connect 9 0 12 0;
#X connect 14 0 10 0;
#X connect 16 0 15 0;
#X restore 442 227 pd karplus_strong;
#X text 430 193 "Guitar" String model;
#N canvas 372 32 851 837 drums-horrible-snare 0;
#X obj 106 98 noise~;
#X obj 163 98 line~;
#X obj 106 152 *~;
#X obj 148 220 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8
-262144 -1 -1 0 1;
#X msg 163 70 1 \, 0 50;
#X obj 163 42 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1
-1;
#X obj 106 188 lop~ 400;
#X floatatom 159 164 5 0 0 0 - - -;
#X obj 92 295 output~;
#X text 15 97 White noise;
#X text 170 188 Low-pass filter;
#X obj 121 7 metro 200;
#X obj 81 12 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X obj 161 296 outlet~;
#X obj 222 7 r ds_s;
#X obj 106 247 *~ 10;
#X connect 0 0 2 0;
#X connect 1 0 2 1;
#X connect 2 0 6 0;
#X connect 3 0 15 1;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X connect 6 0 15 0;
#X connect 7 0 6 1;
#X connect 11 0 5 0;
#X connect 12 0 11 0;
#X connect 14 0 5 0;
#X connect 15 0 8 0;
#X connect 15 0 8 1;
#X connect 15 0 13 0;
#X restore 247 533 pd drums-horrible-snare;
#N canvas 310 103 839 822 drums-horrible-kick 0;
#X obj 209 153 line~;
#X obj 82 222 *~;
#X obj 118 235 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8
-262144 -1 -1 0 1;
#X msg 209 129 1 \, 0 50;
#X obj 152 44 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1
-1;
#X obj 82 191 osc~;
#X obj 82 153 line~;
#X msg 82 130 220 \, 50 20;
#X msg 164 130 0.5;
#X text 71 54 comment;
#X obj 61 320 output~;
#X obj 131 321 outlet~;
#X obj 152 8 r ds_k;
#X obj 82 265 *~ 2;
#X connect 0 0 1 1;
#X connect 1 0 13 0;
#X connect 2 0 13 1;
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X connect 4 0 7 0;
#X connect 4 0 8 0;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 6 0;
#X connect 8 0 5 1;
#X connect 12 0 4 0;
#X connect 13 0 10 0;
#X connect 13 0 10 1;
#X connect 13 0 11 0;
#X restore 12 27 pd drums-horrible-kick;
#N canvas 75 23 1264 1030 horrible-marimba 0;
#X obj 245 457 line~;
#X obj 230 484 *~;
#X obj 243 41 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1
-1;
#X obj 228 396 osc~;
#X obj 426 255 noise~;
#X obj 484 293 line~;
#X obj 427 347 *~;
#X obj 427 383 lop~ 5000;
#X obj 132 320 line~;
#X obj 85 317 osc~;
#X msg 132 290 1 \, 0 100;
#X floatatom 230 133 3 0 0 0 - - -;
#X floatatom 262 132 3 0 0 0 - - -;
#X obj 85 350 *~;
#X obj 85 287 * 3;
#X obj 85 383 *~ 1;
#X obj 427 442 *~ 0.5;
#X obj 229 178 mtof;
#X msg 484 265 1 \, 0 44;
#X msg 245 428 1 \, 0 400;
#X obj 230 510 *~ 0.4;
#X obj 262 178 * 0.33;
#X obj 262 200 * 0.4;
#X obj 287 41 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X obj 96 40 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X text 101 19 Pitch (midi);
#X text 293 19 Velocity (volume);
#X obj 211 654 output~;
#X connect 0 0 1 1;
#X connect 1 0 20 0;
#X connect 2 0 19 0;
#X connect 2 0 10 0;
#X connect 2 0 18 0;
#X connect 2 0 12 0;
#X connect 2 0 11 0;
#X connect 3 0 1 0;
#X connect 4 0 6 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 16 0;
#X connect 8 0 13 1;
#X connect 9 0 13 0;
#X connect 10 0 8 0;
#X connect 11 0 17 0;
#X connect 12 0 21 0;
#X connect 13 0 15 0;
#X connect 14 0 9 0;
#X connect 15 0 27 0;
#X connect 16 0 27 0;
#X connect 17 0 3 0;
#X connect 17 0 14 0;
#X connect 18 0 5 0;
#X connect 19 0 0 0;
#X connect 20 0 27 1;
#X connect 20 0 27 0;
#X connect 21 0 22 0;
#X connect 22 0 20 1;
#X connect 22 0 15 1;
#X connect 22 0 16 1;
#X connect 23 0 12 0;
#X connect 24 0 11 0;
#X restore 20 91 pd horrible-marimba;
#X text 162 501 "Horrible" Instruments;
#N canvas 305 23 927 717 bells 0;
#X obj 47 459 catch~ sum;
#X obj 359 284 s frequency;
#X obj 473 284 s duration;
#X floatatom 473 234 0 0 0 0 - - -;
#X obj 473 259 * 100;
#X obj 359 259 mtof;
#X floatatom 359 234 0 0 0 0 - - -;
#X text 92 17 ADDITIVE SYNTHESIS;
#X text 511 224 duration in tenths;
#X text 513 240 of a second;
#X text 397 233 pitch;
#X text 443 528 updated for Pd version 0.37;
#X text 36 93 Partial takes as arguments an amplitude \, a relative
frequency \, a detuning frequency \, and a relative duration. You set
absolute duration and pitch using the controls below. Hit the trigger
to make sound.;
#X obj 46 174 partial 1 1 0.56 0;
#X text 37 41 This patch demonstrates using an abstraction \, "partial"
\, to make a simple additive synthesis instrument originally from Jean-Claude
Risset.;
#X obj 359 179 loadbang;
#X msg 359 202 72;
#X msg 473 204 40;
#X obj 362 332 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 395 334 <-- click to play a note;
#X obj 362 368 s trigger;
#X obj 46 199 partial 0.67 0.9 0.56 1;
#X obj 46 224 partial 1 0.65 0.92 0;
#X obj 46 249 partial 1.8 0.55 0.92 1.7;
#X obj 46 274 partial 2.67 0.325 1.19 0;
#X obj 46 299 partial 1.67 0.35 1.7 0;
#X obj 46 324 partial 1.46 0.25 2 0;
#X obj 46 349 partial 1.33 0.2 2.74 0;
#X obj 46 374 partial 1.33 0.15 3 0;
#X obj 46 399 partial 1 0.1 3.76 0;
#X obj 46 424 partial 1.33 0.075 4.07 0;
#X obj 456 138 inlet;
#X obj 529 140 inlet;
#X obj 308 309 inlet;
#X text 445 118 Midi Pitch;
#X text 525 105 duration in tenths;
#X text 527 121 of a second;
#X obj 47 498 output~;
#X connect 0 0 37 0;
#X connect 0 0 37 1;
#X connect 3 0 4 0;
#X connect 4 0 2 0;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 15 0 16 0;
#X connect 15 0 17 0;
#X connect 16 0 6 0;
#X connect 17 0 3 0;
#X connect 18 0 20 0;
#X connect 31 0 6 0;
#X connect 32 0 3 0;
#X connect 33 0 18 0;
#X restore 36 135 pd bells;
#X text 18 114 Risset "Bells" model;
#N canvas -9 -9 1920 976 ds_osc 0;
#X obj 687 8 netreceive -u -b 8000;
#X obj 687 45 unpack f f f f f f f f f f f f f f f f;
#X floatatom 897 89 5 0 0 0 - - -;
#X obj 537 257 sel 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, f 83;
#X obj 474 565 sel 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, f 106;
#X text 763 234 CAPITAL LETTERS;
#X text 756 541 lowercase letters;
#X obj 198 412 s ds_A;
#X obj 249 412 s ds_B;
#X obj 300 412 s ds_C;
#X obj 351 412 s ds_D;
#X obj 402 412 s ds_E;
#X obj 453 412 s ds_F;
#X obj 504 412 s ds_G;
#X obj 555 412 s ds_H;
#X obj 605 412 s ds_I;
#X obj 656 412 s ds_J;
#X obj 707 412 s ds_K;
#X obj 758 412 s ds_L;
#X obj 809 412 s ds_M;
#X obj 860 412 s ds_N;
#X obj 911 412 s ds_O;
#X obj 962 412 s ds_P;
#X obj 1013 412 s ds_Q;
#X obj 1064 412 s ds_R;
#X obj 1115 412 s ds_S;
#X obj 1166 412 s ds_T;
#X obj 1218 412 s ds_U;
#X obj 1269 412 s ds_V;
#X obj 1320 412 s ds_W;
#X obj 1371 412 s ds_X;
#X obj 1422 412 s ds_Y;
#X obj 1473 412 s ds_Z;
#X obj 897 125 s ds_dec;
#X obj 192 666 s ds_a;
#X obj 243 666 s ds_b;
#X obj 294 666 s ds_c;
#X obj 345 666 s ds_d;
#X obj 396 666 s ds_e;
#X obj 447 666 s ds_f;
#X obj 498 666 s ds_g;
#X obj 549 666 s ds_h;
#X obj 599 666 s ds_i;
#X obj 650 666 s ds_j;
#X obj 701 666 s ds_k;
#X obj 752 666 s ds_l;
#X obj 803 666 s ds_m;
#X obj 854 666 s ds_n;
#X obj 905 666 s ds_o;
#X obj 956 666 s ds_p;
#X obj 1007 666 s ds_q;
#X obj 1058 666 s ds_r;
#X obj 1109 666 s ds_s;
#X obj 1160 666 s ds_t;
#X obj 1212 666 s ds_u;
#X obj 1263 666 s ds_v;
#X obj 1314 666 s ds_w;
#X obj 1365 666 s ds_x;
#X obj 1416 666 s ds_y;
#X obj 1467 666 s ds_z;
#X obj 537 221 r ds_dec;
#X obj 474 531 r ds_dec;
#X connect 0 0 1 0;
#X connect 1 12 2 0;
#X connect 2 0 33 0;
#X connect 3 0 7 0;
#X connect 3 1 8 0;
#X connect 3 2 9 0;
#X connect 3 3 10 0;
#X connect 3 4 11 0;
#X connect 3 5 12 0;
#X connect 3 6 13 0;
#X connect 3 7 14 0;
#X connect 3 8 15 0;
#X connect 3 9 16 0;
#X connect 3 10 17 0;
#X connect 3 11 18 0;
#X connect 3 12 19 0;
#X connect 3 13 20 0;
#X connect 3 14 21 0;
#X connect 3 15 22 0;
#X connect 3 16 23 0;
#X connect 3 17 24 0;
#X connect 3 18 25 0;
#X connect 3 19 26 0;
#X connect 3 20 27 0;
#X connect 3 21 28 0;
#X connect 3 22 29 0;
#X connect 3 23 30 0;
#X connect 3 24 31 0;
#X connect 3 25 32 0;
#X connect 4 0 34 0;
#X connect 4 1 35 0;
#X connect 4 2 36 0;
#X connect 4 3 37 0;
#X connect 4 4 38 0;
#X connect 4 5 39 0;
#X connect 4 6 40 0;
#X connect 4 7 41 0;
#X connect 4 8 42 0;
#X connect 4 9 43 0;
#X connect 4 10 44 0;
#X connect 4 11 45 0;
#X connect 4 12 46 0;
#X connect 4 13 47 0;
#X connect 4 14 48 0;
#X connect 4 15 49 0;
#X connect 4 16 50 0;
#X connect 4 17 51 0;
#X connect 4 18 52 0;
#X connect 4 19 53 0;
#X connect 4 20 54 0;
#X connect 4 21 55 0;
#X connect 4 22 56 0;
#X connect 4 23 57 0;
#X connect 4 24 58 0;
#X connect 4 25 59 0;
#X connect 60 0 3 0;
#X connect 61 0 4 0;
#X restore 645 148 pd ds_osc;
#X text 583 123 For use with ConwayComposer.py;
#X obj 278 44 inlet;
#X obj 538 44 inlet;
#X text 277 24 TEMPO;
#X text 533 24 CONTROL;
#X obj 272 333 outlet~;
#X obj 535 334 outlet;
#X text 150 194 Really Useful Plugins;
#N canvas -9 -9 1920 976 really-useful-kick 0;
#N canvas 1265 53 634 693 kick_synth 0;
#X floatatom 267 137 5 0 0 0 - - -;
#X text 270 197 fDec = 250;
#X floatatom 292 356 5 0 0 0 - - -;
#X text 327 360 pScale = 1;
#X obj 233 401 *~ 1;
#X obj 233 422 phasor~;
#X obj 214 107 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 233 442 expr~ if ($v1 > 0.5 \, 0 \, 1);
#X obj 265 471 noise~;
#X floatatom 450 371 5 0 0 0 - - -;
#X obj 339 413 *~ 1.5;
#X obj 236 514 vcf~ 0.5;
#X obj 199 625 *~;
#X obj 357 535 osc~;
#X floatatom 488 471 5 0 0 0 - - -;
#X obj 356 504 *~ 1;
#X obj 221 160 f 250;
#X obj 210 46 inlet;
#X text 204 25 trig;
#X obj 265 115 inlet;
#X text 265 93 decay time;
#X obj 292 325 inlet;
#X text 290 305 pitchScale;
#X text 432 322 filterScale;
#X obj 432 336 inlet;
#X text 453 448 sineVol;
#X obj 199 646 outlet~;
#X obj 500 447 inlet;
#N canvas 0 23 450 300 vol_env_kick 0;
#X obj 125 167 vline~;
#X obj 125 188 *~;
#X msg 115 115 0.5 \, 1 5 \, 0.5 60 5 \, 0 \$1 65;
#X obj 108 69 inlet;
#X obj 125 209 outlet~;
#X connect 0 0 1 0;
#X connect 0 0 1 1;
#X connect 1 0 4 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X restore 51 502 pd vol_env_kick;
#N canvas 0 23 450 300 pitch_env_kick 0;
#X obj 37 37 inlet;
#X obj 33 107 vline~;
#X obj 36 222 mtof~;
#X msg 36 73 1 \, 0.5 5 \, 0 \$1 5;
#X obj 33 155 *~ 80;
#X obj 33 176 +~ 29;
#X obj 33 128 *~;
#X obj 36 243 outlet~;
#X connect 0 0 3 0;
#X connect 1 0 6 0;
#X connect 1 0 6 1;
#X connect 2 0 7 0;
#X connect 3 0 1 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X restore 221 247 pd pitch_env_kick;
#X connect 0 0 16 1;
#X connect 2 0 4 1;
#X connect 4 0 5 0;
#X connect 5 0 7 0;
#X connect 6 0 16 0;
#X connect 7 0 11 0;
#X connect 8 0 11 0;
#X connect 9 0 10 1;
#X connect 10 0 11 1;
#X connect 11 1 12 1;
#X connect 12 0 26 0;
#X connect 13 0 12 1;
#X connect 14 0 15 1;
#X connect 15 0 13 0;
#X connect 16 0 28 0;
#X connect 16 0 29 0;
#X connect 17 0 6 0;
#X connect 19 0 0 0;
#X connect 21 0 2 0;
#X connect 24 0 9 0;
#X connect 27 0 14 0;
#X connect 28 0 12 0;
#X connect 29 0 4 0;
#X connect 29 0 10 0;
#X connect 29 0 15 0;
#X restore 41 346 pd kick_synth;
#X f 64;
#X obj 38 97 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X floatatom 114 306 5 0 0 1 decay - -;
#X obj 115 157 vsl 15 128 50 2000 1 0 empty kick_decay empty 0 -9 0
10 -262144 -1 -1 5541 1;
#X floatatom 193 310 5 0 0 1 pitch_scale - -;
#X obj 193 166 vsl 15 128 0.1 3 0 0 empty kick_pitch empty 0 -9 0 10
-262144 -1 -1 3941 1;
#X floatatom 419 311 5 0 0 1 sine_scale - -;
#X obj 419 167 vsl 15 128 0 2 0 0 empty kick_sine empty 0 -9 0 10 -262144
-1 -1 6350 1;
#X obj 38 56 r kick;
#X floatatom 300 312 5 0 0 1 filter_scale - -;
#X obj 300 168 vsl 15 128 0.1 3 0 0 empty kick_filter empty 0 -9 0
10 -262144 -1 -1 6131 1;
#X msg 302 794 \; kick_decay 250 \; kick_pitch 1 \; kick_filter 1.5
\; kick_sine 1 \;;
#X msg 446 794 \; kick_decay 150 \; kick_pitch 0.5 \; kick_filter 1.5
\; kick_sine 1 \;;
#X msg 17 792 \; kick_decay 450 \; kick_pitch 0.25 \; kick_filter 0.5
\; kick_sine 1 \;;
#X obj 553 59 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 553 101 s kick;
#X obj 553 80 metro 450;
#X msg 586 795 \; kick_decay 1500 \; kick_pitch 0.5 \; kick_filter
0.5 \; kick_sine 0.5 \;;
#X msg 156 793 \; kick_decay 50 \; kick_pitch 2.25 \; kick_filter 1.5
\; kick_sine 0.8 \;;
#X obj 91 64 r ds_k;
#X obj 41 408 outlet~;
#X obj 279 449 r ds_k;
#X obj 279 487 i 0;
#X obj 279 512 + 1;
#X obj 324 504 i;
#X obj 323 593 == 0;
#X obj 279 564 t f f;
#X obj 323 616 route 1;
#X obj 279 541 % 12;
#X text 380 618 Every 12 kick \, randomly change preset;
#X obj 323 649 random 5;
#X obj 323 675 sel 0 1 2 3 4;
#X obj 41 377 *~ 1;
#X connect 0 0 32 0;
#X connect 1 0 0 0;
#X connect 2 0 0 1;
#X connect 3 0 2 0;
#X connect 4 0 0 2;
#X connect 5 0 4 0;
#X connect 6 0 0 4;
#X connect 7 0 6 0;
#X connect 8 0 1 0;
#X connect 9 0 0 3;
#X connect 10 0 9 0;
#X connect 14 0 16 0;
#X connect 16 0 15 0;
#X connect 19 0 1 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 23 0 28 0;
#X connect 24 0 22 1;
#X connect 25 0 27 0;
#X connect 26 1 25 0;
#X connect 27 0 30 0;
#X connect 28 0 24 0;
#X connect 28 0 26 0;
#X connect 30 0 31 0;
#X connect 31 0 13 0;
#X connect 31 1 18 0;
#X connect 31 2 11 0;
#X connect 31 3 12 0;
#X connect 31 4 17 0;
#X connect 32 0 20 0;
#X restore 240 227 pd really-useful-kick;
#X text 11 5 "Horrible" Instruments;
#N canvas 310 103 839 822 drums-horrible-kick 0;
#X obj 209 153 line~;
#X obj 82 222 *~;
#X obj 118 235 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8
-262144 -1 -1 0 1;
#X msg 209 129 1 \, 0 50;
#X obj 152 44 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1
-1;
#X obj 82 191 osc~;
#X obj 82 153 line~;
#X msg 82 130 220 \, 50 20;
#X msg 164 130 0.5;
#X text 71 54 comment;
#X obj 61 320 output~;
#X obj 131 321 outlet~;
#X obj 152 8 r ds_k;
#X obj 82 265 *~ 2;
#X connect 0 0 1 1;
#X connect 1 0 13 0;
#X connect 2 0 13 1;
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X connect 4 0 7 0;
#X connect 4 0 8 0;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 7 0 6 0;
#X connect 8 0 5 1;
#X connect 12 0 4 0;
#X connect 13 0 10 0;
#X connect 13 0 10 1;
#X connect 13 0 11 0;
#X restore 56 532 pd drums-horrible-kick;
#N canvas -9 -9 1920 976 really-useful-snare 1;
#X obj 69 142 r snare;
#X obj 69 171 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 360 21 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 360 44 metro 110;
#X obj 360 76 s snare;
#X floatatom 420 13 5 0 0 0 - - -;
#N canvas 0 50 1351 825 ds_snare_808 0;
#X obj 134 178 noise~;
#X obj 134 225 *~;
#X obj 211 61 f 250;
#X floatatom 315 30 5 0 0 0 - - -;
#N canvas 0 50 450 300 vol_env_snare 0;
#X obj 39 67 vline~;
#X obj 39 97 *~;
#X msg 39 38 1 0.5 \, 0 \$1 0.5;
#X obj 39 12 inlet;
#X obj 39 120 outlet~;
#X connect 0 0 1 0;
#X connect 0 0 1 1;
#X connect 1 0 4 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X restore 211 107 pd vol_env_snare;
#X obj 134 280 vcf~ 3;
#X obj 189 280 vcf~ 5;
#X text 266 279 first outlet of vcf is BANDPASS;
#N canvas 0 50 450 300 cutoff_env_snare 0;
#X obj 39 67 vline~;
#X obj 39 97 *~;
#X msg 39 38 1 0.5 \, 0 \$1 0.5;
#X obj 39 12 inlet;
#X obj 39 120 outlet~;
#X connect 0 0 1 0;
#X connect 0 0 1 1;
#X connect 1 0 4 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X restore 363 157 pd cutoff_env_snare;
#X obj 363 185 *~ 8000;
#X obj 363 208 +~ 100;
#X obj 431 185 *~ 5000;
#X obj 431 208 +~ 200;
#N canvas 0 50 860 754 FM_osc_snare 0;
#X obj 48 138 osc~;
#X obj 48 181 *~;
#X obj 100 139 *~;
#X obj 48 96 +~;
#X obj 16 39 sig~ 150;
#X obj 109 17 osc~ 50;
#X obj 109 40 *~ 30;
#X obj 109 111 inlet~;
#X obj 48 210 outlet~;
#X connect 0 0 1 0;
#X connect 1 0 8 0;
#X connect 2 0 1 1;
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X connect 5 0 6 0;
#X connect 6 0 3 1;
#X connect 7 0 2 0;
#X connect 7 0 2 1;
#X restore 11 154 pd FM_osc_snare;
#X obj 363 107 * 2;
#X floatatom 543 98 5 0 0 0 - - -;
#X obj 543 120 * 0.6;
#X obj 543 70 inlet;
#X obj 315 4 inlet;
#X obj 211 27 inlet;
#X obj 174 353 outlet~;
#X connect 0 0 1 0;
#X connect 1 0 5 0;
#X connect 1 0 6 0;
#X connect 2 0 4 0;
#X connect 2 0 14 0;
#X connect 3 0 2 1;
#X connect 4 0 1 1;
#X connect 4 0 13 0;
#X connect 5 0 20 0;
#X connect 6 0 20 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 5 1;
#X connect 11 0 12 0;
#X connect 12 0 6 1;
#X connect 13 0 5 0;
#X connect 13 0 6 0;
#X connect 14 0 8 0;
#X connect 15 0 16 0;
#X connect 15 0 9 1;
#X connect 16 0 11 1;
#X connect 17 0 15 0;
#X connect 18 0 3 0;
#X connect 19 0 2 0;
#X restore 89 206 pd ds_snare_808;
#X floatatom 140 169 5 0 0 0 - - -;
#X text 178 169 Decay;
#X floatatom 225 170 5 0 0 0 - - -;
#X text 263 169 Noise;
#X obj 140 20 vsl 15 128 10 3000 0 0 empty snare_decay snare_decay
0 -9 0 10 -262144 -1 -1 170 1;
#X obj 225 21 vsl 15 128 500 10000 1 0 empty snare_noise snare_noise
0 -9 0 10 -262144 -1 -1 10534 1;
#X msg 350 337 \; snare_decay 300 \; snare_noise 6000 \;;
#X msg 491 337 \; snare_decay 50 \; snare_noise 6000 \;;
#X msg 777 338 \; snare_decay 150 \; snare_noise 6000 \;;
#X msg 634 337 \; snare_decay 800 \; snare_noise 3000 \;;
#X obj 89 292 outlet~;
#X obj 6 142 r ds_s;
#X obj 537 15 r ds_k;
#X obj 537 53 i 0;
#X obj 537 78 + 1;
#X obj 582 70 i;
#X obj 581 159 == 0;
#X obj 537 130 t f f;
#X obj 581 182 route 1;
#X obj 537 107 % 12;
#X obj 581 241 sel 0 1 2 3;
#X obj 581 215 random 4;
#X text 638 184 Every 12 snare \, randomly change preset;
#X obj 89 257 *~ 1;
#X connect 0 0 1 0;
#X connect 1 0 6 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 5 0 3 1;
#X connect 6 0 30 0;
#X connect 7 0 6 1;
#X connect 9 0 6 2;
#X connect 11 0 7 0;
#X connect 12 0 9 0;
#X connect 18 0 1 0;
#X connect 19 0 20 0;
#X connect 20 0 21 0;
#X connect 21 0 26 0;
#X connect 22 0 20 1;
#X connect 23 0 25 0;
#X connect 24 1 23 0;
#X connect 25 0 28 0;
#X connect 26 0 22 0;
#X connect 26 0 24 0;
#X connect 27 0 13 0;
#X connect 27 1 14 0;
#X connect 27 2 16 0;
#X connect 27 3 15 0;
#X connect 28 0 27 0;
#X connect 30 0 17 0;
#X restore 51 229 pd really-useful-snare;
#N canvas 372 32 851 837 drums-horrible-snare 0;
#X obj 106 98 noise~;
#X obj 163 98 line~;
#X obj 106 152 *~;
#X obj 148 220 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8
-262144 -1 -1 0 1;
#X msg 163 70 1 \, 0 50;
#X obj 163 42 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1
-1;
#X obj 106 188 lop~ 400;
#X floatatom 159 164 5 0 0 0 - - -;
#X obj 92 295 output~;
#X text 15 97 White noise;
#X text 170 188 Low-pass filter;
#X obj 121 7 metro 200;
#X obj 81 12 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X obj 161 296 outlet~;
#X obj 222 7 r ds_s;
#X obj 106 247 *~ 10;
#X connect 0 0 2 0;
#X connect 1 0 2 1;
#X connect 2 0 6 0;
#X connect 3 0 15 1;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X connect 6 0 15 0;
#X connect 7 0 6 1;
#X connect 11 0 5 0;
#X connect 12 0 11 0;
#X connect 14 0 5 0;
#X connect 15 0 8 0;
#X connect 15 0 8 1;
#X connect 15 0 13 0;
#X restore 11 58 pd drums-horrible-snare;
#X connect 0 0 14 0;
#X connect 17 0 14 0;
#X connect 20 0 14 0;
#X restore 324 85 pd version2;
#X text 325 195 KEY MAPPINGS!!! (FOR USE WITH THE CONWAY CONTROLLER)
;
#X text 326 223 Q \, W \, E \, R \, T \, Y - 6 strings of the guitar
respectively;
#X text 326 250 S & K - snare and kick;
#X connect 0 0 4 1;
#X connect 3 0 4 0;
#X connect 4 0 1 0;