MPD

Avant toute chose, je pense et j'affirme : mpd (Music Player Daemon) est tout simplement le meilleur logiciel de lecture musicale.
Son fonctionnement en mode client/serveur peut paraître un peu geek sur les bords, mais c'est loin d'être inutile, au contraire...

On peut résumer mpd comme suit :

Le serveur (mpd) : possède les fichiers musicaux et la sortie son.
Les clients : peuvent faire play, pause, stop, charger des playlists, ... bref tout ce qu'on demande à un lecteur de musique.

Concernant les client, on peut piloter sa musique à partir :

  • du serveur (mpd)
  • d'un PC sur le réseau
  • d'une télécommande (avec lirc)
  • d'un iPhone (mpod)
  • à partir de la console
  • de multiples clients graphiques, ...

Plus de sortie numérique en 10.04

Tout d'abord, il faut savoir quel "driver son" on va utiliser. Je n'aime pas trop ce terme mais on va simplifier comme ça.
Sous Linux on peut utiliser alsa (très répandu), oss (le vieux...), pulseaudio (le petit nouveau).
La carte son du Pundit-R est géré par le chipset ATI IXP 200.
Un rapide test des différents drivers classiques (alsa et oss) me montre que c'est OSS qui sort le son le plus pur et la consommation CPU la plus faible.

Avec Ubuntu 6.06 je me servais de la sortie numérique avec le driver son OSSv3 pour ma carte son (ATI IXP 200).
Depuis le passage à Ubuntu 10.04 et les drivers OSSv4, impossible de faire cracher du son à la sortie numérique. J'ai bien de la lumière sur le connecteur optique en activant cette sortie mais pas de son sur l'ampli.
Bref, il faut donc passer en analogique... Ce n'est pas bien grave pour du stéréo mais il faut avoir de bons câbles pour le coup.

Configuration de MPD

Maintenant que je vous ai présenté la bête qui va gérer la musique et les drivers son, voyons comment on configure tout ça pour diffuser du son sur mon ampli.

Le fichier de configuration de mpd est /etc/mpd.conf et seules quelques lignes sont à modifier pour faire fonctionner mpd avec OSS :

audio_output {
        type            "oss"
        name            "Home Cinema (Bibibox OSS)"
        device          "/dev/dsp"
        mixer_device    "/dev/mixer"
        mixer_control   "PCM"
}

Cette configuration permet d'utiliser la sortie son standard (/dev/dsp) d'OSS avec le mixer sur PCM.
Avec OSSv4, le chipset ATI IXP 200 a deux sorties (analogique et numérique), /dev/dsp pointe sur la sortie analogique par défaut.

Voilà, maintenant on a du (bon !) son sur l'amli, qu'on peut piloter à partir de l'iPhone ou de Sonata (GTK) ou encore mpc !

Dans un prochain billet, on verra comment envoyer le son sur un autre PC du réseau...