Advanced OSC Commands/Messages
This page documents advanced OSC controls for system management, session handling, and device configuration.
Session Management
| Parameter | Arguments | Comments |
|---|---|---|
| /session/add/track | [string, integer, string, integer] | Add a new track with specified parameters [type, chNbr, name, quantityNumber] |
| /session/add/bus | [string, integer, integer, integer] | Add a new bus with specified parameters [format, inputNbr, outputsNbr, quantityNumber] |
| /preset/load | string | Load a preset by name |
When adding a track using session/add/track, the parameters are:
type: Source type can be 'Mono', 'Stereo', 'Multichannel', 'EigenMike32', 'EigenMike64', 'MicTree', 'Bformat', 'Aformat', 'Direct To Master', 'Direct To Bus', 'HOA Stream', 'HOA DRIR', or 'Zylia'chNbr: Channel numbers (i.e., 1 for mono, 2 for stereo and so on)name: A string representing the track namequantityNumber: An integer between 1 and 128
When adding a bus using session/add/bus, the parameters are:
format: The bus format, which can be 'WFS', 'HOA', 'HOA2D', 'VBAP', 'VBAP2D', 'VBIP', 'VBIP2D', 'Binaural', 'Transaural', 'Stereo AB', 'Stereo XY', 'Stereo Pan', 'Angular 2D', 'KNN', 'LBAP', or 'Thru'inputNbr: Number of inputsoutputsNbr: Number of outputsquantityNumber: An integer between 1 and 128
Options
| Parameter | Arguments | Scale | Unit | Comments | Settable |
|---|---|---|---|---|---|
| /options/clearsolo | none | -- | -- | Clear all solo states | ✓ |
| /options/vumeters/rate | number | 20, 500 | -- | Set VU meters refresh rate | ✓ |
| /options/parallel/tracks | boolean | 0, 1 | -- | Enable/disable parallel processing for tracks | ✓ |
| /options/parallel/bus | boolean | 0, 1 | -- | Enable/disable parallel processing for buses | ✓ |
Audio Device Configuration
| Parameter | Arguments | Scale | Unit | Comments | Settable |
|---|---|---|---|---|---|
| /device/list | none | -- | -- | List available devices | ✗ |
| /device/output | string | -- | -- | Set output device | ✓ |
| /device/input | string | -- | -- | Set input device | ✓ |
| /dsp/buffersize | number | -- | -- | Set DSP buffer size (must be power of 2) | ✓ |
| /dsp/samplerate | number | -- | -- | Set DSP sample rate | ✓ |
| /dsp/usurp | boolean | 0, 1 | -- | Enable/disable DSP usurpation | ✓ |
Test Generator
| Parameter | Arguments | Scale | Unit | Comments | Settable |
|---|---|---|---|---|---|
| /dac/test/channel | any | -- | -- | Test DAC channel | ✓ |
| /dac/test/active | any | -- | -- | Set DAC test active state | ✓ |
| /dac/test/gain | any | -- | -- | Set DAC test gain | ✓ |
| /adc/test/channel | any | -- | -- | Test ADC channel | ✓ |
| /adc/test/active | any | -- | -- | Set ADC test active state | ✓ |
| /adc/test/gain | any | -- | -- | Set ADC test gain | ✓ |
Advanced Source Positioning
A position can be set with navigational coordinates (azimuth, elevation, distance) or with Cartesian coordinates (X, Y, Z). Angles are in degrees and distances in meters — see Coordinates System for the axes and their ranges.
Besides the individual azim, elev, dist, x, y and z parameters, the following messages set several coordinates in a single message:
| Parameter | Arguments | Comments |
|---|---|---|
| /{source}/{id}/aed | [number, number, number] | Set the position from azimuth, elevation and distance |
| /{source}/{id}/xyz | [number, number, number] | Set the position from the X, Y and Z coordinates |
| /{source}/{id}/ae | [number, number] | Set azimuth and elevation |
| /{source}/{id}/ad | [number, number] | Set azimuth and distance |
| /{source}/{id}/xy | [number, number] | Set the X and Y coordinates |
A message carrying the wrong number of values is ignored, so a partial move can never be applied.
Coordinate missing from the message
aed and xyz describe a complete position. ae, ad and xy only carry two of the three coordinates, and the remaining one is handled differently depending on the object being addressed:
| Message | Coordinate not carried | Mono and stereo sources | Multichannel sources, groups, zones and speakers |
|---|---|---|---|
ae | distance | reset to 1 m | left unchanged |
ad | elevation | reset to 0° | left unchanged |
xy | Z | reset to 0 m | left unchanged |
/track/1/ae 45 30 places a mono source 1 m from the origin, whereas /multi/1/ae 45 30 keeps the multichannel source at its current distance.
To get the same result on every type of object, use aed or xyz and send the three coordinates explicitly.
Reading a position back
aed, xyz, ae, ad and xy can all be read with /get, which returns the same number of values it takes to set them:
/get /track/1/ae
returns for example /track/1/ae 90 0.
Bus Speaker Configuration
| Parameter | Arguments | Scale | Unit | Comments | Settable |
|---|---|---|---|---|---|
| /bus/{id}/speaker/{id}/direction/xyz | array | -- | -- | Set speaker direction using XYZ coordinates [x, y, z] | ✓ |
Informational Messages (only received)
| Parameter | Comments |
|---|---|
| /warning | Log warning from console in string format |
| /station/lastReleaseNote | Get JSON of the last release note changelog |