在 Linux 上同时使用 Intel 和 NVIDIA 硬件编码器 (QuickSync/nvenc)

在 Linux 上同时使用 Intel 和 NVIDIA 硬件编码器 (QuickSync/nvenc)

我最近设置了一台新电脑,打算用于视频编码。我正在运行带有集成显卡的新 I 系列处理器和 rtx3000 系列 NVIDIA 卡。我想使用 NVIDIA nvenc 硬件编码器以及英特尔的 Quick-sync。我的旧 PC 已经运行了 NVIDIA GTX1000 系列卡,并且我在现有的 Manjaro 安装中重复使用了 SSD。 NVIDIA GPU 可以通过专有的 NVIDIA 驱动程序开箱即用。对于 QSV 编码器,我尝试遵循 Arch wiki 文章硬件加速英特尔显卡,但迄今为止尚未成功。主板 (Gigabyte Z690UD) 没有任何用于 Intel GPU 的显示连接器。

vainfo
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
libva error: /usr/lib/dri/iHD_drv_video.so init failed
vaInitialize failed with error code 18 (invalid parameter),exit

/etc/X11/xorg.conf.d/90-mhwd.conf

Section "Device"
    Identifier     "Device0"
    Driver         "intel"
    VendorName     "Intel Corporation"
EndSection

如下所示,lspci 没有列出为 Intel GPU 加载的内核模块:

lspci -k | grep -A 3 VGA

0000:00:02.0 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
    DeviceName: Onboard - Video
    Subsystem: Gigabyte Technology Co., Ltd Device d000
0000:01:00.0 VGA compatible controller: NVIDIA Corporation GA102 [GeForce RTX 3090] (rev a1)
    Subsystem: Micro-Star International Co., Ltd. [MSI] Device 3881
    Kernel driver in use: nvidia
    Kernel modules: nouveau, nvidia_drm, nvidia

我手动添加了 Intel 驱动程序:

/etc/modules-load.d/mhwd-gpu.conf

##
## Generated by mhwd - Manjaro Hardware Detection
##
i915
nvidia
nvidia-drm

并将其添加到:

/etc/mkinitcpio.conf

MODULES="intel_agp i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm"

我检查了模块黑名单,运行 mkinitcpio 并更新了 grub,但 lspc 仍然没有显示正在使用的驱动程序。我真的不知道从这里该去哪里,因为我对操作系统的内部工作原理不太了解。

答案1

我知道这篇文章已经死了,但快速浏览一下代码,您正在寻找非常旧的英特尔驱动程序。

从 AGP 是图形互连标准的时候开始,这一代的卡/GPU 也不支持这些加速功能(至少我可以向你保证,英特尔直到 Core 'i' 系列、post duo 和四)。

我目前也在为我的 i5-8365u(使用 Intel UHD 620 图形芯片)寻找硬件编码/加速驱动程序。就典型的软件加速而言,我认为我对库存内核和设置感到满意,但对于 OBS 或其他任何东西,我相信我要么需要修改一些字符串,要么找到一个驱动程序,可能两者都需要。

就你而言,

0000:00:02.0 VGA 兼容控制器:Intel Corporation AlderLake-S GT1 (rev 0c) 设备名称:板载 - 视频子系统:Gigabyte Technology Co., Ltd 设备 d000

在这里,通过列出您的 CPU 类型 Alder-Lake,我们可以看到您确实拥有第 12 代 Intel CPU。我相信英特尔使用 Iris Xe 芯片进行图形处理,它们仍然很新,但还不够新,软件还没有赶上它。我希望...

根据帖子,这里 -https://forum.manjaro.org/t/12th-gen-intel-driver-issues/135737

“mithrial - 3 月 7 日 请阅读有关 Intel GPU 的 arch wiki 条目。您的设备太新,不需要或没有任何 X 配置。

https://wiki.archlinux.org/title/intel_graphics24

如果没有系统的详细描述,就没有太多帮助。”

我不知道这些是否有帮助,但可以在此页面上找到一些 X 信息,以查看您的驱动程序频道。

https://wiki.archlinux.org/title/Xorg#Driver_installation

据推测,通过这次挖掘,英特尔是 Linux 内核中开源显示驱动程序的最大贡献者之一,但还有其他软件包/选项可以尝试。

相关内容