MPD : Le démon des media players.
Lorsqu’on a fini une installation Linux, et que les aspects de base du système semblent fonctionnels, on entre dans une quête perpétuelle du confort optimal, cela inclut des heures de recherches du Windows Manager qui nous convient, des semaines à retourner le web à la recherche du thème parfait, puis des applications favorites, et enfin, du parfait media player.
Si pour vous comme pour moi, cette quête a duré des années, cherchant le parfait compromis entre configuration, maniabilité, esthétique, fonctionalité, consomation de ressources, et intégration au reste du système, et que votre player actuel vous semble encore n’être qu’un choix de résignation, Music Player Daemon pourrait être le miracle que vous n’espériez plus.
La théorie de l’éternelle lacune.
Dans cette quête, le premier choc est… l’éventail de choix disponible. Si dans un premier temps il semble rassurant de réaliser qu’on partage cette quête avec beaucoup de gens et que, par conséquent, il existe un très grand nombre de logiciels répondant chacun à des critères, et à des besoins très différents, on se heurte très vite à la théorie de l’éternelle lacune.
Celle-ci résulte de mes expériences personelles et tire sa signification du constat simple que quel que soit le media player testé, il semble toujours lui manquer un critère qui vous semble essentiel. Voici quelques exemples appliqués à mes exigeances et mes observations, libre à vous de ne pas partager ces avis. (Je précise que je me focalise ici sur les défauts de ces players, omettant leurs nombreuses qualités, n’étant pas pertinentes dans cet article.)
- Amarok : Lourd, trop de dépendances liées à KDE, interface quelque peu étrange, et vraiment, vraiment trop lourd.
- Banshee : Dépends de Mono (au delà des trolls, dans les faits, mono est responsable de beaucoup de comportements “étranges” de Banshee, et est tout sauf une base “saine” pour un media player léger et efficace.)
- Rhythmbox : Presque ce qu’il me fallait ! Mais à la longue l’absence de browsing par arborescence de fichiers pour établir des playlist est devenue pesante, ainsi que quelques reproches de confort qui me sont propres.
- Exaile : Pour peu que vos tags IDV3 ne soient pas Parfaitement réglés, établir une playlist à thème risque d’être particulièrement douloureux… (Dommage, tellement dommage.)
- Audacious : Malheureusement, son interface et ses fonctions ne correspondent plus exactement à une utilisation moderne et efficace des médias de nos jours… (ceci est bien sûr totalement subjectif)
- Aqualung : Très prometteur mais encore quelques problèmes à régler dans l’interface et la gestion des bilbiothèques de médias
- Mocp : S’amuse à me planter à la figure quand ça lui chante.
- (…)
Tout ceci m’a conduit à la conclusion suivante : un seul player ne répondra jamais à mes attentes.
La réponse : diviser pour mieux écouter
MPD offre une approche radicalement différente : décentraliser la lecture des médias hors du logiciel de lecture, et déléguer la gestion des médias à un démon (tâche tournant en toîle de fond).
Dans la pratique, cela signifie simplement que MPD n’est que le “moteur” de votre média player, et que l’application avec laquelle vous contrôlerez MPD s’y connectera par protocole TCP, comme à un serveur.
Il existe un nombre surprenant de plugins/add-ons de toutes sortes ajoutant le “support de MPD” à différentes d’applications, comme la plupart des Windows Managers, certains moniteurs système (gkrellm, etc) ainsi que des logiciels de messagerie instantanée (Amsn, Pidgin), vous perméttant de passer à la musique précédente/suivante, de faire pause ou de récupérer la musique écoutée et l’afficher.
Cette non-dépenance d’un client graphique permet également de se passer de serveur X, ainsi, à l’instar de MOCP, il vous sera possible de “Tuer” X ou de ne pas le lancer du tout, sans que cela n’affecte la lecture de vos médias préférés. Il est même possible d’installer MPD sur une machine distante et d’y accéder par internet/LAN.
MPD offre un moteur de lecture de vos médias solide et flexible répondant à vos attentes, quelle que soit l’interface graphique que vous lui associerez, vous serez rassuré que le confort graphique et l’interface seront les seules variables restantes, étant donné que les exigeances de type “légèreté, peu de dépendances, pas besoin de serveur X, bonne gestion de bibliothèques multimedia, intégration au système” seront toujours assurées de la même façon quel que soit le client.
Fini les dilemmes entre, par exemple, la puissance de rhythmbox/exaile/amarok et l’interface textuelle légère de MOCP ! Il suffisait d’y penser.
Les clients
Il existe un très grand nombre de clients MPD, cela s’explique probablement par le fait qu’il est beaucoup plus simple de créer une façade qu’un logiciel multimédia complet, ceci permettant à des “concepts” d’interface graphique de voir le jour quand la perspective de devoir recréer un logiciel multimedia à partir de zéro aurait découragé son auteur.
Parmi mes préférés, je citerais :
- Ncmpcpp : Parcequ’un lecteur multimedia en console, ça a toujours plus de charme. (et qu’il est monstrueusement puissant.)
- Emphasis : Un client utilisant la bilbiothèque graphique ETK (Enlightenment)
Pour être franc, ncmpcpp me convient tellement que j’ai n’ai pas été plus loin dans mes recherches (c’est dire.), mais je vous invite à vous rendre ici pour une liste impressionnante des clients MPD disponibles pour chaque environnement graphique.
La configuration
Elle se fait très simplement à partir du fichier /etc/mpd.conf très généreusement commenté, ci-joint un exemple de ma configuration:
music_directory "/home/koolfy/Son"
playlist_directory "/home/koolfy/Son/mpd/playlist"
db_file "/home/koolfy/Son/mpd/database"
log_file "/home/koolfy/Son/mpd/mpd.log"
error_file "/home/koolfy/Son/mpd/mpd.error.log"
####################### OPTIONAL PATHS ########################
state_file "/home/koolfy/Son/mpd/state"
pid_file "/home/koolfy/Son/mpd/mpd.pid"
####################### DAEMON OPTIONS ########################
user "koolfy"
bind_to_address "localhost"
port "6600"
################################################################