Gestion des dépendances préalables
On a d’abord besoin du nécessaire pour récupérer les sources, configurer et compiler les logiciels :
- sudo apt-get install mercurial autoconf pkg-config libfftw3-dev
On installe ensuite le language dans lequel liquidsoap est écrit (Ocaml) :
- sudo apt-get install ocaml libcamomile-ocaml-dev ocaml-findlib libxmlm-ocaml-dev libpcre-ocaml-dev libmagic-ocaml-dev camlidl
On installe ensuite l’ensemble des librairies audio/vidéo nécessaires au bon fonctionnement de liquidsoap :
-
libasound2-dev
(librairie de développement pour ALSA) ; -
libao-dev
(librairie de développement pour ALSA) ; -
libtagc0-dev
(permettant de gérer les métadatas des fichiers audios ID3, vorbis comments...) ; -
libmad0-dev
(permettant de décoder les mp3) ; -
libmp3lame-dev
(permettant de gérer le format mp3 en encodage) ; -
libogg-dev
(permettant de gérer le conteneur ogg) ; -
libvorbis-dev
(permettant de gérer le format ogg/vorbis) ; -
libspeex-dev
(permettant de gérer le format ogg/speex) ; -
libflac-dev
(permettant de gérer le format ogg/flac) ; -
libfaac-dev
(permettant de gérer le format aac - encodeur) ; -
libfaad-dev
(permettant de gérer le format aac - décodeur) ; -
libtheora-dev
(permettant de gérer le format ogg/theora) ; -
libschroedinger-dev
(permettant de gérer le format dirac) ; -
libsoundtouch1-dev
(permettant de modifier les fichiers sonores indépendamment : pitch et durée par exemple) ; -
libsamplerate0-dev
(permettant de convertir le sample rate de fichiers sonores) ; -
libgavl-dev
(Librairie bas niveau audio/video permettant de créer des APIs. Permet notamment d’avoir à disposition les informations concernant le colorspace, sample rate, configuration multi canal et autre des fichiers audio et vidéo) ; -
ladspa-sdk
(API pour plugins audio permettant d’avoir des effets) ; -
dssi-dev
(API pour plugins audio et principalement pour les fichiers midi) ; -
festival
(si on souhaite pouvoir utiliser les fonctionnalités de text-to-speech) ; -
liblo-dev
(si on souhaite activer OSC) ; -
libsdl-ocaml-dev
(si on souhaite activer SDL) ; -
libgstreamer-plugins-base0.10-dev
;
Chacun de ces paquets installés ajoutera ses dépendances personnelles.
NB :
- Il est nécessaire sur Debian d’ajouter le dépot Debian-multimedia dans votre fichier
/etc/apt/sources.list
comme ici.- Certaines de ces librairies (
libtheora-dev
etlibschroedinger-dev
notamment) sont relativement obsolètes sur Debian Lenny, il est donc nécessaire de les installer d’une autre manière. Elles ne sont donc pas dans la première commande d’installation des dépendances.
La commande à utiliser pour installer ces paquets est donc la suivante :
- sudo apt-get install libasound2-dev libao-dev libtagc0-dev libmad0-dev libmp3lame-dev libogg-dev libvorbis-dev libvorbis-dev libspeex-dev libflac-dev libfaac-dev libfaad-dev libsoundtouch1-dev ladspa-sdk libsamplerate0-dev libgavl-dev dssi-dev festival liblo-dev libsdl-ocaml-dev sox libgstreamer-plugins-base0.10-dev
Si l’on souhaite activer le support de
libtheora
et delibschroedinger
, soit on les compile manuellement comme ici, soit on a installé les dépots backports comme expliqué ici et on lance une autre commande spécifique.
La commande à exécuter dans le cas de l’utilisation des dépots backports est la suivante :
- sudo apt-get -t lenny-backports install libtheora-dev libschroedinger-dev
La dernière version de liquidsoap nécessite au minimum la version 2.0.1 de
libaacplus
si l’on souhaite utiliser ce format. Cette version n’est disponible dans aucun dépôt pour Debian Lenny, il est donc nécessaire de la compiler manuellement.
Pour ce faire, il suffit de lancer cette suite de commandes :
- # Récupération des sources de la dernière version
- cd ~
- wget http://tipok.ath.cx/downloads/media/aac+/libaacplus/libaacplus-2.0.2.tar.gz
- # Décompactage et déplacement dans le bon répertoire
- tar xvzf libaacplus-2.0.2.tar.gz
- cd libaacplus-2.0.2
- # Compilation et installation
- ./autogen.sh
- ./configure
- make
- sudo make install
Cas d’une machine desktop :
Si vous utilisez une machine de type desktop ou un portable muni d’une carte son et que vous souhaitez utiliser portaudio
, il est nécessaire d’installer portaudio19-dev
- apt-get install portaudio19-dev
Si vous souhaitez ajouter également le support de pulseaudio
, il est nécessaire d’installer libpulse-dev
:
- apt-get install libpulse-dev
Récupération, configuration, compilation et installation de Liquidsoap
On récupère ensuite les sources de liquidsoap dans notre répertoire home
:
- cd ~
- hg clone http://savonet.hg.sourceforge.net:8000/hgroot/savonet/savonet savonet
On édite ensuite le fichier listant les dépendances ocaml et options à activer :
- cd savonet
- cp PACKAGES.default PACKAGES
- nano PACKAGES
Pour une installation uniquement serveur, nous allons enlever ce qui ne sert à rien :
- ocaml-portaudio
- ocaml-pulseaudio
- ocaml-bjack
- ocaml-jack
Si on n’a pas installé manuellement les librairies citées plus haut comme posant problèmes :
- ocaml-aacplus
- ocaml-theora
- ocaml-schroedinger
Pour les désactiver, il suffit de commenter les lignes en ajoutant un dièse #
en début de ligne.
Puis on lance la compilation :
- ./bootstrap
- ./configure --disable-v4l
- make
- sudo make install
En suivant ce tutorial, vous devriez avoir à disposition liquidsoap
disposant de l’ensemble des formats d’entrée, des formats de sorties, des possibilité d’analyse de métadonnées et des possibilités de manipulation sonores possibles. Vous aurez également seulement les protocoles d’entrée / sortie nécessaire sur un serveur....
Liens utiles
- Le site officiel de Liquidsoap ;
- Librairie aac+