Note: This is a work in progress.
This is a simple music player that I made for my own use. It is written in Rust and uses rodio, symphonia, and gRPC libraries.
# Install dependencies
brew install protobuf # macOS
sudo apt-get install -y libasound2-dev protobuf-compiler # Ubuntu/Debian
# Compile
git clone https://github.com/tsirysndr/music-player.git
cd music-player
cargo install --path .
Note: Don't forget to add ~/.cargo/bin
to your PATH
environment variable.
brew install tsirysndr/tap/musicplayer
Or download the latest release for your platform here.
music-player
USAGE:
music-player [SUBCOMMAND]
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
albums List all albums
artists List all artists
help Print this message or the help of the given subcommand(s)
next Play the next song
pause Pause the current song
play Play a song
playlist Manage playlists
prev Play the previous song
queue Manage the queue
resume Resume the current song
scan Scan music library: $HOME/Music
search Search for a song, album, artist or playlist
stop Stop the current song
tracks List all tracks
- Play music from specified path
- Configuration file support
- gRPC API for controlling the player
- Scan music library
- Play/Pause/Stop music
- Next/Previous track
- Create/Delete playlists
- Music Player client
- Terminal UI (using tui-rs)
- Web UI
- Desktop version (using gtk-rs)
- Mobile version
- Stream to Chromecast
- Stream to Airplay
- Stream to Kodi
- Stream from Youtube (audio only)
- Stream from Spotify
- Stream from Soundcloud
- Stream from Deezer
- Stream from DatPiff
- Stream from MyVazo