LinuxでIntelおよびNVIDIAハードウェアエンコーダ(QuickSync / nvenc)の両方を使用する

LinuxでIntelおよびNVIDIAハードウェアエンコーダ(QuickSync / nvenc)の両方を使用する

私は最近、ビデオエンコーディングに使用する新しいコンピュータをインストールしました。私は統合グラフィックスとRTX3000シリーズNVIDIAカードを備えた新しいIシリーズプロセッサを実行しています。 IntelのQuick-syncでNVIDIA nvencハードウェアエンコーダを使用したいと思います。私の既存の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

この記事が死んでいることを知っていますが、コードを少し見てみると、非常に古いIntelドライバを探しています。

AGPがグラフィックインターコネクト標準であった当時のこの世代のカード/ GPUは、これらのアクセラレーション機能もサポートしていません(少なくともCore 'i'シリーズ、ポストデュオ、クワッドまではIntelを大胆にすることができます)。

また、現在i5-8365u(Intel UHD 620グラフィックチップを使用)用のハードウェアエンコーディング/アクセラレータドライバを探しています。一般的なソフトウェアアクセラレーションに関しては、私は基本的なカーネルと設定に満足していると思いますが、OBSや他の何かについては、いくつかの文字列を修正したりドライバを見つける必要があると思います。おそらく両方です。

あなたに関する限り、

0000:00:02.0 VGA 互換コントローラー: Intel Corporation AlderLake-S GT1(rev 0c) デバイス名: Onboard - ビデオサブシステム: Gigabyte Technology Co., Ltd デバイスd000

ここにあなたのCPUタイプのAlder-Lakeをリストすると、あなたは実際に12世代のIntel CPUを持っていることがわかります。私は、Intelがグラフィック用にIris Xeチップを使用していると思います。このチップはまだ新しいですが、ソフトウェアがまだ追いついていないほど新しいものではありません。私は願っています...

投稿によると、ここ -https://forum.manjaro.org/t/12th-gen-intel-driver-issues/135737

"mithrial - 3月7日、Intel GPUのアーチウィキエントリを読んでください。お使いのデバイスは新すぎるため、X構成は不要です。X構成はありません。

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

システムの詳細な説明がなければ、あまり役に立ちません。 」

これが役に立つかどうかはわかりませんが、このページでいくつかのX情報を見つけてドライバチャンネルを確認できます。

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

おそらく今回の調査では、IntelはLinuxカーネルのオープンソースディスプレイドライバに最も大きく貢献した企業の1つですが、試してみることができる他のパッケージ/オプションがあります。

関連情報