[linux-audio-dev] Re: [ladcca] lash directions

Steve Harris S.W.Harris at ecs.soton.ac.uk
Wed Aug 4 18:05:22 UTC 2004


On Wed, Aug 04, 2004 at 06:34:32 +0100, Bob Ham wrote:
> The properties that I had been working on have become gobjects and what
> was to be a new networking system is a seperate, gobject-based library
> to provide a high-level networking api (eg, session_scan(),
> session_join(), etc)
> 
> The TLA OSC has been banded about quite a bit, and this is not out of
> the question; it would be in a set of usable lower-level protocols (or
> perhaps the set :)

OSC is pretty neat, however it has a few features that make it not ideal
for LASH:

* theres no return codes or anything - if you want a reply you have to
  receive an explict, seperate reply packet.

* most clients only use the UDP transport, so theres no guantee that the
  server got your messge. This is not really a big deal - in reality UDP
  is quite relaible, and you could require the TCP transport, and still be
  in the letter of the spec.

Despite this, I think OSC might be a good choice. The obvious alternatives
(CORBA, SOAP, XML-RPC, etc.) are all really heavyweight. An alternative
might be D-BUS, but its paint is a little wet, and its not network
transparent.

Incase you dont know, a typical OSC message might look like (but in binary
form):

/lash/do/something    is     1   "my session"
[method path]       [types]  [arguments]

The types can be things like string, integer, float, double, binary blob,
timestamp etc. They are integer+string in the example.

- Steve



More information about the Linux-audio-dev mailing list