#N canvas 22 1 647 569 12; #X text 427 536 updated for Pd version 0.26; #X floatatom 58 506 0 0 0; #N canvas 159 26 495 266 output 0; #X obj 338 160 t b; #X obj 338 110 f; #X obj 338 60 inlet; #X text 344 29 mute; #X obj 338 185 f; #X msg 425 178 0; #X msg 338 85 bang; #X obj 338 135 moses 1; #X obj 425 153 t b f; #X obj 397 117 moses 1; #X obj 83 148 dbtorms; #X obj 397 92 r master-lvl; #X obj 83 42 r master-lvl; #X obj 338 210 s master-lvl; #X obj 22 181 inlet~; #X obj 199 41 inlet; #X text 199 18 level; #X obj 199 100 s master-lvl; #X msg 96 65 set \$1; #X obj 96 89 outlet; #X msg 214 64 \; pd dsp 1; #X obj 83 194 line~; #X obj 22 212 *~; #X obj 22 241 dac~; #X obj 83 171 pack 0 50; #X text 20 158 audio; #X text 93 110 show level; #X connect 0 0 4 0; #X connect 1 0 7 0; #X connect 2 0 6 0; #X connect 4 0 13 0; #X connect 5 0 13 0; #X connect 6 0 1 0; #X connect 7 0 0 0; #X connect 7 1 8 0; #X connect 8 0 5 0; #X connect 9 1 4 1; #X connect 10 0 24 0; #X connect 11 0 1 1; #X connect 11 0 9 0; #X connect 12 0 10 0; #X connect 12 0 18 0; #X connect 14 0 22 0; #X connect 15 0 17 0; #X connect 15 0 20 0; #X connect 18 0 19 0; #X connect 21 0 22 1; #X connect 22 0 23 0; #X connect 22 0 23 1; #X connect 24 0 21 0; #X restore 33 534 pd output; #X msg 91 506 MUTE; #X text 130 505 <-- output amplitude; #N canvas 0 0 600 392 conversion-tables 0; #X obj 26 130 loadbang; #X graph graph1 0 0 123 10 302 148 502 48; #X array dbtorms 123 float 0; #X pop; #X text 504 141 0; #X text 506 41 10; #X text 321 151 ------ 123 samples ------; #X graph graph2 0 0 130 12000 309 325 509 225; #X array mtof 130 float 0; #X pop; #X text 319 333 ------ 130 samples ------; #X text 518 318 0; #X text 520 218 12000; #X msg 26 153 \; dbtorms read dbtorms.txt \; mtof read mtof.txt; #X connect 0 0 9 0; #X restore 476 437 pd conversion-tables; #X obj 33 482 hip~ 5; #X text 92 12 DELAYS; #X obj 33 453 +~; #X obj 44 374 delwrite~ delay1 2000; #X floatatom 49 401 0 0 0; #X obj 49 426 delread~ delay1 1000; #X text 210 37 You can delay a signal using the delwrite~ and delread~ objects. In this example \, the pitch of the oscillator is varying slightly so that the delayed signal is different from the straight signal.; #X text 212 99 delread always delays the signal an integer number of samples and does no interpolation.; #X text 211 137 The delwrite~ object creates the delay line \; you give it a name and a size in milliseconds. Each delwrite~ should have a different name.; #X text 209 184 Delread~'s arguments are the name of a delwrite (of which there should be exactly one) and a delay time in milliseconds between 0 and the length of the delay line. Each delwrite~ may have as many delread~s as you wish \, which function as multiple delay taps. ; #X text 83 401 <-- delay time; #X text 246 373 write to delay line; #X text 237 427 read from delay line; #X text 67 454 add the original and the delayed signal; #X obj 13 263 adc~; #X obj 300 401 *~ 0.7; #X obj 144 110 vsl 15 128 0 1 0 0 empty empty delay_feedback -30 -20 0 10 -262144 -1 -1 3400 1; #X obj 29 304 *~; #X obj 51 111 vsl 15 128 0 1 0 0 empty empty input_amplitude -30 -20 0 10 -262144 -1 -1 0 1; #X obj 385 305 loadbang; #X msg 341 337 0.7; #X msg 385 336 85; #X msg 425 337 867; #X connect 1 0 2 1; #X connect 2 0 1 0; #X connect 3 0 2 2; #X connect 6 0 2 0; #X connect 8 0 6 0; #X connect 10 0 11 0; #X connect 11 0 8 1; #X connect 11 0 21 0; #X connect 20 0 23 0; #X connect 20 1 23 0; #X connect 21 0 9 0; #X connect 22 0 21 1; #X connect 23 0 9 0; #X connect 23 0 8 0; #X connect 24 0 23 1; #X connect 25 0 26 0; #X connect 25 0 28 0; #X connect 25 0 27 0; #X connect 26 0 22 0; #X connect 26 0 24 0; #X connect 27 0 1 0; #X connect 28 0 10 0;