Jump to: navigation, search

This is part of OSC Plug And Play.



The subscription's goal is to enable connections between data producers and consumers. The data can be any streaming content. For example:

  • midi notes from a keyboard
  • compressed video signal from a camera or player
  • audio from a microphone
  • gesture information from bend sensors
  • etc

The data can be sent with OSC if this makes sense (midi for example) but can also use other means (RTP for video for example).

Agreed standard


Once a client has discovered that the type of an url is a "subscription slot", it will use this slot to get information on how to subscribe to a data feed.

For example:

query: /.type "/camera/video"
reply: /.reply "/.type", ["/camera/video", ["rtp", ...]]

The client should then use the type information to create a connection to the data stream.


We must find a way to send matrix data with OSC (OSCit actually uses the 'M' typetag but does not send the data on the network).

Do we send one row at a time ? We could then just put the values in an array.

Do we need to send more then one row at a time ?


Subscriptions have a TTL of 10 seconds. It is the client's responsibility to renew before the time-to-live expires.

When a client subscribes to an url with

/osc/state/subscribe (some url) (property name) (property value) ...

A client should renew subscriptions every 3 seconds.

Please have a look at avbc.pdf (page 20) for details.

Personal tools