I have found a pretty helpful article for ffmpeg recompile: http://fozzolog.fozzilinymoo.org/tech/2009/11/recompiling-ffmpeg-for-fedora-12-to-add-faac-support.html . However, it looks like the instructions were incomplete.
What we do now is:
yumdownloader --source ffmpeg sudo rpm -ihv [downloaded_srpm] sudo gedit rpmbuild/SPECS/ffmpeg.spec
Change Release: line by adding to the end of it:
Release: 5.%{svn}svn%{?dist}_alec
ffmpeg real Fedora 12 dependencies:
sudo yum -y install libmatroska-devel libmkv-devel mkvtoolnix-gui ogmrip themonospot-plugin-mkv themonospot amrnb-tools amrnb-devel amrnb amrwb-tools amrwb-devel amrwb bzip2-devel bzip2-libs bzip2 libdc1394-tools libdc1394-devel libdc1394 dirac-libs dirac-devel dirac faac-devel faac faad2-libs.x86_64 faad2-devel faad2 gsm-tools gsm-devel gsm lame-libs lame-devel lame twolame-libs twolame-devel twolame openjpeg-libs openjpeg-devel openjpeg imagemagick schroedinger-devel schroedinger speex-tools speex-devel speex libtheora-devel theora-tools byzanz istanbul libtheora libvorbis-devel vorbisgain liboggz-devel libfishsound vorbis-tools x264-libs x264-devel x264 h264enc imlib2-devel libvdpau-devel opencore-amr-devel SDL-devel texi2html xvidcore-devel yasm
Build:
sudo rpmbuild -ba ~/rpmbuild/SPECS/ffmpeg.spec --with faac --with opencore-amr
Install
sudo yum localinstall --nogpgcheck ~/rpmbuild/RPMS/x86_64/ffmpeg-{libs-,}0.5-5.20091026svn.fc12_alec.x86_64.rpm
Need devel for future builds?
sudo yum localinstall --nogpgcheck ~/rpmbuild/RPMS/x86_64/ffmpeg-devel-0.5-5.20091026svn.fc12_alec.x86_64.rpm
If it does not work, you are using Bubuntu than …
[alec@localhost ~]$ ffmpeg -h | grep aac FFmpeg version SVN-r20372, Copyright (c) 2000-2009 Fabrice Bellard, et al. built on Feb 21 2010 16:59:54 with gcc 4.4.3 20100127 (Red Hat 4.4.3-4) configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' --extra-version=rpmfusion --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-bzlib --enable-libdc1394 --enable-libdirac --enable-libfaac --enable-nonfree --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avfilter-lavf --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect libavutil 50. 3. 0 / 50. 3. 0 libavcodec 52.37. 1 / 52.37. 1 libavformat 52.39. 2 / 52.39. 2 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1. 4. 1 / 1. 4. 1 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 aac_main E..A. aac_low E..A. aac_ssr E..A. aac_ltp E..A.
you rpm -ivh a .src.rpm not yum install.
True, corrected, thx
i’ve made above for fedora 11, the ‘fmpeg -h | grep aac’ show the same as showed above but when i type:
ffmpeg -y -i test.avi -acodec aac -vcodec libx264 -f mp4 -s cif -vpre /usr/share/ffmpeg/libx264-default.ffpreset -threads 0 -s 512×368 out.mp4
it show:
Unknown encoder ‘aac’
Also i tried type: faac, libfaac and it show that encoder unknown
What must i do in this case?
Instead of “-acodec aac”, try using:
-acodec libfaac
or even explicitly something like:
-acodec libfaac -ab 64k -ac 2
and, probably, choose between “-s cif ” and “-s 512×368” …
i’ve tried following possible names of encoder: aac, faac, libfaac and always i got ‘Unknown encoder’