用过Jellyfin的朋友应该都遇到过转码的问题,这个麻烦的事情真是让人头大啊!不过好消息是,我这个个好心的家伙发现了一个可以提升转码效率的方法!
默认情况下,Jellyfin使用VAAPI来进行转码。这个老兄的兼容性是挺好的,各种老的新的硬件都能用,但就是性能上差点意思。如果你用的CPU是Intel平台J4125或者更早的型号,那笔者强烈建议你换个口味,试试QSV(Intel Quick Sync)这个转码神器!
这个方法的效率可比VAAPI快多了,简直就是飞一般的速度!而且令人惊喜的是,CPU负载也会变得更低了,下面容我慢慢道来。
一、 准备工作
使用docker部署的Jellyfin
镜像推荐使用 linuxserver/jellyfin的版本,其他镜像有可能环境不一样
建议使用高权限允许Jellyfin,否则需要手工映射/dev/dri
建议使用host模式启动Jellyfin,减少其他异常情况
二、 操作方法
1、首先登入Jellyfin容器
docker exec -it jellyfin /bin/bash
2、安装QSV驱动
由于Quick Sync 是 Intel 的专有技术,开源软件包一般是不会预装的,所以要自己动手安装。
#更新软件包
apt update
#安装QSV驱动
apt install -y intel-media-va-driver-non-free vainfo
3、查看驱动安装情况
安装完以后,用下面命令查看驱动的安装情况
/usr/lib/jellyfin-ffmpeg/vainfo
如果看到Intel iHD driver驱动版本为高于21.1.1就可以了,下面会列出支持的编码格式。
root@jellyfin:/# /usr/lib/jellyfin-ffmpeg/vainfo
libva info: VA-API version 1.16.0
libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_16
libva info: va_openDriver() returns 0
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.5.4 (e461c05)
ainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileNone : VAEntrypointStats
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointFEI
VAProfileH264Main : VAEntrypointEncSliceLP
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointFEI
VAProfileH264High : VAEntrypointEncSliceLP
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointFEI
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointFEI
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
4、设置Jellyfin
驱动安装完成后,推出容器。打开Jellyfin的控制面板,在播放页面中,将硬件加速改为Intel QuickSync(QSV),在启用硬件解码项中,勾选需要启用的编码类型,然后保存即可。
5、大功告成
接下来就播放一个码率比较高或大体积的视频,看看播放时的转码效果吧。
可以看到,我的CPU是弱鸡J4125,但是转码播放时的负载也不高。
怎么样?是不是很心动?如果你也被转码问题搞得很烦恼,那就赶紧试试这个方法吧!让你的Jellyfin转码问题迎刃而解,一切变得简单又高效!原创不易,如果觉得此文对你有帮助,不妨点赞+收藏+关注,你的鼓励是我最大的动力!
猜你喜欢:高效转码:Jellyfin更换转码方式为QSV的方法🐂 保姆级:在NAS上使用Docker跑一个Windows系统,支持远程桌面,有点意思!🍎 立即执行的六个步骤,帮你恢复Mac磁盘空间📱 如何在任何 iPhone 或 Android 手机上截屏