[PD] abstraction creation audio engine start

Roman Haefeli reduzierer at yahoo.de
Thu Apr 23 22:09:16 CEST 2009


On Mon, 2009-04-20 at 11:33 -0300, Tuti wrote:
> Hi,
> that scheme will work only to turn on the newly created (and muted)
> abstractions. 

hm.. i thought, that is what you want....

> however, still there will be a "click" and/or audio
> interruption as you do the "pd dsp 0; pd dsp 1;" trick. I seek a
> smooth solution (i.e. as the abstractions are created, their sounds
> come to life, ... no clicks, no hiccups).

i understand. probably i should add, that dynamically creating
abstractions is by no means realtime/clickfree safe, since pd wants to
process everything in zero time. if a certain task takes more time than
the latency you set in the audio menu, you'll get a click/dropout. in
theory (all the theory applies, when you record to a soundfile, for
instance), you can create as many abstractions in no time without
clicks. the same goes for turning dsp on and off.

now, that you mention your problem, i remember, that i once measured the
(real) time it takes to turn dsp on with pd on a mac and i was impressed
that it takes around 300ms or so. on linux, i am pretty much used to the
approach i described in my previous mail and it works out very well (at
least, if the latency is not too low). at least, i experienced creating
abstractions dynamically without dropouts.

now, i wonder you probably are on a mac. if so, could you probably tell
us, what time you measure with the attached patch? 

@all
why is turning dsp off and on taking so much time on OS X?

roman

> On Mon, Apr 20, 2009 at 6:52 AM, Roman Haefeli <reduzierer at yahoo.de> wrote:
> > On Sun, 2009-04-19 at 00:23 +0900, hard off wrote:
> >> what about something like sending a value to the inlet of an audio
> >> arithmetic object?  would that update the dsptree?
> >>
> >> i'm wondering why the audio in my abstractions is working, because i
> >> don't think i am doing any of those things.
> >>
> > afaik, it's only the newest dynamically created tilde-abstraction, that
> > is _not_ part of the dsp-tree. if you generate 3000  abstractions
> > dynamically, you won't notice the one, that is missing.
> >
> > i hope, someone with insight into the pd-code can confirm this: i
> > experienced, that turning dsp off _before_ dynamically create
> > abstractions, and turning dsp on again after it, is much faster. i
> > assume (someone please correct me), this is because as long as dsp is
> > off, the dsp tree isn't updated at all, even if tilde objects are
> > created. however, when it is running, it will get updated on the
> > creation of every instance, which makes it so slow. when it's off during
> > the creation and turned only after, the dsp-tree will be only update
> > once.
> >
> > this is why all my dynamic patches do a [t b b b] with the following
> > order:
> > - [; pd dsp 0(
> > - create all the instances dynamically
> > - [; pd dsp 1(
> >
> >
> > roman
> >
> >
> >
> >
> > ___________________________________________________________
> > Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
> >
> >
> >
> > _______________________________________________
> > Pd-list at iem.at mailing list
> > UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
> >
> >
> 
> _______________________________________________
> Pd-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
-------------- next part --------------
#N canvas 550 260 450 300 10;
#X obj 80 86 t b b b b;
#X msg 119 135 dsp 0;
#X msg 96 155 dsp 1;
#X obj 109 187 s pd;
#X obj 208 178 realtime;
#X floatatom 212 216 10 0 0 0 - - -;
#X obj 79 15 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X connect 0 0 4 1;
#X connect 0 1 2 0;
#X connect 0 2 1 0;
#X connect 0 3 4 0;
#X connect 1 0 3 0;
#X connect 2 0 3 0;
#X connect 4 0 5 0;
#X connect 6 0 0 0;


More information about the Pd-list mailing list