[PD] how to trigger bang's with a period less than 1 milisecond

Frank Barknecht fbar at footils.org
Mon Jun 19 14:09:40 CEST 2006


Hallo,
Frank Barknecht hat gesagt: // Frank Barknecht wrote:

> Then additionally I'm not sure, if the right inlet of threshold~ deals
> clockdel messages correctly. As I understand the source code, it does
> some extra work to generate clock delayed messages as well, however my
> attached test patch still doesn't stagger correctly. I'm not sure yet,
> why.

Okay, attached is another test which shows, that [threshold~] always
reacts on block boundaries. So this object is not useable for converting
signals to messages with sub-block accuracy. I guess, we need
something like an anti-vline~.

Ciao
-- 
 Frank Barknecht                 _ ______footils.org_ __goto10.org__
-------------- next part --------------
#N canvas 90 0 839 587 10;
#X obj 202 82 samplerate~;
#X msg 202 59 bang;
#X floatatom 217 103 5 0 0 0 - - -;
#X obj 103 238 vline~;
#X msg 63 89 bang;
#X obj 103 153 / 44.1;
#X obj 202 119 / 1000;
#X obj 209 267 tabwrite~ \$0-v;
#X obj 204 386 vline~;
#X obj 63 497 tabwrite~ \$0-t;
#X obj 103 443 *~;
#N canvas 0 0 450 300 graph4 0;
#X array \$0-t 100 float 2;
#X coords 0 1 99 -1 200 140 1;
#X restore 515 322 graph;
#N canvas 0 0 450 300 graph5 0;
#X array \$0-v 100 float 2;
#X coords 0 1 99 -1 200 140 1;
#X restore 514 158 graph;
#X obj 390 151 s \$0-v;
#X obj 379 172 s \$0-t;
#X obj 379 126 t a;
#X msg 379 104 xticks 0 8 8;
#X text 497 112 100 samples \, large tick at 64 samples;
#X obj 103 186 pack 0 -1;
#X msg 103 209 \$2 \, 1 \$1;
#X text 187 210 go from \$2 to 1 over 100 smps.;
#X obj 164 163 hsl 128 15 -1 -0.2 0 0 empty empty starting_value_(-1:-0.2)
-2 -6 0 8 -24198 -1 -1 6900 1;
#X floatatom 180 187 5 0 0 0 - - -;
#X obj 63 36 bng 24 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1
;
#X msg 346 345 1;
#X msg 204 346 0;
#X text 41 10 press twice to init;
#X msg 298 109 \; pd dsp 1;
#X text 356 494 Proof: [threshold~] bangs always arrive on block-boundaries.
The discontinuity in theory should happen when the first vline~ passes
0 However it always happens on sample 64;
#X obj 335 55 t b b b;
#X obj 335 29 loadbang;
#X obj 204 300 threshold~ 0 0 -0.1 0;
#X msg 321 264 set 0 0 \$1 0;
#X obj 322 243 + 0.1;
#X obj 255 437 snapshot~;
#X floatatom 255 457 5 0 0 0 - - -;
#X msg 255 414 bang;
#X floatatom 107 44 5 0 0 0 - - -;
#X obj 63 66 delay 0;
#X obj 103 127 f 100;
#X floatatom 130 108 5 0 0 0 - - -;
#X connect 0 0 2 0;
#X connect 0 0 6 0;
#X connect 1 0 0 0;
#X connect 3 0 10 0;
#X connect 3 0 7 0;
#X connect 3 0 31 0;
#X connect 4 0 7 0;
#X connect 4 0 9 0;
#X connect 4 0 39 0;
#X connect 5 0 18 0;
#X connect 6 0 5 1;
#X connect 8 0 10 1;
#X connect 8 0 34 0;
#X connect 10 0 9 0;
#X connect 15 0 13 0;
#X connect 15 0 14 0;
#X connect 16 0 15 0;
#X connect 18 0 19 0;
#X connect 19 0 3 0;
#X connect 21 0 22 0;
#X connect 21 0 18 1;
#X connect 22 0 33 0;
#X connect 23 0 38 0;
#X connect 24 0 8 0;
#X connect 25 0 8 0;
#X connect 29 0 0 0;
#X connect 29 1 27 0;
#X connect 29 2 16 0;
#X connect 30 0 29 0;
#X connect 31 0 25 0;
#X connect 31 1 24 0;
#X connect 32 0 31 0;
#X connect 33 0 32 0;
#X connect 34 0 35 0;
#X connect 36 0 34 0;
#X connect 37 0 38 1;
#X connect 38 0 4 0;
#X connect 39 0 5 0;
#X connect 40 0 39 1;


More information about the Pd-list mailing list