L’idée de ce projet est de créer une application radio web qui permet d’écouter vos stations préférées via une interface web locale. Un premier prototype a été présenté dans cet article.
Le système se lance automatiquement au démarrage, ouvre un serveur Flask, et vous propose une interface web avec des boutons pour chaque station ou action (volume, arrêt, redémarrage…).
Ce projet repose sur plusieurs fichiers principaux, que nous allons présenter étape par étape.
1. Fichier radio.desktop
Ce fichier est placé dans le répertoire ~/.config/autostart/
et permet de lancer automatiquement le script au démarrage de votre session.
Dans ce source remplacer « geo » par le nom d’utilisateur du Raspberry (exemple : pi)
👉 Ici, on demande à lxterminal d’ouvrir un terminal et d’exécuter le script start_radio.sh
.
2. Fichier start_radio.sh
C’est un petit script bash qui attend 15 secondes (le temps que le Wi-Fi se connecte), active l’environnement virtuel Python et lance le serveur Flask.
Dans ce source remplacer « geo » par le nom d’utilisateur du Raspberry (exemple : pi)
👉 Grâce à ce script, vous êtes sûr que votre serveur démarre dans le bon environnement virtuel, même après un redémarrage.
3. Fichier radio_player_http.py
C’est le cœur du projet.
Il utilise Flask pour le serveur web et python-vlc pour piloter la lecture des flux radios.
Les stations disponibles sont définies dans radios.ini
.
👉 Ce fichier définit les routes :
/
→ page web principale/run/<key>
→ exécute l’action associée (changer de station, volume, arrêt…)
4. Fichier radios.ini
C’est le fichier de configuration listant les actions et les flux radios disponibles.
👉 Vous pouvez facilement ajouter ou modifier vos stations préférées en éditant ce fichier.
5. Fichier index.html
C’est l’interface web générée par Flask.
Chaque bouton correspond à une station ou une action, et envoie une requête au serveur pour lancer la lecture.
👉 L’interface est responsive (Bootstrap) et les boutons envoient des requêtes AJAX au serveur Flask.
🚀 Utilisation
- Placez les fichiers aux bons emplacements :
radio.desktop
dans~/.config/autostart/
- les autres dans
~/Documents/radio/
- Créez un environnement virtuel et installez les dépendances :
3. Redémarrez votre machine → l’interface sera accessible sur
👉 http://localhost:8080
(ou depuis un autre appareil de votre réseau : http://ip_du_raspberry:8080
)
✅ Conclusion
Avec seulement quelques scripts, vous avez construit un lecteur de radios web personnalisable, accessible depuis n’importe quel appareil connecté à votre réseau local.
Vous pouvez enrichir radios.ini
avec vos stations préférées. 🎶