#N canvas 124 28 964 549 12;
#X floatatom 20 391;
#X floatatom 297 394;
#X floatatom 210 394;
#X graph graph1 0 -1 400 1 544 335 944 35;
#X array orig 400 float;
#X array lop 400 float;
#X array hip 400 float;
#X array bp 400 float;
#X pop;
#X obj 334 457 r metro;
#X obj 180 322 hip~ 100;
#X obj 105 320 lop~ 100;
#X obj 273 322 bp~ 100 10;
#X floatatom 255 245;
#X floatatom 338 295;
#X floatatom 118 393;
#X text 9 11 Filters;
#X msg 87 130 \; pd dsp 1 \; metro bang;
#X msg 191 135 \; pd dsp 0;
#X text 15 417 Original;
#X text 122 417 Low pass;
#X text 210 417 High pass;
#X text 298 416 Band pass;
#X obj 14 517 tabwrite~ orig;
#X obj 309 520 tabwrite~ bp;
#X obj 213 520 tabwrite~ hip;
#X obj 116 519 tabwrite~ lop;
#X text 97 110 start;
#X text 193 111 stop;
#X floatatom 14 235;
#X obj 14 261 osc~ 440;
#X text 51 236 <-- change frequency;
#X text 294 247 <-- center/rolloff frequency;
#X text 374 297 <-- Q;
#X text 548 341 This graph holds 4 arrays for the input and three filter outputs.;
#X text 375 389 RMS amplitudes of the original signal and the three filter outputs;
#X text 746 536 updated for Pd version 0.26;
#X obj 334 482 metro 1000;
#X text 29 33 Pd provides low \, high \, and band pass filters \, as shown here. By changing the test frequency \, the filter frequency \, and the "Q" value \, you can see how these filters affect the amplitude and phase of incoming signals;
#X obj 20 366 env~ 4096;
#X obj 118 368 env~ 4096;
#X obj 210 369 env~ 4096;
#X obj 297 369 env~ 4096;
#X obj 91 213 print~;
#X text 456 434 Notice how the phase of the graphed sinusoids slips back and forth... this is because graphing always starts on the nearest 64-sample boundary to the time the metronome fires. If you run at 48K the slippage disappears \, because then the metronome fires every 48K samples \, which is a multiple of 64;
#X connect 4 0 32 0;
#X connect 5 0 20 0;
#X connect 5 0 36 0;
#X connect 6 0 21 0;
#X connect 6 0 35 0;
#X connect 7 0 19 0;
#X connect 7 0 37 0;
#X connect 8 0 6 1;
#X connect 8 0 5 1;
#X connect 8 0 7 1;
#X connect 9 0 7 2;
#X connect 24 0 25 0;
#X connect 25 0 18 0;
#X connect 25 0 6 0;
#X connect 25 0 5 0;
#X connect 25 0 7 0;
#X connect 25 0 34 0;
#X connect 25 0 38 0;
#X connect 32 0 18 0;
#X connect 32 0 21 0;
#X connect 32 0 20 0;
#X connect 32 0 19 0;
#X connect 34 0 0 0;
#X connect 35 0 10 0;
#X connect 36 0 2 0;
#X connect 37 0 1 0;
