Webradio : MPD + Icecast2 + Pitchfork
Bien le bonjour,
Je viens de finir de configurer ma radio web. Mon but était de rendre ma bibliothèque musicale accessible n’importe où, depuis n’importe quel navigateur.
Ce qu’on a besoin :
- MPD permet de générer un flux musical sur une adresse et un port précis depuis un dossier rempli d’mp3.
- Icecast2 va nous permettre de pouvoir rendre ce flux accessible depuis l’internet.
- Pitchfork est une interface web permettant d’administrer le serveur mpd à distance (parmis tant d’autre).
MPD
installation :
$ sudo apt-get install mpd
Configuration :
$ sudo vim /etc/mpd.conf
Indiquez le chemin de votre librairie musicale :
music_directory "/media/MUSIC/Music!"
Commentez le « user » :
#user "mpd"
Sellectionnez le port de votre choix :
port "6600"
Dans la partie Audio Outpout, vous avez le choix de renseigner plusieurs sorties. Si vous voulez sortir le son sur les enceintes locales du serveur mpd (pc faisant office de chaîne hifi), ajoutez ceci :
audio_output {
type "alsa"
name "My ALSA Device"
device "hw:0,0" # optional
format "44100:16:2" # optional
}
Vous pouvez maintenant directement passer à l’installation de pitchfork, sans passer par la case « icecast ». Ainsi vous pourrez administrer votr pc « chaîne hifi » depuis n’importe quel navigateur !
Si votre but est d’accéder au flux depuis internet, et non en local, ajoutez dans /etc/mpd.conf :
audio_output {
type "shout"
name "Ma radio qui déchire !"
host "localhost"
port "8000"
mount "/mpd.ogg"
password "votre_mot_de_passe"
quality "7.0"
bitrate "128"
format "44100:16:1"
#user "source" # optional
#description "My Stream Description" # optional
#genre "jazz" # optional
#public "no" # optional
}
On démarre le service mpd :
$ sudo /etc/init.d/mpd start
On génére la base de données contenant tout les mp3 du dossier indiqué dans le mpd.conf :
sudo mpd --create-db
Pour ceux qui ont configurer mpd.conf pour que le son sorte sur les enceintes locales peuvent tester leur serveur avec ncmpc
$ sudo apt-get install ncmpc
$ ncmpc -c -P votre_password_mp
Vous devriez entendre votre playlist depuis vos enceintes.
Icecast2
installation :
$ sudo apt-get install icecast2
la configuration se fait via le fichier /etc/icecast2/icecast.xml :
$ sudo vim /etc/icecast2/icecast.xml
Configurez y les lignes suivantes :
<hostname>mon.domaine.org</hostname>
Soit un dyndns, ou alors votre ip.
<!-- Sources log in with username 'source' -->
<source-password>votre_password_mpd.conf</source-password>
<!-- Admin logs in with the username given below -->
<admin-user>admin</admin-user>
<admin-password>choisissez_mdp_admin</admin-password>
</authentication>
Ensuite ajoutez le point de montage suivant, toujours dans le icecast.xml :
<mount>
<mount-name>/mpd.ogg</mount-name>
<authentication type="htpasswd">
<option name="filename" value="/var/mpduser"/>
<option name="allow_duplicate_users" value="0"/>
</authentication>
</mount>
Vu que dans mon cas, je ne veux qu’un seul utilisateur de connecté, j’ai décidé d’authentifier l’accès au flux.
On créé le fichier qui va stocker les identifiants de connexion :
$ sudo mkdir /var/mpduser
On change son user et son group afin que seul icecast y accede :
$ sudo chown icecast2:icecast /var/mpduser
On démarre icecast :
$ sudo /etc/init.d/icecast2 start
Désormais, le flux audio est accessible depuis http://localhost:8000.
Sur l’interface d’icecast, identifiez vous dans la partie administration, et dans « Mount point », ajoutez un utilisateur.
Cliquez maintenant sur le petit cadenas, loggez vous avec votre nouvel utilisateur, et c’est partie !
Pitchfork
Pitchork va nous permettre de contrôler notre playlist, lancer, stopper le serveur mpd. Il existe plein d’autre clients très efficaces comme ncmp en console, gmpc , client graphique pour gnome, …
Mais l’interet d’opter pour un client web comme pitchfork, c’est de pouvoir manager le flux depuis n’importe où. Par contre il est nécessaire d’avoir un serveur web d’installé.
Plaçons nous dans le dossier web :
$ cd /var/www
On télécharge et décompresse pitchfork :
sudo wget http://pitchfork.remiss.org/files/pitchfork-0.5.4.tar.bz2
sudo tar -xvjf pitchfork-0.5.4.tar.bz2
sudo mkdir music
sudo mv pitchfork-0.5.4 jukebox
Vous pouvez maintenant contrôle mpd à l’adresse suivant : http://localhost/music
Sources : grep|grrl, le blog d’Effraie, mpd, doc icecast
Laisser une réponse