← projects

xlr

A CLI and Rust crates for controlling pro audio gear without the vendor apps. Dante, Focusrite, and PipeWire so far.

backends so far
3
on everything, for scripts and agents
--json
desksynthmac-mini
rx ↓ / tx →mic 1mic 2LRLR
monitors L
monitors R
phones L
phones R
recorder 1
recorder 2
click a square to change a subscription48 kHz · 6×6
stage
building
area
audio
stack
Rust
source
SaavyLab/xlr ↗

Every piece of my setup has its own app, and none of them are scriptable. xlr talks to the gear directly, so I (or an agent) can check on and change things from a terminal.

Right now xlr-dante can discover devices, list their channels, and read and change receiver subscriptions. xlr-focusrite reads the 18i20's switches over USB, and xlr-pipewire reads the Linux audio graph.

The grid above is a fake Dante network. Clicking a square subscribes a receiver channel to a transmitter channel, which is basically what xlr-dante does for real.