diff --git a/README.md b/README.md new file mode 100644 index 0000000..256fb61 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# 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.