FFmpeg最新版(2011/12/22現在)、rev.36030(a40f6a5)のWindows用バイナリを置いておきます。
内蔵AACエンコーダは、まだ実験段階のため、以前使用していたlibfaacや、neroAacEncに比べると音質は良くないです。
まともに動作するようになるまでは、neroAacEncを使用した音声AAC動画の作成方法を、こちらの記事に書きましたので、参考にしてください。
また、x264について、一番多く質問が寄せられるエラーの説明を記事にしましたので、思い当たる方は、ぜひご一読ください。
x264のエンコードでエラー(Error while opening encoder for output stream #0.0)
ffmpeg_bin-36030.zip
ffmpeg_bin_pentium4-36030.zip (Pentium4最適化版)
ffmpeg_bin_core2-36030.zip (Core2最適化版)
ffmpeg_bin_athlon64-36030.zip (Athlon64最適化版)
ffmpeg_bin_phenom-36030.zip (Phenom最適化版)
以下のライブラリをアップデートしました。
polarssl-1.1.0-rc1
libvpx-v0.9.7-p1-220
バイナリはどれを使っても大丈夫だと思いますが、SSE2に対応していないCPU(Duron、Sempronの一部、Pentium3など)をお使いの方は、最適化無し版を使ってみてください。
最適化無し版でもエラーが出る場合は、サポート外とします。
zipファイルを解凍すると、ffmpeg.exeが出てきますので、携帯動画変換君のcoresフォルダに置くなり、単体で使うなりしてください。
携帯動画変換君のffmpeg.exeとは、オプションの互換性がありませんので、上書きする際はご注意ください。
FFmpegのコンパイルは、以下の記事を参考にしてください。
FFmpegのコンパイル (2011/07/31) w32threads
コンパイル環境:MinGW gcc4.6.2
binutils-2.22
mingwrt-3.20
w32api-3.17
各ライブラリのバージョンは、以下の通りです。
nasm-2.09.10
yasm-1.2.0
zlib-1.2.5
bzip2-1.0.6
libcdio-0.84git-2fea515
gsm-1.0.13
libmodplug-0.8.8.4
lame-3.99.3
opencore-amr-0.1.2
vo-aacenc-0.1.1
vo-amrwbenc-0.1.1
polarssl-1.1.0-rc1
rtmpdump-2.4-20111115 PolarSSL版
libogg-1.3.0
aoTuV Beta6.03 (libvorbis-1.3.2)
libtheora-1.1.1
speex-1.2rc1
libvpx-v0.9.7-p1-220
x264 rev.2120 (make fprofiled)
xvidcore-1.3.2
libiconv-1.13.1
freetype-2.4.8
expat-2.0.1
fontconfig-2.8.0
fribidi-0.19.2
libass-0.10.0
最適化オプションは、以下のようにしています。
最適化無し版
--extra-cflags="-march=i686 -mtune=generic"
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-gpl --enable-version3 --enable-avisynth --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libcdio --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-librtmp --enable-libspeex --enable-libvorbis --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libx264 --enable-libxvid --disable-ffplay --disable-ffprobe --disable-ffserver --enable-w32threads --extra-ldflags=-static --extra-cflags="-mtune=athlon64 -mfpmath=sse -msse" --optflags="-O2 -finline-functions"
※--extra-cflagsは、最適化の種類により異なります。
2011年12月22日
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/52205018
※言及リンクのないトラックバックは受信されません。
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/52205018
※言及リンクのないトラックバックは受信されません。
この記事へのトラックバック
ffmpeg.exe -y -i INPUT.aac -acodec copy -i INPUT.mp4 -vcodec copy -f mp4 OUTPUT.mp4
どうやら、「-acodec copy」を指定すると、「Unknown decoder 'copy'」というエラーになるようです。
Helpは、「-acodec codec force audio codec ('copy' to copy stream)」のままなので、ffmpeg自体の不具合かhelpの更新漏れだと思いますが、報告しておきます。
どのrev.からか覚えていないのですが、オプションの順番によって動作が変わってしまうようになりました。
「-acodec copy」を「-i INPUT.mp4」の後ろに移動して、
ffmpeg.exe -y -i INPUT.aac -i INPUT.mp4 -acodec copy -vcodec copy -f mp4 OUTPUT.mp4
で試してみてください。
私も以前にハマりました。
もしこれでダメでしたら、エラーメッセージも載せていただくと、解決のヒントになるかもしれません。
検索から流れ着いたものです
当方も動画と音声の結合で詰みかけていましたが、
あべちんさんのおかげで解決できました。
大変ありがとうございましたm_m
コメントありがとうございます。
だいぶ前の記事ですが、お役に立ててよかったです。
不定期で更新していますので、ぜひまたお越しください。