Linux-first music player

LoFiBox Zero

面向 Cardputer Zero、Raspberry Pi、Linux 桌面、SSH 终端和远程媒体库的音乐播放器。 它把 WebUI、GUI、TUI、CLI 和未来 Agent 接口都建立在同一套 runtime 上。

LoFiBox GUI Now Playing 界面
320x170 GUI:Now Playing、频谱、歌词与播放状态。
LoFiBox TUI Dashboard 界面
终端原生 TUI:Dashboard、Lyrics、Spectrum、Queue。

Preview APT repository

先通过第三方源安装,后续进入 Debian 官方源

当前 GitHub Pages 同时承担两个职责:根目录是给人阅读的官方网站, /debian 是给 apt 使用的软件源目录。两者分离发布,避免安装入口被官网内容污染。

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://vicliu624.github.io/lofibox-apt/lofibox-archive-keyring.pgp \
  | sudo tee /etc/apt/keyrings/lofibox-archive-keyring.pgp >/dev/null

sudo tee /etc/apt/sources.list.d/lofibox.sources >/dev/null <<'EOF'
Types: deb
URIs: https://vicliu624.github.io/lofibox-apt/debian
Suites: trixie
Components: main
Architectures: amd64 arm64 armhf
Signed-By: /etc/apt/keyrings/lofibox-archive-keyring.pgp
EOF

sudo apt update
sudo apt install lofibox
这是预览源。 它用于 Debian 官方源收录前的用户安装与测试。版本可能带有 ~lofibox<run> 后缀;稳定发行流程进入 Debian 官方源后,这里会保留为预览通道。

New in 0.2.0

浏览器控制与内置 Remix 音效

0.2.0 预览包会发布新的 WebUI 界面和内置 Remix 插件。 WebUI 是浏览器里的 runtime 投影;Remix 提供实时 Radio、Tape、Vinyl 三种声音质感。

WebUI 远程控制

--webui 启动后,可以在浏览器里控制 Now Playing、Queue、Library、Sources、EQ、Settings 和 Diagnostics。 它使用 HTTP 与 WebSocket 实时更新,并带 polling fallback。

HTTP WebSocket 手机浏览器

Remix 音效

不重启播放即可在 OFF、Radio、Tape、Vinyl 之间切换。 GUI、TUI、WebUI 使用 R,CLI 可运行 lofibox remix

Radio Tape Vinyl

Open Source

源码仓库与开发入口

官网和 APT 源放在这个仓库里,但应用本体的事实源是 vicliu624/LoFiBox-Zero。 源码、issue、release、CI 状态和贡献记录都以应用源码仓库为准。

应用源码

C++ runtime、GUI、TUI、CLI、打包元数据、测试和产品规格。

问题反馈

反馈播放、元数据、歌词、远程库、TUI、CLI 和打包问题。

CI 状态

查看应用仓库的构建、测试、Debian packaging、lintian 和 autopkgtest 状态。

Interfaces

四种正式入口

WebUI 负责浏览器和手机远程控制,GUI 负责小屏和桌面窗口,TUI 负责终端原生控制台, CLI 负责一次性命令、脚本、systemd、测试和 Agent。它们共享 runtime。

WebUI

浏览器里的远程控制界面,覆盖播放、队列、媒体库、远程源、EQ、设置、诊断和 Remix 状态。

Browser WebSocket Remote control

GUI

适合 320x170 小屏、X11 桌面窗口和设备前面板。覆盖主菜单、媒体库、搜索、Now Playing、歌词和 EQ。

Framebuffer X11 低分辨率设备

TUI

终端里的 Now Playing + Lyrics + Spectrum + Queue + EQ 控制台。适合 SSH、服务器和开发者工作流。

ANSI Unicode / ASCII 无桌面环境

CLI

面向人和机器的命令面。默认人类可读,--json / --porcelain 适合脚本和 Agent。

稳定退出码 结构化输出 Agent-friendly

Core domains

播放器核心能力

LoFiBox是本地文件播放器。它把本地媒体库、远程源、元数据治理、歌词、封面、指纹、缓存和 EQ 都纳入同一套产品对象模型。

本地媒体库与搜索

支持媒体根目录扫描、索引状态、曲目/专辑/艺人/风格查询、统一搜索和播放队列。CLI 与 GUI 搜索使用同一套媒体项语义。

远程媒体源

远程源分成 source 配置层和 remote 浏览/解析层,覆盖 Jellyfin、Emby、 Navidrome/OpenSubsonic、Direct URL、Internet Radio、Playlist Manifest、HLS/DASH、SMB/NFS/WebDAV/FTP/SFTP、DLNA/UPnP。

元数据、歌词、封面、指纹

区分 lookup、diff、apply、cache、writeback 与 fingerprint index,避免把“自动补全”和“写回音乐文件”混成一个危险动作。

EQ / DSP

支持 10 段图形 EQ、preset、preamp、ReplayGain、loudness、limiter、balance、HPF/LPF, 以及插件化 Remix 的 Radio、Tape、Vinyl 声音质感。

Screens

界面预览

GUI、TUI 和 CLI 共享同一套 runtime,让桌面窗口、终端控制台和脚本输出保持一致的播放状态与媒体库语义。

LoFiBox WebUI Now Playing 页面
WebUI Now Playing:浏览器里的播放控制、实时状态和 Remix 状态。
LoFiBox WebUI 专辑和媒体库页面
WebUI Library:浏览专辑、加入队列,并保持同一套 runtime 状态。
LoFiBox GUI 搜索窗口
GUI 搜索:跨本地库和远程源的统一入口。
LoFiBox GUI 歌词界面
GUI 歌词:同步歌词与当前行高亮。
LoFiBox TUI 歌词界面
TUI Lyrics:终端中的歌词滚动投影。
LoFiBox CLI JSON 状态输出
CLI JSON:面向脚本、测试和 Agent 的状态输出。