On Fri, 2013-02-08 at 06:46 +1100, Patrick Shirkey
wrote:
It was
quite a nice feeling to click "Learn", wiggle a fader on my
iphone TouchOSC app, and watch the fader in my Linux app start to
move!
How does one achieve that set of steps with Linux software? Is there a
generic OSC control app for Linux that will communicate with any OSC
enabled app?
Liblo comes with "oscsend", a command line tool to send an OSC message
to a specified listener. That's good for testing. Also "oscdump", a
server that just echoes incoming OSC requests to stdout. A very useful
pair.
The way I implemented learning is to add a default handler to my created
OSC server, take the next incoming message, pick the "path" out of it,
and then add a handler for THAT in place of the default. It's possible
to get in a race if you are trying to learn with lots of OSC data flying
around but that's the user's issue :)
I think OSC was designed with the idea that the servers would define the
"name space" of paths and you would build a client map to send controls
to the proper destination. It looks more like it's really working the
other direction, where the clients/controllers define the paths they are
going to send, and the server is responsible for learning the mappings.
The reason I'm asking is for controlling jamin remotely. JAMin already has
OSC functionality after all Steve Harris wrote liblo ;-)
My problem is figuring out how to test JAMin to make sure I haven't broken
anything with any of my recent updates. Specifically I added a "Daemon" or
"Headless" mode and I would like to check that the controls are all still
working. In addition it would be nice to be able to control the JAMin
daemon from a remote machine. So the the two issues are how to connect to
a server app and also how to do that from a remote machine.
it looks like oscsend is going to be the way to go for now.
I'm tempted to spend some time on a python/clutter generic osc controller
app but if you have already started on that it might not be necessary. I'm
also thinking of adding support for OSC send to JAMin (if it is not
already there) so it can be a remote controller for the JAMin daemon. Call
it "controller" mode...
--
Patrick Shirkey
Boost Hardware Ltd