domingo, 13 de outubro de 2013

Instalando o mais recente FFMPEG no Ubuntu 12.10

(Adaptado de: "Install FFMPEG on Ubuntu From Source" e "Making use of /usr/local/lib")

Tenho um VPS com Ubuntu 12.10 e precisava usá-lo para fazer remotamente conversões de formatos através do FFMPEG. O problema é que as distribuições oficiais via apt-get install ffmpeg não instalam realmente a última versão e sim uma versão modificada do 0.6 apenas para manter compatibilidade com outros programas. Como usar então as últimas versões do aplicativo nesse sistema, ou ainda, como utilizar outras bibliotecas não incluídas por padrão? Compilando do código-fonte. Para os não tão iniciados no mundo Linux (eu incluso), aqui vai um registro do caminho das pedras:

Comece fazendo a limpeza

Retire todas as dependências previamente instaladas via apt-get para evitar conflitos:

sudo apt-get remove ffmpeg x264 libav-tools libvpx-dev libx264-dev yasm

PS: Caso precise da biblioteca libfaac lembre-se de adicionar o repositório multiverse. Leia mais detalhes aqui

Instale as dependências

sudo apt-get update

sudo apt-get -y install autoconf build-essential checkinstall git libass-dev libfaac-dev libgpac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libtheora-dev libtool libvorbis-dev pkg-config texi2html zlib1g-dev

Instalando os pacotes

Yasm

cd

wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz

tar xzvf yasm-1.2.0.tar.gz

cd yasm-1.2.0

./configure

make

sudo checkinstall --pkgname=yasm --pkgversion="1.2.0" --backup=no --deldoc=yes --fstrans=no --default

make install

x264

cd

git clone --depth 1 git://git.videolan.org/x264

cd x264

./configure --enable-static

make

sudo checkinstall --pkgname=x264 --pkgversion="3:$(./version.sh | awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes --fstrans=no --default

make install

fdk-aac

cd

git clone --depth 1 git://github.com/mstorsjo/fdk-aac.git

cd fdk-aac

autoreconf -fiv

./configure --disable-shared

make

sudo checkinstall --pkgname=fdk-aac --pkgversion="$(date +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default

make install

libvpx

cd

git clone --depth 1 http://git.chromium.org/webm/libvpx.git

cd libvpx

./configure --disable-examples --disable-unit-tests

make

sudo checkinstall --pkgname=libvpx --pkgversion="1:$(date +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default

make install

E finalmente, o FFMPEG em si

cd

git clone --depth 1 git://source.ffmpeg.org/ffmpeg

cd ffmpeg

./configure --enable-gpl --enable-libass --enable-libfaac --enable-libfdk-aac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3

make

sudo checkinstall --pkgname=ffmpeg --pkgversion="7:$(date +%Y%m%d%H%M)-git" --backup=no --deldoc=yes --fstrans=no --default

make install

hash -r

Pronto!

Ué, e esse erro "undefined reference to `x264(...)"?"

É um problema que pode acontecer por referências erradas à biblioteca do x264. Tente:

Edite o arquivo /etc/ld.so.conf e adicione a linha "/usr/local/lib"

Execute "sudo ldconfig"

Continue a instalação do FFMPEG novamente a partir do 'make'"

ERROR: libvpx decoder version must be >=0.9.1

cd ~/libvpx

make clean

git pull

./configure

make

sudo checkinstall --pkgname=libvpx --pkgversion="$(date +%Y%m%d%H%M)-git" --backup=no --default --deldoc=yes

http://stackoverflow.com/questions/14899290/error-libvpx-decoder-version-must-be-0-9-1

Um comentário:

  1. Harrah's Resort Southern California - MapyRO
    Find Harrah's 부천 출장샵 Resort Southern California (formerly Harrah's Rincon) Casino 출장샵 & Hotel, Stateline in 계룡 출장안마 Funner, 인천광역 출장샵 CA 제주도 출장마사지 and other places to stay with

    ResponderExcluir