#!/bin/bash # this script rips an mms stream with mplayer # used on GNOME-desktops # check for zenity whereis zenity | grep / || exit 1 # check for mplayer and install if neccessary mp=1 whereis mplayer | grep / || mp=0 if [ $mp -eq 0 ]; then zenity --question --title="mm:ripper" --text="MPlayer nicht installiert. Jetzt installieren?" if [ $? -eq 0 ]; then gksudo apt-get install mplayer else exit 1 fi fi # go url=`zenity --entry --title="mms:ripper URL" --text="URL des Streams" --entry-text="mms://"` if [ $? -eq 0 ]; then path=`zenity --file-selection --title="mms:ripper Pfadauswahl" --directory` if [ $? -eq 0 ]; then format=`zenity --list --title="mms:ripper Format" --radiolist --text="In welchem Format soll der Stream gespeichert werden?" --column="" --column="Format" TRUE mpg FALSE wmv FALSE flv FALSE avi` if [ $? -eq 0 ]; then file=`basename $url` fileout=${file%.[^.]*} suffix=${file##*.} filenew=`zenity --entry --title="mms:ripper Dateiname" --text="Unter welchem Namen soll die Datei abgelegt werden? (ohne Endung)" --entry-text="$fileout"` if [ $? -eq 0 ] && [ -n "$filenew" ] && [ -n "$path" ] && [ -n "$url" ] && [ -n "$format" ] && [ "$url" != "mms://" ]; then if [ "$suffix" = "asx" ] || [ "$suffix" = "m3u" ] || [ "$suffix" = "wvx" ] || [ "$suffix" = "wax" ] || [ "$suffix" = "m2a" ]; then mplayer -dumpstream -playlist "$url" -dumpfile "$path"/"$filenew"."$format" 2>&1 | zenity --progress --pulsate --auto-close --title="mms:ripper" --text="Speichere MMS-Stream\nURL: $url\nPfad: $path\nDatei: $filenew.$format" & else mplayer -dumpstream "$url" -dumpfile "$path"/"$filenew"."$format" 2>&1 | zenity --progress --pulsate --auto-close --title="mms:ripper" --text="Speichere MMS-Stream\nURL: $url\nPfad: $path\nDatei: $filenew.$format" & fi RUNNING=0 while [ $RUNNING -eq 0 ]; do if [ -z "$(pidof zenity)" ] ; then echo "killed!" pkill mplayer exit 1 RUNNING=1 fi sleep 2 done echo "exiting." pkill mplayer exit 0 else zenity --info --title="mms:ripper" --text="Es trat ein Problem auf bei der Verarbeitung von\nURL: $url\nPfad: $path\nDatei: $file\nFormat: $format" exit 1 fi fi fi fi exit 1