FFmpeg一覧

FFmpegのQSV(H264)を拡張してみる

最近は MSYS2 + MINGW で FFmpeg をビルドしているので改めて記事にしてみる。
(FFmpeg5.1.1で動作を確認しました。)

MSYS2の準備

MSYSとの違いはネット上に情報が溢れているので割愛。

個人的には pacman でパッケージ管理ができて楽な反面、己の知識不足が原因で依存関係にハマることも多い。という印象。

MSYS2のダウンロード

まずはWindows側での作業。下のサイトからダウンロードしてくる。

MSYS2 – Browse /Base at SourceForge.net

32ビットOSならi686。64ビットOSならどちらでも可。

今回は64ビット版をポータブル環境で使いたいので
・msys2-base-x86_64-xxxxxxxx.tar.xz
を採用。

32ビット版なら
・msys2-base-i686-xxxxxxxx.tar.xz
を使い、以降の「msys64」の部分を「msys32」に置き換える。
続きを読む


FFmpeg3.0のQSV(H264)を拡張してみる

(FFmpeg4.0に対応した記事はこちら

FFmpeg3.0からQSVまわりが少し変更になったようなので別記事に。
(FFmpeg3.1~FFmpeg3.4でも動作を確認しました。)

使いまわし多数ですがw

今回からソースはGitで取得した前提。
ZIPファイル等でダウンロードする場合はディレクトリ名が異なるので置き換えてください。

Windows版のビルド(拡張なし)

以前と同じくmfx_dispatchがあれば良いようです。

必要なツールの準備 (MSYS + MinGW + GCC)

今回もXhmikosR’s氏のを使わせていただきました。
(MSYS_MinGW-w64_GCC_530_x86-x64_Full.7z 2016-01-09版)

msys – XhmikosR’s Builds

展開して「MSYS」内の「msys.bat」を実行。以降CLIでの操作。
(「home」以下にユーザー名のディレクトリが作成されるので、ファイルはWindows側でそこに展開)
続きを読む


FFmpeg2.8のQSV(H264)を拡張してみる

(FFmpeg3.0に対応した記事はこちら

少し前のgit版から正常に動作するようになっていたQSVのH264エンコードがStable版2.8でも動作するようになり、以前の記事のような処理は不要になりました。

Windows版のビルド(拡張なし)

Windowsでのビルド仕方は前回とほぼ同じで、mfx_dispatchさえあれば良いようです。
前回の使用した拙作のパッチも必要ありません。

必要なツールの準備 (MSYS + MinGW + GCC)

今回も XhmikosR’s さんのところのをそのまま使わせていただきました。
(使用したバージョンは MSYS_MinGW-w64_GCC_520_x86-x64_Full.7z 2015-09-10版)

msys – XhmikosR’s Builds

「MSYS」をCドライブのルートに展開して、「msys.bat」を実行。以降CLIでの操作。
(「home」以下にユーザー名のディレクトリが作成されるので、ファイルはWindows側でそこに展開)
続きを読む


QSV対応Windows版FFmpeg2.7をビルドしてみる

(FFmpeg2.8以降に対応した記事はこちら

自前でQSV対応のWindows版FFmpegをビルドして遊んだ時の備忘録。

はじめにことわっておきますが、今回初めてdiffを使ってパッチを作成したような素人のお遊びですので温かい目で見てあげてください。

公式スナップショットを試す

FFmpegのコミット履歴を眺めていたら3月下旬頃に「libmfx-based H.264 encoder」の文字を発見。早速スナップショットをビルドして、「-codecs」を見ると確かに「encoders: h264_qsv 」となっていた。

これでFFmpegもQSVのエンコードに対応かと思ったのだが実際に使用してみると問題が発覚。

エンコード中に次のメッセージが大量発生し、出来上がった動画は再生されるもののシークすると映像が真っ黒になる。

Non-monotonous DTS in output stream 0:0; previous: XX, current: 0; changing to XX. This may result in incorrect timestamps in the output file.

原因などわかる筈もなく、私のような素人はリリース版で対応になるまで待った方が良さげか・・・・
続きを読む


スポンサーリンク