Harry-Chen / blog-comments

Use issues to store comments of harrychen.xyz
2 stars 0 forks source link

2024/04/01/accelerate-video-encoding-with-intel-dg1-on-linux-6.6/ #24

Open utterances-bot opened 4 months ago

utterances-bot commented 4 months ago

在 Linux 6.6 上使用 Intel DG1 GPU 加速视频编解码 - Harry Chen's Blog

最近利用手头的闲暇计算资源攒了个 NAS,运行 TrueNAS 系统,并使用 Jellyfin 作为流媒体播放平台。Jellyfin 会根据客户端(通常是浏览器)的情况(如网络、硬件等)决定是否要对视频进行重新编解码。但即使是分配了 64 核的 7742,也对高码率的 HEVC 10bit 视频力不从心,更不用说

https://harrychen.xyz/2024/04/01/accelerate-video-encoding-with-intel-dg1-on-linux-6.6/

IAALAI commented 4 months ago

到手之后才发现不能编码AV1。。。白高兴一场。好不容易装好驱动才发现不行

wbuntu commented 3 months ago

请问博主的主板和 CPU 是什么型号~我也买了同款 DG1 MAX,但是一直开机黑屏无法点亮

Harry-Chen commented 3 months ago

请问博主的主板和 CPU 是什么型号~我也买了同款 DG1 MAX,但是一直开机黑屏无法点亮

可以检查 BIOS 配置,我觉得和主板关系不大?

ChingyimLee commented 2 months ago

编译到最后安装Intel Media Driver,内存cpu占用疯狂占满,fatal error。

ChingyimLee commented 2 months ago

已经退回23.10了,理论上这个版本编译不会报错啥的。

Icarusradio commented 2 months ago

非常感谢代码分析,向大佬学习到很多。 如果能够成功安装 Intel 官方的 intel-i915-dkms 包的话,可以尝试编译 media-driver 替换发行版提供的文件,这样 KMD 和 UMD 就不会有冲突了。

Media-driver requires special i915 kernel mode driver (KMD) version to support the following platforms since upstream version of i915 KMD does not fully support them(pending patches upstream). To enable these platforms, it requires to specify ENABLE_PRODUCTION_KMD=ON (default: OFF) build configuration option.

  • DG1/SG1
  • ATSM

然后 Linux 6.8 的 xe 内核驱动,确实 ffmpeg 不会报错,但是目前 Jellyfin 似乎暂时不支持使用 xe 内核驱动。 reference

Harry-Chen commented 2 months ago

然后 Linux 6.8 的 xe 内核驱动,确实 ffmpeg 不会报错,但是目前 Jellyfin 似乎暂时不支持使用 xe 内核驱动。 reference

Jellyfin 其实可以用,只是提供给 ffmpeg 的参数有错误(那个 issue 就是我开的)。我自己做了个 patch 解决了这个问题,不过比较脏,就不发出来了。

nyanmisaka commented 2 months ago

等十月 Jellyfin 10.10 发布就不用折腾了,升级了 ffmpeg7 解除了 KMD 限制,因为 Lunar Lake 和 DG3 也要用。

还有支持了 AVX2/SSE4/NEON 优化的纯软件色调映射,你的 EPYC 7742 有福了。