一 faac 编译
1 faac 的编译用到的了 aclocal ,libtool 等工具, 一开始 bootstrap 的时候老报一下变量没有定义 error: possibly undefined macro: AC_PROG_LIBTOOL , 一路查找原因发现是这两个工具出了问题,可能是当成下载MINGW的时候没有下载全, 运行一次mingw-get-setup.exe,一检查机器里只下载了一个mingw32-libtool包,后来发现还有一个msys-libtool的包没有下载 ,于是下载之后,编译通过。 如果缺少faac的补丁,下载faac-1.28.diff,然后将其复制到faac-1.28目录中,执行下面的命令 patch -p1 < faac-1.28.diff
2 cd faac-1.28
3 ./bootstrap
4 ./configure --with-mp4v2 --enable-shared --enable-static
5 make
6 make install
有个问题,这个编译只生成了一个 libfaac.a 和faac.exe 。 不知道为什么没有生成 libfaac.dll libfaac.lib 。 记得编译 x.264的时候 dll和lib都直接生成了。
二编译 ffmpeg。
./configure --disable-everything --enable-memalign-hack --enable-static --enable-shared --enable-nonfree --enable-gpl --enable-version3 --enable-w32threads --disable-avdevice --disable-muxers --disable-zlib --disable-bzlib --disable-avfilter --disable-devices --disable-encoders --disable-hwaccels --enable-small --disable-demuxers --enable-demuxer=flv --enable-demuxer=mp4 --disable-parsers --enable-parser=aac --enable-parser=h264 --enable-muxer=flv --enable-muxer=mp4 --enable-libfaac --enable-encoder=libfaac --enable-libx264 --enable-encoder=libx264 --enable-protocols --extra-cflags="-I/usr/local/include" --extra-ldflags="-L/usr/local/lib"
最后编译生成的avcodec-55.dll 中含有 libfaac.a的代码。