如果你也遇到jellyfin硬解和HDR10视频色调映射问题,这篇笔记对你应该有帮助。主要解决以下两个问题。
1.使用jellyfin硬解,部分视频出现播放错误提示。
2.播放HDR10视频,色调偏淡问题。
这几天我快被jellyfin搞死了,时不时的出现播放错误——由于致命的播放器错误,播放失败。有些视频可以放,有些就是不行,在转码设置栏做了各种尝试,无果。
最后不得不求助官方教程,经过各种尝试后获得了成功。我的软件硬件环境如下:
硬件:G4600 intel7代奔腾,HD630核显。软件:PVE+GNOME桌面=Debian,jellyfin安装在Debian系统中。重点1、检查/dev/dri目录是否有renderD*设备?至少应该有一个。如果是独显+核显,那应该能看到2个。
ls -l /dev/dri2、检查policy intel-opencl-icd版本
apt policy intel-opencl-icd如果能看到以下信息,说明已经安装了。
如果看不到以上信息,应执行安装命令
sudo apt install -y intel-opencl-icd安装完重启系统!
3、检查Check the supported QSV / VA-API codecs:
sudo /usr/lib/jellyfin-ffmpeg/vainfo --display drm --device /dev/dri/renderD128应该能看到类似以下信息。
libva info: VA-API version 1.17.0libva info: Trying to open /usr/lib/jellyfin-ffmpeg/lib/dri/iHD_drv_video.solibva info: Found init function __vaDriverInit_1_17libva info: va_openDriver() returns 0Trying display: drmvainfo: VA-API version: 1.17 (libva 2.17.0)vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.1.2 (xxxxxxx)vainfo: Supported profile and entrypoints...4、检查Check the OpenCL runtime status:
sudo /usr/lib/jellyfin-ffmpeg/ffmpeg -v verbose -init_hw_device vaapi=va:/dev/dri/renderD128 -init_hw_device opencl@va应该能看到以下类似信息。
[AVHWDeviceContext @ 0x55cc8ac21a80] 0.0: Intel(R) OpenCL HD Graphics / Intel(R) Iris(R) Xe Graphics [0x9a49][AVHWDeviceContext @ 0x55cc8ac21a80] Intel QSV to OpenCL mapping function found (clCreateFromVA_APIMediaSurfaceINTEL).[AVHWDeviceContext @ 0x55cc8ac21a80] Intel QSV in OpenCL acquire function found (clEnqueueAcquireVA_APIMediaSurfacesINTEL).[AVHWDeviceContext @ 0x55cc8ac21a80] Intel QSV in OpenCL release function found (clEnqueueReleaseVA_APIMediaSurfacesINTEL)....5、硬件加速
根据官方建议,iHD核显可选【QSV】或者【VAAPI】。intel Broadwell平台及以下的,选择VAAPI加速。也就是说intel6代CPU(核显HD510起步)可选QSV或者VAAPI,之前的只能选VAAPI。原文如下。
G4600核显是HD630,当然选QSV啦。
下面【启用硬件解码】选项和CPU支持的功能有关,不知道的话可以到以下网站查。
www.cpu-monkey.com6、HDR视频色调映射
如果没有勾选的话,播放HDR10视频,画面会暗淡无光,勾选后色彩靓丽。
7.检查一下FFmpeg路径对不对。
最后别忘记保存!最后别忘记保存!最后别忘记保存!
8.最后说个坑,用edge浏览器播放容易出错,改用firefox播放更流畅。
9.硬解成功的话,播放4K视频CPU占用不会超过20%。IO延迟有点高,不知道如果配个固态做缓存盘是不是好点。