2017/06/18 追記Yasmを、あらかじめインストールしておきます。2017/05/21 git-d2b5f4873以降、アセンブラがYasmからNASMに変更になりました。
NASMを、あらかじめインストールしておきます。
x264は、以下の場所にあります。
http://www.videolan.org/developers/x264.htmlx264の最新情報は、ここでチェックしましょう。
http://x264.nl/2013/05/30 追記現在は、VideoLANのページにリダイレクトされます。
最新版は、こちらでチェックしてください。
http://git.videolan.org/?p=x264.git;a=summaryGitがインストールされていれば、以下のようにして、ソースファイルをダウンロードできます。
$ git clone
https://git.videolan.org/git/x264.gitGitがインストールされていない場合でも、とりあえず、daily tarballのソースファイルをダウンロードすればコンパイルできます。
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
x264-snapshot-20101215-2245.tar.bz2
を、適当なディレクトリに保存します。
毎日更新されていて、日付がファイル名になっていますので、その時点でのファイル名に読み替えてください。
w32threadsに対応しているのは、rev.1834以降です。
snapshotは、x264-snapshot-20101215-2245.tar.bz2 からです。
次に、make fprofiledするための、適当なサンプル動画を用意します。
自分で用意するのがめんどうな場合は、
Xiph.org Test Media
http://media.xiph.org/とか、
http://media.xiph.org/video/derf/辺りから、拡張子がy4mのものをダウンロードして使用します。
2013/07/24 追記携帯動画変換君を使ってサンプル動画を作成する場合は、適当なフレーム数を切り出して、フォーマットを「yuv4mpegpipe」にすれば良いです。
以下は、動画の3分00秒目から500フレーム切り出して「sample.y4m」に変換する設定です。
音声は無しにしています。
2013/10/06 追記「-ss」を「-i」の前にすると、「-ss」で指定した時間までの待ち時間がなくなります。
Title=x264 fprofiled sample
Command0=""<%AppPath%>\cores\ffmpeg" -y -ss 00:03:00 -i "<%InputFile%>" -an -vframes 500 -f yuv4mpegpipe "<%OutputPath%>\sample.y4m""
2012/12/22 追記例として、以下のページにある、
http://media.xiph.org/video/derf/park_joy_420_720p50.y4m (park_joy 4:2:0 (660 MB))
を、サンプル動画に使用してみます。
サンプル動画が準備できたら、以下の手順で実行します。
MSYSで、作業ディレクトリに移動し、
$ git clone
https://git.videolan.org/git/x264.git$ cd x264
$ ./configure --prefix=/mingw --enable-static
$ make fprofiled VIDS="park_joy_420_720p50.y4m"
$ make install
以上で終了です。
【補足】
How to Compile x264 on 32 & 64 Bit Windows
http://doom10.org/index.php?topic=26.msg483#msg483によると、
What video you use doesn't matter as long as it is a real video (random noise or a static image will probably not give accurate results).
サンプル動画は、実写動画であれば何を使っても同じようなものなので、気にしなくて良い。
ランダムノイズや静止画像では、正しい結果が得られないでしょう。
とのことです。
【更新履歴】を見る
2010/12/25 追記
pthreadsを使用しないコンパイル手順に書き直しました。
以前の、pthreadsを使用する手順は以下の記事を参照してください。
x264のコンパイル&インストール (make fprofiled)
2011/05/17 追記
インストールの手順に、
$ make install-lib-static
を、追加しました。
2012/12/22 追記
x264 rev.2230はバグがあります。修正内容についてはこちらの記事をお読み下さい。
rev.2230のバグは、以下のコマンドで修正できます。
$ sed -i.orig 's/32786/32768/g' encoder/set.c
2012/12/22 追記
サンプル動画作成のオプションの「-sameq」を削除しました。
sameqは、same quantizersの意味なのですが、same qualityと勘違いする人が多いため、廃止したらしいです。
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -an -deinterlace -vcodec mpeg2video -sameq -ss 00:01:40 -vframes 100 "<%TemporaryFile%>.mpg""
2012/12/22 追記
例として、以下のページにある、
http://media.xiph.org/video/derf/
park_joy_420_720p50.y4m (park_joy 4:2:0 (660 MB))
を、サンプル動画に使用してみます。
$ make fprofiled VIDS="sample.y4m"
$ make fprofiled VIDS="park_joy_420_720p50.y4m"
2013/01/11 追記
x264 rev.2230のバグは、修正されました。
Fix typo in r2222
http://git.videolan.org/gitweb.cgi?p=x264.git;a=commitdiff;h=0059dcf938451134d8f9c8f1ad522a2c6071e7cd
2013/03/24 追記
自前ビルドしたGCC 4.8.0で「make fprofiled」してみたら、profile情報を生成する段階で、x264.exeがクラッシュしました。
configureオプションに「--enable-debug」を追加したらクラッシュしませんでしたので、とりあえず追加しておきます。
2013/03/27 追記
クラッシュするのは「--enable-debug」とは無関係でしたので、削除しました。
2013/03/27 追記
GCC 4.8.0の「make fprofiled」で失敗する場合、以下のようにconfigureを実行してみてください。
$ ./configure --enable-win32thread --prefix=/mingw --extra-cflags="-fno-aggressive-loop-optimizations"
2013/04/27 追記
x264がクラッシュする問題は、r2276で修正されました。
--extra-cflags="-fno-aggressive-loop-optimizations"
は不要になりました。
2013/05/30 追記
現在は、VideoLANのページにリダイレクトされます。
最新版は、こちらでチェックしてください。
http://git.videolan.org/?p=x264.git;a=summary
2013/07/24 追記
携帯動画変換君を使ってサンプル動画を作成する場合は、適当なフレーム数を切り出して、フォーマットを「yuv4mpegpipe」にすれば良いです。
以下は、動画の3分00秒目から500フレーム切り出して「sample.y4m」に変換する設定です。
音声は無しにしています。
Title=x264 fprofiled sample
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -an -ss 00:03:00 -vframes 500 -f yuv4mpegpipe "<%OutputPath%>\sample.y4m""
2013/07/24 追記
「拾って」を「ダウンロード」に修正しました。
ソースファイルを拾ってこれダウンロードできます。
ソースファイルを拾ってくダウンロードすればコンパイルできます。
2013/10/06 追記
「-ss」を「-i」の前にすると、「-ss」で指定した時間までの待ち時間がなくなります。
Title=x264 fprofiled sample
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -an -ss 00:03:00 -vframes 500 -f yuv4mpegpipe "<%OutputPath%>\sample.y4m""
Command0=""<%AppPath%>\cores\ffmpeg" -y -ss 00:03:00 -i "<%InputFile%>" -an -vframes 500 -f yuv4mpegpipe "<%OutputPath%>\sample.y4m""
2013/10/06 追記
configureオプションに「--enable-static」を追加しました。
$ make install-lib-static は不要になります。
【補足】の追記も削除しました。
2011/05/17 追記
r1995から、スタティックライブラリをインストールする場合、
$ make install-lib-static
とする必要がありますので、ご注意ください。
2016/05/02 追記
gitのURLを修正しました。
$ git clone git://git.videolan.org/x264.git
$ git clone https://git.videolan.org/git/x264.git
2016/05/02 追記
configureオプションの「--enable-win32thread」を削除しました。
$ ./configure --enable-win32thread --prefix=/mingw --enable-static
$ ./configure --prefix=/mingw --enable-static
2016/05/02 追記
全体的に、文章構成を修正しました。
…
snapshotは、x264-snapshot-20101215-2245.tar.bz2 からです。
MSYSで、ファイルを保存したディレクトリに移動し、
$ tar xjf x264-snapshot-20101215-2245.tar.bz2
$ cd x264-snapshot-20101215-2245
…
サンプル動画が準備できたら、
サンプル動画が準備できたら、以下の手順で実行します。
MSYSで、作業ディレクトリに移動し、
$ git clone https://git.videolan.org/git/x264.git
$ cd x264
…
2017/06/18 追記
2017/05/21 git-d2b5f4873以降、アセンブラがYasmからNASMに変更になりました。
Yasmを、あらかじめインストールしておきます。
NASMを、あらかじめインストールしておきます。
【更新履歴】を閉じる
「nasm-2.13 以上が必要」に変更された模様。
git-d2b5f48
x86: Change assembler from yasm to nasm
コメントありがとうございます。
お返事が遅くなり、申し訳ありません。
記事を修正しました。
情報ありがとうございます。
一旦捨てたNASMに、また戻ってくるとは思いませんでした・・・。