Audacious
Audacious ist ein Musikplayer, welcher über Lirc und Irexec fernbedient werden kann.
Hier eine grobe Anleitung dazu.
Es wird vorausgesetzt, dass man die Fernbedienung, wie hier beschrieben bereits angelernt hat und diese somit funktioniert.
Die Benennung der Tasten kann von denen in der Irexec-Konfigurationsdatei (~/.lirc/audacious
) abweichen. Dann müssen diese aber in dieser Datei auch angepasst werden.
Es müssen nicht alle Zifferntasten mit Playlists/URLs belegt sein.
Vorbereitungen
Alle notwendigen Programme installieren
apt-get install audacious audacious-plugins lirc
Irexec
Irexec wird normalerweise immer von „root“ ausgeführt.
Möchte man das Programm mit einem User starten, damit man z.B. nicht immer sudo o.ä. benutzen muss, trägt man folgendes in die .profile
ein.
vi ~/.profile
Inhalt unten einfügen:
# Start irexec /usr/bin/irexec -d
Nun wird noch die dazugehörige Konfiguration (.lircrc
) benötigt, welche irexec, wenn es als jemand anders als „root“ gestartet wird, im Home-Verzeichnis sucht.
vi ~/.lircrc
Inhalt
include /home/linux/.lirc/audacious
Am besten sammelt man seine Irexec-Scripte wie in der Include-Zeile beschrieben im .lirc
Ordner.
Somit legt man sich diese Datei an.
vi ~/.lirc/audacious
Inhalt:
##audacious begin prog = irexec button = KEY_POWER config = audaciouslirc.sh power #config = shutdown repeat = 0 end begin prog = irexec button = KEY_1 config = audaciouslirc.sh 1 repeat = 0 end begin prog = irexec button = KEY_2 config = audaciouslirc.sh 2 repeat = 0 end begin prog = irexec button = KEY_3 config = audaciouslirc.sh 3 repeat = 0 end begin prog = irexec button = KEY_4 config = audaciouslirc.sh 4 repeat = 0 end begin prog = irexec #prog = audtool button = KEY_5 config = audaciouslirc.sh 5 #config = "playlist-addurl-to-new-playlist http://81.92.237.123:8080/" repeat = 0 end begin prog = irexec button = KEY_6 config = audaciouslirc.sh 6 repeat = 0 end begin prog = irexec button = KEY_7 config = audaciouslirc.sh 7 repeat = 0 end begin prog = irexec button = KEY_8 config = audaciouslirc.sh 8 repeat = 0 end begin prog = irexec button = KEY_9 config = audaciouslirc.sh 9 repeat = 0 end begin prog = irexec button = KEY_YELLOW config = audaciouslirc.sh playback-play config = audaciouslirc.sh playback-pause repeat = 0 end begin prog = irexec button = KEY_GREEN config = audaciouslirc.sh playback-stop repeat = 0 end begin prog = irexec button = KEY_RADIO config = audaciouslirc.sh playlist-show on config = audaciouslirc.sh playlist-show off repeat = 0 end begin prog = irexec button = KEY_BLUE config = audaciouslirc.sh playlist-advance repeat = 0 end begin prog = irexec button = KEY_RED config = audaciouslirc.sh playlist-reverse repeat = 0 end begin prog = irexec button = KEY_VOLUMEUP config = audaciouslirc.sh vol 2 repeat = 1 end begin prog = irexec button = KEY_VOLUMEDOWN config = audaciouslirc.sh vol -2 repeat = 1 end begin prog = irexec button = KEY_MUTE config = audaciouslirc.sh vol -100 repeat = 1 end
Steuerscript
Nun weiß Irexec dass es bei einem Knopfdruck an der Fernbedienung das Script „audaciouslirc.sh“ mit einem Parameter ausführen soll.
Diese Script hat folgenden Inhalt.
vi ~/.lirc/audaciouslirc.sh
Inhalt:
#!/bin/bash # ## Copyright Krage / Stiller # # # #Dieses Script prueft nach ob das Programm #Audacious2 laeuft, und startet bzw. beendet dieses ggf. #Desweiteren werden steuerbefehle irexec angenommen und #an das Programm audtool uebergeben. # Check: Ist der Parameter numerisch? LENGTH=`expr length $1` NUMBER=`expr match "$1" '[1-9]*'` SERVICE="audacious" PROG="/usr/bin/audacious" PRT="/usr/bin/audtool" VOL="5" NEWPLS="playlist-addurl-to-new-playlist" RADIO1="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO2="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO3="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO4="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO5="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO6="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO7="<URL_ZU_INTERNET_RADIO_SENDER_PLAYLIST>" RADIO8="/<PFAD>/<PLAYLIST_NAME>.m3u" RADIO9="/<PFAD>/<PLAYLIST_NAME>.m3u" if [ $1 == "power" ]; then if [ `pgrep -x ${SERVICE}` ]; then $PRT shutdown sleep 5 if [ `pgrep -x ${SERVICE}` ]; then killall -9 $SERVICE fi else $PROG & sleep 3 $PRT $NEWPLS $RADIO6 fi elif [ $1 == "vol" ]; then VOLNOW=`$PRT get-volume` VOLCHANGE=`echo "$VOLNOW + $2" | bc` ##$VOLNOW+$2|bc $PRT set-volume $VOLCHANGE elif [ $LENGTH = $NUMBER ]; then #[ $1 == [1-9] ] $PRT playback-stop $PRT playlist-clear case $1 in 1) $PRT $NEWPLS $RADIO1 ;; 2) $PRT $NEWPLS $RADIO2 ;; 3) $PRT $NEWPLS $RADIO3 ;; 4) $PRT $NEWPLS $RADIO4 ;; 5) $PRT $NEWPLS $RADIO5 ;; 6) $PRT $NEWPLS $RADIO6 ;; 7) $PRT $NEWPLS $RADIO7 ;; 8) $PRT $NEWPLS $RADIO8 ;; 9) $PRT $NEWPLS $RADIO9 ;; esac $PRT playback-play else $PRT $1 $2 fi