#N canvas 80 96 1244 548 10;
#X obj 798 147 mtof;
#X obj 798 126 nbx 5 14 -1e+37 1e+37 0 0 \$0-ramp_note \$0-ramp_note-set
empty 0 -8 0 10 -228856 -1 -1 30 256;
#X obj 798 169 nbx 5 14 -1e+37 1e+37 0 0 \$0-ramp_freq \$0-ramp_freq-set
empty 0 -8 0 10 -217086 -1 -1 46.2493 256;
#X obj 790 511 dac~;
#N canvas 176 195 392 370 Load-sample 0;
#X obj 105 267 outlet~;
#X obj 101 101 cnv 15 102 49 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 105 225 readsf~;
#X msg 105 203 open \$1 \, 1;
#X obj 105 159 openpanel;
#X obj 105 104 bng 18 250 50 0 empty empty empty 17 7 0 10 -261234
-1 -1;
#X text 126 104 Load Sample;
#X obj 144 246 spigot;
#X obj 105 128 tgl 18 0 empty empty empty 17 7 0 10 -262130 -1 -1 1
1;
#X text 124 128 Loop;
#X obj 155 128 bng 18 250 50 0 empty empty empty 17 7 0 10 -204786
-1 -1;
#X text 174 128 Play;
#X obj 65 54 loadbang;
#X msg 65 82 1;
#X obj 107 147 cnv 5 96 5 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 105 182 symbol ../samples/numbers.wav;
#X connect 2 0 0 0;
#X connect 2 1 7 0;
#X connect 3 0 2 0;
#X connect 4 0 15 0;
#X connect 5 0 4 0;
#X connect 7 0 15 0;
#X connect 8 0 7 1;
#X connect 10 0 15 0;
#X connect 12 0 13 0;
#X connect 12 0 15 0;
#X connect 13 0 8 0;
#X connect 15 0 3 0;
#X coords 0 -1 1 1 104 53 2 100 100;
#X restore 1101 194 pd Load-sample;
#X obj 1051 212 adc~ 1;
#X text 415 43 Nas caixas de mensagens abaixo temos alguns presets.
clique nos bangs.;
#N canvas 341 203 392 370 Load-sample 0;
#X obj 105 267 outlet~;
#X obj 101 101 cnv 15 102 49 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 105 225 readsf~;
#X msg 105 203 open \$1 \, 1;
#X obj 105 159 openpanel;
#X obj 105 104 bng 18 250 50 0 empty empty empty 17 7 0 10 -261234
-1 -1;
#X text 126 104 Load Sample;
#X obj 144 246 spigot;
#X obj 105 128 tgl 18 0 empty empty empty 17 7 0 10 -262130 -1 -1 1
1;
#X text 124 128 Loop;
#X obj 155 128 bng 18 250 50 0 empty empty empty 17 7 0 10 -204786
-1 -1;
#X text 174 128 Play;
#X obj 65 54 loadbang;
#X msg 65 82 1;
#X obj 107 147 cnv 5 96 5 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 57 158 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 105 182 symbol ../samples/kantele.wav;
#X connect 2 0 0 0;
#X connect 2 1 7 0;
#X connect 3 0 2 0;
#X connect 4 0 16 0;
#X connect 5 0 4 0;
#X connect 7 0 16 0;
#X connect 8 0 7 1;
#X connect 10 0 16 0;
#X connect 12 0 13 0;
#X connect 12 0 16 0;
#X connect 13 0 8 0;
#X connect 15 0 16 0;
#X connect 16 0 3 0;
#X coords 0 -1 1 1 104 53 2 100 100;
#X restore 826 232 pd Load-sample;
#X text 858 126 Frequência em MIDI;
#X text 858 167 Hz;
#X text 1122 253 fonte de;
#X text 1120 274 Amplitudes;
#X text 1125 295 (filtro);
#N canvas 231 43 968 633 Cross-Synthesizer-Channel-Vocoder 0;
#X obj 390 378 *~;
#X msg 405 311 \$1 10;
#X obj 405 266 r \$0-Gain;
#X obj 390 595 outlet~;
#X obj 505 84 r \$0-band-freq1;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 167 36 inlet;
#X obj 235 437 line~;
#X obj 107 179 r \$0-Q;
#X obj 69 121 mtof;
#X obj 129 493 *~;
#X obj 129 525 throw~ \$0-sum;
#X obj 30 71 r~ \$0-synth;
#X obj 30 223 vcf~;
#X obj 59 261 vcf~;
#X obj 69 179 line~;
#X obj 283 179 r \$0-Q;
#X obj 245 121 mtof;
#X obj 206 223 vcf~;
#X obj 235 261 vcf~;
#X obj 245 179 line~;
#X obj 160 143 r~ \$0-filter;
#X text 210 37 Frequência central do Filtro em MIDI;
#X obj 235 361 dbtorms;
#X text 102 349 Análise de Amplitude:;
#X text 371 165 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 371 226 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 235 413 \$1 11;
#X obj 235 339 env~ 1024 512;
#X text 340 426 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 245 156 \$1 50;
#X msg 69 156 \$1 50;
#X text 338 326 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 111 pd vocoder-band;
#X obj 21 37 cnv 15 308 149 empty empty empty 20 12 0 14 -183532 -66577
0;
#X obj 24 46 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq1 \$0-band-freq1-set
empty 0 -8 0 10 -204786 -1 -1 27 256;
#X obj 265 46 nbx 3 18 3 500 0 0 \$0-Q \$0-Q-set Q 47 9 0 12 -261682
-1 -1 50 256;
#X obj 82 46 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq2 \$0-band-freq2-set
empty 0 -8 0 10 -204786 -1 -1 30 256;
#X obj 140 46 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq3 \$0-band-freq3-set
empty 0 -8 0 10 -204786 -1 -1 33 256;
#X obj 198 46 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq4 \$0-band-freq4-set
empty 0 -8 0 10 -204786 -1 -1 36 256;
#X obj 24 66 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq5 \$0-band-freq5-set
empty 0 -8 0 10 -204786 -1 -1 39 256;
#X obj 82 66 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq6 \$0-band-freq6-set
empty 0 -8 0 10 -204786 -1 -1 42 256;
#X obj 140 66 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq7 \$0-band-freq7-set
empty 0 -8 0 10 -204786 -1 -1 45 256;
#X obj 198 66 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq8 \$0-band-freq8-set
empty 0 -8 0 10 -204786 -1 -1 48 256;
#X obj 24 86 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq9 \$0-band-freq9-set
empty 0 -8 0 10 -204786 -1 -1 51 256;
#X obj 82 86 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq10 \$0-band-freq10-set
empty 0 -8 0 10 -204786 -1 -1 54 256;
#X obj 140 86 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq11 \$0-band-freq11-set
empty 0 -8 0 10 -204786 -1 -1 57 256;
#X obj 198 86 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq12 \$0-band-freq12-set
empty 0 -8 0 10 -204786 -1 -1 60 256;
#X obj 24 106 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq13 \$0-band-freq13-set
empty 0 -8 0 10 -204786 -1 -1 63 256;
#X obj 82 106 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq14 \$0-band-freq14-set
empty 0 -8 0 10 -204786 -1 -1 66 256;
#X obj 140 106 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq15 \$0-band-freq15-set
empty 0 -8 0 10 -204786 -1 -1 69 256;
#X obj 198 106 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq16 \$0-band-freq16-set
empty 0 -8 0 10 -204786 -1 -1 72 256;
#X obj 24 126 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq17 \$0-band-freq17-set
empty 0 -8 0 10 -204786 -1 -1 75 256;
#X obj 82 126 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq18 \$0-band-freq18-set
empty 0 -8 0 10 -204786 -1 -1 78 256;
#X obj 140 126 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq19 \$0-band-freq19-set
empty 0 -8 0 10 -204786 -1 -1 81 256;
#X obj 198 126 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq20 \$0-band-freq20-set
empty 0 -8 0 10 -204786 -1 -1 84 256;
#X obj 24 146 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq21 \$0-band-freq21-set
empty 0 -8 0 10 -204786 -1 -1 87 256;
#X obj 82 146 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq22 \$0-band-freq22-set
empty 0 -8 0 10 -204786 -1 -1 90 256;
#X obj 140 146 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq23 \$0-band-freq23-set
empty 0 -8 0 10 -204786 -1 -1 93 256;
#X obj 198 146 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq24 \$0-band-freq24-set
empty 0 -8 0 10 -204786 -1 -1 96 256;
#X obj 24 166 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq25 \$0-band-freq25-set
empty 0 -8 0 10 -204786 -1 -1 99 256;
#X obj 82 166 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq26 \$0-band-freq26-set
empty 0 -8 0 10 -204786 -1 -1 102 256;
#X obj 140 166 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq27 \$0-band-freq27-set
empty 0 -8 0 10 -204786 -1 -1 105 256;
#X obj 198 166 nbx 5 14 -1e+37 1e+37 0 0 \$0-band-freq28 \$0-band-freq28-set
empty 0 -8 0 10 -204786 -1 -1 108 256;
#X obj 610 84 r \$0-band-freq2;
#X obj 714 84 r \$0-band-freq3;
#X obj 819 84 r \$0-band-freq4;
#X obj 505 155 r \$0-band-freq5;
#X obj 610 155 r \$0-band-freq6;
#X obj 714 155 r \$0-band-freq7;
#X obj 819 155 r \$0-band-freq8;
#X obj 505 234 r \$0-band-freq9;
#X obj 610 234 r \$0-band-freq10;
#X obj 714 234 r \$0-band-freq11;
#X obj 819 234 r \$0-band-freq12;
#X obj 505 305 r \$0-band-freq13;
#X obj 610 305 r \$0-band-freq14;
#X obj 714 305 r \$0-band-freq15;
#X obj 819 305 r \$0-band-freq16;
#X obj 505 384 r \$0-band-freq17;
#X obj 610 384 r \$0-band-freq18;
#X obj 714 384 r \$0-band-freq19;
#X obj 819 384 r \$0-band-freq20;
#X obj 505 463 r \$0-band-freq21;
#X obj 610 463 r \$0-band-freq22;
#X obj 714 463 r \$0-band-freq23;
#X obj 819 463 r \$0-band-freq24;
#X obj 505 534 r \$0-band-freq25;
#X obj 610 534 r \$0-band-freq26;
#X obj 714 534 r \$0-band-freq27;
#X obj 819 534 r \$0-band-freq28;
#X obj 390 230 catch~ \$0-sum;
#X obj 265 83 nbx 5 14 -1e+37 1e+37 0 0 empty bottom-note empty 0 -8
0 10 -125407 -262144 -1 27 256;
#X obj 274 113 nbx 3 14 0.1 5 0 0 empty steps empty 0 -8 0 10 -100312
-262144 -1 3 256;
#X text 276 96 step;
#X text 256 66 bottom-freq;
#X obj 276 134 knob 32 32 1 201 1 0 \$0-Gain \$0-Gain-set empty 0 -8
192 8 -262144 -1 -1 3097 1;
#X text 279 166 Gain;
#N canvas 145 95 658 359 Band-Freq 0;
#X obj 92 25 inlet;
#X obj 172 25 inlet;
#X obj 92 146 until;
#X obj 92 172 f;
#X obj 169 251 + 1;
#X msg 114 297 \; \$3-band-freq\$2-set \$1;
#X obj 114 275 pack float float \$0;
#X msg 92 100 28;
#X msg 155 143 0;
#X obj 92 220 t f b;
#X obj 92 199 + 27;
#X obj 129 181 + 3;
#X obj 128 242 float;
#X obj 99 71 loadbang;
#X obj 92 123 trigger f b;
#X obj 92 51 trigger b f;
#X obj 172 70 trigger b f;
#X text 214 24 step;
#X text 18 24 bottom-freq;
#X text 162 179 step;
#X text 18 198 bottom-freq;
#X text 254 113 Temos aqui um contador que roda 28 vezes. O "bottom-freq"
é o número de partida \, e "step" o tamanho do incremento. Esses números
serão usados como frequência em MIDI e são enviados para as caixas
de números.;
#X text 255 175 Um segundo contador gera números de 1 a 28 que são
inseridos dentro do símbolo que indica o endereço de envio do dado.
É assim que é possível endereçar cada número para uma caixa de números
diferente.;
#X connect 0 0 15 0;
#X connect 1 0 16 0;
#X connect 2 0 3 0;
#X connect 3 0 10 0;
#X connect 3 0 11 0;
#X connect 4 0 6 1;
#X connect 4 0 12 1;
#X connect 6 0 5 0;
#X connect 7 0 14 0;
#X connect 8 0 3 1;
#X connect 8 0 12 1;
#X connect 9 0 6 0;
#X connect 9 1 12 0;
#X connect 10 0 9 0;
#X connect 11 0 3 1;
#X connect 12 0 4 0;
#X connect 13 0 7 0;
#X connect 14 0 2 0;
#X connect 14 1 8 0;
#X connect 15 0 7 0;
#X connect 15 1 10 1;
#X connect 16 0 7 0;
#X connect 16 1 11 1;
#X restore 363 152 pd Band-Freq;
#X msg 343 60 \; pd dsp 1 \; bottom-note set 27 \; steps set 3;
#X obj 343 36 loadbang;
#X obj 405 287 - 1;
#X obj 532 10 inlet~;
#X obj 813 8 inlet~;
#X obj 813 34 s~ \$0-filter;
#X obj 532 36 s~ \$0-synth;
#X obj 405 336 line~;
#X text 27 393 A entrada do subpatch é uma frequência em MIDI.;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 177 46 inlet;
#X obj 245 447 line~;
#X obj 117 189 r \$0-Q;
#X obj 79 131 mtof;
#X obj 139 503 *~;
#X obj 139 535 throw~ \$0-sum;
#X obj 40 81 r~ \$0-synth;
#X obj 40 233 vcf~;
#X obj 69 271 vcf~;
#X obj 79 189 line~;
#X obj 293 189 r \$0-Q;
#X obj 255 131 mtof;
#X obj 216 233 vcf~;
#X obj 245 271 vcf~;
#X obj 255 189 line~;
#X obj 170 153 r~ \$0-filter;
#X text 220 47 Frequência central do Filtro em MIDI;
#X obj 245 371 dbtorms;
#X text 112 359 Análise de Amplitude:;
#X text 381 175 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 381 236 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 245 423 \$1 11;
#X obj 245 349 env~ 1024 512;
#X text 350 436 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 255 166 \$1 50;
#X msg 79 166 \$1 50;
#X text 348 336 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 111 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 187 56 inlet;
#X obj 255 457 line~;
#X obj 127 199 r \$0-Q;
#X obj 89 141 mtof;
#X obj 149 513 *~;
#X obj 149 545 throw~ \$0-sum;
#X obj 50 91 r~ \$0-synth;
#X obj 50 243 vcf~;
#X obj 79 281 vcf~;
#X obj 89 199 line~;
#X obj 303 199 r \$0-Q;
#X obj 265 141 mtof;
#X obj 226 243 vcf~;
#X obj 255 281 vcf~;
#X obj 265 199 line~;
#X obj 180 163 r~ \$0-filter;
#X text 230 57 Frequência central do Filtro em MIDI;
#X obj 255 381 dbtorms;
#X text 122 369 Análise de Amplitude:;
#X text 391 185 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 391 246 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 255 433 \$1 11;
#X obj 255 359 env~ 1024 512;
#X text 360 446 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 265 176 \$1 50;
#X msg 89 176 \$1 50;
#X text 358 346 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 111 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 197 66 inlet;
#X obj 265 467 line~;
#X obj 137 209 r \$0-Q;
#X obj 99 151 mtof;
#X obj 159 523 *~;
#X obj 159 555 throw~ \$0-sum;
#X obj 60 101 r~ \$0-synth;
#X obj 60 253 vcf~;
#X obj 89 291 vcf~;
#X obj 99 209 line~;
#X obj 313 209 r \$0-Q;
#X obj 275 151 mtof;
#X obj 236 253 vcf~;
#X obj 265 291 vcf~;
#X obj 275 209 line~;
#X obj 190 173 r~ \$0-filter;
#X text 240 67 Frequência central do Filtro em MIDI;
#X obj 265 391 dbtorms;
#X text 132 379 Análise de Amplitude:;
#X text 401 195 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 401 256 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 265 443 \$1 11;
#X obj 265 369 env~ 1024 512;
#X text 370 456 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 275 186 \$1 50;
#X msg 99 186 \$1 50;
#X text 368 356 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 111 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 207 76 inlet;
#X obj 275 477 line~;
#X obj 147 219 r \$0-Q;
#X obj 109 161 mtof;
#X obj 169 533 *~;
#X obj 169 565 throw~ \$0-sum;
#X obj 70 111 r~ \$0-synth;
#X obj 70 263 vcf~;
#X obj 99 301 vcf~;
#X obj 109 219 line~;
#X obj 323 219 r \$0-Q;
#X obj 285 161 mtof;
#X obj 246 263 vcf~;
#X obj 275 301 vcf~;
#X obj 285 219 line~;
#X obj 200 183 r~ \$0-filter;
#X text 250 77 Frequência central do Filtro em MIDI;
#X obj 275 401 dbtorms;
#X text 142 389 Análise de Amplitude:;
#X text 411 205 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 411 266 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 275 453 \$1 11;
#X obj 275 379 env~ 1024 512;
#X text 380 466 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 285 196 \$1 50;
#X msg 109 196 \$1 50;
#X text 378 366 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 181 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 217 36 inlet;
#X obj 285 437 line~;
#X obj 157 179 r \$0-Q;
#X obj 119 121 mtof;
#X obj 179 493 *~;
#X obj 179 525 throw~ \$0-sum;
#X obj 80 71 r~ \$0-synth;
#X obj 80 223 vcf~;
#X obj 109 261 vcf~;
#X obj 119 179 line~;
#X obj 333 179 r \$0-Q;
#X obj 295 121 mtof;
#X obj 256 223 vcf~;
#X obj 285 261 vcf~;
#X obj 295 179 line~;
#X obj 210 143 r~ \$0-filter;
#X text 260 37 Frequência central do Filtro em MIDI;
#X obj 285 361 dbtorms;
#X text 152 349 Análise de Amplitude:;
#X text 421 165 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 421 226 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 285 413 \$1 11;
#X obj 285 339 env~ 1024 512;
#X text 390 426 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 295 156 \$1 50;
#X msg 119 156 \$1 50;
#X text 388 326 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 181 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 186 42 inlet;
#X obj 254 443 line~;
#X obj 126 185 r \$0-Q;
#X obj 88 127 mtof;
#X obj 148 499 *~;
#X obj 148 531 throw~ \$0-sum;
#X obj 49 77 r~ \$0-synth;
#X obj 49 229 vcf~;
#X obj 78 267 vcf~;
#X obj 88 185 line~;
#X obj 302 185 r \$0-Q;
#X obj 264 127 mtof;
#X obj 225 229 vcf~;
#X obj 254 267 vcf~;
#X obj 264 185 line~;
#X obj 179 149 r~ \$0-filter;
#X text 229 43 Frequência central do Filtro em MIDI;
#X obj 254 367 dbtorms;
#X text 121 355 Análise de Amplitude:;
#X text 390 171 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 390 232 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 254 419 \$1 11;
#X obj 254 345 env~ 1024 512;
#X text 359 432 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 264 162 \$1 50;
#X msg 88 162 \$1 50;
#X text 357 332 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 181 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 170 26 inlet;
#X obj 238 427 line~;
#X obj 110 169 r \$0-Q;
#X obj 72 111 mtof;
#X obj 132 483 *~;
#X obj 132 515 throw~ \$0-sum;
#X obj 33 61 r~ \$0-synth;
#X obj 33 213 vcf~;
#X obj 62 251 vcf~;
#X obj 72 169 line~;
#X obj 286 169 r \$0-Q;
#X obj 248 111 mtof;
#X obj 209 213 vcf~;
#X obj 238 251 vcf~;
#X obj 248 169 line~;
#X obj 163 133 r~ \$0-filter;
#X text 213 27 Frequência central do Filtro em MIDI;
#X obj 238 351 dbtorms;
#X text 105 339 Análise de Amplitude:;
#X text 374 155 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 374 216 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 238 403 \$1 11;
#X obj 238 329 env~ 1024 512;
#X text 343 416 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 248 146 \$1 50;
#X msg 72 146 \$1 50;
#X text 341 316 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 181 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 175 39 inlet;
#X obj 243 440 line~;
#X obj 115 182 r \$0-Q;
#X obj 77 124 mtof;
#X obj 137 496 *~;
#X obj 137 528 throw~ \$0-sum;
#X obj 38 74 r~ \$0-synth;
#X obj 38 226 vcf~;
#X obj 67 264 vcf~;
#X obj 77 182 line~;
#X obj 291 182 r \$0-Q;
#X obj 253 124 mtof;
#X obj 214 226 vcf~;
#X obj 243 264 vcf~;
#X obj 253 182 line~;
#X obj 168 146 r~ \$0-filter;
#X text 218 40 Frequência central do Filtro em MIDI;
#X obj 243 364 dbtorms;
#X text 110 352 Análise de Amplitude:;
#X text 379 168 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 379 229 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 243 416 \$1 11;
#X obj 243 342 env~ 1024 512;
#X text 348 429 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 253 159 \$1 50;
#X msg 77 159 \$1 50;
#X text 346 329 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 259 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 170 40 inlet;
#X obj 238 441 line~;
#X obj 110 183 r \$0-Q;
#X obj 72 125 mtof;
#X obj 132 497 *~;
#X obj 132 529 throw~ \$0-sum;
#X obj 33 75 r~ \$0-synth;
#X obj 33 227 vcf~;
#X obj 62 265 vcf~;
#X obj 72 183 line~;
#X obj 286 183 r \$0-Q;
#X obj 248 125 mtof;
#X obj 209 227 vcf~;
#X obj 238 265 vcf~;
#X obj 248 183 line~;
#X obj 163 147 r~ \$0-filter;
#X text 213 41 Frequência central do Filtro em MIDI;
#X obj 238 365 dbtorms;
#X text 105 353 Análise de Amplitude:;
#X text 374 169 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 374 230 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 238 417 \$1 11;
#X obj 238 343 env~ 1024 512;
#X text 343 430 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 248 160 \$1 50;
#X msg 72 160 \$1 50;
#X text 341 330 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 259 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 171 36 inlet;
#X obj 239 437 line~;
#X obj 111 179 r \$0-Q;
#X obj 73 121 mtof;
#X obj 133 493 *~;
#X obj 133 525 throw~ \$0-sum;
#X obj 34 71 r~ \$0-synth;
#X obj 34 223 vcf~;
#X obj 63 261 vcf~;
#X obj 73 179 line~;
#X obj 287 179 r \$0-Q;
#X obj 249 121 mtof;
#X obj 210 223 vcf~;
#X obj 239 261 vcf~;
#X obj 249 179 line~;
#X obj 164 143 r~ \$0-filter;
#X text 214 37 Frequência central do Filtro em MIDI;
#X obj 239 361 dbtorms;
#X text 106 349 Análise de Amplitude:;
#X text 375 165 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 375 226 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 239 413 \$1 11;
#X obj 239 339 env~ 1024 512;
#X text 344 426 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 249 156 \$1 50;
#X msg 73 156 \$1 50;
#X text 342 326 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 259 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 157 35 inlet;
#X obj 225 436 line~;
#X obj 97 178 r \$0-Q;
#X obj 59 120 mtof;
#X obj 119 492 *~;
#X obj 119 524 throw~ \$0-sum;
#X obj 20 70 r~ \$0-synth;
#X obj 20 222 vcf~;
#X obj 49 260 vcf~;
#X obj 59 178 line~;
#X obj 273 178 r \$0-Q;
#X obj 235 120 mtof;
#X obj 196 222 vcf~;
#X obj 225 260 vcf~;
#X obj 235 178 line~;
#X obj 150 142 r~ \$0-filter;
#X text 200 36 Frequência central do Filtro em MIDI;
#X obj 225 360 dbtorms;
#X text 92 348 Análise de Amplitude:;
#X text 361 164 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 361 225 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 225 412 \$1 11;
#X obj 225 338 env~ 1024 512;
#X text 330 425 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 235 155 \$1 50;
#X msg 59 155 \$1 50;
#X text 328 325 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 259 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 165 38 inlet;
#X obj 233 439 line~;
#X obj 105 181 r \$0-Q;
#X obj 67 123 mtof;
#X obj 127 495 *~;
#X obj 127 527 throw~ \$0-sum;
#X obj 28 73 r~ \$0-synth;
#X obj 28 225 vcf~;
#X obj 57 263 vcf~;
#X obj 67 181 line~;
#X obj 281 181 r \$0-Q;
#X obj 243 123 mtof;
#X obj 204 225 vcf~;
#X obj 233 263 vcf~;
#X obj 243 181 line~;
#X obj 158 145 r~ \$0-filter;
#X text 208 39 Frequência central do Filtro em MIDI;
#X obj 233 363 dbtorms;
#X text 100 351 Análise de Amplitude:;
#X text 369 167 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 369 228 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 233 415 \$1 11;
#X obj 233 341 env~ 1024 512;
#X text 338 428 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 243 158 \$1 50;
#X msg 67 158 \$1 50;
#X text 336 328 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 329 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 150 39 inlet;
#X obj 218 440 line~;
#X obj 90 182 r \$0-Q;
#X obj 52 124 mtof;
#X obj 112 496 *~;
#X obj 112 528 throw~ \$0-sum;
#X obj 13 74 r~ \$0-synth;
#X obj 13 226 vcf~;
#X obj 42 264 vcf~;
#X obj 52 182 line~;
#X obj 266 182 r \$0-Q;
#X obj 228 124 mtof;
#X obj 189 226 vcf~;
#X obj 218 264 vcf~;
#X obj 228 182 line~;
#X obj 143 146 r~ \$0-filter;
#X text 193 40 Frequência central do Filtro em MIDI;
#X obj 218 364 dbtorms;
#X text 85 352 Análise de Amplitude:;
#X text 354 168 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 354 229 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 218 416 \$1 11;
#X obj 218 342 env~ 1024 512;
#X text 323 429 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 228 159 \$1 50;
#X msg 52 159 \$1 50;
#X text 321 329 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 329 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 179 37 inlet;
#X obj 247 438 line~;
#X obj 119 180 r \$0-Q;
#X obj 81 122 mtof;
#X obj 141 494 *~;
#X obj 141 526 throw~ \$0-sum;
#X obj 42 72 r~ \$0-synth;
#X obj 42 224 vcf~;
#X obj 71 262 vcf~;
#X obj 81 180 line~;
#X obj 295 180 r \$0-Q;
#X obj 257 122 mtof;
#X obj 218 224 vcf~;
#X obj 247 262 vcf~;
#X obj 257 180 line~;
#X obj 172 144 r~ \$0-filter;
#X text 222 38 Frequência central do Filtro em MIDI;
#X obj 247 362 dbtorms;
#X text 114 350 Análise de Amplitude:;
#X text 383 166 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 383 227 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 247 414 \$1 11;
#X obj 247 340 env~ 1024 512;
#X text 352 427 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 257 157 \$1 50;
#X msg 81 157 \$1 50;
#X text 350 327 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 329 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 164 35 inlet;
#X obj 232 436 line~;
#X obj 104 178 r \$0-Q;
#X obj 66 120 mtof;
#X obj 126 492 *~;
#X obj 126 524 throw~ \$0-sum;
#X obj 27 70 r~ \$0-synth;
#X obj 27 222 vcf~;
#X obj 56 260 vcf~;
#X obj 66 178 line~;
#X obj 280 178 r \$0-Q;
#X obj 242 120 mtof;
#X obj 203 222 vcf~;
#X obj 232 260 vcf~;
#X obj 242 178 line~;
#X obj 157 142 r~ \$0-filter;
#X text 207 36 Frequência central do Filtro em MIDI;
#X obj 232 360 dbtorms;
#X text 99 348 Análise de Amplitude:;
#X text 368 164 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 368 225 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 232 412 \$1 11;
#X obj 232 338 env~ 1024 512;
#X text 337 425 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 242 155 \$1 50;
#X msg 66 155 \$1 50;
#X text 335 325 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 329 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 171 46 inlet;
#X obj 239 447 line~;
#X obj 111 189 r \$0-Q;
#X obj 73 131 mtof;
#X obj 133 503 *~;
#X obj 133 535 throw~ \$0-sum;
#X obj 34 81 r~ \$0-synth;
#X obj 34 233 vcf~;
#X obj 63 271 vcf~;
#X obj 73 189 line~;
#X obj 287 189 r \$0-Q;
#X obj 249 131 mtof;
#X obj 210 233 vcf~;
#X obj 239 271 vcf~;
#X obj 249 189 line~;
#X obj 164 153 r~ \$0-filter;
#X text 214 47 Frequência central do Filtro em MIDI;
#X obj 239 371 dbtorms;
#X text 106 359 Análise de Amplitude:;
#X text 375 175 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 375 236 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 239 423 \$1 11;
#X obj 239 349 env~ 1024 512;
#X text 344 436 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 249 166 \$1 50;
#X msg 73 166 \$1 50;
#X text 342 336 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 409 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 171 35 inlet;
#X obj 239 436 line~;
#X obj 111 178 r \$0-Q;
#X obj 73 120 mtof;
#X obj 133 492 *~;
#X obj 133 524 throw~ \$0-sum;
#X obj 34 70 r~ \$0-synth;
#X obj 34 222 vcf~;
#X obj 63 260 vcf~;
#X obj 73 178 line~;
#X obj 287 178 r \$0-Q;
#X obj 249 120 mtof;
#X obj 210 222 vcf~;
#X obj 239 260 vcf~;
#X obj 249 178 line~;
#X obj 164 142 r~ \$0-filter;
#X text 214 36 Frequência central do Filtro em MIDI;
#X obj 239 360 dbtorms;
#X text 106 348 Análise de Amplitude:;
#X text 375 164 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 375 225 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 239 412 \$1 11;
#X obj 239 338 env~ 1024 512;
#X text 344 425 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 249 155 \$1 50;
#X msg 73 155 \$1 50;
#X text 342 325 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 409 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 162 42 inlet;
#X obj 230 443 line~;
#X obj 102 185 r \$0-Q;
#X obj 64 127 mtof;
#X obj 124 499 *~;
#X obj 124 531 throw~ \$0-sum;
#X obj 25 77 r~ \$0-synth;
#X obj 25 229 vcf~;
#X obj 54 267 vcf~;
#X obj 64 185 line~;
#X obj 278 185 r \$0-Q;
#X obj 240 127 mtof;
#X obj 201 229 vcf~;
#X obj 230 267 vcf~;
#X obj 240 185 line~;
#X obj 155 149 r~ \$0-filter;
#X text 205 43 Frequência central do Filtro em MIDI;
#X obj 230 367 dbtorms;
#X text 97 355 Análise de Amplitude:;
#X text 366 171 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 366 232 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 230 419 \$1 11;
#X obj 230 345 env~ 1024 512;
#X text 335 432 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 240 162 \$1 50;
#X msg 64 162 \$1 50;
#X text 333 332 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 409 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 23 40 inlet;
#X obj 91 441 line~;
#X obj -37 183 r \$0-Q;
#X obj -75 125 mtof;
#X obj -15 497 *~;
#X obj -15 529 throw~ \$0-sum;
#X obj -114 75 r~ \$0-synth;
#X obj -114 227 vcf~;
#X obj -85 265 vcf~;
#X obj -75 183 line~;
#X obj 139 183 r \$0-Q;
#X obj 101 125 mtof;
#X obj 62 227 vcf~;
#X obj 91 265 vcf~;
#X obj 101 183 line~;
#X obj 16 147 r~ \$0-filter;
#X text 66 41 Frequência central do Filtro em MIDI;
#X obj 91 365 dbtorms;
#X text -42 353 Análise de Amplitude:;
#X text 227 169 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 227 230 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 91 417 \$1 11;
#X obj 91 343 env~ 1024 512;
#X text 196 430 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 101 160 \$1 50;
#X msg -75 160 \$1 50;
#X text 194 330 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 409 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 183 49 inlet;
#X obj 251 450 line~;
#X obj 123 192 r \$0-Q;
#X obj 85 134 mtof;
#X obj 145 506 *~;
#X obj 145 538 throw~ \$0-sum;
#X obj 46 84 r~ \$0-synth;
#X obj 46 236 vcf~;
#X obj 75 274 vcf~;
#X obj 85 192 line~;
#X obj 299 192 r \$0-Q;
#X obj 261 134 mtof;
#X obj 222 236 vcf~;
#X obj 251 274 vcf~;
#X obj 261 192 line~;
#X obj 176 156 r~ \$0-filter;
#X text 226 50 Frequência central do Filtro em MIDI;
#X obj 251 374 dbtorms;
#X text 118 362 Análise de Amplitude:;
#X text 387 178 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 387 239 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 251 426 \$1 11;
#X obj 251 352 env~ 1024 512;
#X text 356 439 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 261 169 \$1 50;
#X msg 85 169 \$1 50;
#X text 354 339 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 488 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 168 29 inlet;
#X obj 236 430 line~;
#X obj 108 172 r \$0-Q;
#X obj 70 114 mtof;
#X obj 130 486 *~;
#X obj 130 518 throw~ \$0-sum;
#X obj 31 64 r~ \$0-synth;
#X obj 31 216 vcf~;
#X obj 60 254 vcf~;
#X obj 70 172 line~;
#X obj 284 172 r \$0-Q;
#X obj 246 114 mtof;
#X obj 207 216 vcf~;
#X obj 236 254 vcf~;
#X obj 246 172 line~;
#X obj 161 136 r~ \$0-filter;
#X text 211 30 Frequência central do Filtro em MIDI;
#X obj 236 354 dbtorms;
#X text 103 342 Análise de Amplitude:;
#X text 372 158 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 372 219 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 236 406 \$1 11;
#X obj 236 332 env~ 1024 512;
#X text 341 419 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 246 149 \$1 50;
#X msg 70 149 \$1 50;
#X text 339 319 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 488 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 56 39 inlet;
#X obj 124 440 line~;
#X obj -4 182 r \$0-Q;
#X obj -42 124 mtof;
#X obj 18 496 *~;
#X obj 18 528 throw~ \$0-sum;
#X obj -81 74 r~ \$0-synth;
#X obj -81 226 vcf~;
#X obj -52 264 vcf~;
#X obj -42 182 line~;
#X obj 172 182 r \$0-Q;
#X obj 134 124 mtof;
#X obj 95 226 vcf~;
#X obj 124 264 vcf~;
#X obj 134 182 line~;
#X obj 49 146 r~ \$0-filter;
#X text 99 40 Frequência central do Filtro em MIDI;
#X obj 124 364 dbtorms;
#X text -9 352 Análise de Amplitude:;
#X text 260 168 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 260 229 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 124 416 \$1 11;
#X obj 124 342 env~ 1024 512;
#X text 229 429 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 134 159 \$1 50;
#X msg -42 159 \$1 50;
#X text 227 329 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 488 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 177 43 inlet;
#X obj 245 444 line~;
#X obj 117 186 r \$0-Q;
#X obj 79 128 mtof;
#X obj 139 500 *~;
#X obj 139 532 throw~ \$0-sum;
#X obj 40 78 r~ \$0-synth;
#X obj 40 230 vcf~;
#X obj 69 268 vcf~;
#X obj 79 186 line~;
#X obj 293 186 r \$0-Q;
#X obj 255 128 mtof;
#X obj 216 230 vcf~;
#X obj 245 268 vcf~;
#X obj 255 186 line~;
#X obj 170 150 r~ \$0-filter;
#X text 220 44 Frequência central do Filtro em MIDI;
#X obj 245 368 dbtorms;
#X text 112 356 Análise de Amplitude:;
#X text 381 172 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 381 233 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 245 420 \$1 11;
#X obj 245 346 env~ 1024 512;
#X text 350 433 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 255 163 \$1 50;
#X msg 79 163 \$1 50;
#X text 348 333 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 488 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 177 44 inlet;
#X obj 245 445 line~;
#X obj 117 187 r \$0-Q;
#X obj 79 129 mtof;
#X obj 139 501 *~;
#X obj 139 533 throw~ \$0-sum;
#X obj 40 79 r~ \$0-synth;
#X obj 40 231 vcf~;
#X obj 69 269 vcf~;
#X obj 79 187 line~;
#X obj 293 187 r \$0-Q;
#X obj 255 129 mtof;
#X obj 216 231 vcf~;
#X obj 245 269 vcf~;
#X obj 255 187 line~;
#X obj 170 151 r~ \$0-filter;
#X text 220 45 Frequência central do Filtro em MIDI;
#X obj 245 369 dbtorms;
#X text 112 357 Análise de Amplitude:;
#X text 381 173 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 381 234 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 245 421 \$1 11;
#X obj 245 347 env~ 1024 512;
#X text 350 434 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 255 164 \$1 50;
#X msg 79 164 \$1 50;
#X text 348 334 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 505 559 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 178 39 inlet;
#X obj 246 440 line~;
#X obj 118 182 r \$0-Q;
#X obj 80 124 mtof;
#X obj 140 496 *~;
#X obj 140 528 throw~ \$0-sum;
#X obj 41 74 r~ \$0-synth;
#X obj 41 226 vcf~;
#X obj 70 264 vcf~;
#X obj 80 182 line~;
#X obj 294 182 r \$0-Q;
#X obj 256 124 mtof;
#X obj 217 226 vcf~;
#X obj 246 264 vcf~;
#X obj 256 182 line~;
#X obj 171 146 r~ \$0-filter;
#X text 221 40 Frequência central do Filtro em MIDI;
#X obj 246 364 dbtorms;
#X text 113 352 Análise de Amplitude:;
#X text 382 168 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 382 229 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 246 416 \$1 11;
#X obj 246 342 env~ 1024 512;
#X text 351 429 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 256 159 \$1 50;
#X msg 80 159 \$1 50;
#X text 349 329 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 610 559 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 171 41 inlet;
#X obj 239 442 line~;
#X obj 111 184 r \$0-Q;
#X obj 73 126 mtof;
#X obj 133 498 *~;
#X obj 133 530 throw~ \$0-sum;
#X obj 34 76 r~ \$0-synth;
#X obj 34 228 vcf~;
#X obj 63 266 vcf~;
#X obj 73 184 line~;
#X obj 287 184 r \$0-Q;
#X obj 249 126 mtof;
#X obj 210 228 vcf~;
#X obj 239 266 vcf~;
#X obj 249 184 line~;
#X obj 164 148 r~ \$0-filter;
#X text 214 42 Frequência central do Filtro em MIDI;
#X obj 239 366 dbtorms;
#X text 106 354 Análise de Amplitude:;
#X text 375 170 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 375 231 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 239 418 \$1 11;
#X obj 239 344 env~ 1024 512;
#X text 344 431 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 249 161 \$1 50;
#X msg 73 161 \$1 50;
#X text 342 331 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 714 559 pd vocoder-band;
#N canvas 128 35 782 594 vocoder-band 0;
#X obj 189 40 inlet;
#X obj 257 441 line~;
#X obj 129 183 r \$0-Q;
#X obj 91 125 mtof;
#X obj 151 497 *~;
#X obj 151 529 throw~ \$0-sum;
#X obj 52 75 r~ \$0-synth;
#X obj 52 227 vcf~;
#X obj 81 265 vcf~;
#X obj 91 183 line~;
#X obj 305 183 r \$0-Q;
#X obj 267 125 mtof;
#X obj 228 227 vcf~;
#X obj 257 265 vcf~;
#X obj 267 183 line~;
#X obj 182 147 r~ \$0-filter;
#X text 232 41 Frequência central do Filtro em MIDI;
#X obj 257 365 dbtorms;
#X text 124 353 Análise de Amplitude:;
#X text 393 169 À esquerda temos os dois sinais de entrada sendo filtrados
por um filtro Passa-Banda - objeto [vcf~] - duas vezes \, o que diminui
o tamanho da banda ainda mais e muda a resposta de frequência).;
#X text 393 230 O sinal da direita vai ser usado apenas para controlar
a amplitude do sinal da esquerda. Por isso ele é tido como um filtro
(seria o ganho de um equalizador).;
#X msg 257 417 \$1 11;
#X obj 257 343 env~ 1024 512;
#X text 362 430 Pegamos esse valor e usamos um [line~] para converter
de volta em sinal de áudio gerando linhas de 11 ms.;
#X msg 267 160 \$1 50;
#X msg 91 160 \$1 50;
#X text 360 330 O processo de análise da amplitude do canal é feito
pelo objeto [env~] \, que nos dá um valor da amplitude RMS em decibéis
por janela de análise (1024 amostras) a cada 512 amostras - o que dá
em torno de 11 ms de um resultado a outro \, em uma taxa de amostragem
de 44.1KHz. Esse valor então é convertido de dB para amplitude linear
com o objeto [dbtorms].;
#X connect 0 0 3 0;
#X connect 0 0 11 0;
#X connect 1 0 4 1;
#X connect 2 0 7 2;
#X connect 2 0 8 2;
#X connect 3 0 25 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X connect 10 0 12 2;
#X connect 10 0 13 2;
#X connect 11 0 24 0;
#X connect 12 0 13 0;
#X connect 13 0 22 0;
#X connect 14 0 13 1;
#X connect 14 0 12 1;
#X connect 15 0 12 0;
#X connect 17 0 21 0;
#X connect 21 0 1 0;
#X connect 22 0 17 0;
#X connect 24 0 14 0;
#X connect 25 0 9 0;
#X restore 819 559 pd vocoder-band;
#X text 26 337 À direita \, temos 28 subpatches (vocoder-band) \, todos
idênticos. Cada um representa um canal \, ou banda de um filtro Passa-Banda.
;
#X text 26 419 Abra um dos subpatches para entender como funciona o
processo de filtragem.;
#X text 27 464 Abra também o subpatch [Band-Freq] para entender como
funciona a rotina que gera a frequência dos filtros \, de acordo com
a entrada de "step" e "bottom-freq".;
#X connect 0 0 3 0;
#X connect 1 0 78 0;
#X connect 2 0 73 0;
#X connect 4 0 5 0;
#X connect 36 0 80 0;
#X connect 37 0 81 0;
#X connect 38 0 82 0;
#X connect 39 0 83 0;
#X connect 40 0 84 0;
#X connect 41 0 85 0;
#X connect 42 0 86 0;
#X connect 43 0 87 0;
#X connect 44 0 88 0;
#X connect 45 0 89 0;
#X connect 46 0 90 0;
#X connect 47 0 91 0;
#X connect 48 0 92 0;
#X connect 49 0 93 0;
#X connect 50 0 94 0;
#X connect 51 0 95 0;
#X connect 52 0 96 0;
#X connect 53 0 97 0;
#X connect 54 0 98 0;
#X connect 55 0 99 0;
#X connect 56 0 100 0;
#X connect 57 0 101 0;
#X connect 58 0 102 0;
#X connect 59 0 103 0;
#X connect 60 0 104 0;
#X connect 61 0 105 0;
#X connect 62 0 106 0;
#X connect 63 0 0 0;
#X connect 64 0 70 0;
#X connect 65 0 70 1;
#X connect 72 0 71 0;
#X connect 73 0 1 0;
#X connect 74 0 77 0;
#X connect 75 0 76 0;
#X connect 78 0 0 1;
#X coords 0 -1 1 1 310 167 1 20 20;
#X restore 798 327 pd Cross-Synthesizer-Channel-Vocoder (28 Bandas)
;
#X text 29 163 O Vocoder "combina" duas fontes sonoras. Normalmente
uma "tonal" como um synth e a outra "ruidosa" como a fala humana. O
termo "Cross Synthesis" (de Síntese Cruzada) também é empregado para
denotar a formação de um resultado híbrido e cruzado.;
#X obj 798 194 blosc~ saw;
#X text 810 303 (synth);
#X text 30 324 Pois bem \, sobre o patch:;
#X text 33 344 - A frequência central de cada um dos 28 filtros passa
banda é dada em MIDI nas caixas de número \, que você pode mudar manualmente.
;
#X text 30 388 - O ajuste da largura de banda é dado pelo parâmetro
"Q".;
#X obj 454 136 \$0;
#X obj 454 113 bng 15 250 50 0 empty empty empty 17 7 0 10 -204800
-1 -1;
#X obj 454 262 \$0;
#X obj 454 242 bng 15 250 50 0 empty empty empty 17 7 0 10 -204800
-1 -1;
#X obj 453 387 \$0;
#X obj 453 367 bng 15 250 50 0 empty empty empty 17 7 0 10 -204800
-1 -1;
#X msg 454 157 \; \$1-ramp_note-set 30 \; \$1-Q-set 50 \; \$1-Gain-set
200;
#X msg 454 283 \; \$1-ramp_note-set 45 \; \$1-Q-set 25 \; \$1-Gain-set
100;
#X msg 453 408 \; \$1-ramp_note-set 25 \; \$1-Q-set 100 \; \$1-Gain-set
200;
#X obj 616 259 \$0;
#X obj 616 239 bng 15 250 50 0 empty empty empty 17 7 0 10 -262130
-1 -1;
#X obj 610 132 \$0;
#X obj 610 112 bng 15 250 50 0 empty empty empty 17 7 0 10 -262130
-1 -1;
#X obj 619 383 \$0;
#X obj 619 363 bng 15 250 50 0 empty empty empty 17 7 0 10 -262130
-1 -1;
#X msg 616 281 \; bottom-note 27 \; steps 3;
#X msg 610 154 \; bottom-note 20 \; steps 4;
#X msg 619 405 \; bottom-note 30 \; steps 2;
#X obj 434 91 loadbang;
#X text 33 488 Para entender detalhadamente a implementação do Vocoder
\, abra o subpatch "Cross-Synthesizer-Channel-Vocoder".;
#X text 32 456 - Um ajuste de volume é dado pelo knob "gain";
#X text 799 51 Você pode escolher outro som para filtrar ou ser filtrado
e tambem experimentar a entrada do microfone para filtrar o som com
a sua voz.;
#X text 29 234 A entrada da esquerda é o que dá a qualidade tonal (nosso
synth). Ele é o sinal que será filtrado pelo banco de Passa Bandas.
Na prática \, não passa de uma simples equalização \, sendo que os
ajustes do equalizador dependem do sinal de entrada da direita (chamado
aqui de "fonte de amplitudes").;
#X text 31 409 - Uma rotina gera uma série de frequências a partir
de uma frequência de base (bottom-freq) em passos iguais em semitons
(step).;
#X text 27 32 O Vocoder Clássico é implementado somente com um banco
de filtros de Passa Banda em paralelo. Veremos depois também uma forma
de implementar via FFT (que não deixa de se relacionar com filtros
\, como veremos). Este processo também é chamado de "Channel Vocoder"
onde "Channel" (canal) diz respeito a cada filtro passa banda. No caso
\, temos um banco com 28 fitros \, onde podemos ajustar os parâmetros
de cada filtro de modo independente \, como sua largura e frequência
central.;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 15 0;
#X connect 4 0 13 1;
#X connect 13 0 3 0;
#X connect 13 0 3 1;
#X connect 15 0 13 0;
#X connect 20 0 26 0;
#X connect 21 0 20 0;
#X connect 22 0 27 0;
#X connect 23 0 22 0;
#X connect 24 0 28 0;
#X connect 25 0 24 0;
#X connect 29 0 35 0;
#X connect 30 0 29 0;
#X connect 31 0 36 0;
#X connect 32 0 31 0;
#X connect 33 0 37 0;
#X connect 34 0 33 0;
#X connect 38 0 20 0;
