Ubuntu 16.04 で VLC - 2.2.2 を使用しています。VLC はビデオを再生できますが、スナップショットを撮ることができません。環境設定 -> ビデオで「ハードウェア アクセラレーションの使用」を無効にし、出力を OpenGL (GLX)、OpenGL 2、XVideo に 1 つずつ変更してみましたが、後者では黒い画面になりました。
スナップショットをキャプチャしようとすると、次のエラーが発生します:
[00007f9440d10248] avcodec decoder: Using NVIDIA VDPAU Driver Shared Library 361.42 Tue Mar 22 17:29:16 PDT 2016 for hardware decoding.
[00007f946c509148] vdpau_chroma filter error: corrupt VDPAU video surface 0x7f94208e4950
[00007f94300fca08] core video output error: Failed to convert image for snapshot
VLC にハードウェア アクセラレーションを使用しないように指示する方法はありますか? 今のところ、ハードウェア アクセラレーションを無効のままにしておくつもりです。
答え1
自分自身に答えます。
のオプションPreferences->Video->Use Hardware Acceleration
は、ビデオのデコード方法ではなく、画面上でのグラフィックの描画方法を制御します。VDPAU を無効にするオプションは にありますPreferences->Input & Codecs
。次に、「ハードウェア アクセラレーションによるデコード」を探し、他のオプションのいずれかに変更します。VDPAU
私は を使用しています。X11 VA-API
そして問題は解決しました。再びスナップショットを撮れるようになりました。問題が修正されるまで、おそらく VDPAU ドライバー ライブラリ側で (推測ですが) ハードウェア デコードを無効のままにしておきます。今のところ、ビデオの再生中に目立った遅延はありません。