#!/bin/bash lsdvd >> lsdvd.tmp TRACK=`grep Longest lsdvd.tmp | cut -c 16-17` LENGTH=`grep "Title: 0$TRACK" lsdvd.tmp | cut -c 19-27` echo $LENGTH > length.tmp hour=`cut -c 2-2 length.tmp` min=`cut -c 4-5 length.tmp` sec=`cut -c 7-8 length.tmp` TOTAL_SECONDS=$(( $hour*3600 + $min*60 + $sec )) FILENAME=$1 FINALSIZE=$2 FINALKBSIZE=$(($FINALSIZE*1000)) AUDIOSIZE=$(($TOTAL_SECONDS*24)) DIFFERENCE=$(($FINALKBSIZE - $AUDIOSIZE)) RATE=$((($DIFFERENCE*8) / $TOTAL_SECONDS)) echo -e "Title: $FILENAME" echo -e "Longest track on DVD: $TRACK" echo -e "Length: $LENGTH" echo -e "Number of seconds: $TOTAL_SECONDS" echo -e "Rate is $RATE kbps" echo -e "An mpeg named $FILENAME, of final size $FINALSIZE MB and length $TOTAL_SECONDS seconds is going to be created in 10 sec.\nI hope you know what the fuck you're doing..." sleep 10 mplayer dvd://$TRACK -dumpstream -dumpfile $FILENAME mencoder $FILENAME -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd -aid 128 -vf scale=720:480,harddup \ -srate 48000 -lavcopts acodec=ac3:abitrate=192:vcodec=mpeg2video:keyint=25:trell:mbd=2:\ vbitrate=$RATE:aspect=16/9:threads=2 -ofps 30000/1001 -o $FILENAME.mpg rm lsdvd.tmp rm length.tmp exit