#N canvas 461 44 882 654 10;
#X obj 621 38 noise~;
#X obj 689 105 hsl 128 15 0 1 0 0 empty \$0-gain empty -2 -8 0 10 -204786
-1 -1 4445 1;
#N canvas 0 22 450 300 output 0;
#X obj 206 206 *~;
#X obj 225 175 line~;
#X msg 225 149 \$1 10;
#X obj 225 113 pow 4;
#X obj 190 245 dac~;
#X obj 226 60 inlet;
#X obj 177 60 inlet~;
#X connect 0 0 4 0;
#X connect 0 0 4 1;
#X connect 1 0 0 1;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 5 0 3 0;
#X connect 6 0 0 0;
#X restore 621 139 pd output;
#N canvas 56 22 438 429 peak 0;
#X obj 48 108 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 102 361 s \$0-coeficientes;
#X text 184 107 Frequência;
#X obj 45 315 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X text 329 185 Q;
#X obj 103 150 hsl 128 17 -24 24 0 0 empty empty empty 5 9 0 10 -261234
-1 -1 0 0;
#X obj 100 262 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261234 -1 -1 0 256;
#X obj 195 186 hsl 128 17 1 900 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 192 208 nbx 8 14 1 1e+37 0 0 empty empty empty 0 -8 0 10 -228856
-1 -1 1 256;
#X obj 192 233 t b f;
#X obj 100 288 t b f;
#X text 237 149 Ganho (dB);
#X obj 102 338 equalizer 500 24 100;
#X text 30 23 O [equalizer] gera coeficientes para um "peaking filter"
\, que possui um parâmetro que permite controlar o ganho em dB \, sendo
possível assim acentuar ou atenuar uma faixa de frequência.;
#X connect 0 0 3 0;
#X connect 3 0 12 0;
#X connect 5 0 6 0;
#X connect 6 0 10 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 6 0;
#X connect 9 1 12 2;
#X connect 10 0 3 0;
#X connect 10 1 12 1;
#X connect 12 0 1 0;
#X restore 458 114 pd peak;
#N canvas 20 22 464 417 highshelf 0;
#X obj 58 118 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 112 371 s \$0-coeficientes;
#X text 194 117 Frequência;
#X obj 55 325 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X obj 113 160 hsl 128 17 -24 24 0 0 empty empty empty 5 9 0 10 -261234
-1 -1 0 0;
#X obj 110 272 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261234 -1 -1 0 256;
#X obj 214 196 hsl 128 17 1 130 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 211 218 nbx 8 14 1 1e+37 0 0 empty empty empty 0 -8 0 10 -228856
-1 -1 1 256;
#X obj 211 243 t b f;
#X obj 110 298 t b f;
#X text 247 159 Ganho (dB);
#X text 348 195 Slope;
#X text 37 25 O [highshelf] é um filtro que acentua ou atenua acima
de uma dada frequência por meio do parâmetro de ganho. Quando atenua
\, ele pode ter uma resposta parecida com a de um Passa Baixa. O parâmetro
"Slope" se assemelha ao "Q".;
#X obj 112 348 highshelf 500 10 100;
#X connect 0 0 3 0;
#X connect 3 0 13 0;
#X connect 4 0 5 0;
#X connect 5 0 9 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 5 0;
#X connect 8 1 13 2;
#X connect 9 0 3 0;
#X connect 9 1 13 1;
#X connect 13 0 1 0;
#X restore 458 135 pd highshelf;
#N canvas 93 22 402 403 lowshelf 0;
#X obj 43 90 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 100 343 s \$0-coeficientes;
#X text 179 89 Frequência;
#X obj 40 297 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X obj 98 132 hsl 128 17 -24 24 0 0 empty empty empty 5 9 0 10 -261234
-1 -1 0 0;
#X obj 95 244 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261234 -1 -1 0 256;
#X obj 179 168 hsl 128 17 1 130 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 176 190 nbx 8 14 1 1e+37 0 0 empty empty empty 0 -8 0 10 -228856
-1 -1 1 256;
#X obj 176 215 t b f;
#X obj 95 270 t b f;
#X text 232 131 Ganho (dB);
#X text 313 167 Slope;
#X obj 100 320 lowshelf 500 10 100;
#X text 20 22 O [lowshelf] é o oposto de um "highshelf" e acentua ou
atenua abaixo de uma dada frequência - podendo ter uma resposta parecida
com a de um Passa Alta.;
#X connect 0 0 3 0;
#X connect 3 0 12 0;
#X connect 4 0 5 0;
#X connect 5 0 9 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 5 0;
#X connect 8 1 12 2;
#X connect 9 0 3 0;
#X connect 9 1 12 1;
#X connect 12 0 1 0;
#X restore 458 154 pd lowshelf;
#N canvas 27 22 450 300 notch 0;
#X obj 139 164 trigger bang float;
#X obj 91 94 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 142 120 hsl 128 17 1 900 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 145 235 s \$0-coeficientes;
#X text 227 93 Frequência;
#X obj 139 142 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-228856 -1 -1 0 256;
#X obj 88 189 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X text 276 119 Q;
#X text 40 27 Um filtro "notch" é o oposto de um Passa Banda \, também
chamado de "Rejeita Banda". Mexa os sliders e confira.;
#X obj 145 212 notch 500 100;
#X connect 0 0 6 0;
#X connect 0 1 9 1;
#X connect 1 0 6 0;
#X connect 2 0 5 0;
#X connect 5 0 0 0;
#X connect 6 0 9 0;
#X connect 9 0 3 0;
#X restore 458 94 pd notch;
#N canvas 183 51 1099 569 (subpatch) 0;
#N canvas 1021 22 212 339 freq-response 0;
#N canvas 324 327 712 441 init 0;
#X obj 148 54 loadbang;
#X obj 149 305 s \$0-dbrange;
#X obj 333 129 samplerate~;
#X obj 333 152 v sr_\$0;
#X msg 186 241 400;
#X obj 496 189 table re1_\$0 400;
#X obj 496 209 table im1_\$0 400;
#X obj 496 229 table re2_\$0 400;
#X obj 496 249 table im2_\$0 400;
#N canvas 699 151 382 450 get-complex-freqs 0;
#X msg 232 232 resize \$1;
#X obj 281 276 s re1_\$0;
#X obj 267 301 s im1_\$0;
#X obj 256 332 s re2_\$0;
#X obj 247 362 s im2_\$0;
#X obj 12 299 tabwrite re1_\$0;
#X obj 108 394 tabwrite im2_\$0;
#X obj 232 393 s amp_\$0;
#X obj 50 80 change;
#X obj 251 171 v table_size_\$0;
#X obj 50 113 trigger bang float;
#X obj 232 206 change 400;
#X obj 50 43 inlet;
#X obj 76 363 tabwrite re2_\$0;
#X obj 43 335 tabwrite im1_\$0;
#X obj 50 182 expr cos($f1) \; sin($f1) \; cos($f1 * 2) \; sin($f1
* 2) \; $f2;
#N canvas 11 46 935 668 loop 0;
#X obj 106 192 until;
#X obj 144 241 + 1;
#X msg 124 216 0;
#X obj 106 95 t f f;
#X obj 483 216 until;
#X obj 529 265 + 1;
#X msg 501 241 0;
#X obj 106 270 t f f;
#X obj 211 355 +;
#X obj 106 370 mtof;
#X obj 106 144 t f b f;
#X obj 483 191 t f b f;
#X obj 483 326 /;
#X obj 106 31 inlet;
#X obj 106 574 outlet;
#X obj 259 583 outlet;
#X obj 483 144 expr table_size_\$0 - $f1;
#X obj 483 265 f;
#X obj 483 379 expr pow($f1 \, 0.4);
#X obj 106 241 f;
#X obj 483 296 trigger f f;
#X obj 106 63 expr rint(table_size_\$0 * 0.98);
#X obj 483 407 * 20.6017;
#X text 556 407 MIDI 16;
#X obj 483 498 expr $f1 * (2 * -pi_\$0) / 44100;
#X obj 106 465 expr $f1 * (2 * -pi_\$0) / 44100;
#X obj 86 33 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 106 298 expr (($f1 + 1) * (midi_range_\$0 / $f2)) + 16;
#X connect 0 0 19 0;
#X connect 1 0 19 1;
#X connect 2 0 19 1;
#X connect 3 0 10 0;
#X connect 3 1 16 0;
#X connect 4 0 17 0;
#X connect 5 0 17 1;
#X connect 6 0 17 1;
#X connect 7 0 27 0;
#X connect 7 1 8 0;
#X connect 8 0 15 0;
#X connect 9 0 25 0;
#X connect 10 0 0 0;
#X connect 10 1 2 0;
#X connect 10 2 27 1;
#X connect 11 0 4 0;
#X connect 11 1 6 0;
#X connect 11 2 12 1;
#X connect 12 0 18 0;
#X connect 13 0 21 0;
#X connect 16 0 8 1;
#X connect 16 0 11 0;
#X connect 17 0 5 0;
#X connect 17 0 20 0;
#X connect 18 0 22 0;
#X connect 19 0 1 0;
#X connect 19 0 7 0;
#X connect 20 0 12 0;
#X connect 20 1 15 0;
#X connect 21 0 3 0;
#X connect 22 0 24 0;
#X connect 24 0 14 0;
#X connect 25 0 14 0;
#X connect 26 0 21 0;
#X connect 27 0 9 0;
#X restore 50 143 pd loop;
#X connect 0 0 1 0;
#X connect 0 0 2 0;
#X connect 0 0 3 0;
#X connect 0 0 4 0;
#X connect 0 0 7 0;
#X connect 8 0 10 0;
#X connect 10 0 16 0;
#X connect 10 1 9 0;
#X connect 10 1 11 0;
#X connect 11 0 0 0;
#X connect 12 0 8 0;
#X connect 15 0 5 0;
#X connect 15 1 14 0;
#X connect 15 2 13 0;
#X connect 15 3 6 0;
#X connect 15 4 5 1;
#X connect 15 4 14 1;
#X connect 15 4 13 1;
#X connect 15 4 6 1;
#X connect 16 0 15 0;
#X connect 16 1 15 1;
#X restore 186 269 pd get-complex-freqs;
#X text 216 241 array size;
#X obj 100 337 s \$0-freq-set;
#X obj 148 90 trigger b b b;
#X msg 100 306 20;
#X msg 149 272 24;
#X obj 324 231 v midi_range_\$0;
#X obj 324 205 ftom;
#X msg 324 179 8750.55;
#X obj 316 262 expr atan(1) * 4;
#X obj 317 293 v pi_\$0;
#X obj 16 409 s \$0-coeficientes;
#X obj 47 262 t b b;
#X msg 16 368 1.9664 -0.9669 0.9669 -1.9664 1 \; pd dsp 1;
#X msg 305 65 \; freq set 500;
#X obj 436 86 s \$0-gain;
#X msg 436 63 0.35;
#X connect 0 0 12 0;
#X connect 2 0 3 0;
#X connect 4 0 9 0;
#X connect 12 0 21 0;
#X connect 12 1 4 0;
#X connect 12 1 14 0;
#X connect 12 2 2 0;
#X connect 12 2 17 0;
#X connect 12 2 18 0;
#X connect 12 2 23 0;
#X connect 12 2 25 0;
#X connect 13 0 11 0;
#X connect 14 0 1 0;
#X connect 16 0 15 0;
#X connect 17 0 16 0;
#X connect 18 0 19 0;
#X connect 21 0 22 0;
#X connect 21 1 13 0;
#X connect 22 0 20 0;
#X connect 25 0 24 0;
#X restore 122 116 pd init \; tables;
#N canvas 67 23 1040 236 Z-Transform 0;
#X obj 45 19 inlet;
#X obj 45 200 outlet;
#X obj 45 164 expr sqrt($f1*$f1 + $f2*$f2) / sqrt($f3*$f3 + $f4*$f4)
;
#X text 340 44 (a1) a2 (b1) b2 b3;
#X obj 45 74 expr $f4 + ($f5 * re1_\$0[$f1]) + ($f6 * re2_\$0[$f1])
\; ($f5 * im1_\$0[$f1]) + ($f6 * im2_\$0[$f1]) \; 1 - ($f2 * re1_\$0[$f1])
- ($f3 * re2_\$0[$f1]) \; 0 - ($f2 * im1_\$0[$f1]) - ($f3 * im2_\$0[$f1])
;
#X text 428 75 b1 + (b2 * re1) + (b3 * re2) = reI;
#X text 463 90 (b2 * im1) + (b3 * im2) = imI;
#X text 435 105 1 - (a1 * re1) + (a2 * re2) = reII;
#X text 435 119 0 - (a1 * im1) + (a2 * im2) = imII;
#X text 20 144 reI;
#X text 143 143 imI;
#X text 256 143 reII;
#X text 384 142 imII;
#X text 439 166 ampI / ampII;
#X obj 211 45 unpack f f f f f;
#X obj 211 18 inlet;
#X text 92 20 index;
#X text 260 18 coeficientes;
#X obj 698 68 cnv 15 320 90 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 728 97 H(z) = b1 + (b2 * z^-1) + (b3 * z^-2);
#X text 768 103 _________________________________;
#X text 785 119 1 + (a1 * z^-1) + (a2 * z^-2);
#X text 711 75 Z-Transform:;
#X connect 0 0 4 0;
#X connect 2 0 1 0;
#X connect 4 0 2 0;
#X connect 4 1 2 1;
#X connect 4 2 2 2;
#X connect 4 3 2 3;
#X connect 14 0 4 1;
#X connect 14 1 4 2;
#X connect 14 2 4 3;
#X connect 14 3 4 4;
#X connect 14 4 4 5;
#X connect 15 0 14 0;
#X restore 24 205 pd Z-Transform;
#X obj 24 178 trigger float float;
#X obj 24 106 t bang list;
#N canvas 0 22 181 220 loop 0;
#X obj 28 100 until;
#X obj 68 138 + 1;
#X msg 72 100 0;
#X obj 28 137 f;
#X obj 28 13 inlet;
#X obj 28 173 outlet;
#X obj 28 42 trigger b b;
#X obj 28 71 v table_size_\$0;
#X connect 0 0 3 0;
#X connect 1 0 3 1;
#X connect 2 0 3 1;
#X connect 3 0 1 0;
#X connect 3 0 5 0;
#X connect 4 0 6 0;
#X connect 6 0 7 0;
#X connect 6 1 2 0;
#X connect 7 0 0 0;
#X restore 24 140 pd loop;
#N canvas 121 22 226 277 db-range 0;
#X obj 42 31 inlet;
#X obj 42 61 rmstodb;
#X obj 42 90 - 100;
#X obj 98 61 r \$0-dbrange;
#X obj 108 109 * -1;
#X obj 41 147 clip;
#X obj 80 183 /;
#X obj 80 216 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 4 0;
#X connect 3 0 5 2;
#X connect 3 0 6 1;
#X connect 4 0 5 1;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X restore 24 235 pd db-range;
#X obj 24 265 tabwrite \$0-response;
#X obj 17 53 inlet;
#X connect 1 0 5 0;
#X connect 2 0 1 0;
#X connect 2 1 6 1;
#X connect 3 0 4 0;
#X connect 3 1 1 1;
#X connect 4 0 2 0;
#X connect 5 0 6 0;
#X connect 7 0 3 0;
#X restore 114 66 pd freq-response;
#X obj 114 42 r \$0-coeficientes;
#X obj 101 100 cnv 15 848 400 empty empty empty 18 9 1 16 -262144 -1
0;
#X obj 434 109 cnv 15 15 15 empty empty Kilohertz 18 9 1 16 -262144
-1 0;
#X obj 108 148 cnv 15 798 85 empty empty empty 20 12 0 14 -257983 -66577
0;
#X obj 108 232 cnv 15 798 85 empty empty empty 20 12 0 14 -241340 -66577
0;
#X obj 108 318 cnv 15 798 85 empty empty empty 20 12 0 14 -257983 -66577
0;
#X obj 108 403 cnv 15 798 85 empty empty empty 20 12 0 14 -241340 -66577
0;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 77 170 1;
#X restore 226 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 80 170 1;
#X restore 303 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 102 170 1;
#X restore 383 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 485 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 563 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 103 170 1;
#X restore 641 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 744 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 822 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 100 170 1;
#X restore 126 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 77 170 1;
#X restore 226 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 80 170 1;
#X restore 303 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 102 170 1;
#X restore 383 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 485 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 563 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 103 170 1;
#X restore 641 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 744 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 78 170 1;
#X restore 822 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 800 170 1;
#X restore 107 148 graph;
#X text 814 130 10;
#X text 891 131 20;
#X text 739 130 5;
#X text 636 130 2;
#X text 558 131 1;
#X text 472 131 0.5;
#X text 370 131 0.2;
#X text 290 131 0.1;
#X text 213 131 0.05;
#X text 113 131 0.02;
#N canvas 391 118 975 563 (subpatch) 0;
#X array \$0-response 400 float 0;
#X coords 0 1 399 -1 800 340 1;
#X restore 107 148 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 100 170 1;
#X restore 126 318 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 800 170 1;
#X restore 107 318 graph;
#X obj 103 132 cnv 15 810 15 empty empty empty 18 9 1 16 -262144 -1
0;
#X text 911 478 -24;
#X obj 907 309 cnv 15 15 15 empty empty dB 18 9 1 17 -262144 -1 0;
#X text 911 393 -12;
#X text 911 223 12;
#X text 910 140 24;
#X text 912 309 0;
#N canvas 0 22 450 300 (subpatch) 0;
#X coords 0 1 100 -1 850 402 1;
#X restore 100 100 graph;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 800 170 1;
#X restore 107 232 graph;
#X text 815 128 10;
#X text 892 129 20;
#X text 740 128 5;
#X text 637 128 2;
#X text 559 129 1;
#X text 474 129 0.5;
#X text 372 129 0.2;
#X text 292 129 0.1;
#X text 215 129 0.05;
#X text 115 129 0.02;
#X connect 1 0 0 0;
#X coords 0 -1 1 1 850 402 1 100 100;
#X restore 15 221 pd;
#X obj 621 95 biquad~;
#X obj 642 67 r \$0-coeficientes;
#N canvas 92 22 369 285 bandpass 0;
#X obj 117 154 trigger bang float;
#X obj 81 84 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 120 110 hsl 128 17 1 900 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 135 225 s \$0-coeficientes;
#X text 217 83 Frequência;
#X obj 117 132 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-228856 -1 -1 0 256;
#X obj 78 179 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X text 254 109 Q;
#X obj 135 202 bandpass 500 10;
#X text 30 18 O [bandpass] gera coeficientes de um Passa Banda propriamente
dito (com uma resposta de frequência simétrica \, diferentemente do
[bp~] e [vcf~]).;
#X connect 0 0 6 0;
#X connect 0 1 8 1;
#X connect 1 0 6 0;
#X connect 2 0 5 0;
#X connect 5 0 0 0;
#X connect 6 0 8 0;
#X connect 8 0 3 0;
#X restore 458 74 pd bandpass;
#N canvas 47 22 397 280 lowpass-reson 0;
#X obj 127 162 trigger bang float;
#X obj 79 92 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 130 118 hsl 128 17 10 900 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 133 233 s \$0-coeficientes;
#X text 264 117 Ressonância;
#X text 215 91 Frequência;
#X obj 127 140 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-228856 -1 -1 0 256;
#X obj 76 187 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X text 17 14 O [lowpass] gera coeficientes de um Passa Baixa Ressonante.
Diferente do [lop~] \, temos um controle de ressonância que muda o
decaimento a partir da frequência de corte \, podendo também acentuar
frequências. Confira mexendo os sliders.;
#X obj 133 209 lowpass 500 100;
#X connect 0 0 7 0;
#X connect 0 1 9 1;
#X connect 1 0 7 0;
#X connect 2 0 6 0;
#X connect 6 0 0 0;
#X connect 7 0 9 0;
#X connect 9 0 3 0;
#X restore 458 31 pd lowpass-reson;
#N canvas 21 22 450 300 highpass-reson 0;
#X obj 137 172 trigger bang float;
#X obj 89 102 hsl 128 17 20 20000 1 0 empty empty empty 5 9 0 10 -261682
-1 -1 0 0;
#X obj 140 128 hsl 128 17 10 900 1 0 empty empty empty 5 9 0 10 -228856
-1 -1 0 0;
#X obj 143 243 s \$0-coeficientes;
#X text 274 127 Ressonância;
#X text 225 101 Frequência;
#X obj 137 150 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-228856 -1 -1 0 256;
#X obj 86 197 nbx 8 14 -1e+37 1e+37 0 0 empty freq empty 0 -8 0 10
-261682 -1 -1 500 256;
#X obj 143 220 highpass 500 100;
#X text 27 24 Semelhante ao [lowpass] \, o [highpass] gera coeficientes
de um Passa Alta Ressonante com controle de ressonância. Confira.;
#X connect 0 0 7 0;
#X connect 0 1 8 1;
#X connect 1 0 7 0;
#X connect 2 0 6 0;
#X connect 6 0 0 0;
#X connect 7 0 8 0;
#X connect 8 0 3 0;
#X restore 458 53 pd highpass-reson;
#X text 53 19 O [biquad~] se configura de diversas maneiras - como
um passa baixa \, passa alta \, passa banda \, entre outros \, de acordo
com uma lista de coeficientes. Veremos do que se tratam esses coeficientes
e a estrutura do [biquad~] em mais detalhes em uma próxima seção mais
avançada.;
#X text 53 93 O cálculo de coeficientes não é algo muito amigável para
usuários finais \, como músicos. Por isso esse não é considerado um
filtro amigável. Há \, entretanto \, alguns externals (sete para ser
mais exato) que servem apenas para calcular os coeficientes de filtros
mais comuns \, trazidos aqui neste exemplo. Outros exemplos serão apresentados
posteriormente - abra os subpatches à direita para ver como cada um
funciona.;
#X connect 0 0 8 0;
#X connect 1 0 2 1;
#X connect 8 0 2 0;
#X connect 9 0 8 0;
