#!/bin/bash
# scriptname: movie2dvd
# Wandelt Filme in mpg2 Format Dateien für DVD
#
# Installieren:
# Kopieren nach /usr/local/bin/movie2dvd
# chmod +xs /usr/local/bin/movie2dvd
#
# Benötigte Programme,  mencoder libavcodec52 lame
#(http://wiki.ubuntuusers.de/mencoder)


vers="Juni 2010"



if [ -a "$1" ]; then
	cmd=do_dvd
	else
	cmd=nomovie
fi

if [ -z "$2" ]; then
	cmd=notarget
fi

if [ "$1" == "help" ]; then
        cmd=help
fi

if [ "$1" == "ff" ]; then
	cmd=fuel_folder
fi


if [ "$cmd" != "nomovie" ]&&[ "$cmd" != "notarget" ]&&[ "$cmd" != "help" ];then
echo
echo "             Bitrate wählen für 4.7GB DVD-R"
echo "------------------------------------------------------------"
echo 
echo "     1 kleinere Qualität <-------->   6 gute Qualität"
echo
echo "  1.	3000kBit/s (ca. 186min auf DVD-R)"
echo "  2.	4000kBit/s (ca. 142min auf DVD-R)"	
echo "  3.	5000kBit/s (ca. 115min auf DVD-R)"
echo "  4.	6000kBit/s (ca.  96min auf DVD-R)"
echo "  5.	7000kBit/s (ca.  83min auf DVD-R)"
echo "  6.	8000kBit/s (ca.  73min auf DVD-R)"
echo
echo
echo "  Standardwert ist 4000kbit/s: Ohne Eingabe bleibt 4000!"
echo
echo -n "  Ihre Wahl? ";read b
echo

if [ -n "$b" ];then
if  [ $b -ge 1 ] && [ $b -le 6 ];then
 	case "$b" in
		1)
		vbit=3000
		;;	
		2)	
		vbit=4000
		;;
		3)
		vbit=5000
		;;
		4)
		vbit=6000
		;;
		5)
		vbit=7000
		;;
		6)
		vbit=8000
		;;
	esac

else
vbit=4000
fi
else
vbit=4000
fi
fi

case "$cmd" in

do_dvd)	


mencoder -ofps 25 -oac lavc -ovc lavc -of mpeg\
  	 -mpegopts format=dvd -vf scale=720:-10,harddup -srate 48000 -af lavcresample=48000\
         -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate="$vbit":keyint=15:acodec=ac3:abitrate=192\
         -o "$2".mpg "$1"



	;;

fuel_folder)
        count=0
	countall=0
	pwd0=`pwd`
	
	mkdir -p movie2output_dvd

	if [ -z "$2" ]; then
		format=*.*
	else
		format=*.$2
	fi
	countall=`ls $format | wc -l`
	for file in  $format; do
		
		if [ -d "$file" ]; then
			echo
			echo
			echo  -n Nichts zu tun für Ordner "$pwd0"/"$file";
			echo
		else
			if [ -e "$file" ]; then
			count=$[$count+1]
			echo 
			echo 
			echo -n Bearbeite "$count" von "$countall" Dateien: "$pwd0"/"$file";
			echo
			echo
			output=`echo "$file" | sed s/\.[^\.]*$//`

mencoder -ofps 25 -oac lavc -ovc lavc -of mpeg\
	 -mpegopts format=dvd -vf scale=720:-10,harddup -srate 48000 -af lavcresample=48000\
         -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate="$vbit":keyint=15:acodec=ac3:abitrate=192\
	 -o  movie2output_dvd/"$output".mpg "$file"


			echo 
			echo 			
			echo -n " ""$count". Decodierte Datei gespeichert in "$pwd0"/movie2output_dvd/"$output".mpg
			echo
			fi
			fi
	done
	;;


nomovie)	
	echo	
	echo " Keinen gültigen Film angegeben"
	echo " movie2dvd help"
	echo	
	;;

notarget)
	echo	
	echo " Keine  Zieldatei angegeben"
	echo " movie2idvd help"
	echo	
	;;

help)
	echo
	echo "		Hilfe zu movie2dvd ""$vers"
	echo "====================================================================="
	echo " Wandelt Filme in mpg2 Format Dateien für DVD"
	echo
	echo " Normal Anwendung:"
	echo " movie2dvd  QuellFilmdatei  ZielFilmDatei"
	echo	
	echo " Stapelanwendung:"
	echo " movie2dvd ff format"
	echo " Wandelt alle filme des Ordners nach Unterordner movie2output_dvd."
	echo " format kann leer bleiben, oder als Filter, welche gewandelt werden sollen nach DVD."
	echo
	;;

esac
