Hello Massy and everyone ese reading!
I think OSC support is quite good. I have never programmed anything for it.
But there is liblo and there seem to be quite a few apps using it, csound and
the DSSI plugins.
But again you're right: seperating the interface from the data/background
control mechanisms is a good thing. Why not have it organised as a sort of
plugin system? One plugin to start with, that uses OSC and of course a way to
populate the interface by hand.
A question of protocol. From the few I know OSC seems the most likely
candiate for controlling sound apps. At least under Linux - and with some
hardware - it seems to be the most established protocol. There's MIDI of
course, but it can't send names. Well you might devise swomething using sysex
and that would work as well, but I'd see that as a second plugin. Of course
even more apps have MIDI support, but not for full configuration. You can
manipulate things with MIDI, but not load a certain file, save your changes or
tell the engine to make cofee. :-) Still, there might be a point about that as
well.
Same goes for the FUSE handling. But you would need a seperate handler for
each type of FUSE FS. I don't know an interestng FUSE FS to cnfigure or
otherwise use an application in any way.
One thing that springs to mind - and might not be to the point of audio -
but one thing we can't really do with OSC is change texts (comments or
whatever). So a thought to keep in mind: A telnet interface or something as
simple as that. Where you have a protocol a la LinuxSampler LSCP.
One question, tat I completely forgot to think about though: MIDI and
telnet/network in general don't have a tree hirarchy. So one would again need
some kind of description file to get tat structure.
So that leads to the part of description files. If we decide upon sme file
format, it should be able to map one thing to another and take parameters like
type. So we might have something like:
<command>
<command_sequence="original_domain_command" />
<map_to_path="/map/to/path/of/command" />
<type="float" />
</command>
Allowing to map might also be useful for apps, that have an existing OSC
set, which doesn't reflect it's inherent structure in the OSC paths, so one
has the chance to really get a sensible interface even in those cases. I
should take the time tomorrow and have a look at the RDF format. The basics
can't be too dificult, that my pea-brain can grasp it. :-)
Just a note of clarification - although it is most probably just
smart-arsing at this point - RDF is an XML format.
Warm regards
Julien
--------
Music was my first love and it will be my last (John Miles)
======== FIND MY WEB-PROJECT AT: ========
http://ltsb.sourceforge.net
the Linux TextBased Studio guide
======= AND MY PERSONAL PAGES AT: =======
http://www.juliencoder.de