But I don't know how to
retrofit a c program like Pd with Qt, nor how to replace
Pd's current string-based communication with whatever one is
supposed to use to do that.
I guess you don’t really retrofit the existing Pd,
but rebuild it. Chris and I have done this with DroidParty &
PdParty to some small degree using libpd. Sending messages and
samples to and from the dsp engine is working. If that could be
expanded to the requisite GUI calls, then bringing patch editing
could be next. libpd currently has “sendFloat”, “sendSymbol”
etc, off the top of my head we could add something like
“createCanvas” which returns a canvas pointer, etc. In the case
of libpd, you don’t communicate with the dsp engine over a
socket but by function calls. Obviously you could use a socket
and pass data along from a separate GUI which then calls the
functions.
I’m just musing here that it’d be nice to abstract
the dsp graph, canvas, etc within libpd. That would at least
make it possible to support patch creation and editing in
PdParty, etc without rolling something myself. If did have to,
I’d rather do it in a generic way inside libpd so Chris could
use it DroidParty or I could add it to ofxPd, etc.