#N canvas 100 17 662 466 12; #X floatatom 130 389 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 397 110 moses 1; #X obj 83 148 dbtorms; #X obj 397 85 r master-lvl; #X obj 83 42 r master-lvl; #X obj 338 210 s master-lvl; #X obj 18 152 inlet~; #X obj 199 41 inlet; #X text 199 18 level; #X obj 197 104 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 16 129 audio; #X text 93 110 show level; #X obj 18 179 hip~ 5; #X connect 0 0 4 0; #X connect 1 0 7 0; #X connect 2 0 6 0; #X connect 4 0 12 0; #X connect 5 0 12 0; #X connect 6 0 1 0; #X connect 7 0 0 0; #X connect 7 1 5 0; #X connect 8 1 4 1; #X connect 9 0 23 0; #X connect 10 0 1 1; #X connect 10 0 8 0; #X connect 11 0 9 0; #X connect 11 0 17 0; #X connect 13 0 26 0; #X connect 14 0 16 0; #X connect 14 0 19 0; #X connect 17 0 18 0; #X connect 20 0 21 1; #X connect 21 0 22 0; #X connect 21 0 22 1; #X connect 23 0 20 0; #X connect 26 0 21 0; #X restore 92 415 pd output; #X msg 167 389 MUTE; #X text 206 388 <-- output amplitude; #X obj 51 203 noise~; #N canvas 0 0 760 350 delay-writer 0; #X obj 75 100 inlet~; #X obj 79 250 outlet~; #X obj 90 194 delwrite~ delay3 1000; #X obj 379 97 block~ 1; #X obj 145 131 delread~ delay3; #X obj 144 159 *~ 0.99; #X obj 79 164 +~; #X obj 146 100 inlet; #X text 84 22 Because of the feedback \, the delwrite~ has to go after the delread~. So we set the blocksize to 1 to minimize the resulting delay.; #X connect 0 0 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X connect 6 0 1 0; #X connect 7 0 4 0; #X restore 91 328 pd delay-writer; #X text 401 435 updated for Pd version 0.34; #X obj 77 285 *~; #X obj 273 275 expr 1000/$f1; #X obj 273 249 mtof; #X msg 176 220 1; #X msg 176 282 0; #X obj 177 164 metro 500; #X obj 273 195 random 60; #X obj 177 135 loadbang; #X obj 216 217 del 2; #X obj 273 221 + 30; #X obj 51 228 lop~ 1000; #X text 86 9 CONTROLLING DELAY WITH BLOCK~; #X text 75 52 In situations where a delay read feeds pack to a delay write \, you can shorten the minimum delay by changing the block size. Do this in a subpatch...; #X text 238 328 <-- here is the delay loop; #X connect 0 0 1 1; #X connect 1 0 0 0; #X connect 2 0 1 2; #X connect 4 0 17 0; #X connect 5 0 1 0; #X connect 7 0 5 0; #X connect 8 0 5 1; #X connect 9 0 8 0; #X connect 10 0 7 1; #X connect 11 0 7 1; #X connect 12 0 10 0; #X connect 12 0 13 0; #X connect 12 0 15 0; #X connect 13 0 16 0; #X connect 14 0 12 0; #X connect 15 0 11 0; #X connect 16 0 9 0; #X connect 17 0 7 0;