OSC: Feedback and State Query
pMix sends real-time state feedback to all registered OSC clients, enabling responsive control surfaces.
Auto-registration
Any device that sends an OSC message to pMix is automatically registered as a feedback subscriber. Feedback is sent to the sender’s IP and port at 10 Hz (10 times per second).
Requesting full state
| Address | Args | Description |
|---|---|---|
/pmix/state/query |
— | Request a full state dump |
The state dump sends all current values for program, preview, audio, slots, and output status — useful for initializing a control surface.
Feedback addresses
Video state
| Address | Args | Description |
|---|---|---|
/pmix/fb/program |
int, string | Program slot number + source name |
/pmix/fb/preview |
int, string | Preview slot number + source name |
/pmix/fb/transition/state |
float | Transition progress (0–1) |
Audio state
| Address | Args | Description |
|---|---|---|
/pmix/fb/audio/{n}/level |
float, float | Slot L/R audio levels |
/pmix/fb/audio/{n}/volume |
float | Slot current volume |
/pmix/fb/audio/{n}/mute |
int | Slot mute state (0/1) |
/pmix/fb/audio/master/level |
float, float | Master L/R audio levels |
/pmix/fb/audio/master/volume |
float | Master volume |
Output state
| Address | Args | Description |
|---|---|---|
/pmix/fb/output/status |
int, int | isOutputting, isRecording (0/1) |
Slot info (on state query)
| Address | Args | Description |
|---|---|---|
/pmix/fb/slot/{n}/name |
string | Source name |
/pmix/fb/slot/{n}/type |
string | Source type |
Building a control surface
To build a responsive control surface (in TouchOSC, Companion, etc.):
- Send any OSC message to pMix to register as a subscriber
- Send
/pmix/state/queryto get the initial state - Listen for feedback on your receive port
- Update your UI elements based on incoming feedback
The transition progress feedback (/pmix/fb/transition/state) is useful for animating a progress bar during transitions.
Tips
- Feedback runs at 10 Hz — fast enough for smooth UI updates but not overwhelming
- Audio levels are useful for driving VU meter visualizations in your control surface
- Program/preview feedback includes both the slot number and source name