Documentation technique : Debian
Documentation basée sur la distribution Debian

> > Compiler les librairies multimedia utiles pour ffmpeg

Compiler les librairies multimedia utiles pour ffmpeg

Les logiciels et librairies ci-dessous permettent de disposer dans ffmpeg de différents encodeurs et décodeurs supplémentaires afin de pouvoir gérer un ensemble de types de codecs audios et vidéos plus grands (libx264/H.264, libvpx/webm, libopus/Opus, fdk-aac/AAC...).

Notes :

Vous reporter à cette explication sur l’utilisation de sudo et checkinstall

Compilation et installation de Yasm

Yasm est un assembleur (logiciel permettant de compiler) et est recommandé pour libx264 et ffmpeg lui-même.

La version disponible dans les dépôts est assez ancienne, il est préférable de le recompiler manuellement.

On va dans le répertoire des sources de logiciels :

  1. cd /usr/local/src/

On récupère la version 1.2.0 qui est nécessaire :

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

Puis on désarchive ce que l’on a récupéré et on se déplace dans son répertoire :

  1. sudo tar xzvf yasm-1.2.0.tar.gz
  2. cd yasm-1.2.0

Télécharger

On peut enfin compiler le logiciel :

  1. sudo ./configure
  2. sudo make

Télécharger

Enfin, on l’installe proprement via checkinstall en supprimant la version installée s’il y a lieu :

  1. sudo apt-get remove yasm
  2. sudo checkinstall --pkgname=yasm --pkgversion="1.2.0" --backup=no \
  3. --deldoc=yes --fstrans=no --default

Télécharger

Compilation et installation de libtheora

Cette librairie permet de disposer d’un encodeur Theora dans ffmpeg.

La version des dépots de Lenny de libtheora n’était pas à jour (elle l’est actuellement en Squeeze), il peut être intéressant de la compiler soit même pour cette distribution. On commence par installer les prérequis, dans notre cas :

  • doxygen (facultatif : pour créer la documentation API)
  • transfig (facultatif : si l’on souhaite créer une documentation imprimable)

La commande est alors :

  1. sudo apt-get install doxygen transfig

On récupère ensuite les sources à jour :

  1. cd /usr/local/src/
  2. sudo wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz

Télécharger

On désarchive ce qui a été récupéré et on se place dans le répertoire des sources

  1. sudo tar -xvzf libtheora-1.1.1.tar.gz
  2. cd libtheora-1.1.1

Télécharger

Puis on configure, compile et installe :

  1. sudo ./configure
  2. sudo make
  3. sudo checkinstall -D make install

Télécharger

Il sera ensuite possible de supprimer ce paquet en lançant la commande suivante :

  1. sudo dpkg -r libtheora

ou

  1. sudo apt-get remove libtheora

Compilation et installation de libx264

La version de la librairie libx264 dans les dépots Debian est généralement assez vieillote... Le plus simple est de la compiler nous même.

Cette librairie permet d’avoir un encodeur H.264 dans ffmpeg.

On vérifie que les prérequis sont bien installés. Dans notre cas nous avons besoin :

  • du compilateur Yasm que l’on vient de compiler ;
  • de Git car on compilera à partir des dernières sources disponibles ;
  • de la librairie gpac ;
  1. sudo apt-get install git-core libgpac-dev

La récupération des sources peut se faire de deux manières différentes :

  • sur le site de VideoLan
  • via un dépot Git (méthode que nous allons utiliser)
  1. cd /usr/local/src
  2. sudo git clone git://git.videolan.org/x264.git
  3. cd x264

Télécharger

NB : pour mettre à jour votre version locale du dépot il suffira d’aller dans le répertoire local du dépot et d’utiliser la méthode de mise à jour de Git :

  1. cd /usr/local/src/x264
  2. sudo git pull

Télécharger

Nous pouvons dorénavant configurer la compilation en utilisant l’option :

  • --enable-shared pour que la librairies puissent être utilisée facilement par d’autres programmes
  1. # Configuration
  2. sudo ./configure --enable-shared
  3. # Compilation
  4. sudo make

Télécharger

On peut enfin l’installer en vérifiant de bien désainstaller les paquets déjà présents :

  1. sudo apt-get remove libx264 libx264-dev
  2. sudo checkinstall --pkgname=x264 --pkgversion "1:0.svn`date +%Y%m%d`+`git rev-list HEAD -n 1 | head -c 7`" --backup=no --default

Télécharger

La dernière ligne de commande créera un package qui ressemblera à x264_1:0.svn20100409+25ca5b0-1_amd64.deb et l’installera ... Il est alors possible de le désinstaller proprement avec une commande du genre :

  1. sudo apt-get remove x264

La commande suivante devrait, si tout s’est bien passé, retourner le numéro de version de la librairie installée :

  1. pkg-config --modversion x264

Compilation et installation de fdk-aac

Cette librairie fournit un encodeur aac issu d’Android de meilleure qualité que libfaac.

La compilation et l’installation de libfdk-aac est relativement classique, elle ne nécessite pas grand chose de spécifique.

On récupère tout d’abord les sources, on les décompresse et on se déplace dans le répertoire nouvellement créé :

  1. cd /usr/local/src/
  2. sudo wget http://downloads.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.1.tar.gz
  3. sudo tar xvzf fdk-aac-0.1.1.tar.gz
  4. cd fdk-aac-0.1.1

Télécharger

On peut ensuite configurer et compiler la librairie avec les commandes :

  1. sudo ./configure --disable-shared
  2. sudo make

Télécharger

Enfin, on installe le contenu avec checkinstall :

  1. sudo checkinstall --fstrans=no --install=yes --pkgname="fdk-aac" --pkgversion="0.1.1" --backup=no --default

Vous pourrez bien entendu supprimer le paquet par la commande :

  1. sudo apt-get remove fdk-aac

Pour vérifier l’installation correcte de la librairie, la commande suivante devra retourner 0.1.1 :

  1. pkg-config --modversion fdk-aac

Compilation et installation de libopencore-amr

La compilation et l’installation de libopencore-amr est relativement classique, elle ne nécessite pas grand chose de spécifique.

On récupère tout d’abord les sources, on les décompresse et on se déplace dans le répertoire nouvellement créé :

  1. cd /usr/local/src/
  2. sudo wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz
  3. sudo tar xvf opencore-amr-0.1.3.tar.gz
  4. cd opencore-amr-0.1.3

Télécharger

On peut ensuite configurer et compiler la librairie avec les commandes :

  1. sudo ./configure --enable-shared
  2. sudo make

Télécharger

Enfin, on installe le contenu avec checkinstall :

  1. sudo checkinstall --fstrans=no --install=yes --pkgname="libopencore-amr" --pkgversion="0.1.3" --backup=no --default

Compilation et installation de libvoaac-enc

La compilation et l’installation de libvoaac-enc est relativement classique, elle ne nécessite pas grand chose de spécifique.

On récupère tout d’abord les sources, on les décompresse et on se déplace dans le répertoire nouvellement créé :

  1. cd /usr/local/src/
  2. sudo wget http://downloads.sourceforge.net/project/opencore-amr/vo-aacenc/vo-aacenc-0.1.1.tar.gz
  3. sudo tar xvf vo-aacenc-0.1.1.tar.gz
  4. cd vo-aacenc-0.1.1

Télécharger

On peut ensuite configurer et compiler la librairie avec les commandes :

  1. sudo ./configure --enable-shared
  2. sudo make

Télécharger

Enfin, on installe le contenu avec checkinstall :

  1. checkinstall --fstrans=no --install=yes --pkgname="libvo-aacenc" --pkgversion="0.1.1" --backup=no --default

Compilation et installation de libvo-amrwbenc

La compilation et l’installation de libvo-amrwbenc est relativement classique, elle ne nécessite pas grand chose de spécifique.

On récupère tout d’abord les sources, on les décompresse et on se déplace dans le répertoire nouvellement créé :

  1. cd /usr/local/src
  2. sudo wget http://downloads.sourceforge.net/project/opencore-amr/vo-amrwbenc/vo-amrwbenc-0.1.1.tar.gz
  3. sudo tar xvf vo-amrwbenc-0.1.1.tar.gz
  4. cd vo-amrwbenc-0.1.1

Télécharger

On peut ensuite configurer et compiler la librairie avec les commandes :

  1. sudo ./configure --enable-shared
  2. sudo make

Télécharger

Enfin, on installe le contenu avec checkinstall :

  1. sudo checkinstall --fstrans=no --install=yes --pkgname="libvo-amrwbenc" --pkgversion="0.1.1" --backup=no --default

Compilation et installation de libvpx

L’installation de la librairie libvpx est relativement classique :

  1. cd /usr/local/src
  2. sudo wget https://webm.googlecode.com/files/libvpx-v1.1.0.tar.bz2
  3. sudo tar xvjf libvpx-v1.1.0.tar.bz2
  4. cd libvpx-v1.1.0
  5. sudo ./configure --enable-shared
  6. sudo make
  7. sudo checkinstall --fstrans=no --install=yes --pkgname="libvpx" --pkgversion="1.1.0" --backup=no --default

Télécharger

La commande suivante vous donnera le numéro de version déjà installé :

  1. pkg-config --modversion vpx

Notes :

Si vous souhaitez utiliser le format webm afin de mettre à disposition des vidéos dans ce format sur un site internet, il est nécessaire d’ajouter à votre serveur web la prise en compte de ces nouveaux types de fichiers.

Pour Apache2 par exemple, nous allons créer un fichier de configuration spécifique /etc/apache2/conf.d/webm_mime.conf qui sera par la suite facilement désactivable en le supprimant si l’on souhaite faire marche arrière :

  1. sudo nano /etc/apache2/conf.d/webm_mime.conf

Puis on y ajoute ces deux lignes avant de sauvegarder :

  1. AddType video/webm .webm
  2. AddType audio/webm .weba

Télécharger

Il est ensuite nécessaire de relancer apache pour prendre ces modifications en compte avec la commande :

  1. sudo /etc/init.d/apache2 force-reload

Liens utiles et complémentaires

  • Auteur :
  • Publié le :
  • Mis à jour : 27/04/13

Aucun commentaire


Qui êtes-vous ?
Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.