#N canvas 0 25 371 501 10; #X floatatom 5 143 5 0 0 0 - - -; #X obj 80 2 vsl 15 128 0.5 0.977 0 0 empty leadmuting empty 0 -8 0 10 -262144 -1 -1 12700 1; #X floatatom 80 139 5 0 0 0 - - -; #X text 68 150 mute strings; #N canvas 0 25 491 311 stringunit 0; #N canvas 0 25 995 656 delay-writer 0; #X obj 86 220 inlet~; #X obj 252 739 outlet~; #X obj 277 455 +~; #X obj 134 220 inlet; #X obj 398 319 hip~ 5; #X obj 400 406 *~ 3; #X obj 398 299 lop~ 1000; #X obj 398 280 *~ 0.015; #X obj 135 376 hip~ 5; #X obj 136 412 clip~ -1 1; #X obj 135 343 lop~ 6000; #X obj 135 313 *~ 0.973; #X obj 400 431 clip~ -1 1; #X obj 137 630 *~ 0.11; #X obj 401 630 *~ 400; #X obj 256 220 inlet muting; #X obj 241 359 bp~ 311 50; #X obj 319 359 bp~ 504 50; #X obj 399 357 bp~ 767 50; #X obj 477 357 bp~ 1119 50; #X obj 562 358 bp~ 1246 50; #X obj 392 197 block~ 1; #X obj 253 698 *~ 1; #X text 44 358 string; #X text 454 487 it recirculates; #X text 484 630 output mostly comes from the body; #X text 488 277 much more energy passed to string than to body; #X text 649 356 body formant; #X obj 134 252 delread~ \$0-stringdel1; #X obj 276 487 delwrite~ \$0-stringdel1 1000; #X connect 0 0 11 0; #X connect 2 0 29 0; #X connect 3 0 28 0; #X connect 4 0 16 0; #X connect 4 0 17 0; #X connect 4 0 18 0; #X connect 4 0 19 0; #X connect 4 0 20 0; #X connect 5 0 12 0; #X connect 6 0 4 0; #X connect 7 0 6 0; #X connect 8 0 9 0; #X connect 9 0 13 0; #X connect 9 0 2 0; #X connect 10 0 8 0; #X connect 11 0 10 0; #X connect 12 0 2 1; #X connect 12 0 14 0; #X connect 13 0 22 0; #X connect 14 0 22 0; #X connect 15 0 11 1; #X connect 16 0 5 0; #X connect 17 0 5 0; #X connect 18 0 5 0; #X connect 19 0 5 0; #X connect 20 0 5 0; #X connect 22 0 1 0; #X connect 28 0 7 0; #X connect 28 0 11 0; #X restore 149 246 pd delay-writer; #X obj 192 219 expr 1000/$f1; #X obj 192 200 mtof; #N canvas 0 25 371 300 gopluckyourself 0; #X obj -30 199 *~; #X obj -107 105 hip~ 5; #X obj -11 97 vline~; #X obj -16 122 *~; #X msg -11 76 1 1 0 \, 0 9 1; #X obj 40 -33 inlet bang; #X obj -29 222 outlet~; #X obj 94 205 switch~; #X obj 94 186 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 1; #X msg 79 152 1; #X msg 110 152 0; #X floatatom 110 114 5 0 0 0 - - -; #X obj 110 132 sel 0; #X obj 40 -11 t b b b; #X obj -107 85 lop~ 12000; #X obj -107 65 clip~ -0.3 0.3; #X obj -137 -9 noise~; #X obj -138 17 expr~ if ($v1 == 0 \, 0 \, (if ($v1 < 0 \, -1 \, 1))) ; #X text -91 0 TOTAL DISTORTION; #X msg 110 76 1 0 \, 0 15; #X obj 110 95 line 1 15; #X connect 0 0 6 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 2 0 3 1; #X connect 3 0 0 1; #X connect 4 0 2 0; #X connect 5 0 13 0; #X connect 8 0 7 0; #X connect 9 0 8 0; #X connect 10 0 8 0; #X connect 11 0 12 0; #X connect 12 0 10 0; #X connect 13 0 19 0; #X connect 13 1 4 0; #X connect 13 2 9 0; #X connect 14 0 1 0; #X connect 15 0 14 0; #X connect 16 0 17 0; #X connect 17 0 15 0; #X connect 19 0 20 0; #X connect 20 0 11 0; #X restore 195 154 pd gopluckyourself; #X obj 93 5 inlet note; #X obj 150 282 outlet~; #X obj 236 5 inlet muting; #X obj 19 231 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 1; #X msg 4 197 1; #X msg 35 197 0; #X floatatom 36 162 5 0 0 0 - - -; #X obj 35 178 sel 0; #X obj 19 251 switch~ 16; #X msg 36 124 1 0 \, 0 15000; #X obj 36 143 line 1 15000; #X floatatom 93 29 5 0 0 0 - - -; #N canvas 0 25 1016 656 pick-position 0; #X obj 81 21 inlet~; #X obj 80 267 outlet~; #X obj 171 20 inlet position; #X obj 81 216 -~; #X obj 15 21 inlet bang; #X obj -4 226 tgl 15 0 empty empty empty 0 -6 0 10 -262144 -1 -1 0 1; #X msg -9 181 1; #X msg 22 181 0; #X floatatom 31 135 5 0 0 0 - - -; #X obj 31 153 sel 0; #X obj 1 64 t b b; #X msg 31 97 1 0 \, 0 40; #X obj 31 116 line 1 40; #X obj -4 247 switch~ 16; #X obj 143 87 delwrite~ \$0-pick-position 100; #X obj 141 116 delread~ \$0-pick-position 3; #X connect 0 0 3 0; #X connect 0 0 14 0; #X connect 2 0 15 0; #X connect 3 0 1 0; #X connect 4 0 10 0; #X connect 5 0 13 0; #X connect 6 0 5 0; #X connect 7 0 5 0; #X connect 8 0 9 0; #X connect 9 0 7 0; #X connect 10 0 11 0; #X connect 10 1 6 0; #X connect 11 0 12 0; #X connect 12 0 8 0; #X connect 15 0 3 1; #X restore 150 180 pd pick-position; #X floatatom 243 100 5 0 0 0 - - -; #N canvas 0 25 251 182 pick-position-delay-calculator 0; #N canvas 0 0 450 300 midi-to-delay-length 0; #X obj 33 51 mtof; #X obj 33 71 expr 1000/$f1; #X obj 33 31 inlet; #X obj 33 92 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X restore 56 6 pd midi-to-delay-length; #X obj 56 -34 loadbang; #X msg 56 -14 40; #X obj 32 47 / 4; #X floatatom 5 -59 5 0 0 0 - - -; #X obj 5 -42 t b f; #X obj 5 -80 r \$0-pick-location; #X obj 32 67 outlet pickpositiondelay; #X connect 0 0 3 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 7 0; #X connect 4 0 5 0; #X connect 5 0 3 0; #X connect 5 1 3 1; #X connect 6 0 4 0; #X restore 243 54 pd pick-position-delay-calculator; #X obj 93 50 t b b b f b; #X text 274 98 pick position delay in ms; #X connect 0 0 5 0; #X connect 1 0 0 1; #X connect 2 0 1 0; #X connect 3 0 16 1; #X connect 4 0 15 0; #X connect 6 0 0 2; #X connect 7 0 12 0; #X connect 8 0 7 0; #X connect 9 0 7 0; #X connect 10 0 11 0; #X connect 11 0 9 0; #X connect 13 0 14 0; #X connect 14 0 10 0; #X connect 15 0 19 0; #X connect 16 0 0 0; #X connect 17 0 16 2; #X connect 18 0 17 0; #X connect 19 0 13 0; #X connect 19 1 3 0; #X connect 19 2 16 0; #X connect 19 3 2 0; #X connect 19 4 8 0; #X restore 5 173 pd stringunit; #X obj 29 409 dac~; #X obj 172 113 hsl 128 15 2 50 0 0 \$0-pick-location empty empty -2 -6 0 10 -262144 -1 -1 794 1; #X text 197 79 pick location; #X obj 170 51 loadbang; #X floatatom 169 137 5 0 0 0 - - -; #X text 153 137 1/; #X text 202 137 up string from bridge; #X obj 39 381 *~; #X obj 69 235 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 7210 1; #X msg 169 71 5; #X text 93 312 volume; #X text 2 126 note; #X text 320 409 sg 2008; #X text 105 -74 KARPLUS-STRONG SYNTHESIS WITH BODY FORMANTS; #X obj 80 -44 loadbang; #X msg 80 -24 0.977; #X floatatom 69 371 5 0 0 0 - - -; #X obj 69 194 loadbang; #X msg 69 214 0.3; #X connect 0 0 4 0; #X connect 1 0 2 0; #X connect 1 0 4 1; #X connect 4 0 12 0; #X connect 6 0 9 0; #X connect 8 0 14 0; #X connect 12 0 5 0; #X connect 12 0 5 1; #X connect 13 0 12 1; #X connect 13 0 21 0; #X connect 14 0 6 0; #X connect 19 0 20 0; #X connect 20 0 1 0; #X connect 22 0 23 0; #X connect 23 0 13 0;