最近、AMD Radeon R7 M260/M265カードも搭載したIntel Core i7-5500Uを搭載した新しい(実際は中古ですが、私にとっては新しい)Inspiron 5548を入手しました。
Ubuntu 17.04(プレリリース)ですべてが正常に機能しますが、Ubuntu 16.10を最初にインストールしたときから存在していた「問題」があります。
vainfo
は、Intelグラフィックカードに関する情報のみを表示し、他のカードに関する情報は表示しません。すべてのパッケージがインストールされており、次のvaapiドライバーがインストールされていると思います。
$ ll /usr/lib/x86_64-linux-gnu/dri/*_drv_video.so
-rw-r--r-- 1 root root 2113216 Nov 10 17:34 /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
-rw-r--r-- 3 root root 4416200 Feb 6 05:47 /usr/lib/x86_64-linux-gnu/dri/nouveau_drv_video.so
lrwxrwxrwx 1 root root 18 May 11 2016 /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so -> vdpau_drv_video.so
-rw-r--r-- 3 root root 4416200 Feb 6 05:47 /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so
-rw-r--r-- 3 root root 4416200 Feb 6 05:47 /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
lrwxrwxrwx 1 root root 18 May 11 2016 /usr/lib/x86_64-linux-gnu/dri/s3g_drv_video.so -> vdpau_drv_video.so
-rw-r--r-- 1 root root 97224 May 11 2016 /usr/lib/x86_64-linux-gnu/dri/vdpau_drv_video.so
以下はvainfo
の出力で、Intel統合カードを選択します:
$ vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.7.3)
vainfo: Driver version: Intel i965 driver for Intel(R) Broadwell - 1.7.3
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointEncSlice
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointVLD
他のドライバーを使用して出力を要求すると、次のようになります。
$ LIBVA_DRIVER_NAME=radeonsi vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: User requested driver 'radeonsi'
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_0_39
ilo: driver missing
ilo: driver missing
libva error: /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so init failed
libva info: va_openDriver() returns 2
vaInitialize failed with error code 2 (resource allocation failed),exit
inxi の出力は次のとおりです。
# inxi -v2
System: Host: inspiron-5548 Kernel: 4.10.0-9-generic x86_64 (64 bit) Desktop: MATE 1.17.2
Distro: Ubuntu Zesty Zapus (development branch)
Machine: Device: portable System: Dell product: Inspiron 5548 v: A07 serial: 6B7H542
Mobo: Dell model: 0YDTG3 v: A00 serial: .6B7H542.BR1183055L0209. UEFI: Dell v: A07 date: 06/23/2016
Battery BAT1: charge: 37.3 Wh 100.0% condition: 37.3/38.4 Wh (97%)
CPU: Dual core Intel Core i7-5500U (-HT-MCP-) speed/max: 799/3000 MHz
Graphics: Card-1: Intel HD Graphics 5500
Card-2: Advanced Micro Devices [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445]
Display Server: X.org 1.18.4 drivers: modesetting,ATI,amdgpu (unloaded: fbdev,vesa,radeon)
tty size: 190x49 Advanced Data: N/A for root
Network: Card-1: Realtek RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller driver: r8169
Card-2: Intel Wireless 7265 driver: iwlwifi
Drives: HDD Total Size: 1000.2GB (16.4% used)
ID-1: model: ST1000LM014
Info: Processes: 232 Uptime: 7 days Memory: 2374.9/15960.3MB Client: Shell (bash) inxi: 2.3.8
多くのグーグルを試した後でも、システムのAMD側のVAAPI情報を見る方法が見つかりませんでした。これを発見する方法を見つけたいです(特にffmpegで物事をトランスコードする場合)。
@ Brainiarc7による有用なヒントの後、変数設定DRI_PRIME=1
を使用すると、出力が大幅に変更されます。
$ DRI_PRIME=1 LIBVA_DRIVER_NAME=radeonsi vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: User requested driver 'radeonsi'
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.7.3)
vainfo: Driver version: mesa gallium vaapi
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
ドライバーがmesa gallium vaapi
であるにもかかわらず、ハードウェアが使用されていますか、それともソフトウェアデコーダー/プレースホルダーですか?とにかくそれは進歩です。サポートされているプロファイル/エントリポイントが少数しかないことに驚かされます(実際、ハードウェアが使用されている場合、それはおそらくドライバーが公開していないためです)。
必要と思われるその他の情報を喜んで提供します。
AMD GPUの場合、次のようにvainfoを呼び出す必要があります。
DRI_PRIME=1 LIBVA_DRIVER_NAME=radeonsi vainfo
次に、出力を印刷して、何か変更がないか確認します。