跳到正文
发现
rockboxd:Rockbox 音频守护进程
命令行工具游戏娱乐

rockboxd:Rockbox 音频守护进程

把 Rockbox 音频引擎做成网络音乐播放守护进程,提供多种 API、多房间输出与 Web 界面。

admin
发布于 2026-10-31
浏览
2
访问
0
下载
0
版本
v2026.10.30
平台
macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

Rockbox Daemon(rockboxd)是基于 Rockbox 开源音频播放器技术构建的现代化、支持网络的音乐播放平台,用 Rust 与 Zig 扩展。它以单个二进制(rockboxd)把完整的 Rockbox 音频引擎——无缝播放、DSP、20 多种解码器、标签数据库——通过 gRPC、GraphQL、HTTP、MPD 等 API 对外暴露,并支持 AirPlay、Snapcast、Squeezelite 的多房间输出。它运行在 Linux 和 macOS 上,是一个后台守护进程。

主要功能

  • 音频输出:内置 CPAL、HLS + MPEG-DASH(CMAF)、AirPlay(RAOP)单房间/多房间、Snapcast(FIFO 管道与 TCP + mDNS 自动发现)、Squeezelite、Chromecast、UPnP/DLNA
  • 无缝播放与交叉淡入淡出,支持 MP3、OGG、FLAC、WAV、AAC、Opus 等 20 多种编码
  • 丰富 API:gRPC、GraphQL、HTTP REST、MPD 服务端(兼容各类 MPD 客户端)、MPRIS(桌面媒体键与任务栏集成)、Subsonic/Navidrome API、Jellyfin 兼容 API、S3 兼容 API(可从 awscli、mc、rclone 上传/删除音频并自动同步音乐库)
  • 由 Typesense 提供快速搜索,可按文件夹或标签数据库浏览
  • 客户端:Web(React)、桌面(原生 macOS / GPUI / GTK4)、移动(React Native)、终端(TUI)和 Rockbox REPL
  • 提供 Android 库与 WebAssembly 目标

安装与使用

最快的上手方式是 Docker,无需配置文件和外部客户端,默认输出为 CMAF(HLS + DASH),可直接在浏览器播放:

docker run -v $HOME/Music:/root/Music -p 6062:6062 -p 7882:7882 tsiry/rockbox

打开 http://localhost:6062 的 Web UI,页面会自动连接 7882 端口上的 HLS 流。也可以在终端用任意支持 HLS 的播放器直接收听:

ffplay http://localhost:7882/hls/master.m3u8

手动安装后,创建 ~/.config/rockbox.org/settings.toml,music_dir 必填,audio_output 省略时默认为 builtin(CPAL,走系统默认设备):

music_dir    = "/path/to/your/Music"
audio_output = "builtin"

然后启动 rockbox,打开 Web UI,或把任意 MPD 客户端连到 localhost:6600。

常用默认端口:gRPC 6061、GraphQL + Web UI 6062、HTTP REST 6063、MPD 6600、Subsonic/Navidrome 4533、S3 兼容 API 9000、CMAF 7882。

注意事项

  • 不要把本项目刷入 DAP(数字音频播放器):它不是 Rockbox 固件,而是运行在电脑上的后台守护进程,刷到便携播放器上无法工作,也不受支持。
  • 使用 Snapcast 时注意启动顺序:TCP 方式先启动 snapserver,FIFO 方式先启动 rockboxd。
  • 许可证为 GPL-2.0。

本作品整理自 GitHub 开源项目 tsirysndr/rockboxd,原作者 @tsirysndr,许可证 GPL-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v2026.10.30当前版本

    升级 rockbox-dsp 0.5.0 与 rockbox-playback 0.9.0;EQ 设置新增上游滤波器类型字段,修复 Rust/Zig EQ 绑定与 Rockbox C 布局不一致导致的取值错误,并为正增益预留余量避免削波。

评论