subtails/README.md

31 lines
1.6 KiB
Markdown
Raw Normal View History

2024-12-10 12:26:04 +05:00
# subtails
A janky subsonic terminal client.
This largely just exists because I wanted to play around with a TUI and try to mess with pipewire. This has been tested with [gonic](https://github.com/sentriz/gonic), and only works with 48kHz and 2 audio channel music files.
All it does is endlessly play random music from a given subsonic server like a radio. There is no seeking and no playlist functionality, just a play/pause toggle. ffmpeg is used to decode audio samples, since symphonia does not currently support the opus codec, which is 90% of what I need.
If for some absurd reason you want to actually use this (don't), ffmpeg must be accesible from `$PATH`, and a minimal config file is required, either in the working directory, or in `~/.config/subtails/`. Said file must be named `subtails.toml`. UNIX is required (if pipewire wasn't clear enough).
## Config
Configuration is done via a TOML file. Only for configuring the subsonic server info and player controls. The subsonic password can optionally be passed through an environment variable `SUBSONIC_PASSWORD`.
```toml
[subsonic]
server_address = "https://sub.so.nic" # absolute https address
username = "admin" # your subsonic username
password = "admin" # subsonic password, can be passed in via Env var
[controls]
# Values are defaults if left unspecified.
quit = 'q' # Quit
play_state_toggle = ' ' # Play/Pause
next = 'n' # Skip current song
```
## Don't use this
I cannot stress enough how janky this is. Just don't use this.