Notez l'article 1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, Moyenne: 4,50/5)
Loading...

Montage audio sans fil pour 100€ à base de Raspberry

Je vous invite, après lecture, à me laisser un commentaire ou à noter cet article afin de m'aider à m'améliorer (ou me corriger si besoin). Je vous en serais très reconnaissant. De même n'hésitez pas à intervenir si vous avez des questions. Bonne Lecture !

Un truc excellent avec le Raspberry c’est qu’on peut à peut près tout faire et pour pas cher.

J’ai donc eu envie de réaliser un petit montage audio type enceintes sans fil encastrées dans ma cuisine. Un truc pareil coûte dans le commerce pas loin de 300€. Et si on veut un truc ultra performant et toute-options on peut facilement doubler.

Ici cela ne m’a coûté qu’une centaine d’euros et je pense que j’aurais pu optimiser un peu plus.(Je me suis en effet un peu emballé pour la taille des enceintes)

Il existe de nombreux système de serveur son sur raspberry. J’ai pour ma part opté pour Mopidy. c’est un serveur très léger et simple d’installation.

 

PREALABLES

Vous aurez besoin de :

 

COMPETENCES ET MATERIEL

  • Savoir souder ou connaitre quelqu’un qui sait (le conseil pas cher 😉 ).
  • Avoir un compte spotify premium (A défaut vous pourrez tout de même écouter votre musique locale).
  • Avoir une machine linux capable d’accepter votre carte sd et quelques rudiments très basiques en Linux si vous souhaiter configurer en « Headless »

 

  • Raspberry pi Zero W (environ 10€)
  • carte sd 8Go pour le systeme (environ 10€)
  • Alimentation 5V/2A micro usb (environ 5€)
  • carte Hifiberry DAC+ zero (environ 10€)
  • set de 42 pin mâles à souder (environ 2€)
  • Boitier Pi Zero W (environ 10€) (optionnel mais conseillé)
  • Ampli type auto/moto : pour ma part un Lepy 808. pas du son de fou mais très largement suffisant pour une cuisine de 25m2 tout électroménager en fonction (environ 15€)
  • Câble RCA de bonne qualité (environ 10€)
  • Rouleau de câble audio (environ 10€)
  • 2 enceintes encastrables (dans mon cas 2X 120W : environ 20€) (Attention à l’impédance entre l’ampli et les enceintes)

 

Total : environ 100€ la pièce à équiper

 

Voici grosso-modo à quoi ressemble mon bricolage. Tout ça est à l’intérieur d’un mur. (Désolé pour la qualité médiocre des photos)

 

PRINCIPE

Il va s’agir d’installer et configurer un serveur de son sur le raspberry à l’aide de Mopidy. Le son sera alors dirigé du raspberry vers l’ampli. On aura également une interfaces web locale (pour une petite idée : voir image principale de l’article), synchronisée avec votre compte spotify et votre musique locale afin de gérer et jouer vos playlits.

Le système sera « joignable » en wifi via son ip locale. Par conséquent 1 ip correspondra à 1 raspberry et à 1 pièce de la maison. On pourra donc équiper les autres pièces de la même manière si on le souhaite.

pour les branchement je vous laisse le soin de tirer les câbles vous même hein 😉

 

INSTALLATION

Tout d’abord il va falloir installer le système sur la carte sd.

Sachant que notre pi-zero sera dédié au son pas besoin d’un système complexe.

Téléchargez l’image système de raspbian-lite sur le site officiel et copiez la sur la carte sd via dcfldd (dd) ou win32diskimager si vous êtes sur windows.

Ensuite si vous avez de quoi brancher un écran et un clavier/souris sur votre raspberry branchez le et passez directement à la configuration du système. Dans le cas contraire, suivez alors les étapes de la configuration headless du Pi-zéro W.

 

Configuration du Raspberry

Nous allons désormais pouvoir configurer le raspberry et installer mopidy.

Exécutez cette commande et modifiez les points suivants :

sudo raspi-config
  • changer mot de passe utilisateur
  • étendre le système à tout l’espace de la carte SD
  • changer le hostname
  • changez l’heure du système

Ne redémarrez pas tout de suite, sortez de raspi-config et faites alors les deux commandes suivantes :

apt-get update
atp-get upgrade

Maintenant, redémarrez.

 

 

Installation du serveur Mopidy

1/ installer mopidy

Récuperez les clé gpg puis ajoutez les sources et enfin installez en exécutant les commandes suivantes :

wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key add - 
sudo wget -q -O /etc/apt/sources.list.d/mopidy.list https://apt.mopidy.com/jessie.list 
sudo apt-get update
sudo apt-get install mopidy

 

2/ installer les extensions

La plupart sont déjà présentes. Pour plus d’info visitez le site officiel (en anglais). Il vous faudra ici au moins installer l’extension Spotify pour synchroniser votre compte.

sudo apt-get install mopidy-spotify

 

3/configurer /etc/mopidy/mopidy.conf

La configuration de base de mopidy se trouve donc dans le fichier /etc/mopidy/mopidy.conf. Ce fichier fonctionne sous forme de sections à activer et à paramétrer. On trouve assez facilement des exemples de configuration sur la toile.

Globalement donc, ne changez pas grand chose. Voici cependant ma config pour les sections les plus basiques.

 

  • si vous voulez utiliser des clients mpd :

[mpd]
enabled = true
hostname = 0.0.0.0
port = 6600
password =
max_connections = 20
connection_timeout = 60
zeroconf = Mopidy MPD server on $hostname
#command_blacklist =
# listall
# listallinfo
#default_playlist_scheme = m3u

 

  • Si vous souhaitez utiliser des frontend http (c’est notre cas ici) :

[http]
enabled = true
hostname = 0.0.0.0
port = 6680
static_dir =
zeroconf = Mopidy HTTP server on $hostname

 

  • pour ajouter votre musique locale :

[local]
enabled = true
library = json
media_dir = /chemin/ver/votre/musique
scan_timeout = 1000
scan_flush_threshold = 100
scan_follow_symlinks = false
excluded_file_extensions =
# .directory
.html
.jpeg
.jpg
.log
.nfo
.png
.txt

 

[websettings]
enabled = true
musicbox = false
config_file = /etc/mopidy/mopidy.conf

 

  • configuration de spotify


enabled = true
username = nom_d’ulisateur_spotify
password = mot_de_passe_spotify
bitrate = 320
volume_normalization = true
private_session = false
timeout = 10
allow_network = true
allow_playlists = true
allow_cache = true
search_album_count = 20
search_artist_count = 10
search_track_count = 50
toplist_countries =

 

4/ Faire tourner mopidy comme un service (démarrage auto)

C’est intéressant de faire tourner mopidy de cette manière. Ainsi nous n’avons plus à nous préoccuper de l’activer à chaque redémarrage du système.

Exécutez donc cette commande :

sudo systemctl enable mopidy

Puis exécutez celle-ci (qui va effectuer la vérification de votre configuration)

sudo mopidyctl config

 

5/ Découverte des playlists locale

Ceci va scanner l’ensemble des fichiers son de votre machine (ou réseau si vous avez mis en place un partage samba) en se réferrant à la configuration que vous avez renseigné dans la section [local] du fichier de configuration. Exécutez donc cette commande :

sudo mopidyctl local-scan 

(Cela peut-être assez long si vous avez beaucoup de morceaux)

 

6/ Autoriser l’utilisateur mopidy

Vérifiez les autorisations de l’utilisateur mopidy. En effet Mopidy créer un nouvel utilisateur nommé mopidy qui doit avoir certains droits nécessaires.

sudo cat /etc/group | grep audio

Si mopidy ne fait pas partie du groupe, alors ajoutez le ainsi :

sudo adduser mopidy audio

7/ Installez le frontend de votre choix (pour ma part Iris)

Vous aurez préalablement besoin de l’outil d’installation « pip » et de ses dépendances. Installez-le donc ainsi :

sudo apt-get install python-pip python-dev build-essential

Puis installez l’interface voulue (voir le site officiel de mopidy pour faire votre choix). Dans mon cas j’ai choisi Iris que je trouve complet.

sudo pip install Mopidy-Iris

 

8/ Accedez à vos playlist

Enfin, saisissez dans votre navigateur l’adresse suivante http://ip_du_pi_zero:6680/. Vous arrivez alors sur l’interface de choix du client frontend. Dans notre cas c’est donc Iris. nous pourrions en fait y accéder directement en renseignant http://ip_du_pi_zero:6680/iris.

 

9/ Ajouter des streams Radio

Pour écouter vos radio favorites, il va falloir modifier un peu le fichier /etc/mopidy/mopidy.conf.

  • Décommentez tout ce qui concerne [mopidy-stream] et [m3u] sans rien modifier.
  • Créez une playlist au format .m3u8 dans /var/lib/mopidy/.local/share/mopidy/m3u avec vos liens de stream radio

Ci-dessous une de mes playlist nommée « 01-Mes-Radios.m3u8 » (le 01 devant le nom de fichier va faire que la playlist apparaîtra en premier dans l’onglet playlist de l’interface web mopidy-iris : pratique ! )

#EXTM3U
 #EXTINF:-1,France Inter
 http://direct.franceinter.fr/live/franceinter-midfi.mp3 #EXTINF:-1,France Info http://direct.franceinfo.fr/live/franceinfo-midfi.mp3 #EXTINF:-1,France Culture http://direct.franceculture.fr/live/franceculture-midfi.mp3 #EXTINF:-1,France Musique http://direct.francemusique.fr/live/francemusique-midfi.mp3 #EXTINF:-1,Nova http://novazz.ice.infomaniak.ch/novazz-128.mp3 #EXTINF:-1,JetFm http://80.82.229.202/jetfm.mp3

 

ET VOILA !

Vous l’aurez donc compris si je décide d’équiper toute ma maison de ce système, j’aurais alors une ip différente par pièces. Avec des petits marque-pages bien nommés vers les ip/pièces en questions me voici donc en possession d’un multi-room assez simple et pratique pour lancer la musique dans la pièce de mon choix !

Il ne reste plus, pour parfaitement chiader le truc, qu’à trouver un moyen pour synchroniser le son de plusieurs pièces à la fois, voir à récupérer le son d’une pièce pour envoyer dans une autre. J’attend de m’équiper dans plusieurs pièces pour me pencher là dessus. Cela nécessitera peut-être de changer tout le principe. Si vous avez des idées, je suis preneur. 😉

J’espère que cet article à été clair et utile pour vous. Merci de noter cet article, et le must serait de me laisser un petit commentaire ! C’est toujours sympa de savoir ce qu’il y a de bien ou moins bien, et s’il y a une question ou une remarque discutons-en 😉

Notez l'article 1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, Moyenne: 4,50/5)
Loading...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Show Buttons
Hide Buttons