今回は、あまりうれしくないニュース。
faacのコードの一部が実はLGPLに則っていないんじゃないの?とのことで、libfaacを含んだFFmpegは再配布できないようになりました。ヒー
http://archives.free.net.ph/message/20090427.234537.0908798b.ja.html
faad2は大丈夫ということで、今回より、AACのデコード(入力)はできますが、AACのエンコード(出力)はできません。
携帯用の3GP動画など、音声にAACのエンコードが必要な方はこちらの旧版をお使い下さい。
2009/05/16 追記
Nero AAC コーデックを使用した、音声AAC動画の作成方法を、こちらの記事に書きましたので、参考にしてください。
x264+MP3やXvid+MP3なんていうのは問題なく作成できます。
前置きが長くなりましたが、さぁどうぞ。
ffmpeg_bin-18822.zip
ffmpeg_bin_pentium4-18822.zip (Pentium4最適化版)
ffmpeg_bin_core2-18822.zip (Core2最適化版)
ffmpeg_bin_athlon64-18822.zip (Athlon64最適化版)
ffmpeg_bin_phenom-18822.zip (Phenom最適化版)
以下のライブラリをアップデートしました。
x264 rev.1148
今回も自前でビルドしたMinGW gcc4.3.3を使用しています。
バイナリはどれを使っても大丈夫だと思いますが、SSE2に対応していないCPU(Sempronの一部など)をお使いの方は、最適化無し版を使ってみてください。
zipファイルを解凍すると、ffmpeg.exeが出てきますので、携帯動画変換君のcoresフォルダに置くなり、単体で使うなりしてください。
pthreadGC2.dllは不要です。
携帯動画変換君のffmpeg.exeとは、オプションの互換性がありませんので、上書きする際はご注意ください。
携帯動画変換君の設定は、こちらの記事を参考にしてください。
FFmpegのコンパイルは、こちらの記事を参考にしてください。
コンパイル環境:MinGW gcc4.3.3
各ライブラリのバージョンは、以下の通りです。
nasm-2.05.1
yasm-0.8.0
pthreads-w32 release 2.9.0
zlib-1.2.3
faad2-2.7
gsm-1.0.12
lame-398-2
libnut-661
libogg-1.1.3
libvorbis-1.2.0
libtheora-1.0
x264 rev.1148
xvidcore-1.2.1
最適化オプションは、以下のようにしています。
configureのオプションに--enable-smallを付けると、gccのオプションに-Osが付き、-O4にしても無駄なことが分かりましたので、-O4は外しました。
--enable-smallを付けなければ、gccのオプションに-O3が付きます。
最適化無し版
--extra-cflags="-mtune=generic -mno-sse2"
Pentium4最適化版
--extra-cflags="-mtune=pentium4 -mfpmath=sse -msse"
Core2最適化版
--extra-cflags="-mtune=core2 -mfpmath=sse -msse"
Athlon64最適化版
--extra-cflags="-mtune=athlon64 -mfpmath=sse -msse"
Phenom最適化版
--extra-cflags="-mtune=amdfam10 -mfpmath=sse -msse"
configureオプションは以下の通りです。
$ ./configure --enable-memalign-hack --enable-postproc --enable-swscale --enable-gpl --enable-libfaad --disable-decoder=aac --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --disable-ffserver --disable-ffplay --enable-avisynth --enable-small --enable-pthreads --extra-ldflags=-static --extra-cflags="-mtune=athlon64 -mfpmath=sse -msse -fno-tree-ch -fno-common"
※--extra-cflagsは、最適化の種類により異なります。
configureのメッセージはこちら。
PSP用にエンコしてたから残念です。
neroでaacにすれば最新のffmpegでも大丈夫ですよ
コメントありがとうございます。
Nero AAC コーデックを使って、音声AACの3GP動画を作ってみました。
最新の記事を投稿しましたので、ぜひ試してみてください。
旧版のFFmpegでも画質はたいして違わないのですが、なんとなく最新版を使いたくなるんですよね…。
今気づいたのですが、libgsmが1.0.12から1.0.13に更新されていました。パッチの位置も若干変わっているかんじです。
toastは相変わらずだめでしたが…。
一応報告しておきます。
libgsmは気がつきませんでした。
情報ありがとうございました。