centos7でffmpeg h264_qsv感想など。

 前回まででMSS版ffmpeg h264_qsvが作成できる事がわかりました。
 今日はそれを利用したエンコードの実情を説明したいと思います。
 
 早速実験結果から行きます。
 まずwindowsの様なオプションではiGPUを利用できていないことが判明しました。
 例えばこんな感じ
 

 
 これだとWindows版だとちゃんとqsvの性能を利用して、実測180fps位でトランスコードできています。
 が、centos版だと同じ素材、同じコマンドでもtopコマンドで見てみるとfpsが45位でCPUフルパワー利用しているのがわかります。
 
 では利用されるのはどんな状態なのでしょうか
 
 色々とオプション探しの旅に出ました。そこでいくつかのオプションにたどり着きました。
 

 つまりハードウェアを初期化する際に「ハードウェアを利用する」「フィルタもハードウェアを利用する」と宣言し、最初のh264_qsvでハードウェアに乗せ、deinterlaceフィルタもハードウェアを利用しなくてはなりません。
 
 ではtsファイルはどうなのでしょうか?
 

 
 これをやったらソースが悪いよと言われエラー続発。それでもあきらめず、素材を探すもいいm2ts素材が見つからない。
 そこで逆質問。どうやったらmpeg2_qsvに読み込ませるファイルが作れますか?とググったら
 

 これで中間ファイル的に作成すれば行けるっぽい。
 このファイルを

 これで通りました。
 
 ちなみに
 

 
 とするとdeinterlaceとscaleでいい感じにしてくれます。
 大体220fps辺りを平均して出しているのでハードウェアは利用されていると思われます。
 
 んじゃ地デジは全部これで行けるのかと思ったら、そうでもないらしい。analyzedurationは最初の部分のチェックをしていてお尻の方は考えていないらしい。
 試しにTMPGEnc MPEG Smart Rendererで頭とお尻をIフレームで切ってあげたら通りました。これは最終手段だけど。
 
 これでは使い物にならない。どうしてqsvを利用するかは、何も考えずにハードウェアを利用したいという事が元にあるので意味が無いという結果に落ちてしまいました。
 
 これなら素直に中古グラボ買ってきてつなげた方が確実に成果が出るなと思いました。

スポンサーリンク
広告
広告

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
広告