it-artikel:gnome-rhythmbox-autoplay-wrapper-script-for-internet-radio-shoutcast-streams

gnome rhythmbox autoplay wrapper script for internet radio (shoutcast) streams

English Describtion see source code.

Bereits seit einigen Jahren besteht bei Gnome-Rhythmbox das Problem, dass es Radio-Streams z.B. von Shoutcast und ähnlichem nicht automatisch abspielt wenn man den Link dazu im Firefox Webbrowser angeklickt hat. Selbst dann nicht wenn man Firefox explizit sagt dass der Link (pls oder m3u Playlists) ausdrücklich mit Rhythmbox geöffnet werden sollen. Rhythmbox fügt in diesem Fall nur den Radio-Sender unter “RADIO” seiner Liste hinzu, spielt diesen aber nicht automatisch ab.

Interessanter Weise spielt RB jedoch einen solchen Link automatisch ab, wenn man RB die URL direkt auf der Kommandozeile übergibt. z.b.

rhythmbox http://radio.108.pl:8004/listen.pls

Ich persönlich halte dieses Verhalten für einen BUG bzw eine fehlende Funktion in RB. Darum habe ich nach einer geeigneten Lösung für das Problem gesucht, Doch leider ohne Erfolg. Durch Experimentieren bin ich dann darauf gestossen wie Firefox (3.0 für Linux) die Informationen an RB weitergibt und hab eine mögliche “Zwischenlösung” erkannt.

Das nachfolgend gezeigte Script fängt die Daten von Firefox einfach ab und leitet diese entsprechend aufbereitet an Rhythmbox weiter. Rhythmbox startet daraufhin und spielt den gewünschten Stream automatisch ab.

Um verwenden zu können installiert man das Script am besten nach /usr/bin , macht es ausführbar und gibt es im Firefox als ZIELPROGRAMM für *.pls und *.m3u playlisten an. Der Rest sollte dann von selbst funktionieren.

Axel Werner 2009-08-22 18:00

/usr/bin/rb-autoplay.sh

#!/bin/bash
#
#
# Rhythmbox-autoplay wrapper script for firefox
#
# Version 1.0 - 2009-08-22 - by Axel Werner [mail@awerner.myhome-server.de]
#
#
# rhythmbox does not autoplay shoutcast-streams when started through firefox
# this script intercepts the firefox output, examines it and starts rhythmbox
# with the proper argument/url to autoplay the desired stream. 
#
# this is just a workaround for some stupid bug/feature in rhythmbox. 
# all this should be implemented into rhythmbox in some more intelligent way.
#
# So one day this may become unnessesary.
#

playlist="$1"

#determine type of playlist

type=`basename $playlist | cut -f2 -d'.'`

case $type in
	pls)
		# is .pls type
		url=`grep "File1=" "$playlist" | cut -f2 -d'='` 
		if [ ! "$url" = "" ] ; then
			rhythmbox "$url" &
			sleep 3
			rm -f $playlist
		fi
		;;
	m3u)
		# is .m3u type
		url=`grep "^http://" "$playlist" | head -1` 
		if [ ! "$url" = "" ] ; then
			rhythmbox "$url" &
			sleep 3
			rm -f $playlist
		fi
		;;
	*)
		# is UNKNOWN type
		echo "Type of Playlist is UNKNOWN to $0 . See '$playlist'. Exiting now." | tee "/tmp/$0.log"
		exit 1
		;;
esac

it-artikel/gnome-rhythmbox-autoplay-wrapper-script-for-internet-radio-shoutcast-streams.txt · Last modified: 2015-07-23 20:45 by mail@awerner.myhome-server.de