#!/bin/bash set -e TITLE="Youtube Videos"; INPUTDIR="./"; OUTPUTDIR="/tmp"; function usage(){ echo "Usage: $0 -t -i -o " exit 1 } while getopts ':i:o:t:' OPTION ; do case $OPTION in i) INPUTDIR=$OPTARG;; o) OUTPUTDIR=$OPTARG;; t) TITLE=$OPTARG;; h) usage $EXIT_SUCCESS;; \?) echo "Unknown option \"-$OPTARG\"." >&2 usage $EXIT_ERROR;; :) echo "Option \"-$OPTARG\" needs an argument." >&2 usage $EXIT_ERROR;; *) usage $EXIT_BUG;; esac done mkdir -p $OUTPUTDIR; # generate mpegs pushd $INPUTDIR; for i in *.flv; do echo "working on: $i"; #echo "tovid -pal -dvd -force -noask -ffmpeg -in \"$i\" -out \"$OUTPUTDIR/$i\""; tovid -pal -dvd -force -noask -ffmpeg -in "$i" -out "$OUTPUTDIR/$i" done # create menu MENUCMD="makemenu " cd $OUTPUTDIR; rm -f $OUTPUTDIR/dvdmenu.mpg; for i in *.mpg; do MENUCMD="${MENUCMD} \"$i\""; done MENUCMD="${MENUCMD} -menu-title '${TITLE}' -overwrite -noask -out $OUTPUTDIR/dvdmenu"; #echo "MENUCMD: ${MENUCMD}" # create xml XMLCMD="makexml -menu $OUTPUTDIR/dvdmenu.mpg"; for i in *.mpg; do XMLCMD="${XMLCMD} \"$i\""; done XMLCMD="${XMLCMD} -out $OUTPUTDIR/dvdxml"; XMLCMD="${XMLCMD} -overwrite -out $OUTPUTDIR/dvdxml"; eval "${MENUCMD}"; eval "${XMLCMD}"; # create dvd structure rm -rf $OUTPUTDIR/dvdxml makedvd "$OUTPUTDIR/dvdxml.xml"; popd