なんとな~くしあわせ?の日記

JavaとかAWSの設定とかをメモする技術ブログ

ffmpegをまたコンパイル - fedora15で

境界線上のホライゾンエンコードしようとしたら瞬間的なメモリ不足のせいか、途中でエンコードが止まった。
え、どういうことなの…?

というわけで最小構成でlinux上にffmpegをコンパイル
オプションのリスト

./configure --enable-libmp3lame --enable-gpl --enable-nonfree \
--enable-libx264 --enable-libfaac                             \
--extra-cflags="-mtune=amdfam10 -mfpmath=sse -msse -fno-strict-aliasing" \
--arch=x86_64 --disable-ffserver --disable-ffplay --disable-ffprobe --enable-small \
--enable-memalign-hack

あんまり意味わからずにつけてるオプションもあるが

    • enable-libmp3lame はmp3のエンコードに必要なので
    • enable-libx264  はH.264形式でのエンコードに必要なので
    • enable-libfaac  は動画の音声がAAC形式なので
    • extra-cflags   の中身はCPU別の最適化だと思う
    • enable-memalign-hack はnasm,yasmで高速処理


あとlibx264は結局シェアードライブラリでインストールした。下みたいにライブラリが/usr/local/lib以下にあればffmpegのconfigureが認識してくれる。はず。

install -d /usr/local/bin
install x264 /usr/local/bin
install -d /usr/local/include
install -d /usr/local/lib
install -d /usr/local/lib/pkgconfig
install -m 644 x264.h /usr/local/include
install -m 644 x264_config.h /usr/local/include
install -m 644 x264.pc /usr/local/lib/pkgconfig
ln -f -s libx264.so.120 /usr/local/lib/libx264.so
install -m 755 libx264.so.120 /usr/local/lib