这个项目能做什么
Mousiki 是一款终端(TUI)音乐播放器,专为偏好键盘操作和极简界面的用户设计。它注重速度和轻量运行,强调可定制性,并让工作流程完全在终端内完成。
**主要特性:**
- **本地音乐播放:** 轻松浏览并播放本地音乐库中的文件。
- **在线搜索与流媒体:** 借助 yt-dlp,直接从在线来源搜索和播放曲目。
- **同步歌词:** 通过 Python 脚本从 Better Lyrics(主)和 LRCLIB(备选)获取,实现逐词实时高亮显示。
- **可视化:** 实时 FFT 频谱(使用 kissfft)、波形渲染和旋转唱片动画,流畅度可配置。
- **队列管理:** 高效的排队、随机播放、重复播放和基于文件夹的筛选。
- **高度可配置:** 通过位于 `$HOME/.config/mousiki/config.txt` 的文本配置文件,调整颜色、可视化行为、动画和快捷键。
**支持平台:**
- 原生支持 Linux、macOS 和 Android(通过 Termux)。
- Windows 支持未经作者验证,但可能可用;欢迎贡献代码。
**快速开始:**
- 克隆仓库并运行 `bash setup.sh`(适用于带 Homebrew 的 macOS、基于 Debian 的 Linux 或 Termux),以安装依赖、生成默认配置并构建应用。
- 手动构建需要 `cmake`、C++17 编译器、`ffmpeg`、`yt-dlp` 和 Python 的 `requests` 包。
- 构建后,运行 `./build/mousiki`。
**默认快捷键(可配置):**
- 搜索:`/`(本地),`/s: <查询>`(在线流媒体)
- 下载当前流:`y`
- 播放/暂停:`p` 或 `ENTER`
- 下一首/上一首:`n` / `b`
- 快进/快退:`ARROW_LEFT` / `ARROW_RIGHT`
- 音量:`1` / `2`
- 随机播放/重复:`m` / `r`
- 导航:`ARROW_UP` / `ARROW_DOWN`
- 切换标签页:`TAB`
- 添加/移除队列:`a` / `d`
- 文件夹筛选:`f`
- 清除筛选:`c`
- 退出:`q`
**配置:**
配置文件会自动生成。您可以通过添加多个 `LocalMusicPath` 条目来添加自定义音乐路径。所有快捷键和视觉设置均可在此编辑。
**依赖与致谢:**
Mousiki 使用 miniaudio(音频播放)、kissfft(可视化 FFT)、yt-dlp(在线流媒体)、FFmpeg(多媒体处理)和 Python 的 `requests`(歌词)。它基于 Apache License 2.0 发布。
评论
0 评分人数达到10人后显示
登录后参与讨论。