max v2; #N vpatcher 10 59 946 783; #P window setfont Times 18.; #P comment 282 644 108 1310738 Audio On/Off; #P window setfont "Fixedwidth Serif" 18.; #P hidden message 846 60 43 1441810 127; #P hidden message 789 60 54 1441810 0.75; #P hidden message 765 60 19 1441810 1; #P hidden message 718 60 43 1441810 100; #P hidden message 693 60 19 1441810 5; #P hidden message 634 60 54 1441810 0.25; #P hidden newex 634 24 98 1441810 loadbang; #P window setfont Times 18.; #P comment 580 219 86 1310738 delay (ms); #P comment 709 161 31 1310738 Hz; #P window setfont Times 12.; #P window linecount 2; #P comment 456 523 228 1310732 i.e. \, s = RD where R is the sampling rate in Hz and D is the desired delay time in seconds; #P window linecount 3; #P comment 456 556 224 1310732 e.g. \, assuming a sample rate R of 44 \, 100 Hz and a desired delay of 0.01 seconds (10 ms) \, s would be 441; #P window linecount 2; #P comment 444 491 261 1310732 where s is a number of samples of delay calculated based on the sample rate and the desired delay time; #P window setfont Times 18.; #P window linecount 1; #P comment 436 466 261 1310738 y[n] = ax[n] + bx[n-s] + cy[n-s]; #P user meter~ 298 471 317 593 50 0 168 0 103 103 103 255 153 0 255 0 0 217 217 0 153 186 0 12 3 3 3 3; #P user ezdac~ 311 610 355 643 0; #P user gain~ 329 471 24 100 158 0 1.071519 7.94321 10.; #P comment 519 186 50 1310738 depth; #P window setfont "Fixedwidth Serif" 18.; #P flonum 611 160 98 18 50. 0 1 22 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 611 186 98 1441810 !/ 1000.; #P window setfont Times 18.; #P comment 588 140 174 1310738 fundamental frequency; #P comment 540 116 37 1310738 rate; #P window setfont "Fixedwidth Serif" 18.; #P flonum 504 218 70 18 0. 20. 3 22 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 449 185 70 18 0. 10. 3 22 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 427 115 109 18 0. 0 1 22 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 427 146 76 1441810 cycle~; #P newex 427 216 32 1441810 *~; #P newex 427 246 87 1441810 +~; #P user panel 413 91 167 199; #X brgb 182 142 255; #X frgb 0 0 0; #X border 0; #X rounded 16; #X shadow 0; #X done; #P flonum 605 374 59 18 0 0 0 22 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 721 375 65 18 -0.99 0.99 3 22 0 0 0 221 221 221 222 222 222 0 0 0; #P flonum 499 373 62 18 0 0 0 22 0 0 0 221 221 221 222 222 222 0 0 0; #P window setfont Times 18.; #P window linecount 2; #P comment 495 335 82 1310738 a ("gain") coefficient; #P comment 713 337 96 1310738 c (feedback) coefficient; #P comment 586 336 120 1310738 b (feedforward) coefficient; #P window setfont "Fixedwidth Serif" 18.; #P window linecount 1; #P newex 329 441 402 1441810 comb~ 20; #P message 76 318 54 1441810 open; #P toggle 176 298 15 0; #P message 176 318 87 1441810 loop \$1; #P toggle 135 318 22 0; #N sfplay~ 1 120960 0 ; #P newobj 135 359 87 1441810 sfplay~; #P fasten 2 0 0 0 181 349 140 349; #P fasten 4 0 0 0 81 349 140 349; #P connect 1 0 0 0; #P connect 3 0 2 0; #P fasten 24 0 26 0 322 593 322 464 303 464; #P connect 24 0 25 0; #P fasten 0 0 5 0 140 403 334 403; #P hidden connect 39 0 24 0; #P connect 5 0 24 0; #P connect 24 0 25 1; #P hidden connect 34 0 16 0; #P connect 16 0 15 0; #P connect 15 0 14 0; #P connect 14 0 13 0; #P connect 13 0 5 1; #P hidden connect 35 0 17 0; #P connect 17 0 14 1; #P hidden connect 37 0 9 0; #P fasten 21 0 18 0 616 214 509 214; #P connect 18 0 13 1; #P fasten 9 0 5 2 504 399 530 399; #P hidden connect 36 0 22 0; #P connect 22 0 21 0; #P fasten 11 0 5 3 610 399 628 399; #P hidden connect 33 0 34 0; #P hidden connect 33 0 35 0; #P hidden connect 33 0 36 0; #P hidden connect 38 0 10 0; #P connect 10 0 5 4; #P hidden connect 33 0 37 0; #P hidden connect 33 0 38 0; #P hidden connect 33 0 39 0; #P pop;