前言
本篇介绍一下如何安装和设置jellyfin(若有错误,望各位大佬多多指正)
什么是jellyfin?
Jellyfin是一个自由软件媒体系统,可让您控制媒体的管理和流媒体。它是专有的Emby和Plex的替代品,可通过多个应用程序从专用服务器向终端用户设备提供媒体。Jellyfin是Emby 3.5.2版本的后代,移植到.NET Core框架以支持完整的跨平台支持。没有任何附加条件,只是一个团队想要更好地构建更好的东西并共同努力实现它,致力于让所有用户都能访问最好的媒体系统。
为什么不选择其他媒体服务器?(如Plex,Emby)
软件 | 硬解转码 | 浏览器HEVC直接串流 | HDR色调映射 | IPTV | 源代码 |
---|---|---|---|---|---|
Plex | 付费 | 无 | 付费 | 无 | 闭源 |
Emby | 有 | 有 | 有 | 付费 | 闭源 |
Jellyfin | 有 | 有 | 有 | 有 | 开源 |
jellyfin各类安装方法,及利与弊分析
安装方法 | 开发者(更新负责者) | 版本更新情况 | 硬解驱动支持 | 字体支持 |
---|---|---|---|---|
jellyfin套件版 | 由synocommunity社区负责 | 一般会落后官方版本一个小版本 | 支持性玄学且性能低下(VAAPI兼容较差,有时可用,有时又报错;不支持QSV) | 会出现字幕字体框框问题,需要手动上传woff2字体 |
jellyfin/jellyfin(docker版) | 由jellyfin官方负责(github地址) | 官方负责的docker版本 | 因开源协议不兼容等问题,官方源不带Intel Linux 核显驱动(详情可看NNyanMisaka大佬这篇文章) | 会出现字幕字体框框问题,需要手动上传woff2字体 |
linuxserver/jellyfin (docker版) | 由第三方linuxserver团队负责(github地址) | 与官方docker版本基本同步 | 相比官方源基础库支持更加完善(但QSV等驱动仍需手动加装) | 会出现字幕字体框框问题,需要手动上传woff2字体 |
nyanmisaka/jellyfin(docker版)-(又名中国特供版镜像) | 由jellyfin制作组硬件加速开发者的NyanMisaka大佬(国人)负责 | 不定期更新,但写稿时已落后3个小版本(PS:2022/9/21,nyanmisaka/jellyfin已更新到与官方同版本号了) | 驱动支持最全面,到手即用 | 开发者已在镜像中添加了相关字体和补丁 |
jellyfin目前几个版本功能差别不大,但是硬解问题解决起来每台机子情况都不一样,为方便适用更多机型,因此本次教程我们使用驱动最全的NyanMisaka大佬的docker镜像nyanmisaka/jellyfin进行搭建.
为什么推荐尽量选择QSV硬解呢?
网上不少文章教程是使用的VAAPI进行硬解,但是因为QSV是intel针对自己平台专属的硬件加速技术,经过我的实测,利用QSV会比VAAPI硬解转码效率更高,强烈推荐使用QSV.
安装搭建步骤
1.下载镜像
在docker的注册表中搜索nyanmisaka/jellyfin
下载latest分支

2.创建容器
- 勾选
高权限执行容器
,以便docker容器直接可以调用核显进行硬件解码 - 这里不建议开启资源管理,群晖的docker资源占用监控可能有问题,经常出现监控出来的占用远远超过实际占用的情况

- 高级设置勾选自动重新启动

- 存储空间:设置如下,
/comfig
为映射的配置存储路径,/cach
e为映射的缓存路径,/media
为映射的影片库路径,按需自行设置(请确保该路径下的文件夹给了sc-jellyfin
,sc-ffmpeg
,SYSTEM
用户的读写权限)

- 网络:勾选host网络,直接使用当前设备IP和端口,以确保DLNA服务正常

其他无需修改,创建启动好容器后,通过浏览器输入http://群晖的ip地址:8096
打开jellyfin
3.jellyfin页面设置
- 这里首先选择语言

- 创建管理员账号

- 这里可以跳过,但为演示,我这里先添加了一个媒体库

- 标注1:jellyfin会针对不同类型的影片库进行不同处理,如果目录下都是电影那默认"电影"就可以了,如果是动漫/电视剧就设置成"混合电影和电视剧"
- 标注2:这里可以自定义该影片库的名称
- 标注3:这里设置影片库的路径(如果没有显示,请确保群晖中的影片库目录给了
sc-jellyfin
,sc-ffmpeg
,SYSTEM
用户的读写权限) - 标注4和5:如图设置

- 标注1:这里是10.8.0带来的新特性,每个媒体库可以自动收集合集,我暂时把它关了。因为它会自己建了一个名叫合集的媒体库,更重要的是,因为刮削元数据的原因,它统计的合集并不准确,有时候系列名也不对。想试试的小伙伴可以打开
- 标注2:第一个TheMovieDb,就是我们提到的会调用api.themoviedb.org来刮削,如果你有未刮削的电影,这个服务器基本都能刮削出来。第二个 The Open MovieDatabase 默认是勾选的。它可以补充第一服务器没刮削到的资料,比如获取烂番茄的评分。两个服务器的优先顺序可以用旁边的上下箭头调整。
- 标注3:这里是设置多久之后对元数据进行更新
- 标注4:因为我我们的电影基本都刮削过了,所以记得把这里勾上,方便jellyfin直接读取元数据
- 标记5:这个建议打开,方便我们以后编辑

- 点击【确定】,第一个媒体库配置完成,【下一个】。

- 默认远程访问设置即可

- 完成之后,重新登录来到首页,点击左上角菜单栏中的
控制台
-播放
,在硬件加速中选择QSV
- 理论上页面上的都可以勾选,但是我的g5420上的h610核显无法使用低电压模式和vpp色调,如果你也有此类情况可以关闭这几个试试
- 如果用不了vpp色调,可以开启下面的"启动色调映射",建议色调映射算法为Mobius/Reinhard(点击查看推荐原因)

现在就可以愉快的使用硬件解码了!
不过这时候我们的媒体库在首页还是没有封面的,我们到计划任务里点击运行扫描媒体库
,刷新人员

等完成后,回到首页,媒体库的封面就自动生成了

转码测试-优秀的转码效率
这里我随便找了个4K HEVC 10bit HDR的视频进行转码1080P H264 SDR并烧录字幕的测试居然都能有45fps的转码速度

如果我们将硬件解码换成VAAPI,就只剩下可怜的19fps了

你可能会遇到的问题
ASS字幕口口口口问题
敲黑板,jellyfin似乎已经支持Web端、exoplayer客户端显示ASS字幕和PGS字幕,无需服务器端转码烧录。在做web端测试的时候,默认为自动的方式下ASS字幕将不会转码烧录。这时候web客户端直接显示ASS字幕,中文字幕还是会因为缺字体而显示口口口口。解决的方法是,启用备用字体。
解压后,将其文件夹复制到docker的config映射目录下的fonts目录中(若没有手动新建)
然后在控制台-播放中设置启用备用字体:

相关资料:
Jellyfin中国特供版+Docker镜像,含驱动,免折腾开箱即用
Jellyfin 特供版现已支持 Dolby Vision 转码映射到 SDR
jellyfin新选择,Nyanmisaka出品,即装即硬解!
Comments NOTHING