[PD] Invisible wires was Re: PD] Zen Garden re-implementing the wheel in C++?

Frank Barknecht fbar at footils.org
Sun Apr 18 10:43:06 CEST 2010


On Sat, Apr 17, 2010 at 04:50:02PM +0200, Matteo Sisti Sette wrote:
> Matteo Sisti Sette escribió:
> 
> >So my question is which of these is true:
> >A) there is always a one-block latency between a s~ and a corresponding r~
> >B) there _can_ be a latency, depending on the execution order Pd
> >choses, and you can't know whether there will or won't be.
> >C) there _can_ be a latency, but if there is no dsp loop on the
> >graph, then you can be sure there won't be any avoidable latency
> >due to execution order.
> 
> Ok I did some tests and it seems the answer is (A)

No, not always. Attached are two versions of your patch
that have zero delay over three s~/r~. 

*-sorted.pd uses explicit sorting, *-moved.pd exploits the current
implementation of sorting, Pd does. Don't edit and save the second one,
it may "break" again.

Ciao
-- 
Frank
-------------- next part --------------
#N canvas 522 213 747 358 12;
#X obj 89 233 tabwrite~ xxx;
#X obj 354 40 table xxx 256;
#N canvas 0 0 450 300 s1 0;
#X obj 33 59 inlet~;
#X obj 30 194 outlet~;
#X obj 119 189 vline~;
#X msg 119 155 1 \, 0 0 1;
#X obj 119 33 bang~;
#X obj 119 71 spigot;
#X obj 119 98 t b b;
#X msg 196 71 0;
#X obj 119 128 t b b;
#X obj 119 216 s~ a;
#X msg 174 37 1;
#X obj 228 19 inlet;
#X obj 268 159 outlet;
#X connect 2 0 9 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 0 8 0;
#X connect 6 1 7 0;
#X connect 7 0 5 1;
#X connect 8 0 3 0;
#X connect 8 1 12 0;
#X connect 10 0 5 1;
#X connect 11 0 10 0;
#X restore 89 77 pd s1;
#N canvas 0 0 450 300 s2 0;
#X obj 33 59 inlet~;
#X obj 30 194 outlet~;
#X obj 121 110 r~ a;
#X obj 121 137 s~ b;
#X connect 2 0 3 0;
#X restore 90 110 pd s2;
#N canvas 0 0 648 553 s3 0;
#X obj 33 59 inlet~;
#X obj 30 194 outlet~;
#X obj 138 81 r~ b;
#X obj 138 108 s~ c;
#X connect 2 0 3 0;
#X restore 89 146 pd s3;
#N canvas 0 0 648 553 s4 0;
#X obj 33 59 inlet~;
#X obj 30 194 outlet~;
#X obj 136 97 r~ c;
#X connect 2 0 1 0;
#X restore 88 190 pd s4;
#X msg 126 48 bang;
#X connect 2 0 3 0;
#X connect 2 1 0 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 0 0;
#X connect 6 0 2 1;
-------------- next part --------------
#N canvas 522 213 747 358 12;
#X obj 538 61 table xxx 256;
#X obj 395 233 tabwrite~ xxx;
#X obj 395 193 r~ c;
#X obj 396 131 r~ b;
#X obj 396 158 s~ c;
#X obj 395 76 r~ a;
#X obj 395 103 s~ b;
#X obj 248 221 vline~;
#X msg 248 187 1 \, 0 0 1;
#X obj 248 65 bang~;
#X obj 248 103 spigot;
#X obj 248 130 t b b;
#X msg 325 103 0;
#X obj 248 160 t b b;
#X obj 248 248 s~ a;
#X msg 303 69 1;
#X obj 302 45 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X msg 103 73 \; pd dsp 1;
#X obj 103 40 loadbang;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 5 0 6 0;
#X connect 7 0 14 0;
#X connect 8 0 7 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 13 0;
#X connect 11 1 12 0;
#X connect 12 0 10 1;
#X connect 13 0 8 0;
#X connect 13 1 1 0;
#X connect 15 0 10 1;
#X connect 16 0 15 0;
#X connect 18 0 17 0;


More information about the Pd-list mailing list