NAS之影音折腾手记 篇一:杜比视界片源选Jelly还是Emby
NAS之影音折腾手记 篇一:杜比视界片源选Jelly还是Emby?
2023-01-29 14:48:29
193点赞
662收藏
98评论
作为一名资深影音PTer,家里的NAS前后换了好几代,一直用高清影音系统通过家庭网络播放原盘4K/BD片源,最近由于二宝意外降临,实在不方便在客厅观看,不得不考虑用NAS自身硬解能力远程播放,至少窝在书房或者移动办公时候可以继续摸鱼啥的 。本人也是在smzdm这里浏览无数,各种软件,版本,设置参数折腾后,写下一点点心得。
NAS硬解攻略这么全了,为啥还要折腾
既然玩了这么多年影音设备,自然对播放效果有一定期待,手头最多的其实还是原盘4K蓝光版本,但是NAS领域唯一完美播放原盘的软件Infuse不便宜,而且不方便远程播放。为了方便NAS硬解,我选片的逻辑还是以各个小组的remux版本为主,编码类型以H265为主(节约磁盘空间,H264一般要大1.5-3倍)。视频类型以杜比视界(Dolby Vision)/HDR10的为主(也是这篇文章需要解决的主要问题,大坑! )。音频类型从杜比全景声(Dolby Atoms),DTS:X以及其他环绕依次排序,有多轨最好,方便针对不同设备选择不同编码的轨道,以免遇到无法播放声音的窘境。 然而,当我满心欢喜的以为收费的软件总归不会太差的时候(没错,我买了正版emby! ),每次播放杜比视界类型的片源,emby色彩异常或者直接无法播放,播放HDR10的片子,画面下方会有绿色条纹。此等待遇是以前用蓝光播放器从来未曾遇到的。但是我的硬件软件配置照道理应该没问题,而且用windows环境播放没有任何,具体如下:
CPU:Intel i5-9500T(35w低功耗,UHD630核显,6核6线程,2.2G)主板:ASRock B360M-HDV内存:16G DDR4 *2磁盘:三星 970pro 500G(老机器淘汰下来,主要是存放docker/虚拟机系统),直接喂给unraid用BIOS:开启IGP优先,共享内存1024M(最大)OS:Unraid 6.11.5Emby:官方最新4.7.11.0 docker版,docker如何安装设置,色魔大牛文章到处都是哈。
系统硬件
Emby 4.7.11 最新版Docker
emby硬解设置参数,QSV驱动优先,已经开启HDR色彩映射
emby硬解杜比视界片源,色彩异常,转码帧率73fps,速度流畅
看来,要搞定杜比视界的片源,emby可能真的不行,若有高手已经搞定,还请指点一二。接下来就是看看Jelllyfin是否可以搞定了。
Jellyfin硬解杜比视界设置
Jellyfin作为emby3.5.2版本开始单独演变出的开源软件后,各种版本满天飞,好处是更新快,功能强,缺点就是初学者一头雾水,不知道选哪个版本才适合自己。其中作为Jellyfin代码官方贡献者之一的nyanmisaka(中国人,https://zhiyou.smzdm.com/member/4340858291/)也推出了适合国人的魔改版本,核心优势是内置CJK字库(解决媒体库封面无法显示中文),intel核显驱动(可以支持QSV模式下转码杜比视界Dolby Vision到SDR!!!),具体优势及如何安装,请移步到他的主页即可。目前最新版本10.8.8,官方版本是10.8.9,基本上无差别。
是不是觉得有了这个版本一键部署后就一劳永逸了?还真的是,基本上绝大部分的HDR视频都能流畅观看。只有一个悬念,高帧率的杜比视界片源是否可以搞定呢?毕竟我这个核显只是UHD630,和最新的intel UHD730/750/770或Xe核显的性能差距不小,比如下图这个片源,帧率50,动态范围类型DOVI(杜比视界的简写),Bitrate并不高,色彩是正常了,可惜转码帧率才30多帧,播放不流畅。
杜比视界 10bit 4k 50帧率片源信息
这时候,本着不断追求性能极致的穷屌丝心态(实质是不想折腾换主板+CPU去升级到11-12代),我在B站里给nyanmisaka作者本人私信留言请教有没有解决方案,未曾想居然第二天就回复了,他建议我开启一下低电压编码功能,就是Jellyfin播放设置里的“启用低电压模式的 Intel H.264 /HEVC 硬件编码器”。研究之后,自感操作上还算简单,适合有一定基础的NAS用户,以我自己的Unraid为例,其他NAS系统应该差不多(群晖的Liunx核心目前最高4.4,应该不支持11代及以上核显,不知道有没有大神已经搞定,我没有相关设备,不去深究了),以下是操作步骤。
第一步,确保你的NAS系统已经内置最新Intel Linux核显固件(Unraid 6.11.5,官方社区已经确认内置),核显为9代及以上可以支持Huc/Guc,我的9代仅支持Huc,详细介绍如下图:
Intel Liunx 核显驱动关于Huc/Guc功能支持的说明
第二步,打开核显的Huc/Guc功能,需要用root权限进入系统终端命令窗口ttyd或者SSH登录,输入以下命令,顺便解释下,VI是Linux下纯字符界面的文本编辑器,后面的/etc/modprobe.d/i915.conf是显卡配置文件,
unraid 终端窗口命令行
vi /etc/modprobe.d/i915.conf
进入Vi后,键盘上按“i”进入插入编辑模式,输入下方字段,然后用ESC退出编辑模式,键盘上按“:”,输入WQ,保存退出,接下来重启系统。
options i915 enable_guc=2
如果是UHD770或Xe核显,上面参数改为3,其他核显均为2,我是UHD630,选择2,切记!切记!
第三步,在Jellyfin硬解设置里,硬件加速选择QSV,硬件编码选择“启用低电压模式的 Intel H.264 硬件编码器”,如果你的核显是UHD770,还可以开启“启用低电压模式的 Intel HEVC 硬件编码器”。记得开启色调映射,上方还有一个启用VPP色彩映射,是针对使用VAAPI驱动模式,这里不用启用。
如果在播放时候,提示“该客户端与媒体不兼容,服务器未发送兼容的媒体格式”,基本上就是前面步骤不正确,或者系统没有带核显固件,亦或是核显硬件低于9代。
另外,参考nyanmisaka建议的,色调映射算法从默认的BT.2390改为Reinhard或者Mobius,速度还可以再快点。
Jellyfin硬解开启低电压模式
色调映射算法改为Reinhard或者Mobius
开启前后效果对比
开启后,转码帧率42fps
开启后,转码帧率42fps
开启前,转码帧率35fps
开启前,转码帧率35fps
最终结论:
对比下来,调整后转码速度从35提升到42,相对提升比例达到20!不过对于这部帧率达到50fps的杜比视界片源,Jellyfin依然无法流畅播放,我估计这可能是UHD630的硬件极限了,如果想要完美播放,就不得不升级到UHD770或者Xe核显的CPU。虽然现在杜比视界/HDR10的片源日益增多,像这样的高帧率片源毕竟凤毛麟角,我这套硬件还可以苟且一段日子,综合评估下来,我还是拥抱了开源的Jellyfin,Emby留着等日后新版本出来再看看吧。
引用资料:
intel核显Linux之Guc/Huc说明文档https://wiki.archlinux.org/title/intel_graphics#Enable_GuC_/_HuC_firmware_loading。
以下是惯例的分割线
头一回认认真真在色魔张大妈这里发帖,一方面是给自己做个记录,分享给遇到同样困扰的朋友,一方面也是感谢各位大大们,特别是nyanmisaka这样优秀的开源开发者
补充,emby在播放HDR10片源时,画面底部必定会出现绿色条纹,不知道哪位朋友遇到过没有,感觉是FFMpeg配置或版本问题,求教啦!
图片压缩太厉害,仔细看最下方的绿色条纹
作者