[OSC_dev] OSC Questions regarding Protocol

Matt Wright matt at cnmat.berkeley.edu
Mon Nov 13 16:41:58 PST 2006


>Greetings all
>
>I am writing a paper about using OSC for gesture based interfaces - 
>pros and cons.

I'd be interested to hear this list of pros and cons.


>  I have a few questions that I am trying to get answers for.
>
>I was wondering about using OSC address spaces, in particular, the 
>use of wild cards and pattern matching.
>
>Does the OSC Client place wildcard in the OSC address space for 
>messages it sends, in which case, the Server would need to decode 
>the wildcards.


Yes.  Although some servers don't support this.


>Also, is there a real MIDI address space in OSC? I have posted an 
>email on this a few times, but I have not seen an affirmative reply.


Not sure what makes an address space "real", but I'm aware of two 
encodings of MIDI in OSC messages: the one used by SCLang and the one 
used by Occam / Macco.


>Do OSC servers and clients have to support and parse all OSC message 
>types to be deemed compatible? If not, which types?

By "OSC message types" I assume you mean "OSC Argument Types".

A client is compatible if it outputs legal OSC messages.  In 
principle it doesn't have to support any argument types if it outputs 
only messages without arguments, though it's hard to imagine that 
this would actually be useful for anything.

A server is compatible if it's able to receive int32, float32, and 
OSC-String types, though I suppose if its namespace consisted of (for 
example), only messages that took numeric arguments, it would still 
be a valid OSC Server that happened not to accept any string 
arguments (in the current namespace).



>Also, I just want to confirm that OSC does not define the lower OSI 
>layers. Which OSI layers would you see as those used by the OSC 
>specification? I see only layers 6 and 7 (possibly layer 4 if 
>include the size of the packet as a function of this layer).


I'm not sure if any part of OSC addresses the "Presentation" Layer 
(#6).   The binary format of OSC packets, as defined by the OSC spec, 
is expected to be delivered exactly as-is by the underlying transport 
medium.  People have talked about doing some kind of encryption 
and/or authentication of OSC messages (e.g., for security against 
hackers that try to play bad music on your OSC server synthesizer), 
but I've never heard of anybody actually doing this.

I always say that OSC is strictly an Application Layer protocol, but 
maybe somebody needs to set me straight on this.

-Matt


More information about the OSC_dev mailing list