Compilación de FFmpeg en Linux
En el caso de que ya exista una versión de FFmpeg y x264 instalada, es necesario eliminarlas para no causar conflictos con la nueva versión que se instalará. Para ello, se deben ejecutar los siguientes comandos:
sudo apt-get remove ffmpeg x264 libx264-dev
Para compilar FFmpeg, se necesita una serie de librerías, las cuales se pueden instalar con el siguiente comando:
sudo apt-get updatesudo apt-get install build-essential git-core checkinstall yasm texi2html libfaac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev zlib1g-dev
Para instalar la librería x264, se deben ejecutar los siguientes comandos, los cuales descagarán la última versión desde los repositorios git de ffmpeg y luego se compilará e instalará la versión.
cd
git clone git://git.videolan.org/x264
cd x264
./configure
make
sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes --fstrans=no --default
Para instalar FFmpeg, se deben ejecutar los siguientes comandos, los cuales descargan, compilan e instalan la última versión de FFmpeg.
cd
git clone git://git.videolan.org/ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-x11grab
make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:$(date +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default
hash x264 ffmpeg ffplay ffprobe
Una vez instalado, para realizar pruebas se pueden utilizar los siguientes videos:
- AVI: http://develop.prontus.cl/archivos/xcode/VideoPrueba.avi
- WMV: http://develop.prontus.cl/archivos/xcode/VideoPrueba.wmv
- FLV: http://develop.prontus.cl/archivos/xcode/VideoPrueba.flv
- 3GP: http://develop.prontus.cl/archivos/xcode/VideoPrueba.3gp
- MPEG: http://develop.prontus.cl/archivos/xcode/VideoPrueba.mpeg
El comando de FFmpeg para probar, es el siguiente:
ffmpeg -i VideoPrueba.avi -y -vcodec libx264 -flags +loop -cmp +chroma -partitions +parti8x8+parti4x4+partp8x8+partb8x8 -me_method umh -subq 8 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 2 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -directpred 3 -trellis 1 -coder 0 -bf 0 -refs 1 -flags2 -wpred-dct8x8+mbtree -level 30 -maxrate 10000000 -bufsize 10000000 -wpredp 0 -g 25 -b 600000 -acodec libfaac -ar 44100 -ab 96k -f mp4 VideoPrueba.mp4