#N canvas 200 22 874 670 10;
#X obj 101 221 output~;
#X obj 135 391 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261682 -1 -1 0 256;
#X text 308 161 argumentos:;
#X obj 124 457 output~;
#X obj 307 467 output~;
#X obj 163 186 delwrite~ delay_um 3000;
#X obj 135 421 delread~ delay_um 500;
#X obj 318 430 vd~ delay_um;
#X obj 318 398 sig~ 1000;
#X obj 318 372 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261682 -1 -1 0 256;
#X text 316 180 - nome do buffer \; - tempo máximo em ms *;
#X text 178 221 * 0 tempo de delay no [delread~];
#X text 178 248 que o especificado em [delwrite~].;
#X text 178 235 ou [vd~] não podem ser maiores do;
#X text 64 289 O [delrad~] recebe dois argumentos \, o nome do buffer
e o tempo de delay (que também pode ser dado pelo inlet). Já o [vd~]
só tem um argumento que é o nome do buffer \, pois o tempo de delay
é dado via um inlet que recebe sinal de áudio (mas também entende números).
;
#X obj 569 458 output~;
#X obj 580 421 vd~ delay_um;
#X obj 580 389 line~;
#X obj 583 295 hsl 128 15 0 1000 0 0 empty empty empty -2 -8 0 10 -261682
-1 -1 0 1;
#X text 482 29 O [delread~] é para um valor de delay fixo. É possível
mudar o valor pelo inlet \, claro \, mas isso gera clicks. A metáfora
é como se estivessemos lendo de um disco de vinil \, onde mudar o ponto
de leitura brucamente é como fazer a agulha saltar de posição.;
#X text 481 105 Já o [vd~] \, de "variable delay" aceita mudança de
valores de tempo sem clicks. Porém \, uma mudança de tempo igualmente
brusca também dá clicks.;
#X text 481 182 A diferença então é que o [vd~] aceita uma variação
contínua \, como de um [line~] \, mas isso gera um "ascelerando" ou
"desacelerando" e \, consequentemente \, mudança de altura. Voltando
à metáfora do vinil \, é como se mudássemos a velocidade de rotação
para chegarmos ao ponto de destino. Logo \, é parecido com fazer um
"scratch".;
#X obj 102 150 readsf~;
#X obj 102 100 loadbang;
#X floatatom 580 326 0 0 0 0 - - -;
#X msg 580 359 \$1 500;
#X text 61 24 O [delwrite~] cria um buffer de áudio que pode ser lido
como uma linha de delay por [delread~] e [vd~] com o mesmo nome. Podemos
ter mais de um [delread~] e/ou [vd~] para ler um mesmo buffer em diferentes
pontos.;
#X obj 241 581 delay~ 1024 512;
#X text 360 563 O objeto [delay~] pode ser conveniente para pequenos
atrasos definidos em número de amostras. O primeiro argumento é o tamanho
máximo que o delay tem \, e o atraso é dado pelo segundo (também recebido
no inlet direito).;
#X msg 102 125 open ../samples/bubul.wav \, 1;
#X connect 1 0 6 0;
#X connect 6 0 3 0;
#X connect 6 0 3 1;
#X connect 7 0 4 0;
#X connect 7 0 4 1;
#X connect 8 0 7 0;
#X connect 9 0 8 0;
#X connect 16 0 15 0;
#X connect 16 0 15 1;
#X connect 17 0 16 0;
#X connect 18 0 24 0;
#X connect 22 0 0 0;
#X connect 22 0 0 1;
#X connect 22 0 5 0;
#X connect 22 1 29 0;
#X connect 23 0 29 0;
#X connect 24 0 25 0;
#X connect 25 0 17 0;
#X connect 29 0 22 0;
