Audio Mpd
Utilité :
J'ai fait ce script pour utiliser Mpd comme un lecteur classique style click and play. En effet mpd est limité par sa base de donnée et ne permet de lire que ce qui se trouve a l'intérieur. Le script utilise un fichier temporaire à créer à l'intérieur de la base de donnée pour pouvoir lire des fichiers extérieurs.
De plus il ajoute les autres chansons qui précède ou suivent celle en cours et permet de lire les fichiers m3u et pls.
Dépendances : mpd , mpc ( et accessoirement une interface graphique )
Installation et utilisation :
- Créer un fichier temporaire dans votre répertoire de mpd ( Temp dans le script )
- Adapter le script en fonction
Script :
#!/bin/bash ## Répertoire ou est stocké la musique music="/mnt/Archives/Musique" ## Variables name=`basename "$1" ` dir=`dirname "$1"` ext=`echo "$name" | awk -F. '{print $NF}' ` ## Choix : case "$ext" in mp3 | MP3 | ogg | OGG | flac | FLAC | wav | WAV | mp4 | mp4 ) # Lien rm "$music/Temp/"* ln -s "$dir"/*.$ext "$music/Temp" fin_list=`ls "$music/Temp" | sed '$!d'` # Update et tempo mpc update Temp while : do fin_list_mpc=`mpc ls Temp | sed -n '$p' | cut -f2 -d"/" ` if [ "$fin_list_mpc" != "$fin_list" ] ; then sleep 0.01 else break fi done # Ajout mpc clear mpc add Temp # Numero de chanson n=`ls "$music/Temp" | sed '/./=' | sed '/./N; s/ / /' | grep "$name" | awk -F" " '{print $1}' ` mpc play "$n" ;; pls | PLS ) mpc clear grep '^File[0-9]*' "$1" | sed -e 's/^File[0-9]*=//' | mpc add mpc play ;; m3u | M3U ) mpc clear cat "$1" | mpc add mpc play ;; *) zenity --warning --text="Format non pris en charge! " exit 1 ;; esac # Lancement interface graphique ## Sonata #test=`ps -C /usr/bin/sonata | grep sonata | awk '{print $NF}'` #sleep 0.01 #if [ "$test" != /usr/bin/sonata ] ; then sonata ; fi ## Ario #test=`ps -C ario | grep ario | awk '{print $NF}'` #if [ "$test" != ario ]; then ario ; fi |