En este pequeño manual indico como instalar los codecs necesarios para poder convertir las tus vídeos de un formato a otro.
Estas librerías no se encuentran en los servidores ya que por temas legales no les permiten tenerlos, al menos eso entendí, pedo si se pueden instalar a mano y utilizarlos de forma responsable, sin perjudicar los derechos de autor, aquí explico como convertir tus propios vídeos de un formato a otro 🙂
Esta información está sacada de:
https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
Uso
El ejecutable binario se encuentra en ~/bin eso quiere decir que para usarlo se hace de la siguiente manera:
cd ~/bin && ./ffmpeg -i ~/input.mp4 ~/videos/output.mkv
O bien:
/home/yourusername/bin/ffmpeg -i ../input.mp4 ../videos/output.mkv
Instalación
Primero descargamos y actualizamos todo el repositorio:
mkdir ~/ffmpeg_sources cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz wget http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2 wget https://github.com/mstorsjo/fdk-aac/zipball/master/fdk-aac.zip wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz wget http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz wget http://webm.googlecode.com/files/libvpx-v1.3.0.tar.bz2 wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
También lo puedes descargar desde mi repositorio si no funcionara:
wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/yasm-1.3.0.tar.gz wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/last_x264.tar.bz2 wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/fdk-aac.zip wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/lame-3.99.5.tar.gz wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/opus-1.1.tar.gz wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/libvpx-v1.3.0.tar.bz2 wget http://sefirosweb.servehttp.com/wp-content/uploads/repositorio/pack-codecs/ffmpeg-snapshot.tar.bz2
Actualizamos las dependencias
sudo apt-get update sudo apt-get -y --force-yes install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev \ libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev \ libxcb-xfixes0-dev pkg-config texi2html zlib1g-dev
Y procedemos a instalar los codecs
Yasm
cd ~/ffmpeg_sources tar xzvf yasm-1.3.0.tar.gz cd yasm-1.3.0 ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" make make install make distclean
libx264
cd ~/ffmpeg_sources tar xjvf last_x264.tar.bz2 cd x264-snapshot* PATH="$HOME/bin:$PATH" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static PATH="$HOME/bin:$PATH" make make install make distclean
libx265
sudo apt-get install cmake mercurial cd ~/ffmpeg_sources hg clone https://bitbucket.org/multicoreware/x265 cd ~/ffmpeg_sources/x265/build/linux PATH="$HOME/bin:$PATH" cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source make make install make distclean
libfdk-aac
sudo apt-get install unzip cd ~/ffmpeg_sources unzip fdk-aac.zip cd mstorsjo-fdk-aac* autoreconf -fiv ./configure --prefix="$HOME/ffmpeg_build" --disable-shared make make install make distclean
libmp3lame
sudo apt-get install nasm cd ~/ffmpeg_sources tar xzvf lame-3.99.5.tar.gz cd lame-3.99.5 ./configure --prefix="$HOME/ffmpeg_build" --enable-nasm --disable-shared make make install make distclean
libopus
cd ~/ffmpeg_sources tar xzvf opus-1.1.tar.gz cd opus-1.1 ./configure --prefix="$HOME/ffmpeg_build" --disable-shared make make install make distclean
libvpx
cd ~/ffmpeg_sources tar xjvf libvpx-v1.3.0.tar.bz2 cd libvpx-v1.3.0 PATH="$HOME/bin:$PATH" ./configure --prefix="$HOME/ffmpeg_build" --disable-examples --disable-unit-tests PATH="$HOME/bin:$PATH" make make install make clean
ffmpeg
cd ~/ffmpeg_sources tar xjvf ffmpeg-snapshot.tar.bz2 cd ffmpeg PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \ --prefix="$HOME/ffmpeg_build" \ --pkg-config-flags="--static" \ --extra-cflags="-I$HOME/ffmpeg_build/include" \ --extra-ldflags="-L$HOME/ffmpeg_build/lib" \ --bindir="$HOME/bin" \ --enable-gpl \ --enable-libass \ --enable-libfdk-aac \ --enable-libfreetype \ --enable-libmp3lame \ --enable-libopus \ --enable-libtheora \ --enable-libvorbis \ --enable-libvpx \ --enable-libx264 \ --enable-libx265 \ --enable-nonfree PATH="$HOME/bin:$PATH" make make install make distclean hash -r