Try attached patch. Note that this works fine with pure DSP objects, but
it gives unexpected results once you add clocks (e.g. [metro], [del], etc.).
Sending a "bang" to [switch~] only advances DSP computation for the
given canvas (and all its subcanvases), but it doesn't advance the
message scheduler (which is global).
With this method, you can basically amortized DSP computations over a
given period of time.
Christof
On 17.08.2020 19:27, Alexandre Torres Porres wrote:
Em seg., 17 de ago. de 2020 às 13:20, Christof Ressi
<[email protected] <mailto:[email protected]>> escreveu:
If your audio computation is pure DSP (i.e. no messages), you can
"render" it by repeatedly banging the [switch~] object at any rate
you like. Global DSP still has to be on, but the canvas would be
switched off.
hmm, please elaborate;
thanks
#N canvas 527 258 450 300 12;
#N canvas 716 347 514 323 sub 1;
#X obj 35 103 switch~;
#X obj 34 69 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#N canvas 0 50 450 250 (subpatch) 0;
#X array array1 1024 float 2;
#X coords 0 1 1024 -1 200 140 1 0 0;
#X restore 173 57 graph;
#X obj 20 167 noise~;
#X obj 72 170 loadbang;
#X obj 71 201 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X text 29 44 click me;
#X obj 22 252 tabwrite~ array1;
#X text 89 202 rewind;
#X msg 103 277 \; array1 const 0;
#X obj 71 221 t b b;
#X text 243 219 update graphics:;
#X obj 247 246 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 247 266 \; pd-sub vis 0 \, vis 1;
#X connect 1 0 0 0;
#X connect 3 0 7 0;
#X connect 4 0 5 0;
#X connect 5 0 10 0;
#X connect 10 0 7 0;
#X connect 10 1 9 0;
#X connect 12 0 13 0;
#X restore 82 154 pd sub;
#X obj 78 77 loadbang;
#X msg 78 100 \; pd dsp 1;
#X connect 1 0 2 0;
_______________________________________________
[email protected] mailing list
UNSUBSCRIBE and account-management ->
https://lists.puredata.info/listinfo/pd-list