Hi Ken,
On May 13, 2010, at 11:19 AM, Ken Restivo wrote:
Is there some kind of reflection capability in
DSSI so that I can
discover which OSC parameters are available for a synth?
It's time to trot out Monosynth again, and this time I'd like to
customize its MIDI controls, and I usually do this via a Python script
that converts MIDI to OSC. But somehow I have to find out what
parameters are exposed via OSC first.
DSSI doesn't specify a reflection capability, and I don't know of any
hosts that provide it on their own. Something you can do is run
ghostess in debug mode from an xterm (use '-debug 64' to show the OSC
communication), move the controls you're interested in, and pick the OSC
parameters out of the debug output;
$ DSSI_PATH=/usr/local/lib/dssi ghostess -debug 64 xsynth-dssi.so
. . .
ghostess: OSC: got update request from <osc.udp://mickey.jps.net:
14056/dssi/xsynth-dssi/Xsynth/inst00>
ghostess OSC control handler: xsynth-dssi/Xsynth/inst00 port 6 =
0.666667
. . .
ghostess osc_configure_handler: UI for 'xsynth-dssi/Xsynth/inst00' sent
'monophonic', 'on'
. . .
A quick way to get a listing of a plugin's ports and their ranges is the
LADSPA 'analyseplugin' command:
$ LADSPA_PATH=/usr/local/lib/dssi analyseplugin xsynth-dssi.so
Adjust your DSSI path as needed. Hope that helps,
Thanks! Will try it.
Digging around, looks like I adapted a 'sniffer' script some years ago to deal
with this kind of thing:
But I like the ghostess approach better. Thanks.
-ken