#N canvas 288 289 658 405 10; #X declare -lib Gem; #X text 452 8 GEM object; #X obj 9 265 cnv 15 430 135 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 40 267 Inlets:; #X text 39 365 Outlets:; #X obj 9 227 cnv 15 430 30 empty empty empty 20 12 0 14 -195568 -66577 0; #X text 18 226 Arguments:; #X obj 8 56 cnv 15 430 165 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 449 77 cnv 15 200 280 empty empty empty 20 12 0 14 -228992 -66577 0; #X text 453 60 Example:; #X obj 540 288 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577 0; #N canvas 0 0 450 300 gemwin 0; #X obj 132 136 gemwin; #X obj 67 89 outlet; #X obj 67 10 inlet; #X msg 67 70 set destroy; #X msg 132 112 create \, 1; #X msg 198 112 destroy; #X msg 156 71 set create; #X obj 67 41 route create; #X connect 2 0 7 0; #X connect 3 0 1 0; #X connect 4 0 0 0; #X connect 5 0 0 0; #X connect 6 0 1 0; #X connect 7 0 3 0; #X connect 7 0 4 0; #X connect 7 1 6 0; #X connect 7 1 5 0; #X restore 545 327 pd gemwin; #X msg 545 308 create; #X text 541 287 Create window:; #X obj 451 172 cnv 15 155 105 empty empty empty 20 12 0 14 -24198 -66577 0; #X obj 451 83 gemhead; #X text 17 379 Outlet 1: gemlist; #X text 24 281 Inlet 1: gemlist; #X obj 451 302 square 3; #X obj 451 280 pix_texture; #X text 71 31 Class: pix object (timebased effect); #X obj 451 151 pix_film; #X obj 515 151 t f; #X obj 464 103 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #N canvas 0 0 450 300 open 0; #X obj 85 49 inlet; #X obj 85 237 outlet; #X obj 85 145 openpanel; #X msg 85 179 open \$1; #X msg 259 213 auto 1; #X obj 268 179 loadbang; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X connect 4 0 1 0; #X connect 5 0 4 0; #X restore 464 131 pd open; #X text 505 77 open a supported; #X text 506 88 movie-clip; #X text 523 114 macOS: quicktime; #X text 516 104 MS Windows: *.AVI; #X text 523 124 linux: depends...; #X text 29 57 Description: timebased IIR-filter; #X floatatom 457 191 3 0 1 2 fb0 - -; #X floatatom 481 191 3 0 1 2 fb1 - -; #X floatatom 505 191 3 0 1 2 fb2 - -; #X floatatom 534 191 3 0 1 2 ff1 - -; #X floatatom 558 191 3 0 1 2 ff2 - -; #N canvas 0 0 450 300 init 0; #X msg 175 214 0.3; #X msg 247 215 0.6; #X obj 104 258 outlet; #X obj 154 258 outlet; #X obj 204 258 outlet; #X obj 254 258 outlet; #X obj 304 258 outlet; #X obj 244 59 inlet; #X obj 388 158 t b; #X msg 378 201 1; #X msg 413 201 0; #X obj 246 88 route 1; #X msg 104 214 0.2; #X msg 140 215 0.5; #X obj 353 258 outlet; #X msg 277 215 0.2; #X msg 312 213 0.2; #X obj 238 127 t b; #X obj 193 105 t b b; #X obj 277 115 t b b; #X msg 277 135 1; #X connect 0 0 4 0; #X connect 1 0 5 0; #X connect 7 0 11 0; #X connect 8 0 9 0; #X connect 8 0 10 0; #X connect 9 0 5 0; #X connect 10 0 3 0; #X connect 10 0 4 0; #X connect 10 0 6 0; #X connect 10 0 14 0; #X connect 11 0 18 0; #X connect 11 1 19 0; #X connect 12 0 2 0; #X connect 13 0 3 0; #X connect 15 0 6 0; #X connect 16 0 14 0; #X connect 17 0 13 0; #X connect 17 0 0 0; #X connect 17 0 1 0; #X connect 17 0 15 0; #X connect 17 0 16 0; #X connect 18 0 12 0; #X connect 18 1 17 0; #X connect 19 0 20 0; #X connect 19 1 8 0; #X connect 20 0 2 0; #X restore 605 174 pd init; #X obj 605 157 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X msg 534 238 set; #X text 23 298 Inlet 1: message: set: overwrites the filter-buffers with the next incoming image.; #X text 439 378 see also:; #X obj 509 381 pix_tIIR; #X text 23 76 basically it works like the Pd-object [biquad~] (except \, that applies to images instead of samples); #X text 39 134 y(n) = ff1 * w(n) + ff2 * w(n-1) + ff3 * w(n-2); #X text 40 149 w(n) = fb0 * x(n) + fb1 * w(n-1) + fb2 * w(n-2); #X text 32 104 the operation can be described by the following difference-equation: ; #X text 18 166 x(n) describes the input-image \, y(n) is the output-image. ; #X text 16 183 You can set all buffer-images w(m) to the next input-image x(n) with the "set"-command.; #X text 64 237 list:; #X obj 572 381 biquad~; #X text 50 12 Synopsis: [pix_biquad]; #X obj 451 258 pix_biquad; #X floatatom 582 191 3 0 1 2 ff3 - -; #X obj 457 209 pack 1 0 0 1 0 0; #X text 22 327 Inlet 1: : the filter-coefficients "fb0 fb1 fb2 ff1 ff2 ff3"; #X obj 548 8 declare -lib Gem; #X connect 10 0 11 0; #X connect 11 0 10 0; #X connect 14 0 20 0; #X connect 18 0 17 0; #X connect 20 0 50 0; #X connect 20 2 21 0; #X connect 21 0 20 1; #X connect 22 0 23 0; #X connect 23 0 20 0; #X connect 30 0 52 0; #X connect 31 0 52 1; #X connect 32 0 52 2; #X connect 33 0 52 3; #X connect 34 0 52 4; #X connect 35 0 30 0; #X connect 35 1 31 0; #X connect 35 2 32 0; #X connect 35 3 33 0; #X connect 35 4 34 0; #X connect 35 5 51 0; #X connect 36 0 35 0; #X connect 37 0 50 0; #X connect 50 0 18 0; #X connect 51 0 52 5; #X connect 52 0 50 0;