Backline is the rig/session controller for local music performance, recording, and streaming setups.
It coordinates existing tools instead of replacing them:
Polyrhythm -> drum/MIDI runtime authority
Ardour -> DAW, recording, monitoring, mix
OBS -> video composition and recording/streaming frontend
PipeWire -> graph and application-stream substrate
Deckmaster -> current Stream Deck hardware adapter
Backline -> action/state/event UI and bounded session orchestration
This repository was extracted from the working nex-jamkit prototype. Jamkit is
now the generalist Linux musician toolkit/profile; Backline owns rig-specific
session control.
The initial minimal session manifest is:
sessions/gaming-stream.toml
It records the current gaming/streaming rig assets, audio sinks, Ardour tracks,
DRS capture route endpoints, canonical action registry, and status/monitor
endpoints. See sessions/README.md for scope rules.
Use the canonical Backline CLI for operator-facing commands:
bin/backline --help
bin/backline status --json
bin/backline paths --json
bin/backline session validate
bin/backline action list
bin/backline action run check
bin/backline launch ardour
bin/backline launch obs
bin/backline audio normal
bin/backline ardour ready split
bin/backline obs route-mix
bin/backline monitorbin/backline is the stable local launcher. It runs target/debug/backline when
available and falls back to Cargo/Nix for local development.
The imported bin/jamkit-* scripts remain private compatibility helpers while
their behavior is absorbed into Backline modules. New operator docs and hardware
layouts should call backline, not the helpers directly.
bin/backline monitorOpen:
The current CLI preserves the existing event/action/state/log pipeline:
bin/backline action run <action>routes through the compatibility dispatcher so Deckmaster and other controllers continue to record action events consistently.
See docs/D13.md, docs/D15.md, and docs/cli-implementation-plan.md for the
extraction and CLI migration plans.