Rendez-vous sur Arrakis, Le site perso d'un hacker libriste curieux crêpophile étourdi
Le 19/06/2019 à 15:43 dans /Journal/2015/

Jukebox fait maison

J'ai enfin mis en place à moindre frais une sorte de jukebox fait maison. L'idée est d'avoir de la musique de qualité qu'on peut entendre partout dans l'appartement, et de pouvoir contrôler la lecture de n'importe où aussi.

Alors pour le matériel, j'ai juste une chaîne HiFi (qui finalement date un peu beaucoup). Donc au niveau du son dans toutes les pièces, on peut faire nettement mieux avec du matériel plus récent. Cette chaîne reçoit le flux audio par un jack relié à un raspberry Pi. Notez que ça pourrait être n'importe quel pc, mais au moins, le raspberry consomme très peu.

La musique est située sur mon serveur, qui est présente de façon transparente sur le raspberry pi grâce à sshfs. On pourrait très bien faire de même avec un partage ntf, ou encore simplement monter un disque dur sur le raspberry pi. Bon, pour ce qui est de la lecture, tout roule.

Voyons maintenant comment contrôler le tout (changer de chanson, augmenter/baisser le volume…) :




Ce raspberry se [connecte automatiquement au lancementforums.debian.net/viewtopic.php?t=119348 et lance 2 commandes ajoutées au fichier ~/.profile :


Ce dernier est un client avec une interface web. Il ne nécessite pas php, et est codé en C, c'est dont tout à fait adapté au raspberry. Bon par contre, je n'ai relié aucun écran au raspberry pi, donc pour accéder à l'interface de ympd, il me suffit d'un navigateur web pour aller à l'adresse 192.168.1.69:8080 . C'est très facile avec un smartphone par exemple, qui fait office de télécommande.

Pour retrouver cette adresse, vous pouvez lancer cette commande sur le raspberry pi :

/sbin/ifconfig |grep inet


Et si l'interface de ympd ne vous plaît pas, rien n'empêche de contrôler la lecture avec ssh. On crée des clés pour ne pas avoir à entrer de mot de passe, puis on gère mpd avec nos scripts habituel. Par exemple, pour passer à la chanson suivante :

ssh alias_pour_la_musique mpc next


Plus simplement, n'importe quel client à mpd peut aussi se connecter à l'hôte 192.168.1.69 si vous le configurer correctement :

mpc -h 192.168.1.69 next

Attention, mpd doit avoir dans ce cas dans son fichier de configuration

bind_to_adress "192.168.1.69"

et ympd doit être lancé ainsi :