Interlude · OSC
Set up a mixing desk over OSC
Interlude's Air Agent speaks Open Sound Control. A desk can start a player when its fader opens, a button panel can fire carts, and a lamp or a screen can follow what is on air. This article sets it up and lists every address.
Turning it on
- On the on-air machine, open Settings → OSC. OSC is off until you turn it on.
- Tick Listen for incoming OSC and set the Listen address, for example
0.0.0.0:9000to hear the studio network, or127.0.0.1:9000for software on the same computer. - Under Destinations, add the host and port of each device that should follow the station (lamps, tallies, Companion), and tick what it gets: items, playhead, cartwall, Autoplay, preview.
- Click Apply OSC Settings. The pane then shows what the Air Agent really bound, or why it could not (a port that is taken, for instance).
OSC has no passwords. Anyone who can reach the listen address can start and stop players. Listen on the studio network only, never on an address the internet or a guest network can reach.
The settings live in the Air Agent, not in the console: OSC keeps working when the console is closed and after the agent restarts.
Testing the connection
Settings → OSC → Reference and Testing lists every address below. Each row lights green when that address arrives, so one press on the desk proves the cable, the network, the port and the address at once. Show Log lists the last 200 messages with their sender and what each became, including no matching address for an address Interlude does not know and blocked for one it refused.
To check that the agent is there at all, send /cadence/ping: it answers /cadence/pong to the sender, with the same arguments.
Fader start
Desks do not send a start command; they send one address with a value that changes as the fader moves. Point it at /cadence/deck/a/fader or /cadence/deck/b/fader: a value other than zero starts the record in that player from its start point, zero stops it. Only the change counts, so a desk that keeps repeating the open value does not restart anything.
Most desks have a fixed address of their own. Under Address Aliases, put what the desk sends on the left and the Interlude address it means on the right, for example /desk/fader/1 to /cadence/deck/a/fader. The arguments pass through unchanged.
Players obey OSC in Live Assist only. While Autoplay runs the show, deck addresses are refused, just as the deck buttons in the console are, and the log says blocked: Autoplay is on. Carts and Iris always respond.
Addresses Interlude listens to
Every address starts with /cadence, even though the product is now called Interlude. OSC patterns work: /cadence/deck/*/stop stops both players.
| Address | Arguments | What it does |
|---|---|---|
/cadence/playlist/autoplay | 1/0, T/F | Autoplay on or off |
/cadence/playlist/next | none, or a fade in ms | Go to the next item in the playlist |
/cadence/deck/{a,b}/start | – | Start the record loaded in player A or B |
/cadence/deck/{a,b}/stop | – | Stop the record in that player |
/cadence/deck/{a,b}/toggle | – | Pause it if it is playing, otherwise start it |
/cadence/deck/{a,b}/fader | a number, or T/F | Fader start: not zero starts, zero stops |
/cadence/cart/{bank}/{pad}/play | – | Play that cartwall pad |
/cadence/cart/{bank}/{pad}/stop | – | Stop that pad |
/cadence/cart/{bank}/{pad}/toggle | – | Stop it if it is playing, otherwise play it |
/cadence/iris/{1-4}/play | – | Play what Iris player 1 to 4 holds |
/cadence/iris/{1-4}/stop | – | Stop that Iris player (pause does the same) |
/cadence/iris/{1-4}/toggle | – | Stop it if it is playing, otherwise play it |
/cadence/ping | anything | Answers /cadence/pong to the sender |
- Banks and pads are counted from 0: the first pad of the first bank is
/cadence/cart/0/0/play. - A cart pad plays over OSC once the Air Agent knows its audio: after it has been assigned or played from the console.
- An Iris player answers OSC once something has played in it since the Air Agent started.
- There is no press or fire: a button panel sends play and stop, or toggle on a single button.
What Interlude sends
To every destination, for the channels ticked for it. Text is UTF-8, times are seconds, and on/off is 1 or 0 so that every receiver understands it.
| Channel | Address | Arguments |
|---|---|---|
| Items | /cadence/item/started | uid, title, bus, next_s, end_s |
| Items | /cadence/item/ended | uid, reason, aired_s |
| Items | /cadence/item/failed | uid, title |
| Playhead | /cadence/playhead/{voice} | uid, position_s, remaining_s; up to 10 times a second |
| Autoplay | /cadence/mode/autoplay | 1 on, 0 off |
| Cartwall | /cadence/cart/{bank}/{pad}/state | 1 started, 0 ended |
| Preview | /cadence/preview/state | 1 started, 0 ended |
An on-air lamp or a tally follows /cadence/item/started and /cadence/item/ended. Because these report what really happened, the lamp is right whichever surface started the record: the desk, the console or Autoplay.
Stream Deck and Bitfocus Companion
In Companion, add a Generic OSC connection with the on-air machine's address and the listen port, and give each button an OSC action with one of the addresses above, for example /cadence/cart/0/3/toggle. To light buttons from the station, add Companion as a destination in Interlude with the port Companion listens on.
Still not working?
Open Show Log in Reference and Testing while you press the button. If nothing arrives, the desk is not reaching the listen address (check the IP, the port and any firewall). If it arrives as no matching address, the address is different from the one in the table: a capital letter is enough. Send us a debug log if you are stuck; see Support.