[PD-announce] More PDDP reference files: GLUE,TIME,and now MATH

Frank Barknecht barknech at ph-cip.uni-koeln.de
Mon Jul 22 13:16:51 CEST 2002


Hi,
günter geiger hat gesagt: // günter geiger wrote:

> On Mon, 22 Jul 2002, Frank Barknecht wrote:
> > I would like to add an oddity with delay, that might cost someone a
> > lot of time (at least it did cost me): delay always puts out the bang
> > on the start of a signal block. Attached patch shows what I mean.
> 
> Actually this is true not only for del but about message calculations in
> general. So it is more a "remember" issue than an oddity with delay.
> All clock times are rounded to a multiple of 64 samples.

Yes, you're right, but with [del] as used in the ADSR example in the
PD example patches this problem becomes significant. 

> > Maybe you can add this info, because it explains, why fast envelopes
> > with line~ and del sometimes produce no output. To my knowledge
> > there's no trivial solution but the t3-objects in IEMLIB.
> 
> There might be a solution using arrays, ..

I did several experiments with textfile or qlist and they all fail
because of the message speed. I'm working on a PD-tutorial explaining
my angriff drummer at the moment, and here's the relevant part from
this: 

  This problem isn't trivial at all and it appears everywhere, one
  wants to contol messages in PD quicker than the signal blocksize
  allows, for example in granular synthesis patches. A solution to
  this are "Time-Tagged Triggers" (T3) as proposed by Gerhard Eckel
  and Manuel Rocha Iturbide for Max/FTS. In PD T3-objects are made
  available as externals in IEMLIB. Time-Tagged Triggers are a
  replacement for the standard "bang" message that is normally used in
  PD or Max. Eckel writes: "In Max/FTS, a T3 is nothing else than a
  message containing one floating-point number which specifies the
  delay in ms after which, counting from the current tick, the trigger
  should go off." We will now use the T3 break point envelope
  generator [t3_bpe] to generate faster envelopes. 

Now the attached example patch, a variation of the previously posted
one with [del] is shown.

ciao,
-- 
 Frank Barknecht                               _ ______footils.org__
-------------- next part --------------
#N canvas 179 206 819 529 10;
#X obj 191 291 t3_bpe;
#X obj 191 192 t b b;
#X obj 191 348 t3_line~ 0;
#X obj 191 252 f 0;
#X obj 244 128 t b f;
#X floatatom 244 87 5 0 0;
#X obj 107 417 tabwrite~ line;
#N canvas 0 0 450 300 graph1 0;
#X array line 441 float 0;
#X coords 0 1 440 -1 200 140 1;
#X restore 457 270 graph;
#X msg 472 79 \; line resize 441 \; line xticks 0 64 8 \; line xlabel
1.1 0 64 128 192 256 320 384 \; pd dsp 1;
#X msg 244 246 1 1.95011 0 1.5;
#X obj 244 176 pack 1 0.5 0 1.5;
#X obj 244 105 / 44.1;
#X msg 191 149 bang;
#X obj 472 49 loadbang;
#X floatatom 112 189 5 0 0;
#X obj 112 207 / 44.1;
#X text 104 165 pre-delay;
#X text 90 24 T3-envelopes;
#X text 290 85 samples;
#X floatatom 274 152 5 0 0;
#X text 324 151 msec;
#X text 63 47 With Time-Tagged Triggers exact positioning is possible
even between block boundaries.;
#X msg 244 204 set \$1 \$2 \$3 \$4;
#X connect 0 0 2 0;
#X connect 0 1 2 1;
#X connect 1 0 3 0;
#X connect 1 0 6 0;
#X connect 1 1 9 0;
#X connect 2 0 6 0;
#X connect 3 0 0 0;
#X connect 4 0 10 0;
#X connect 4 0 12 0;
#X connect 4 1 19 0;
#X connect 5 0 11 0;
#X connect 9 0 0 0;
#X connect 10 0 22 0;
#X connect 11 0 4 0;
#X connect 12 0 1 0;
#X connect 13 0 8 0;
#X connect 14 0 15 0;
#X connect 15 0 3 1;
#X connect 19 0 10 1;
#X connect 22 0 9 0;


More information about the Pd-list mailing list