[mode ma_vie="on"]
Vous n'êtes pas sans savoir que j'ai deux home servers qui tournent en permanence, prêts à répondre immédiatement à toute sollicitation que je pourrais émettre (à condition que le service associé soit installé et en exécution, cela va sans dire).
Vous n'êtes pas non plus sans savoir(1) que sans être mélomane, j'ai un goût prononcé pour la musique. Mes tendances dans ce domaine ont bien évidemment évolué au fil des périodes, de mes fréquentations et de mes découvertes.
J'avoue avoir écouté de l'Eurodance et de la pop commerciale quand j'étais au primaire, un peu de punk rock américain au collège (ainsi que quantité d'autres choses de la même époque mais beaucoup plus nazes), pour enfin arriver au lycée et commencer à vraiment écouter de la musique.
J'ai alors découvert(2) en parallèle le rock psychédélique de Pink Floyd, le hard-rock de Deep Purple et Led Zeppelin, le ska-punk de Ska-P, la chanson française indé multi-tendances avec Les Ogres de Barback, La Tordue, Les Malpolis, Les Wriggles, Tryo ou Matmatah (j'en passe, il y en a tellement).
C'est également à ce moment que j'ai découvert (ou approfondi un peu) le reggae, l'électro, le trip-hop (avec Alif Tree), le lounge et la house (avec les compilations Hôtel Costes, Mezzanine de l'Alcazar et autres du même genre).
Plus tard encore, j'ai abordé presque par hasard un domaine qui m'était inconnu et ne m'avait jamais attiré auparavant : celui du metal. Ou des metals devrais-je dire, car il existe tellement de sous-genres totalement différents qu'il serait difficile de les rassembler sous une même étiquette, de même qu'il serait sûrement difficile de trouver une personne appréciant tous les sous-genres du metal qui peuvent exister.
J'ai abordé ce genre par le sous-genre dit "symphonique" avec Rhapsody (devenu ensuite Rhapsody Of Fire à cause d'un problème de nom), faisant lui-même partie du genre majeur qu'est le power metal et comprenant notamment Nightwish, Fairyland et Stratovarius. Enfin, on m'a fait découvrir Machinae Supremacy et j'ai trouvé là le mariage parfait entre la musique et la "geekitude".
Le choix m'a tuer
Je m'arrête ici, le but n'étant pas de faire la liste exhaustive de mes goûts musicaux, mais de simplement réaliser qu'ils sont assez vastes – je n'ai pas parlé du jazz, du blues, du funk, de la musique celtique et d'autres encore, ça serait trop long – comme chez de nombreuses personnes. La plupart de ces personnes auront également remarqué que leur médiathèque reflète ces attirances plus ou moins récentes, et contient souvent 10% d'albums qu'elles écoutent au moins une fois par mois, et 90% d'autres... quasiment jamais.
Dans ce lot, il y a ces albums que quelqu'un nous a conseillés, qu'on a écoutés une fois, parfois sans trop de conviction (alors que cela ne se prêtait peut être simplement pas au moment ou à la situation), puis qu'on a oubliés dans un coin.
Il y a aussi ceux qu'on a trop écoutés à une période, et qui semblent tellement usés à nos oreilles qu'on les survolent sans les voir, les écartant inconsciement de notre choix.
J'ajouterai personnellement une troisième catégorie, à savoir les albums que je n'étais pas prêt à écouter car mon oreille n'était pas encore suffisamment exercée pour réellement apprécier la performance, et qui ont attendu leur heure dans le dossier universel nommé sobrement "à trier"...
Webradio : À la redécouverte des morceaux perdus
J'ai fait cette observation il y a déjà un bon moment, et pour me "forcer" à mieux connaître ma propre médiathèque, je lançais parfois le lecteur avec la totalité des titres en mode aléatoire. Mais ce n'était pas l'idéal, et surtout, ce n'était pas automatique. Non, ce qu'il me fallait, c'était une radio. Ma radio.
Après la mise en place de mon second serveur, j'ai eu la possibilité de créer cette webradio. Le but n'était évidemment pas de partager mes goûts musicaux en public (ma bande passante me l'interdirait de toute façon), mais seulement d'avoir une playlist infinie contenant la totalité de ma médiathèque (à jour), et qui la lirait 24h/24, auditeur ou pas. Je pourrais ainsi me connecter à cette radio simplement de chez moi ou de n'importe où via mon VPN et avoir la garantie d'un mélange de genres musicaux sans coupure ni action manuelle.
Évidemment, cela signifie parfois que l'on passe de la musique classique à du death metal en quelques secondes (et réciproquement). Cela peut surprendre, mais la plupart du temps les transitions sont acceptables (après tout, si c'est dans ma médiathèque c'est que ça me plaît).
Gestion de la webradio
J'ai donc mis en place ce système au moyen de MPD et Icecast, ce qui m'a permis d'utiliser Winamp et VLC depuis mon PC principal et celui du boulot comme lecteurs pour "capter" le flux et le restituer. J'ai été rapidement très satisfait du résultat. Le transcodage de chaque fichier lu vers de l'Ogg Vorbis n'est pas sans conséquence sur la charge du CPU mais dépasse rarement les 20%(3), ce qui ne gêne pas les autres services.
Mon principe ici a été d'utiliser le répertoire de backup de mes musiques sur mon NAS comme source de la playlist. Un montage et des permissions adaptés et voilà les fichiers accessibles depuis mon serveur. Ces fichiers sont une copie parfaite (miroir) de ceux présents sur mon PC principal, car ils sont synchronisés toutes les nuits comme de nombreux autres dossiers que je considère comme "critiques".
Après la synchronisation quotidienne, uns simple commande CRONée est chargé de synchroniser la playlist courante de MPD (qui contient tous les titres disponibles) :
$ mpc --wait update
Limite et solution(s)
Ce qu'il manque, une fois que l'on a passé quelques temps à écouter cette radio, c'est une fonction d'historisation des lectures. Je m'explique : on est en train d'écouter la radio (en bossant par exemple), et on tombe sur une piste dont on ne connait pas le titre mais qu'on aimerait bien réécouter ultérieurement.
Problème : MPD ne trace pas les pistes jouées (hormis en debug je pense). Il faut donc se connecter en vitesse au serveur par SSH et utiliser un :
$ mpc status
pour découvrir les informations de la piste en cours.
Si on n'a pas à ce moment-là possibilité d'accéder au serveur, il sera totalement impossible de retrouver le fichier en question dès que le prochain élément de la playlist sera lu.
Je me suis donc mis à regarder un peu comment créer un "écouteur" qui enregistrerait chaque piste à sa lecture, avec ses informations complètes, la date et l'heure.
Ce logiciel (qui s'appelle sobrement JMPDLogger) existe maintenant et fonctionne depuis plusieurs mois sur mes deux serveurs. La dernière version corrige les derniers bugs vraiment bloquants (pas de reconnexion automatique à mpd lors d'une coupure) et je pense la mettre à disposition... dans un prochain billet. Il me reste seulement quelques tests à effectuer mais le texte est prêt, ça ne sera donc pas long.
(1) Mais dites-moi, vous en savez des choses sur ma vie. Je vous prierai de bien vouloir cesser de m'espionner.
(2) Quand je dis "j'ai découvert", c'est plutôt "on m'a fait découvrir". Je n'avais pas alors cette curiosité et cette soif pour de nouveaux genres musicaux. Ou plutôt si, je devais l'avoir, mais il me fallait partir dans une direction pour éviter de survoler superficiellement chaque genre, et c'est cette direction qui m'a été inspirée par mon entourage. Banal effet de groupe typique de cette période de la vie j'imagine.
(3) Je rappelle que le serveur tourne sur un petit Atom 230.