musikcube:终端音乐播放器
用 C++ 编写的跨平台终端音乐播放器、音频引擎与流媒体服务器,适合喜欢命令行界面和自建音乐服务的用户。
- 浏览
- 4
- 访问
- 0
- 下载
- 0
- 版本
- v3.0.5
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
musikcube 是一个用 C++ 编写的跨平台、基于终端的音频引擎、音乐库、播放器与流媒体服务器。它可以在 Windows、macOS、Linux 上顺利编译和运行,也能在装有 Raspbian 的树莓派上良好运行,并可配置成流媒体音频服务器。
程序主界面运行在控制台(终端)中,同时也提供配套的 Android 客户端 musikdroid,用于串流播放和远程控制。
主要功能
- 终端界面音乐播放器:基于 ncurses / pdcurses 构建的控制台界面,并提供完整的默认键盘快捷键。
- 音频引擎与多后端输出:支持 ALSA、PulseAudio、PipeWire、CoreAudio、WASAPI、DirectSound、waveout 等输出方式。
- 音乐库与元数据索引:使用 sqlite 存储,借助 taglib 读取音频元数据。
- 多格式解码:依赖 ffmpeg,并集成 libopenmpt、libgme 等解码库。
- 内置流媒体服务器:默认开启,websocket 服务监听 7905 端口用于元数据获取,HTTP 服务监听 7906 端口,用于向客户端提供(可选转码的)音频数据。
- 远程 API:可据此编写自己的前端,官方提供 API 文档。
- SDK:一组小型纯虚 C++ 类及若干枚举和常量,供扩展开发使用。
安装与使用
各平台的二进制安装包可在 releases 页面获取。
macOS 也可以通过 Homebrew 安装:
brew install musikcube
Windows 可以通过 Chocolatey 安装:
choco install musikcube
在 FreeBSD 上:
pkg install musikcube
在 OpenBSD 上:
pkg_add install musikcube
在 Windows 上安装后,可以通过 shell、Win+R 对话框,或在开始菜单中输入 musikcube 或 mcube 来运行。
更多资料:
- 安装指南:https://github.com/clangen/musikcube/wiki/installing
- 用户指南(介绍导航方式与全部默认快捷键):https://github.com/clangen/musikcube/wiki/user-guide
- 从源码构建:https://github.com/clangen/musikcube/wiki/building
- 树莓派配置:https://github.com/clangen/musikcube/wiki/raspberry-pi
- Android 客户端
musikdroid可在 releases 页面下载。
界面示例(Windows):

注意事项
内置的流媒体服务器和远程 API 默认不适合在本地网络之外使用:websocket 服务只支持简单的密码挑战,音频 HTTP 服务器只做 Basic 授权,不提供 SSL/TLS,且密码会以明文形式保存在本机设置文件中。
可以通过反向代理做 SSL 终止来改善安全性,详见 wiki 的 ssl-server-setup 章节;即便如此,把服务暴露到公网仍需谨慎。
项目采用 BSD-3-Clause 许可证。
本作品整理自 GitHub 开源项目 clangen/musikcube,原作者 @clangen,许可证 BSD-3-Clause。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v3.0.5当前版本
新增对 ffmpeg 8.x 的支持(向下兼容 6.x、7.x),并更新 ffmpeg、openssl、libcurl、libmicrohttpd、taglib、asio 等依赖,同时改进构建脚本与文档。
评论