[PD] Pd + asterisk?

Hans-Christoph Steiner 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 [0] and Ingen [1] 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  
> schemes.
> 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 :( )


> [0] https://tim.klingt.org/nova/
> [1] http://drobilla.net/software/ingen
> _______________________________________________
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/ 
> listinfo/pd-list


Using ReBirth is like trying to play an 808 with a long stick.    - 
David Zicarelli

More information about the Pd-list mailing list