Hi Andy, well I've ordered your book to learn PD, so I'm at least that committed! :-) My overarching goal is to make tools for composing, improvising, and sequencing, so at this point, I'm punting on signals. First I want to support everything in Rick Taubes's Notes From the Metalevel book, along with a bunch of my own ideas, for algorithmic and computer assisted composition/improvisation. But I am hoping to get signals into play eventually. Which makes this a good time for a question...
In Max, my understanding is that if Overdrive is on and Scheduler in Interrupt is selected, we actually get only two threads: low priority thread running who knows when, and high priority thread alternating between a pass of eating up the scheduler queue (up to the limit) and then a pass of the audio vector render. So given that I'm forcing all messages to run in the high priority thread (unless the user asks for danger-mode Any), I *think* I should have no problem calling into S7 and sharing data from both dsp perform routines and regular event scheduled messages. I have not, however, actually done this yet. Can anyone tell me what the situation in PD is there? Or point me at good docs/resources on how the threading and scheduling works in PD?
Thanks iain
On Fri, Oct 23, 2020 at 12:23 PM Andy Farnell padawan12@obiwannabe.co.uk wrote:
My last love affair with parentheses was in Racket. Although my only ever somewhat successful musical adventures in this style were with Roger Dannenberg's CLM/Nyquist
Lets see what happens if Iain brings S7 over.
Iain, how are you thinking of handling signals (or not)?
andy
On Fri, Oct 23, 2020 at 11:31:48AM +0200, Kjetil Matheussen wrote:
On Thu, Oct 22, 2020 at 10:26 AM Andy Farnell padawan12@obiwannabe.co.uk wrote:
Would love to see Scheme come to Pd.
There's also k_guile from 2004, that still compiles: https://github.com/kmatheussen/k_guile Don't know if it still works though.
Guess there are other alternatives as well, but they all probably suffer a bit from gc non-rt performance. To fix this I later extended the code from k_guile to run in a separate thread to avoid cpu spikes, but this code was only added to the snd sound editor (when snd was compiled as a pd external), and that code was probably removed from snd when switching from guile to s7.
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list