Skip to content

OSC implementation

Various parts of the Visual Stage app can be controlled through OSC. Current controls are focused on live performance (controlling macros, loading presets) rather than the creation process (setting up projects, creating presets)

Currently the used ports are hardcoded: 30338 to send to the Visual Stage app, 30337 to receive from it.

A full featured software OSC implementation is available with Open Stage Control.

/TT/track

(get/set): /TT/track/select

Example: sending /TT/track/select 12 selects track 12, which currently only purpose is to display its macros in the virtual.control abstraction.

  • Track name string (get): /TT/track/<i>/name
  • Track color (list of rgba values) (get): /TT/track/<i>/color

Examples: Receiving /TT/track/7/name "Track 7" indicates that track 7’s name is ‘Track 7’. /TT/track/3/color 0. 1. 0. 1. indicates that track 3 color is pure green.

You can use the following addresses:

  • Normalized macro value (set/get): /TT/track/<i>/<macro_name>/val
  • Macro settings (name, parent, range, type, initial value) dictionary (get): /TT/track/<i>/<macro_name>/settings

Examples: /TT/track/3/macro_fader/val is the address of the fader macro from track 3. /TT/track/24/macro_12/valis the address of the 12th macro of track 24.

/TT/presets/<preset_name>

  • Slot number (get/set): /TT/presets/<preset_name>/val
  • Interpolation time (get/set): /TT/presets/<preset_name>/interp
  • List of available presets (as a dictionary composed of slot_number/preset_name as key/value, created by tc.preset) (get): /TT/presets/<preset_name>/list

Examples: Sending a 3 to /TT/presets/scenic/val will recall preset in slot 3 of scenic pattrstorage. /TT/presets/performer_3/interpallows to set/get interpolation time for performer_3 presets.

Note: currently only the follow presets can be reached: scenic, bb (blackbox), performer_1, performer_2, performer_3, performer_4

  • Scene number (get/set): /TT/presets/grid/val
  • List of scenes (as a dictionary containing the scene number as key, and their title and description as nested dictionary): /TT/presets/grid/list