Moin,
für die Erstellung von VLC playlisten existieren ja schon einige Möglichkeiten. Hier nur ein
kleines Skript, welches die playlist per SVDRP erstellt. Es nutzt svdrpsend.pl, das im Suchpfad
liegen muß.
Bash
#!/bin/bash
NULL=/dev/null
SCRIPTNAME=$(basename $0)
if ! [ $(which svdrpsend.pl) ]; then
echo
echo "svdrpsend.pl befindet sich nicht um Suchpfad. Ende."
echo
exit 1
fi
if [ "$#" -gt "2" ] || [ "$#" -lt "1" ] || [ $1 = "-h" ]; then
echo
echo "Das Skript liest die Kanalliste eines VDR per SVDRP aus"
echo "und generiert daraus eine playlist für VLC."
echo
echo "Usage: $SCRIPTNAME [-h] hostname [file]"
echo " file default = vdr.m3u"
echo
echo "Das Skript erwartet mindestens 1 und maximal 2 Argumente."
echo
exit 1
fi
HOSTNAME=$1
PLAYLIST=$2
if [ ! $PLAYLIST ]; then PLAYLIST=vdr.m3u; fi
if [ -a $PLAYLIST ]; then
echo -n "Playlist $PLAYLIST existiert bereits. Überschreiben? <j/n>"
read -n 1 KEY
echo ""
if [ $KEY != "j" ]; then
echo "Abbruch."
exit
fi
mv $PLAYLIST $PLAYLIST.old
fi
#
# Start der playlist
#
echo "#EXTM3U" > $PLAYLIST
#
# Kanalliste vom VDR holen
#
svdrpsend.pl -d $HOSTNAME LSTC 2>&1 | while read line; do \
if ( echo $line | grep "^250[- ]" >$NULL ); then
echo "#EXTINF:0,,$(echo $line | sed 's/250[- ][0-9]* //' | cut -f1 -d":" | cut -f1 -d";")" >> $PLAYLIST
echo "http://$HOSTNAME:3000/"$(echo $line | sed 's/250[- ]//' | cut -f1 -d" ") >> $PLAYLIST
# Fortschrittsbalken
echo -n "#"
else
if ( echo $line | grep "^22[01]" >$NULL ); then
echo -e "\nServer meldet: $line"
else
echo -e "\nFehler: $line"
fi
fi
done
Alles anzeigen
Code
kilroy:~$ ./build_vlc_playlist.sh
Das Skript liest die Kanalliste eines VDR per SVDRP aus
und generiert daraus eine playlist für VLC.
Usage: build_vlc_playlist.sh [-h] hostname [file]
file default = vdr.m3u
Das Skript erwartet mindestens 1 und maximal 2 Argumente.
kilroy:~$ ./build_vlc_playlist.sh vdr
Playlist vdr.m3u existiert bereits. Überschreiben? <j/n>j
Server meldet: 220 zaphod SVDRP VideoDiskRecorder 1.4.4; Fri Nov 24 15:32:42 2006
############################################################################################################################################################################################################################################################################################################################################
Server meldet: 221 zaphod closing connection
Alles anzeigen