#N canvas 364 134 765 779 10;
#X floatatom 100 598 5 0 0;
#X msg 28 361 ver \$1;
#X msg 28 393 hor \$1;
#X obj 96 362 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 95 389 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 28 629 pdp_bq;
#X floatatom 89 495 5 0 0;
#X msg 28 495 onep \$1;
#X floatatom 89 526 5 0 0;
#X msg 28 530 twop \$1;
#X obj 85 272 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 87 304 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 79 209 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X obj 82 244 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X msg 28 209 lr \$1;
#X msg 28 244 rl \$1;
#X msg 28 277 tb \$1;
#X msg 28 305 bt \$1;
#X obj 454 406 t b f;
#X floatatom 489 369 5 0 0;
#X floatatom 488 317 5 0 0;
#X obj 454 436 pack s 0 0;
#X msg 454 469 \$1 \$2 \$3;
#X obj 489 405 t b f;
#X msg 410 370 lpf;
#X msg 409 344 hpf;
#X msg 409 398 apf;
#X msg 409 425 bsf;
#X obj 461 38 pdp_help_input;
#X msg 461 13 start;
#X msg 507 13 stop;
#X obj 28 746 pdp_help_output;
#X text 159 598 right inlet sets number of passes;
#X text 37 16 pdp_bq: a spatial biquad filter;
#X obj 495 196 pdp_blur;
#X obj 598 194 pdp_phase;
#X obj 461 93 pdp_route 3;
#X obj 533 65 hdl 15 1 0 3 empty empty empty 0 -6 0 8 -262144 -1 -1
0;
#X obj 41 670 r \$0-out;
#X obj 495 246 s \$0-out;
#X floatatom 544 119 5 0 0;
#X floatatom 617 117 5 0 0;
#X text 312 358 high pass;
#X text 313 382 low pass;
#X text 314 410 all pass;
#X text 313 439 band stop;
#X text 541 367 pole Q;
#X text 94 31 it is a bit awkward to use directly;
#X text 94 45 try one of the abstractions (pdp_blur and;
#X text 95 61 pdp_phase);
#X text 122 208 left->right;
#X text 124 242 right->left;
#X text 126 272 top->bottom;
#X text 126 300 bottom->top;
#X text 133 359 bt and tb;
#X text 132 383 lr and rl;
#X text 147 494 one pole filter;
#X text 146 524 double one pole filter;
#X msg 89 464 0.1;
#X msg 556 95 0.5;
#X msg 616 94 0.5;
#X text 588 62 choose example here;
#X msg 672 118 1;
#X msg 673 140 0;
#X msg 673 163 -1;
#X msg 712 116 1;
#X msg 713 138 0;
#X msg 713 161 -1;
#X text 93 91 "unstable" behaviour is possible;
#X msg 490 347 0.1;
#X msg 488 293 0.3;
#X obj 28 720 pdp_gain;
#X floatatom 112 693 5 0 0;
#X msg 112 671 1;
#X text 95 107 when frequency and Q are outside their;
#X text 96 122 sensible ranges;
#X text 122 180 set filter direction:;
#X text 264 342 set the filter type:;
#X text 137 476 set the filter type:;
#X text 538 319 (between 0 and 1 \, 0.5 = nyquist);
#X text 540 333 comment;
#X text 540 305 pole frequency;
#X msg 100 572 1;
#X msg 457 611 chanmask \$1;
#X floatatom 457 585 5 0 0;
#X text 456 633 binary channel mask;
#X connect 0 0 5 1;
#X connect 1 0 5 0;
#X connect 2 0 5 0;
#X connect 3 0 1 0;
#X connect 4 0 2 0;
#X connect 5 0 71 0;
#X connect 6 0 7 0;
#X connect 7 0 5 0;
#X connect 8 0 9 0;
#X connect 8 0 9 0;
#X connect 9 0 5 0;
#X connect 10 0 16 0;
#X connect 11 0 17 0;
#X connect 12 0 14 0;
#X connect 13 0 15 0;
#X connect 14 0 5 0;
#X connect 15 0 5 0;
#X connect 16 0 5 0;
#X connect 17 0 5 0;
#X connect 18 0 21 0;
#X connect 18 1 21 1;
#X connect 19 0 23 0;
#X connect 20 0 18 0;
#X connect 21 0 22 0;
#X connect 22 0 5 0;
#X connect 23 0 21 0;
#X connect 23 1 21 2;
#X connect 24 0 21 0;
#X connect 25 0 21 0;
#X connect 26 0 21 0;
#X connect 27 0 21 0;
#X connect 28 0 36 0;
#X connect 29 0 28 0;
#X connect 30 0 28 0;
#X connect 34 0 39 0;
#X connect 35 0 39 0;
#X connect 36 0 5 0;
#X connect 36 1 34 0;
#X connect 36 2 35 0;
#X connect 37 0 36 1;
#X connect 38 0 71 0;
#X connect 40 0 34 1;
#X connect 41 0 35 1;
#X connect 58 0 6 0;
#X connect 59 0 40 0;
#X connect 60 0 41 0;
#X connect 62 0 35 2;
#X connect 63 0 35 2;
#X connect 64 0 35 2;
#X connect 65 0 35 3;
#X connect 66 0 35 3;
#X connect 67 0 35 3;
#X connect 69 0 19 0;
#X connect 70 0 20 0;
#X connect 71 0 31 0;
#X connect 72 0 71 1;
#X connect 73 0 72 0;
#X connect 82 0 0 0;
#X connect 83 0 5 0;
#X connect 84 0 83 0;
