Icecast est un projet mené par la fondation Xiph.org permettant de réaliser du streaming audio sur un réseau. Il est bâti sur l'architecture client/serveur : un client diffuse un flux audio, qui est lu par le serveur Icecast. Ce flux est ensuite encodé et diffusé aux clients qui s'y connectent. Les protocoles HTTP et ShoutCast sont supportés pour la diffusion.
La configuration de base se fait par la modification du fichier /etc/icecast2/icecast.xml. Les modifications à apporter sont minimes :
Enfin, éditer le fichier /etc/default/icecast2 en remplaçant false par true sur la dernière ligne, ce qui permet d'activer le mode daemon. Le serveur est maintenant opérationnel. Pour le lancer :
sudo /etc/init.d/icecast2 start
Dans un navigateur, tapez http://<votre_hostname>:<votre_port>/, vous devriez arriver sur l'interface d'administration
Il faut maintenant configurer le client diffusant le flux audio.
Une fois MPD correctement configuré, il faut éditer cette section dans /etc/mpd.conf
#audio_output { # type "shout" # encoding "ogg" # optional # name "My Shout Stream" # host "localhost" # port "8000" # mount "/mpd.ogg" # password "hackme" # quality "5.0" # bitrate "128" # format "44100:16:1" # protocol "icecast2" # optional # user "source" # optional # description "My Stream Description" # optional # genre "jazz" # optional # public "no" # optional # timeout "2" # optional #}
Ce qu'il faut modifier :
Le reste est à modifier selon votre convenance.Relancer ensuite MPD pour qu'il prenne en compte les modifications :
sudo /etc/init.d/mpd restart
C'est terminé ! Vous pouvez ecouter votre webradio avec le client de votre choix.
Audacious2 intègre un plugin de sortie icecast
Pour diffuser une webradio, il est aussi possible de :