█████╗ ██╗ ██╗██████╗ ██╗██╗ ██╗███╗ ███╗
██╔══██╗██║ ██║██╔══██╗██║██║ ██║████╗ ████║
███████║██║ ██║██║ ██║██║██║ ██║██╔████╔██║
██╔══██║██║ ██║██║ ██║██║██║ ██║██║╚██╔╝██║
██║ ██║╚██████╔╝██████╔╝██║╚██████╔╝██║ ╚═╝ ██║
╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
A terminal music player.
Website · Installation · Keybindings · Building
audium — terminal music player [?] help [f] file picker [c] playlist [q] quit
┌─────────────────────────┬──────────────────────────────────────────────────────┐
│ Playlists │ All Tracks │
│ │ # Title │
│ > All Tracks (4) │ 1 04 - Neon Arpeggio │
│ Late Night (2) │ 2 Drift │
│ Focus (2) │ > 3 Weightless (feat. Macarena) │
│ │ 4 The River Calls │
│ │ │
│ ├──────────────────────────────────────────────────────┤
│ │ Queue │
│ │ 1 04 - Neon Arpeggio │
│ │ 2 Drift │
│ │ > 3 Weightless (feat. Macarena) │
└─────────────────────────┴──────────────────────────────────────────────────────┘
⏸ Weightless (feat. Macarena)
████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 2:14 / 5:02
Features
- Keyboard-driven — every action is one key. Mouse optional.
- Playlists — create, rename, delete. All Tracks is always there.
- Built-in file picker — import audio files without leaving the app.
- Threaded audio — playback on its own thread; UI interaction never stutters playback.
- Persistent library — stored at
~/.audium/library.json. Plain JSON, easy to back up. - Format agnostic — MP3, FLAC, OGG, WAV, AAC, M4A, Opus, AIFF and more via Symphonia. No FFmpeg required.
- Tiny binary —
~3 MBstripped release build, no runtime dependencies on macOS.
Installation
Cargo
On Linux, Requires ALSA development headers to build and ALSA to run. (see how to install below on this README)
Requires Rust 1.85+ (MSRV). Installs the audium binary to ~/.cargo/bin/.
AUR (Arch Linux)
# or: yay -S audium
Usage
# Launch with your library
# Open a specific file immediately (imports it to your library)
audium stores your library at ~/.audium/library.json and your music at ~/.audium/music/.
Keybindings
Global
| Key | Action |
|---|---|
q |
Quit |
Tab |
Cycle panel focus |
? |
Toggle help overlay |
Playback
| Key | Action |
|---|---|
Space |
Play / Pause |
n |
Next track |
N |
Previous track |
← / → |
Seek backward / forward |
+ / = |
Volume up |
- |
Volume down |
Navigation
| Key | Action |
|---|---|
j / ↓ |
Move cursor down |
k / ↑ |
Move cursor up |
Enter |
Play selected track |
Library & Queue
| Key | Action |
|---|---|
f |
Open file picker |
a |
Add selected track to queue |
p |
Add selected track to a playlist |
c |
Create new playlist |
z |
Shuffle playlist into queue |
d |
Remove selected item |
r |
Rename selected track or playlist |
x |
Remove selected item from queue |
s |
Open settings |
Building from source
# binary is at ./target/release/audium
Linux requires ALSA and its development headers:
# Debian / Ubuntu
# Arch
# Fedora
macOS has no extra dependencies.
Windows: audium compiles on Windows (no additional dependencies) but is not an officially supported platform and has not been tested.
Library layout
~/.audium/
├── library.json # track registry + playlists
└── music/ # copies of all imported audio files
library.json is human-readable. You can edit it directly if needed, though audium will re-validate it on next launch.
Contributing
Issues and pull requests are welcome. Please open an issue before starting work on a large change.
License
Apache-2.0 © takashialpha