In the course of a discussion with Alexandre I ran into something really interesting: [delread~] and [vd~] have different delay limits! While [delread~] has always the buffersize minus the blocksize of the subpatch where it is located, the limit of [vd~] is 64 samples greater. Any explanations?
 
In my example patch, simply choose any blocksize, then set the delay time to maximum 100 (which is actually beyond the maximum), and then toggle between [vd~] and [delread~] to see the 64 samples difference...
 
#N canvas 108 235 1541 619 10;
#N canvas 643 87 725 364 subpatch 1;
#N canvas 154 251 450 300 delwrite 0;
#X obj 94 94 inlet~;
#X obj 98 196 outlet~;
#X obj 102 143 delwrite~ \$0-del 100;
#X connect 0 0 2 0;
#X restore 84 86 pd delwrite;
#N canvas 149 132 450 300 delread 0;
#X obj 99 77 inlet~;
#X obj 94 192 outlet~;
#X obj 94 118 r \$0-time;
#X obj 93 146 delread~ \$0-del;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X restore 73 127 pd delread;
#X obj 71 -8 inlet;
#X obj 56 250 tabwrite~ \$0-plot;
#X obj 320 208 block~ 64;
#X msg 322 161 set \$1;
#X obj 336 42 r \$0-blocksize;
#X obj 383 84 t f b;
#X obj 415 109 samplerate~;
#X obj 412 181 /;
#X obj 418 133 / 1000;
#X obj 419 221 s \$0-blocksize_ms;
#X msg 129 26 0;
#X obj 84 51 osc~ 10;
#X obj 223 99 s \$0-plot;
#X obj 217 43 loadbang;
#X msg 221 72 xticks 0 64 1;
#N canvas 149 132 450 300 vd 0;
#X obj 99 77 inlet~;
#X obj 94 192 outlet~;
#X obj 94 118 r \$0-time;
#X obj 93 147 vd~ \$0-del;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X restore 100 162 pd vd;
#X obj 67 208 *~;
#X obj 115 208 *~;
#X obj 164 146 r \$0-toggle;
#X obj 164 180 == 0;
#X msg 180 110 0;
#X connect 0 0 1 0;
#X connect 0 0 17 0;
#X connect 1 0 18 0;
#X connect 2 0 3 0;
#X connect 2 0 12 0;
#X connect 5 0 4 0;
#X connect 6 0 7 0;
#X connect 6 0 5 0;
#X connect 7 0 9 0;
#X connect 7 1 8 0;
#X connect 8 0 10 0;
#X connect 9 0 11 0;
#X connect 10 0 9 1;
#X connect 12 0 13 1;
#X connect 13 0 0 0;
#X connect 15 0 16 0;
#X connect 15 0 22 0;
#X connect 16 0 14 0;
#X connect 17 0 19 0;
#X connect 18 0 3 0;
#X connect 19 0 3 0;
#X connect 20 0 21 0;
#X connect 20 0 18 1;
#X connect 21 0 19 1;
#X connect 22 0 21 0;
#X restore 112 201 pd subpatch;
#N canvas 0 50 450 250 (subpatch) 0;
#X array \$0-plot 4410 float 2;
#X coords 0 1 4410 -1 1000 140 1 0 0;
#X restore 20 302 graph;
#X obj 25 240 s \$0-blocksize;
#X msg 24 69 64;
#X msg 26 93 128;
#X msg 30 118 256;
#X msg 32 142 512;
#X msg 35 163 1024;
#X msg 39 184 2048;
#X msg 43 206 4096;
#X text 132 268 ms;
#X obj 148 151 nbx 5 14 0 100 0 0 \$0-time empty delay_time 0 -8 0
10 -262144 -1 -1 100 256;
#X obj 112 177 bng 15 250 50 0 empty \$0-toggle empty 17 7 0 10 -262144
-1 -1;
#X text 131 176 click me;
#X floatatom 92 270 5 0 0 0 blocksize: #0-blocksize_ms -, f 5;
#X text 107 148 set:;
#X text 224 156 buffersize (100 ms) - blocksize;
#X text 222 136 maximum delay time for [delread~] =;
#X text 17 451 (ticks are every 64 samples);
#X obj 232 208 tgl 15 0 \$0-toggle empty empty 17 7 0 10 -262144 -1
-1 0 1;
#X text 251 208 toggle between [vd~] and [delread~];
#X connect 3 0 2 0;
#X connect 4 0 2 0;
#X connect 5 0 2 0;
#X connect 6 0 2 0;
#X connect 7 0 2 0;
#X connect 8 0 2 0;
#X connect 9 0 2 0;
#X connect 12 0 0 0;
_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to