l00sed/termixer
A 2-deck mixer, sample pads, sequencer— all from any Unix terminal. - l00sed/termixer
4 stars · 0 forks · 0 watchers
README
termixer A terminal-based DJ mixer for live performance with TidalCycles. Built in Rust with ratatui, it provides real-time EQ, filtering, crossfading, and sample pads for mixing audio from MPV and SuperCollider.
Features
Dual-deck mixer with per-channel fader, pan, 3-band EQ, LPF/HPF DJ center with crossfader, cue mix, headphone/booth outputs Sample pads — 4x4 grid with sequencer Auto-discovery of MPV sockets, SuperCollider, PulseAudio, PipeWire, JACK sources SuperCollider integration — custom SynthDefs for mixer channel processing Vim navigation — hjkl throughout, 3-level mode system
Prerequisites
Rust Nerd Fonts — required for icons (rewind, fast-forward, etc.) MPV — media playback with IPC socket support SuperCollider (optional) — for TidalCycles integration
Installation From crates.io cargo install termixer From source git clone https://github.com/l00sed/termixer.git cd termixer cargo install --path . Build cargo build # debug cargo build --release # optimized with LTO Usage
Auto-discover audio sources
cargo runSpecify MPV sources explicitly
cargo run -- -s "Deck A" /tmp/mpv-a.sock -s "Deck B" /tmp/mpv-b.sockWith music and samples directories
cargo run -- -m ~/Music -S ~/Samples Starting MPV with IPC mpv --input-ipc-server=/tmp/mpv-music.sock music.mp3 CLI OptionsFlag Description
-s, --source NAME SOCKET Add an audio source (MPV IPC socket)
-m, --music-dir PATH Directory for audio file browser
-S, --samples-dir PATH Directory for sample pad files
-d, --discover Auto-discover audio sources (default)
-h, --help Show help
Keyboard Controls Navigation
Key Action
Tab / h / l Switch between panes (Deck A, DJ, Deck B, Master)
Enter Enter control select mode
Esc Go back one level
? Toggle help overlay
q Quit
Controls
Key Action
j / k Navigate controls up/down
h / l Adjust value / toggle EQ kill switch
J / K Coarse adjustment (0.2)
+ / - Fine adjustment (0.05)
m / s Toggle mute / solo
c Center pan or crossfader
0 Reset control to default
Source & Sample Pads
Key Action
A Open source picker for Deck A
B Open source picker for Deck B
P Toggle sample pads mode
License MIT
