OSC (Open Sound Control)
phix supports OSC (Open Sound Control) for network-based remote control. OSC is commonly used by apps like TouchOSC, Lemur, and Resolume to send control messages over Wi-Fi.
Enabling OSC#
osc enableosc disableConfiguring the OSC server#
Set the listen address and port (phix listens for incoming messages):
osc listen 0.0.0.0 8000 -- listen on all interfaces, port 8000Default settings:
- Listen address:
0.0.0.0(all interfaces) - Port:
8000
OSC feedback#
phix can send OSC messages back to a client when state changes (for updating button LEDs, fader positions, etc.):
osc feedback enableosc feedback target 192.168.1.100 9000 -- send feedback to this IP and portosc feedback disableCreating OSC bindings#
Map an OSC address pattern to a phix command:
osc bind /phix/go "go 1"osc bind /phix/go/{n} "go {n}"osc bind /phix/preset/{cat}/{slot} "preset {cat}.{slot}"osc bind /phix/fader/{id} "master {id} value {value}"Value substitution:
{value}โ the first OSC argument (float, normalized 0.0โ1.0)- Named wildcards in the path (e.g.,
{n}) are captured and can be used in the command
Listing and removing bindings#
list osc -- show all bindingsosc unbind /phix/go -- remove a bindingosc clear -- remove all bindingsExample โ TouchOSC integration#
In TouchOSC, create buttons and faders with these OSC addresses:
| Control | Address | phix binding |
|---|---|---|
| Go button | /phix/go | go 1 |
| Release button | /phix/release | release 1 |
| Grand fader | /phix/grand | master 0 value {value} |
| Color preset 1 | /phix/color/1 | preset 3.1 |
Set up in phix:
osc enableosc listen 0.0.0.0 8000osc bind /phix/go "go 1"osc bind /phix/release "release 1"osc bind /phix/grand "master 0 value {value}"osc bind /phix/color/1 "preset 3.1"Point TouchOSC at your phix machine's IP address, port 8000.