Open Sound Control
Introduction to Generic OSC
Suppose you are developing your own control systems to integrate with SPAT. In that case, you might find it useful to know that it is possible to export a detailed description of all OSC patterns, syntax and usage to a text file for reference. You will find that option in the SPAT preferences. You will also find a complete OSC table Appendix D — Appendix C - OSC Table in the appendix.
Enable commands log will display the received and emitted OSC messages in the log windows to confirm you are receiving data. Shift + F7
will open the log window.
In general, SPAT OSC patterns have the form of:
/source/[remote number]/x
where remote number represents the Remote number of the Virtual Source, or the index (i.e. the room number) of the Room you wish to control with the message.
The three positional formats can be packed into one message if that option is set in the OSC Connections Matrix;
/source/[remote number]/xyz
Cartesian co-ordinates in meters
/source/[remote number]/aed
Polar co-ordinates (azimuth, distance and elevation)
Take care to automate EITHER Cartesian OR Polar, not both.
Sometimes, it is more convenient to have the remote number parameter as an argument of the OSC message. This option is available in the OSC Connections Matrix, namely Index as Arg. If this option is switched in, then the messages will be of the pattern
/source/xyz ifff
where i
is an integer denoting the remote number of the target, and f
according to convention is a float denoting the values of the message.
For more details about the SPAT Revolution OSC dictionary and its syntax, please refer to Appendix C Appendix D — Appendix C - OSC Table.
The output rate allows changing how fast the engine will send OSC messages. The lower the value is, the more SPAT Revolution will send OSC message and the remote will display the changes, but it will also increase the stress on the CPU. If you experienced some CPU overload when moving sources through OSC command, you can try to increase the value. By default, it is set to 5.0 ms.
OSC Transform
Interfacing different devices and software in OSC can be problematic as each piece of equipment can have its own value scale. To overcome these difficulties, some OSC transform presets have been implemented.
Transform presets are accessible for each OSC connection and allow quick re-scaling of the values.
If the included transform preset does not fit your needs, you can click on the +
button to open the custom OSC transform menu. You can choose how to scale your input or output values in this menu. You can also choose to exclude specific OSC command from the scaling rules.