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
| desk | synth | mac-mini | |||||
|---|---|---|---|---|---|---|---|
| rx ↓ / tx → | mic 1 | mic 2 | L | R | L | R | |
| monitors L | |||||||
| monitors R | |||||||
| phones L | |||||||
| phones R | |||||||
| recorder 1 | |||||||
| recorder 2 | |||||||
- 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.