bonjour a tous, je vous explique mon projet:
le but est de connecter un bouton poussoir ainsi qu’ un haut-parleur avec un ampli sur le Raspberry et que quand le bouton poussoir est pressé un son au format mp3 se joue instantanément via le haut-parleur ma question est: comment réaliser cela ? (je n’ai jamais tapé une ligne de code de ma vie) merci d’avance!
Marceau
Pour les boutons, ce guide peut t’aider; RPi-Buttons — Wiki levelKro
Pour la lecture, c’est avec VLC (cVLC pour en ligne de commande). Je te conseil de travailler avec Raspbian OS Lite, si aucun affichage graphique est requis.
Salut @Marceau_Debailleul
En fait, c’est très simple.
- Tu connectes un bouton poussoir sur des ports GPIO.
- Tu as un script (bash ou python) qui se lance au démarrage.
- Ce script surveille l’état des GPIO et si tu appuies sur le bouton, il lance une action.
- Cette action sera la lecture d’un fichier (sifflet, klaxon, musique, …).
Redis nous où tu as besoin d’aide.
++
Re,
A tester (non testé faute de temps et pas de matos sorti) :
Installation du nécessaire :
sudo apt update
sudo apt install python3-gpiozero mpg123
On va faire un script (je fais avec « pi », tu remplaces par ton « user »)
nano /home/pi/klaxoon.py
Tu mets ça (attention au indentation, c’est hyper important) :
from gpiozero import Button
from signal import pause
import subprocess
button = Button(17, pull_up=False) # GPIO 17 avec pull-down
def play_sound():
subprocess.run(["mpg123", "/home/pi/klaxon.mp3"])
button.when_pressed = play_sound
pause() # Boucle infinie pour écouter le bouton
Tu édites ta crontab
crontab -e
Pour ajouter (tout en bas)
@reboot python3 /home/pi/klaxoon.py &
Tu enregistres ton son sous le nom klaxoon.mp3 dans ton dossier (remplace « pi » par ton « user »)
/home/pi/klaxon.mp3
Résultat :
- Au démarrage du Raspberry Pi, le script tourne en tache de fond et attend.
- Si tu appuies sur le bouton, le son MP3 est lu immédiatement via les haut-parleurs.
++