Questa guida ha lo scopo di mostrare come compilare VLC e FFmepg su Centos 6 allo scopo di poter codificare tramite VLC un video in formato webm con codec VP8.
I passi seguenti mostrano come compilare le librerie necessarie e i due programmi.
Installazione repository addizionali
yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Installazione dipendenze
yum install autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig wget opencv zlib-devel dbus-devel lua-devel zvbi libdvdread-devel libdc1394-devel libxcb-devel xcb-util-devel libxml2-devel mesa-libGLU-devel pulseaudio-libs-devel alsa-lib-devel libgcrypt-devel qt-devel yum --enablerepo=epel install yasm libva-devel libass-devel libkate-devel libbluray-devel libdvdnav-devel libcddb-devel libmodplug-devel yum --enablerepo=rpmforge install a52dec-devel libmpeg2-devel live555-devel
Creazione struttura cartelle
I sorgenti saranno compulati in /opt/source, VLC sarà installato in /opt/vlc
mkdir -p /opt/source/{ffmpeg,vlc} /opt/vlc
Compilazione
x264
cd /opt/source/ffmpeg/ git clone git://git.videolan.org/x264 cd x264 ./configure --enable-shared make make install
libfdk_aac
cd /opt/source/ffmpeg/
git clone --depth 1 git://github.com/mstorsjo/fdk-aac.git
cd fdk-aac
autoreconf -fiv
./configure --enable-shared
make
make install
lame
cd /opt/source/ffmpeg/ wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz tar xzvf lame-3.99.5.tar.gz cd lame-3.99.5 ./configure --enable-shared --enable-nasm make make install
libogg
cd /opt/source/ffmpeg/ wget http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz tar xzvf libogg-1.3.0.tar.gz cd libogg-1.3.0 ./configure --enable-shared make make install
libtheora
cd /opt/source/ffmpeg/ wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz tar xzvf libtheora-1.1.1.tar.gz cd libtheora-1.1.1 ./configure --enable-shared make make install
libvorbis
cd /opt/source/ffmpeg/ wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.gz tar xzvf libvorbis-1.3.3.tar.gz cd libvorbis-1.3.3 ./configure --enable-shared make make install
libvpx
cd /opt/source/ffmpeg/ git clone http://git.chromium.org/webm/libvpx.git cd libvpx ./configure --enable-shared make make install
ffmpeg
cd /opt/source/ffmpeg/ git clone git://source.ffmpeg.org/ffmpeg cd ffmpeg ./configure --enable-gpl --enable-libfdk_aac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --disable-static --enable-shared make make install
libmad
cd /opt/source/ffmpeg/ wget ftp://ftp.mars.org/pub/mpeg/libmad-0.15.1b.tar.gz tar zxvf libmad-0.15.1b.tar.gz cd libmad-0.15.1b ./configure make make install
Nota: se il comdando ./configure non dovesse completarsi con successo bisogna aprire il file configure con un editor di testo e commentare (con #) o eliminare la linea seguente, e poi rifare il ./configure
optimize="$optimize -fforce-mem"
vlc
cd /opt/source/vlc git clone git://git.videolan.org/vlc.git cd vlc ./bootstrap ./configure --prefix=/opt/vlc --enable-run-as-root --enable-live555 make make install
Nota 1: se il comdano ./configure non dovesse completarsi con successo potrebbe essere dovuto al fatto che il percorso pkgconfig non sia definito. Bisogna quindi dare export di /usr/local/lib, così che VLC possa rilevare le ultime librerie compilate, e poi rifare il ./configure
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH export PKG_CONFIG_PATH
Nota2: se il comando make non dovesse trovare correttamente le librerie libav bisogna aggiungere il percorso /usr/local/lib nel file ld.so.conf creando un file apposito che venga incluso e aggiornare il percorso
echo /usr/local/lib > /etc/ld.so.conf.d/avcode.conf ldconfig
Nota 3: se il comando make non dovesse completarsi con successo bisogna fare un make clean (per pulire quanto compilato precedentemente), dare il seguente ./configure e continuare la procedura come sopra
./configure --prefix=/opt/vlc --enable-run-as-root --enable-live555 --disable-pulse --disable-alsa --disable-jpeg
Aggiunta del percorso di VLC al PATH
Arrivati a questo punto è possibile avviare VLC con il comando /opt/vlc/bin/vlc o aggiungendolo al PATH, temporaneamente lanciando il comando
PATH=$PATH:$HOME/bin:/opt/vlc/bin
oppure definitivamente aggiungendo /opt/vlc/bin al PATH nel file ~/.bash_profile per ogni utente presente