15个版本
0.1.16 | 2023年4月25日 |
---|---|
0.1.15 | 2023年4月9日 |
0.1.11 | 2023年3月2日 |
0.1.9 | 2023年1月14日 |
0.1.7 | 2022年11月23日 |
#507 在 HTTP服务器
用于 music-player
4MB
24K SLoC
音乐播放器(用Rust编写)
注意:这是一个正在进行中的项目。 🏗️🚧
这是一个我自己使用的简单音乐播放器。它用Rust编写,并使用了rodio、symphonia和gRPC库。
音乐通过服务器的音频设备播放。守护程序存储所有可用音乐的信息,这些信息可以轻松搜索和检索。类似于mpd或Mopidy,但用Rust编写。
安装
从源代码编译,不使用Nix
# Install dependencies
brew install protobuf # macOS
sudo apt-get install -y libasound2-dev protobuf-compiler # Ubuntu/Debian
choco install protoc # Windows using Chocolatey Package Manager
# Compile
git clone https://github.com/tsirysndr/music-player.git
cd music-player/webui/musicplayer
nvm install # install node version specified in .nvmrc (optional on windows)
bun install && bun run build # build webui
cd ../..
cargo install --path .
使用Nix
git clone https://github.com/tsirysndr/music-player.git
cd music-player
nix develop --experimental-features "nix-command flakes"
cd webui/musicplayer
bun install && bun run build # build webui
cd ../..
cargo install --path .
macOS/Linux
使用Homebrew
brew install tsirysndr/tap/musicplayer
使用Nix
nix profile install --experimental-features "nix-command flakes" github:tsirysndr/music-player
或者下载您平台的最新版本 这里。
📦 下载
最新版本(桌面版)
Mac
: arm64: music-player-desktop_v0.2.0-alpha.12_aarch64-apple-darwin.tar.gz intel: Music_Player_v0.2.0-alpha.12_x64.dmgLinux
: music-player_v0.2.0-alpha.12_amd64.debWindows
: Music_Player_x64_en-US.msi
最新版本(命令行界面)
Mac
: arm64: music-player_v0.2.0-alpha.12_aarch64-apple-darwin.tar.gz intel: music-player_v0.2.0-alpha.12_x86_64-apple-darwin.tar.gzLinux
: music-player_v0.2.0-alpha.12_x86_64-unknown-linux-gnu.tar.gzWindows
: music-player_x86_64-pc-windows-gnu.tar.gz
启动服务器
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
open Open audio file
playlist Manage playlists
prev Play the previous song
queue Manage the queue
play 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
GraphQL API
# Start the server
music-player
在您的浏览器中打开 https://127.0.0.1:5053/graphiql。
功能
- 从指定路径播放音乐
- 支持配置文件
- gRPC API 用于控制播放器
- 扫描音乐库
- 播放/暂停/停止音乐
- 下一曲/上一曲
- 创建/删除播放列表
- 音乐播放器客户端
- 终端 UI (使用 tui-rs)
- GraphQL API
- Web UI
- 桌面版本 (使用 gtk-rs)
- Android 库 (见 songbird-android 和 songbird-android-rs)
- iOS 库
- 移动版本 (React Native)
- 流式传输到 Chromecast
- 流式传输到 Airplay
- 流式传输到 Kodi
- 流式传输到 UPnP 媒体渲染器
- 从 YouTube 流式传输 (仅音频)
- 从 Spotify 流式传输
- 从 Soundcloud 流式传输
- 从 Deezer 流式传输
- 从 DatPiff 流式传输
- 从 Tidal 流式传输
- 从 MyVazo 流式传输
✨ 星星历史
依赖项
~96–130MB
~2.5M SLoC