LiveSet · iPad / OSC
OSC control from a tablet
LiveSet runs an Open Sound Control server. OSC 1.0 over UDP, on port 9000. It is off by default, because opening a network port is your decision. Turn it on when you want an iPad as a second surface, load the layout it ships with, and a tablet becomes faders, scene pads and a level meter next to your controller.
Off until you want it
One socket, off by default
The server is a single UDP socket speaking OSC 1.0, bound to port 9000. It listens only once you switch it on. When you do, any device on the same network that talks OSC can reach it — a tablet, a phone, a patch on another machine.
It is built for the moment you want more surface than the controller in front of you gives: a big crossfader on the glass, the scene you are about to fire under a thumb, the master level moving where you can see it.
Ready-made
The TouchOSC layout
You do not have to design a surface to start. LiveSet ships a ready-made TouchOSC layout — a single page of around twenty-nine controls, already mapped to the address vocabulary the server understands. Open it on the tablet, point it at your Mac, and play.
The address vocabulary, roughly
in · transport · play / stop
in · master gain · crossfader
in · per-channel gain
in · scene fire · hot-cue jump
in · buildup / drop / riser macros
out · now-playing scene
out · master peak (about 30 Hz)
out · tempo (BPM)
What it receives and what it sends
Roughly eleven inbound message forms for control, and three sent back so the tablet stays in step with the set.
Inbound: the tablet drives
Transport
Play, stop and the transport keys, from a button on the glass.
Master gain
The main level under a fader on the tablet.
Crossfader
The blend between decks, as one long throw.
Per-channel gain
Each channel’s level on its own fader.
Scene fire
Launch a scene by its index, hands free of the laptop.
Hot-cue jump
Drop to a cue by number from a pad.
Buildup, drop and riser
The performance macros, thrown from the surface where your hands already are.
Outbound. LiveSet reports
Now-playing scene
The tablet shows the scene that is currently live, so the glass stays in step with the set.
Meter peak
The master peak streams back at around thirty times a second for a moving level readout.
Tempo
The current BPM is sent out, so a display on the tablet tracks the clock.
Build your own surface
The address list
There is nothing proprietary in the contract. These are the addresses the engine listens on — so if the bundled layout is not the surface you want, build one that speaks these and it works the same.
| Address | Payload | Does |
|---|---|---|
| /liveset/transport/play | (no args) | Play |
| /liveset/transport/stop | (no args) | Stop |
| /liveset/scene/fire | int(scene) | Fire a scene by index |
| /liveset/master/gain | float(dB) | Master level |
| /liveset/crossfader | float(v) | Crossfader position |
| /liveset/mixer/ch/<N>/gain | float(dB) | Channel level, ch/1 to ch/4 |
| /liveset/hotcue/<N>/jump | float(> 0.5) | Jump to hot cue, 1 to 8 |
| /liveset/macro/buildup | float(v) | Buildup macro |
| /liveset/macro/drop | float(> 0.5) | Fire the drop |
| /liveset/macro/riser | float(> 0.5) | Toggle the riser |
| /liveset/tap_tempo | float(> 0.5) | Tap tempo |
Indices read naturally
Mixer channels and hot cues are 1-based in the address, so a layout reads ch/1 to ch/4 instead of counting from zero.
Press-edge, either convention
Pads fire above 0.5 and drop the release, matching TouchOSC. An argless message counts as a press too, so an Open Stage Control trigger button works unchanged.
A stray packet cannot take it down
Unknown addresses and malformed packets are dropped silently, because the network thread must not panic. A stray packet from something else on the LAN cannot knock your surface offline mid-set.
Not tied to one app
The contract
The bundled layout is the easy way in, and the addresses under it are plain OSC, so anything that speaks OSC can drive LiveSet.
TouchOSC
The bundled layout is a TouchOSC file. Open it, point it at your Mac, and the controls are already wired.
Open Stage Control
Build your own surface in the browser-based editor and speak the same address vocabulary.
Max and Pure Data
Patch your own control logic and send OSC straight in. The contract has no proprietary part.
Where it stands
Status, and a note on networks
Where the current server stops. There is no automatic discovery, so you type your Mac’s address into the tablet by hand. Addressing is set-wide today, with no per-deck or per-effect targeting yet, so a message reaches the master surface, and per-deck targeting has not been built yet. And there is no enforced authentication on the socket, so keep it to a trusted local network: not open Wi-Fi at the venue. Like much of the deeper controller depth, this OSC surface currently lives in LiveSet’s original interface. It works; treat it as the focused tablet path it is.