Jellium Desktop:非官方 Jellyfin 桌面客户端
速览
Jellium Desktop 基于 Rust 编写,采用原生跨平台框架,提供流畅的媒体浏览和播放体验。支持 Windows、macOS 和 Linux,集成 Jellyfin 的媒体库、播放器及用户管理功能。适用于希望在本地获得更稳定、响应更快的 Jellyfin 访问体验的用户。
AI 深度解读
这是什么
jellium-desktop 是一个非官方的 Jellyfin 桌面客户端,由 Rust 语言编写,当前在 GitHub 上拥有 1208 颗星。它底层依赖 CEF(Chromium Embedded Framework)渲染 UI,用 mpv 处理媒体播放,因此兼具 Web 前端的灵活性与 mpv 的高性能解码能力。项目提供 AppImage、Flatpak(非 Flathub 包)、Arch Linux AUR 以及 macOS DMG 等多种分发格式,支持 Linux 和 macOS 平台。
解决的问题
Jellyfin 官方提供的桌面客户端方案(如 Jellyfin Media Player 或 Web 浏览器)在部分场景下存在痛点:
- 官方 Jellyfin Media Player 基于 Qt 和 mpv,但 UI 更新滞后,缺少现代 Web 界面(如 Vue/React)的交互体验,定制化能力有限。
- 浏览器播放 虽然方便,但受限于浏览器沙箱,无法充分利用本地硬件解码、字幕渲染、音频直通等高级 mpv 特性,且多标签页会消耗额外内存。
- 跨平台一致性 不足:官方客户端在 Linux 和 macOS 上的打包方式(如 Snap、Flatpak 官方包)可能不够灵活,或缺少对 AUR 等社区渠道的支持。
jellium-desktop 将 CEF 的 Web 渲染能力与 mpv 的本地播放引擎解耦,既保留了 Jellyfin Web 界面的完整功能与更新速度,又能通过 mpv 获得更优的播放控制、视频滤镜、色域映射等专业级特性,同时用 Rust 保证了内存安全和启动性能。
核心功能
- 完整 Jellyfin 界面:基于 CEF 加载 Jellyfin Web 前端,支持所有媒体库浏览、搜索、用户管理、播放列表等 Web 端功能。
- mpv 内核播放:视频、音频、字幕播放均由 mpv 处理,支持硬件解码(VAAPI、VDPAU、DXVA2 等)、HDR 动态元数据映射、音频直通(DTS-HD、TrueHD)、ass/ssa 字幕样式等。
- 跨平台打包:
- Linux:AppImage(便携)、Flatpak(非 Flathub 自建包)、AUR(
jellium-desktop-git) - macOS:DMG 镜像,安装后需执行
sudo xattr -cr解除隔离
- Linux:AppImage(便携)、Flatpak(非 Flathub 自建包)、AUR(
- 命令行工具链:使用
just作为命令运行器,提供build、run、test、lint、appimage、flatpak、dmg等 Recipe,便于开发者快速编译、测试和打包。 - 依赖管理:内置
outdated命令列出过期依赖,clean清理构建产物,保持项目整洁。
亮点 / 与同类相比
| 对比维度 | jellium-desktop | 官方 Jellyfin Media Player | 浏览器方案 |
|---------|-------------------|---------------------------|-----------|
| UI 渲染 | CEF(Chromium)——支持最新 Web 技术 | Qt(Widgets)——界面更新慢,样式受限 | 原生浏览器——完全依赖 Web |
| 播放能力 | mpv 独立进程——完整解码/滤镜链 | 内置 mpv——但受 Qt 集成限制 | 浏览器 MSE/EME——特性有限 |
| 语言/构建 | Rust——内存安全、启动快、编译产物小 | C++/Qt——构建复杂,依赖重 | 无 |
| 打包灵活性 | AppImage、AUR、Flatpak、DMG | 官方 Snap、Flatpak(Flathub)、Windows 安装包 | 无特殊打包 |
| 社区活跃度 | 1208★,持续更新 | 官方维护,但新功能滞后 | 依赖于 Jellyfin Web 更新 |
核心优势:将最先进的 Web 界面(Jellyfin Web 本身迭代极快)与 mpv 的本地播放能力无缝结合,避免了 Electron 的高内存占用(CEF 相较 Electron 更轻量),同时利用 Rust 保证了低资源消耗和高安全性。
适合谁用 / 上手
适合用户:
- 已经使用 Jellyfin 搭建家庭媒体服务器,希望获得比浏览器更好的播放体验(硬件解码、字幕、音频直通)的用户。
- 对官方 Jellyfin Media Player 的 UI 或打包方式不满意,追求更现代、更灵活的客户端。
- Linux 爱好者,偏爱 AUR 或 AppImage 等原生分发方式,希望避免 Snap 或 Flathub 的沙箱限制。
- 开发者:想基于 Rust + CEF + mpv 构建自己的媒体客户端,或为 Jellyfin 生态贡献非官方客户端。
快速上手:
- 安装(以 macOS 为例):
- 下载 DMG,拖入 Applications,运行
sudo xattr -cr /Applications/Jellium\ Desktop.app - Linux 用户:通过 AUR 安装
jellium-desktop-git,或下载 AppImage 并赋予执行权限
- 下载 DMG,拖入 Applications,运行
- 配置:首次启动输入 Jellyfin 服务器地址、用户名和密码,或通过 Quick Connect 扫码登录。
- 使用:界面与 Jellyfin Web 完全一致,但播放器由 mpv 接管,可右键视频区域查看 mpv 控制菜单(如音轨、字幕、缩放、滤镜等)。
- 构建/开发(可选):
- 安装 Rust 和
just - 克隆仓库,执行
just build编译,just run启动 - 打包:
just appimage(Linux)或just dmg(macOS)
- 安装 Rust 和
