web-dev-qa-db-ja.com

Intel Sandy BridgeでVA-APIを正しく有効化/テストする方法は?

どのパッケージをインストールする必要があり、それがどのようにテストされているかを知りたいのですが?

同様の質問がたくさんあることは知っていますが、完全で明確な人はいません

9
Postadelmaga

libva-intel-vaapi-driverInstall libva-intel-vaapi-drivervainfoInstall vainfo

次に、vainfoを実行して、いくつかのプロファイルのエントリポイントが表示されるかどうかを確認します。

[...]
vainfo: Supported profile and entrypoints
    VAProfileMPEG2Simple            : VAEntrypointVLD
    [...]

すべてのGStreamerベースのビデオプレーヤーの場合、このパッケージで十分です: gstreamer0.10-vaapiInstall gstreamer0.10-vaapi 。私が正しいなら、Totemのようなほとんどの標準的なビデオプレーヤーはGStreamerベースです。

VLCは別の話ですが、Ubuntuでは--enable-libvaビルドフラグを使用してビルドされています(apt-get source vlcで示されています)。これは、構成で有効にすることでshould動作することを意味します。

enter image description here

または、コマンドラインで手動で:

vlc --ffmpeg-hw -v
[...]
libva: VA-API version 0.32.0
[0x7feeecc02a28] avcodec decoder: Using VA API version 0.32 for hardware decoding.
11
gertvdijk

Totemのクイックノート:古典的なプレーヤーのようにgstreamerとのインターフェースを持たない特別なGTKウィジェットを使用するため、Totemでgstreamer-vaapiを使用することはできません。チームはそれに取り組んでいます。

2
freechelmi
  1. デコード:Sudo apt-get install i965-va-driver libva-intel-vaapi-driver vainfo次に、vlcをセットアップしてハードウェアデコードを使用し、コマンドラインから実行して(デバッグメッセージを取得する)、am .mp4ファイルを開きます。 [0x1781058] main libvlc:デフォルトインターフェイスでvlcを実行しています。インターフェイスなしでvlcを使用するには、「cvlc」を使用します。 libva情報:VA-APIバージョン0.35.0 libva情報:va_getDriverName()は0を返しますlibva情報:/usr/lib/x86_64-linux-gnu/dri/i965_drv_video.soを開こうとしていますlibva情報:init関数が見つかりました__vaDriverInit_0_35 libva情報: va_openDriver()は0 [0x7fd825a569a8] avcodecデコーダーを返します:VA AP​​Iバージョン0.35を使用してハードウェアデコード

  2. エンコード:Gstreamer、libgstremaer-vaapi1.x、i965-va-driverをインストールします。次のコマンドは、Webカメラ(/ dev/video0)からの入力を受け取るgstremaerフィルターグラフを起動し、エンコードしてmuxesをtest2.mp4ファイルにエンコードします。

    gst-launch-1.0 v4l2src device =/dev/video0 num-buffers = 1800! video/x-raw、format = I420、width = 640、height = 480! vaapipostproc!キュー! vaapiencode_h264! qtmux! filesink location = test2.mp4
    Sandy Bridgeグラフィックス(HD 2000/3000 GPU)のハードウェアエンコーディングサポートがない場合、failになります。 HD2000/3000はH.264 HWエンコードをサポートしているため、私(Core i7、HD3000グラフィックス)では失敗しますが、Intelでは失敗することに注意してください。

2
Angel Genchev