Before compile FFmpeg we should have necessary external codecs.
Note. In order not to litter in the standard places, we will create separate folders for
header and lib files of codecs (here it will be <incl> <libs>).
Get the source code. The latest stable version is 3.97:
http://prdownloads.sourceforge.net/lame/lame-3.97.tar.gz?download
Example commands:
tar xzvf lame-3.97.tar.gz
cd lame-3.97
./configure --disable-shared --enable-static
make
copy include/lame.h to <incl>/lame
copy libmp3lame/.libs/libmp3lame.a to <libs>
copy libmp3lame/.libs/libmp3lame.la to <libs>
Download the latest version:
http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.0.tar.bz2
Example commands:
tar xjvf amrnb-7.0.0.0.tar.bz2
cd amrnb-7.0.0.0
./configure --enable-static --disable-shared
make
copy *.h to <incl>/amrnb
copy ./libs/libamrnb.a to <libs>
copy ./libs/libamrnb.la to <libs>
Download the latest version:
http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.2.tar.bz2
Example commands:
tar xfvj amrwb-7.0.0.2.tar.bz2
cd amrwb-7.0.0.2
./configure --enable-static --disable-shared
make
copy *.h to <incl>/amrwb
copy ./libs/libamrwb.a to <libs>
copy ./libs/libamrwb.la to <libs>
Get the source code. The latest version is 1.26:
http://prdownloads.sourceforge.net/faac/faac-1.26.tar.gz?download
Example commands:
tar xzvf faac-1.26.tar.gz
cd faac
./bootstrap
./configure --without-mp4v2 --enable-static --disable-shared
make
copy include/faac.h to <incl>
copy include/faaccfg.h to <incl>
copy libfaac/.libs/libfaac.a to <libs>
copy libfaac/.libs/libfaac.la to <libs>
Get the source code. The latest version is 2.6:
http://prdownloads.sourceforge.net/faac/faad2-2.6.tar.gz?download
Example commands:
tar xzvf faad2–2.6.tar.gz
cd faad2
Under Linux autors advise run:
autoreconf -vif
./configure --enable-static --disable-shared
make
but, if ./libfaad/.libs/libfaad.a NOT created try typical way:
./bootstrap
./configure --enable-static --disable-shared
make
here is can be error, but we needs only compiled faad lib.
copy include/faad.h to <incl>
copy include/neaacdec.h to <incl>
copy libfaad/.libs/libfaad.a to <libs>
copy libfaad/.libs/libfaad.la to <libs>
Now we are ready to compile ffmpeg.
Here is source:
http://ringfinity.com/dl/video/ffmpeg/ffmpeg_10650.tar.gz
tar xzvf ffmpeg_10650.tar.gz
cd ffmpeg_10650
./configure --enable-memalign-hack --enable-libmp3lame --enable-libamr-nb --enable-libamr-wb --enable-libfaac --enable-libfaad --enable-gpl
--cc="gcc -L/<full_path_to <libs>> -I<full_path_to <incl>>"
You should see enabled external codecs:
.........
[liba52 support no
liba52 dlopened no
libamr-nb support yes
libamr-wb support yes
libdc1394 support no
libfaac enabled yes
libfaad enabled yes
libfaad dlopened no
libgsm enabled no
libmp3lame enabled yes
libnut enabled no
libogg enabled no
make
After normal compilation ffmpeg will be place in root of this dir.