Open Sound Control (OSC) is a protocol for networking sound synthesizers, computers, and other multimedia devices for purposes such as musical performance or show control. OSC's advantages include interoperability, accuracy, flexibility and enhanced organization and documentation.
Here are its features from wikipedia:
- Open-ended, dynamic, URI-style symbolic naming scheme (uniform resource identifier)
- Symbolic and high-resolution numeric data
- Pattern matching language to specify multiple recipients of a single message
- High resolution time tags
- "Bundles" of messages whose effects must occur simultaneously
For example this guys are implementing/using OSC to send/process data :
OSC controller
touchOSC
Processing
There is a more exhaustive list of wikipedia :
https://en.wikipedia.org/wiki/Open_Sound_Control#Applications
For more information here is pdf giving some of the OSC specificity in regard with MIDI
http://opensoundcontrol.org/files/OSC-Demo.pdf
Implementation with javaOSC
In order to implement OSC in myrobotlab and join the osc family the library called javaOSC could be used
It has a gui :
It is easy to use, choose:
- The port for communication.
- The ip to send to.
- The adress of the message you want to send or receive (using the form /address/channel)
- Set a value (supporting integer, Double Precision Floating Point, Strings, and more)
- Send
For the server part i don't know how it is supported in this case.
But a gui supporting the server port could be neat with these functions:
- set the number of servers
- set the port to listen to for each server
- filter the messages by addresses (using the form: /address/channel)
- the possibility to trigger service/function on the reception of the messages
References: