项目:jellyfin/jellyfin | 星数:58790 | 语言:C# | 协议:GPL-2.0 | GitHub仓库
更新日期:2026-10-30 · 作者:CodeArts 编辑部
我的 NAS 里存了大约两万集电视剧和几百部电影。最早是用文件夹加文件名自己看,后来家人问"这剧第三季在哪"的时候我就知道该上媒体服务器了。试过 Plex 和 Emby,前者免费版功能受限、后者早期版本转码策略收费,最后落在 Jellyfin 上:58790 星、GPL-2.0、完全免费无任何付费解锁。
它的核心价值有三块:自动刮削元数据(海报、简介、演员)、跨设备播放(手机、电视、浏览器)、以及硬件加速转码。家用 NAS 场景里,这套组合是最完整的开源方案。
| 能做 | 不能做 / 需要另装 |
|---|---|
| 自动识别剧集并刮削海报简介 | 不提供内容源(片源自己准备) |
| 多用户、独立观看进度 | 无内置远程访问隧道(需反向代理或用 Tailscale) |
| 硬件解码转码(VAAPI/QSV/NVENC) | 转码配置需自己踩坑,CPU 转码很吃力 |
| 与电视端、手机端 App 联动 | 初期媒体库整理全靠文件名规范 |
第四条特别重要。Jellyfin 不猜、只按规则解析:剧集建议用 剧名/Season 01/剧名 S01E01 副标题.mkv,电影建议 片名 (年份)/片名 (年份).mkv。我第一周没规范命名,结果一半内容识别成"未知"。
docker run -d \ --name jellyfin \ --restart=always \ -p 8096:8096 \ -p 8920:8920 \ -v /path/to/config:/config \ -v /path/to/cache:/cache \ -v /path/to/media:/media \ jellyfin/jellyfin
启动后访问 http://服务器IP:8096 进入引导,依次设置语言、用户名密码、添加媒体库。接口文档在 /api-docs/swagger/index.html,做自动化脚本时很有用。
注意挂载顺序:/config 是配置与数据库,/cache 放缩略图,/media 是你的片库。三个路径分开,否则 Docker 重启时缓存会撑爆配置卷,我就因此踩过一次权限问题。
转码是指把 4K HDR 转成手机能播的 1080p。如果用 CPU 软转,一颗 i5 同时转两路就能吃满;如果用核显硬转,能同时转十路以上且 CPU 几乎不动。
| 加速方案 | 硬件 | 备注 |
|---|---|---|
| Intel Quick Sync (QSV) | Intel 核显 | 家庭最常用,转码质量与功耗平衡好 |
| VAAPI | AMD / Intel / Rockchip | Linux 下通用,需要映射 /dev/dri |
| NVIDIA NVENC | NVIDIA 显卡 | 需要安装容器工具包并映射显卡 |
| CPU 软转 | 任何 CPU | 兜底方案,功耗高、并发低 |
Intel 核显的做法是加两个参数:--device /dev/dri:/dev/dri 与把用户加进 video 组,然后在后台「播放 → 转码」中选择 QSV。如果启用后播放直接黑屏,先看日志里是否有 no able to get device,多半是权限或驱动没装。
我个人推荐第二种。反向代理暴露播放服务后,带宽压力和安全压力都不小,尤其家里上行只有百兆时,远程看 4K 会非常痛苦。
| 维度 | Jellyfin | Plex | Emby |
|---|---|---|---|
| 授权 | 完全免费开源 | 免费版受限,需订阅 | 部分功能需订阅 |
| 客户端覆盖 | 主流平台齐全 | 最全,电视端体验好 | 较全 |
| 元数据刮削 | 需要外部服务,国内偶有不稳 | 开箱最好 | 较好 |
| 隐私 | 数据全在自己服务器 | 需要连接其账号服务 | 居中 |
如果家里老人只会打开电视 App 点播放,Plex 的电视端确实更省心;但如果在乎数据自主和零订阅费,Jellyfin 是唯一彻底的选择。
不直接支持 ISO 镜像播放,需要先抽取成 MKV/MP4 单文件。如果是 BDMV 目录结构,可用 MakeMKV 转成 MKV,保留音轨与字幕后再入库。
九成是转码问题。检查「播放」页面的转码原因(是带宽限制、格式不支持还是字幕烧录),若在用 CPU 软转,配置硬件加速;若已用硬转,检查是否映射了 /dev/dri 并有访问权限。
可以。在媒体库设置里开启「实时监控」即可,新文件放入目录后自动扫描。NAS 上如果文件通过 SMB 写入,实时监控可能漏检,配合定时扫描每 6 小时一次更稳。