[PD] Pd + asterisk?
hans at eds.org
Mon Dec 3 20:29:49 CET 2007
On Dec 3, 2007, at 3:06 AM, cdr wrote:
>> There has been talk in the past about some optimizations that would
>> allow dynamic allocation without the interruption, but not a lot of
>> work done in that regard since it's pretty complicated. In
>> particular, the ideas I remember were building a new DSP chain in the
>> background, then swapping it in. The other was figuring out how to
>> only rebuild the parts of the DSP chain that changed.
> Nova  and Ingen  figured this out. along with countless other
> DAWs and media engines
> incidentally theyre all written in C++ rather than C, properly-
> threaded, use high quality 3rd party libraries throughout, and
> written by hackers rather than mathemusicians.
For all it's faults, Pd has the advantage of having 10+ years of use,
testing, library development, etc. DAWs are a very different story
since they are not programming languages.
> Ingen also has a notion of polyphony at multiple levels, such as
> plugin or subpatch, transparent to any machinations in the subpatch
> or plugin to fake native polyphony via preallocation and routing
> or if asterisk can talk to jack, sprouting a new PD per-call seems
> the most plausible, in terms of using PD rather than libingen/nova
> (ie, not fighting for polyphony or dynamically sprouting jack ports
> from an existing instance)
This does sound like a possibility from the point of view of handling
a unknown number of instances. I think that pd -nogui should be
light enough to support this. The downside is that it would make
difficult to have interactions between calls (if each call was
running a patch in its own Pd process). I suppose that Asterisk
could provide a means for communication between these Pd processes.
Now that I think about it, it would also work to have each call open
an instance of a patch within one constantly running Pd process.
Then when the call is dropped, that patch instance would close. For
this to work well, we'd need to add the ability for a patch to close
itself programmatically (currently, when a patch sends menuclose to
itself, Pd crashes :( )
>  https://tim.klingt.org/nova/
>  http://drobilla.net/software/ingen
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/
Using ReBirth is like trying to play an 808 with a long stick. -
More information about the Pd-list