[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:33341] Intel Media Driver for VAAPI をテスト
-
From:ABE Shin-ichi
-
Date:Tue, 7 Apr 2020 22:54:26 +0900 (JST)
- Subject: [plamo:33341] Intel Media Driver for VAAPI をテスト
- From: ABE Shin-ichi <shin1.abe@xxxxxxxxx>
- Date: Tue, 7 Apr 2020 22:53:02 +0900
- Dkim-filter: OpenDKIM Filter v2.10.3 conuserg-10.nifty.com 037Dr2Nq023035
阿部です。
実験的な試みですが、vaapiドライバとして普段利用している intel-vaapi-driver(i965_drv_video.so)から
Intel謹製のIntel Media Driver for VAAPI(iHD_drv_video.so)に切り替えてテスト中です。
1. Intel謹製のIntel Media Driver for VAAPI(iHD_drv_video.so)インストール
関連サイト:
intel-gmmlib-19.4.1 : https://github.com/intel/gmmlib/releases
libva-utils-2.6.0: https://github.com/intel/libva-utils/releases
intel-media-20.1.0r : https://github.com/intel/media-driver/releases/tag/intel-media-20.1.0r
上記リンクからソースを入手してPlamoBuildで野良ビルドし、インストールしました。
作成したパッケージは下記。
intel_gmmlib-19.4.1-x86_64-B1.txz
libva_utils-2.6.0-x86_64-B1.txz
Intel_iHD_driver-20.1.0r-x86_64-B1.txz
X立ち上げ時に iHD_drv_video.so がロードされるように、下記を .xinitrc に追記。
=== >8 === >8 === >8 === >8 ===
export LIBVA_DRIVERS_PATH=/usr/lib/dri
export LIBVA_DRIVER_NAME=iHD
=== >8 === >8 === >8 === >8 ===
X起動後、iHD_drv_videoがロードされているかどうか vainfoコマンドで確認。
$ vainfo
libva info: VA-API version 1.7.0
libva info: User environment variable requested driver 'iHD'
libva info: Trying to open /usr/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_7
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.7 (libva 2.7.1)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 20.1.pre ()
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileNone : VAEntrypointStats
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointFEI
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointFEI
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointFEI
VAProfileVP8Version0_3 : VAEntrypointVLD
動画再生してみた結果、正直言って i965_drv_video と iHD_drv_video とで感覚的に顕著な
差異は認められませんでした。(iHD_drv_video に切り替えたからといって飛躍的に動画再生特性が
上がるわけではなさそう。)
2. Intel Media SDKをインストール後、ffmegをリビルドしてffmpegにIntel qsvエンコード機能
を持たせる
関連サイト:
Media SDK : https://github.com/Intel-Media-SDK/MediaSDK/releases
PlamoBuildにてパッケージを野良ビルド。
作成したパッケージは
Intel_MediaSDK-19.4.0-x86_64-B1.txz
ffmeg-4.2.2 を --enable-libmfxオプション付加でリビルド&インストールしました。
Intel qsvエンコードが利用できるようになっているか確認。
$ ffmpeg -encoders |grep qsv
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 9.3.0 (GCC)
configuration: --prefix=/usr --shlibdir=/usr/lib --libdir=/usr/lib --mandir=/usr/share/man --disable-static --disable-doc --enable-shared --enable-gnutls --enable-hwaccels --enable-vaapi --enable-vdpau --enable-libmfx --enable-nonfree --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-swscale --enable-avfilter --enable-pthreads --enable-bzlib --enable-libcdio --enable-libass --enable-libbluray --enable-libopus --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gnutls --enable-libgsm --enable-libmp3lame --enable-libspeex --enable-libvpx --enable-libwebp --enable-libopenjpeg --enable-libpulse --disable-libsmbclient --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-openal --enable-libfdk-aac --disable-openssl --enable-zlib --disable-debug --arch=x86_64
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
V..... h264_qsv H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (Intel Quick Sync Video acceleration) (codec h264)
V..... hevc_qsv HEVC (Intel Quick Sync Video acceleration) (codec hevc)
V..... mjpeg_qsv MJPEG (Intel Quick Sync Video acceleration) (codec mjpeg)
V..... mpeg2_qsv MPEG-2 video (Intel Quick Sync Video acceleration) (codec mpeg2video)
エンコードのテスト:
コマンド例
$ ffmpeg -hwaccel qsv -c:v mpeg2_qsv -i input-file.vob -c:v h264_qsv -vf 'scale_qsv=1280:720' -q:v 23 -c:a copy output-file.mp4
かなりサクサクとエンコードが完了しました。
とりあえずこんなところです。引き続きテスト継続しています。
とりとめのない報告で申し訳ありません。
以上
[検索ページ]
[メール一覧]
Plamo ML 公開システム