dimanche 20 avril 2025

Lire un fichier .mp3 en ligne de commandes

Sur linux, il peut s’avérer très intéressant de lire un fichier audio en lignes de commandes. Cette possibilité, rétrograde au premier abord comparé à la lecture dans un lecteur audio graphique peut s’avérer très utiles pour certaines situations… Par exemple, de nombreux langages de programmation permettent d’exécuter directement  des instruction en shell (.sh) à l’aide d’une bibliothèque annexe. Et cela peut être très pratique lorsque la bibliothèque de lecture de sons ne fonctionne pas dans le langage choisi… Cet article s’adresse aux personnes voulant lire un son dans une enceinte, un écran ou un périphérique bluetooth à partir d’une machine tournant sous linux. Il peut avoir une utilisation dans certains systèmes embarqués.

Voici donc le code (commenté) à exécuter dans un terminal :

# On récupère puis installe les packets suivants grâce à l'outils Advanced Package Tool avec comme option -Y qui répond oui aux questions posées ultérieurement.
# mplayer: lecteur audio, alsa: ensemble de programmes pour jouer des sons (incorporé dans le noyau linux), mpg123: codec permettant de lire des fichiers mp3).
sudo apt-get -y install mplayer mplayer-gui alsa-base alsa-utils pulseaudio mpg123
# chargement du module snd_bcm2835
sudo modprobe snd_bcm2835
# ajout de la ligne snd_bcm2835 à la fin des modules à charger dans le noyau au démarrage
sudo echo 'snd_bcm2835' >> /etc/modules
# amixer : interface de ligne de commande permettant de controler une carte son, au niveau de la couche ALSA. # configuration de la sortie audio sur un, le cable jack amixer cset numid=3 1 # sélection de la carte son 1 (bcm2835 Headphones) alsamixer -c 1 # réglage de la valeur défaut du mélangeur à 95% du son maximum amixer sset "Master",0 95% # lecture du mp3 mplayer /home/pi/Adeept_modifié/server/sounds/bruit-de-demarrage-voiture-2s.mp3
#En cas d'interférences avec le module snd_bcm2835 ou d'autres problèmes : 
sudo apt-get -y --purge remove pulseaudio
#suppression du packet pulseaudio et purge des fichiers crées par ce dernier

La sortie audio et la carte son sont à adapter, généralement :

- 1 : cable jack
- 2 : bluetooth
- 3 : cable HDMI

Retrouver aussi ce code sur mon Github : github.com/Epsiloog/lecture_mp3_cmd

Laisser un commentaire

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