トップ 検索 一覧 ヘルプ RSS ログイン

MinGW+ffmpeg(6)x264の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!MinGW+ffmpeg(6)x264
x264のビルドは特に難しいことはない。が、マルチスレッドを有効(pthread-w32使用)にする場合には、--enable-pthreadが必要だ。

 ./configure --enable-pthread
 make
 cp x264.h /mingw/include/
 cp libx264.a /mingw/lib/

x264の./configureはデフォルトで静的(static)ライブラリのみ作成するので、--disable-sharedや--enable-staticは不要だ。
x264の./configureはデフォルトで静的(static)ライブラリのみ作成するので、--disable-sharedや--enable-staticは不要。

以下の記述はx264.exeに関わるもので、ffmpegにリンクするのみであれば上記のみでよい。

!!x264.exeの単独利用
作成されたx264.exeは、[[MinGW+ffmpeg(5)pthread]]に従っていれば、実行時に'''pthreadGC2.dll'''が必要だ。
作成されたx264.exeは、[[MinGW+ffmpeg(5)pthread]]に従っていれば、実行時に''pthreadGC2.dll''が必要だ。

しかし、x264は(未検証だが)staticライブラリ版のpthread-w32に正しく対応している。本特集の範囲内ではないが、x264.exeを使いたいだけであれば、[[MinGW+ffmpeg(A)pthreadは複雑]]を参照してstatic版のpthread-w32をビルドし、出来上がるlibpthreadGC2.aとリンクすればDLL不要版のx264.exeが完成する。

ただし、上記手順ではmp4関連を有効にしていないため、x264.exeで'''mp4ファイルを扱うことが出来ない。'''これを可能にしたバージョンは、また別の記事としてそのうち取り上げたい。
ただし、上記手順ではmp4関連を有効にしていないため、x264.exeで''mp4ファイルを扱うことが出来ない。''これを可能にしたバージョンは、また別の記事としてそのうち取り上げたい。

!!シングルスレッド版のビルド
pthread-w32がMinGWの環境にインストールされている場合、x264は自動的にマルチスレッド有効でビルドしようとする。そのため、
 ./configure --disable-pthread
と明示的に無効にする必要がある。