#!/bin/bash # This script is meant to be executed in the root directory of a dvd structure # at the same level as the VIDEO_TS directory after a backup of the dvd with # > dvdbackup -M -i /dev/cdrom -o . # It requires one parameter to select a set of encoding parameters: # 1, 2 up to 14 or 'all' if you want to run all sets. # And a second parameter to select the bitrate (default 800) # The result will be a corresponding a01.avi, a02.avi up to a14.avi encoded movie. #--- Functions --------------------------------------------------------------- SetEncodeParam() { # This sets the global variables used to configure the # RunEncode function. It requires one parameter to select # a set of encoding parameters: 1, 2 up to 14 # and a second one to select the bitrate COMMAND="mencoder" SOURCE="-dvd-device . dvd://1 -chapter 5-6 -frames 12252" TARGET="a-${2}.avi" GENERAL="-ffourcc DIVX -mc 0 -noskip -skiplimit 0 -quiet" SUBTARGET0="" SUBTARGET1="" SUBTARGET2="" SUBTARGET3="" SOUND0="" SOUND1="-nosound" SOUND2="-nosound" SOUND3="-nosound" VIDEO0="" VIDEOOPT="" VIDEO1="" VIDEO2="" VIDEO3="" FILTER0="" FILTER1="-vf crop=680:572:20:0,scale=624:368" FILTER2=$FILTER1 FILTER3=$FILTER1 if [ -n "${2}" ]; then BITRATE=${2} TARGETSUF="-${2}" else BITRATE=800 TARGETSUF="" fi case "${1}" in 1) TARGET="a01${TARGETSUF}.avi" VIDEOOPT="vqmax=20:mbd=1:v4mv" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 2) TARGET="a02${TARGETSUF}.avi" VIDEOOPT="vqmax=20:mbd=2:v4mv:vmax_b_frames=1:vcelim=7:precmp=2:cmp=2:subcmp=2:predia=1:dia=1:trell:cbp:mv0" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 3) TARGET="a03${TARGETSUF}.avi" VIDEOOPT="vqmax=20:mbd=1:v4mv:vmax_b_frames=1:trell:qpel" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 4) TARGET="a04${TARGETSUF}.avi" VIDEOOPT="vqmax=20:mbd=2:v4mv:vmax_b_frames=1:vcelim=7:precmp=2:cmp=2:subcmp=2:predia=1:dia=1:trell:cbp:mv0:qpel" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 5) TARGET="a05${TARGETSUF}.avi" VIDEOOPT="mbd=1:vlelim=-4:vcelim=7:lumi_mask=0.05:dark_mask=0.01" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 6) TARGET="a06${TARGETSUF}.avi" VIDEOOPT="mbd=2:v4mv:vmax_b_frames=1:cmp=2:subcmp=2:predia=3:dia=-1:trell:qpel:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 7) TARGET="a07${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2:last_pred=1:mbcmp=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:v4mv:mbd=2:vpass=2:cmp=2:subcmp=2:predia=3:trell:dia=1:vbitrate=$BITRATE:last_pred=2:preme=2:vqcomp=0.6:autoaspect:psnr -o $TARGET" ;; 8) TARGET="a08${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2:mbcmp=2:subcmp=2:last_pred=1 -o /dev/null" VIDEOOPT="$VIDEOOPT:vqmin=1:vqmax=5:vqcomp=0.6:mbd=2:v4mv:trell:vpass=3:vbitrate=$BITRATE" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:subcmp=2:dia=-1:last_pred=2:autoaspect:psnr -o $TARGET" VIDEO3="-ovc lavc -lavcopts $VIDEOOPT:cmp=2:subcmp=6:dia=2:predia=3:last_pred=3:preme=2:cbp:mv0:qprd:qns=2:autoaspect:psnr -o $TARGET" ;; 9) TARGET="a09${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9pre) TARGET="a09pre${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9dia) TARGET="a09dia${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=1:predia=1:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9v) TARGET="a09v${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9c) TARGET="a09c${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cbp:mv0:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9f) TARGET="a09f${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqdiff=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9p6) TARGET="a09p6${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqcomp=0.6" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9p7) TARGET="a09p7${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqcomp=0.7" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9x2) TARGET="a09x2${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqmax=20" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9x6) TARGET="a09x6${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqmax=6" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9xb) TARGET="a09xb${TARGETSUF}.avi" VIDEOOPT="mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 9m) TARGET="a09m${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vlelim=-4:vcelim=7" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 10) TARGET="a10${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:cmp=2:subcmp=6:dia=3:predia=3:last_pred=3:preme=2:cbp:mv0:qprd:qns=2" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 11) TARGET="a11${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=6:cmp=6:subcmp=6:dia=3:predia=3" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 12) TARGET="a12${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=1:predia=1" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 13) TARGET="a13${TARGETSUF}.avi" VIDEOOPT="mbd=2:v4mv:trell:mbcmp=3:cmp=3:subcmp=3:vbitrate=$BITRATE" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:autoaspect:psnr -o $TARGET" ;; 13v) TARGET="a13v${TARGETSUF}.avi" VIDEOOPT="mbd=2:v4mv:trell:mbcmp=3:cmp=3:subcmp=3" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vqscale=2 -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 14) TARGET="a14${TARGETSUF}.avi" VIDEOOPT="max_bframes=1:gmc:trellis:vhq=4:me_quality=6" VIDEO1="-ovc xvid -xvidencopts $VIDEOOPT:pass=1 -o /dev/null" VIDEO2="-ovc xvid -xvidencopts $VIDEOOPT:pass=2:bitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15) TARGET="a15${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqmax=20:vqcomp=0.6:cbp:mv0" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15p) TARGET="a15p${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=2:vqmax=20:cbp:mv0" VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15L0) TARGET="a15L0${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=0:preme=2:vqmax=20:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15L1) TARGET="a15L1${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=1:preme=2:vqmax=20:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15L3) TARGET="a15L3${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=3:preme=2:vqmax=20:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15L4) TARGET="a15L4${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=4:preme=2:vqmax=20:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15L4q) TARGET="a15L4q${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=4:preme=2:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6:vqmax=10"; else VIDEOOPT="$VIDEOOPT:vqmax=6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15m0) TARGET="a15m0${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=0:vqmax=20:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; 15m1) TARGET="a15m1${TARGETSUF}.avi" VIDEOOPT="vmax_b_frames=1:mbd=2:v4mv:trell:precmp=2:cmp=2:subcmp=2:dia=-1:predia=1:last_pred=2:preme=1:vqmax=20:cbp:mv0" if [ "${BITRATE}" == "800" ]; then VIDEOOPT="$VIDEOOPT:vqcomp=0.6"; fi VIDEO1="-ovc lavc -lavcopts $VIDEOOPT:vpass=1:vbitrate=$BITRATE -o /dev/null" VIDEO2="-ovc lavc -lavcopts $VIDEOOPT:vpass=2:vbitrate=$BITRATE:autoaspect:psnr -o $TARGET" ;; *) echo "Please specify the ID of the parameter set you want to encode with." exit 1 ;; esac } RunEncode() { # This function encode a movie in 4 pass according to # presets variables. The first pass is used to encode # sound and the subsequent 3 pass are used to encode # video. All 4 pass can be used to extract subtitles. # A given pass or extraction is only run if it has a # configured preset variable. if [ -n "$SOUND0" ]; then [ -f frameno.avi ] && rm frameno.avi if [ -n "$SUBTARGET0" ]; then SUBTTL0="-slang $SUBTARGET0 -vobsubout $SUBTARGET0 -vobsuboutid $SUBTARGET0 -vobsuboutindex 0"; [ -f $SUBTARGET0.idx ] && rm $SUBTARGET0.idx [ -f $SUBTARGET0.sub ] && rm $SUBTARGET0.sub else SUBTTL0=""; fi $COMMAND $SOURCE $GENERAL $SOUND0 $FILTER0 $VIDEO0 $SUBTTL0; fi if [ -n "$VIDEO1" ]; then [ -f divx2pass.log ] && rm divx2pass.log [ -f xvid-twopass.stats ] && rm xvid-twopass.stats [ -f old$TARGET ] && rm old$TARGET [ -f $TARGET ] && mv $TARGET old$TARGET [ -f $TARGET ] && rm $TARGET rm psnr_*.log 2> /dev/null if [ -n "$SUBTARGET1" ]; then SUBTTL1="-slang $SUBTARGET1 -vobsubout $SUBTARGET1 -vobsuboutid $SUBTARGET1 -vobsuboutindex 0"; [ -f $SUBTARGET1.idx ] && rm $SUBTARGET1.idx [ -f $SUBTARGET1.sub ] && rm $SUBTARGET1.sub else SUBTTL1=""; fi $COMMAND $SOURCE $GENERAL $SOUND1 $FILTER1 $VIDEO1 $SUBTTL1; fi if [ -n "$VIDEO2" ]; then [ -f old$TARGET ] && rm old$TARGET [ -f $TARGET ] && mv $TARGET old$TARGET [ -f $TARGET ] && rm $TARGET rm psnr_*.log 2> /dev/null if [ -n "$SUBTARGET2" ]; then SUBTTL2="-slang $SUBTARGET2 -vobsubout $SUBTARGET2 -vobsuboutid $SUBTARGET2 -vobsuboutindex 0"; [ -f $SUBTARGET2.idx ] && rm $SUBTARGET2.idx [ -f $SUBTARGET2.sub ] && rm $SUBTARGET2.sub else SUBTTL2=""; fi $COMMAND $SOURCE $GENERAL $SOUND2 $FILTER2 $VIDEO2 $SUBTTL2; fi if [ -n "$VIDEO3" ]; then [ -f old$TARGET ] && rm old$TARGET [ -f $TARGET ] && mv $TARGET old$TARGET [ -f $TARGET ] && rm $TARGET rm psnr_*.log 2> /dev/null if [ -n "$SUBTARGET3" ]; then SUBTTL3="-slang $SUBTARGET3 -vobsubout $SUBTARGET3 -vobsuboutid $SUBTARGET3 -vobsuboutindex 0"; [ -f $SUBTARGET3.idx ] && rm $SUBTARGET3.idx [ -f $SUBTARGET3.sub ] && rm $SUBTARGET3.sub else SUBTTL3=""; fi $COMMAND $SOURCE $GENERAL $SOUND3 $FILTER3 $VIDEO3 $SUBTTL3; fi } #--- Main code --------------------------------------------------------------- if [ "${1}" == "all" ] || [ "${1}" == "ALL" ]; then [ -f results${2}.txt ] && rm results${2}.txt for (( i=1; i<16; i=$i+1 )); do echo "running encode $i" ${0} $i ${2} >> results${2}.txt done for i in 9v 9c 9f 9p6 9p7 9x2 9x6 9xb 9m 9pre 9dia 13v 15p 15L0 15L1 15L3 15L4 15L4q 15m0 15m1; do echo "running encode $i" ${0} $i ${2} >> results${2}.txt done [ -f tmpstats.txt ] && rm tmpstats.txt [ -f tmperrors.txt ] && rm tmperrors.txt [ -f tmptime.txt ] && rm tmptime.txt [ -f divx2pass.log ] && rm divx2pass.log [ -f xvid-twopass.stats ] && rm xvid-twopass.stats rm psnr_*.log 2> /dev/null else [ -f tmpstats.txt ] && rm tmpstats.txt [ -f tmperrors.txt ] && rm tmperrors.txt [ -f tmptime.txt ] && rm tmptime.txt rm psnr_*.log 2> /dev/null SetEncodeParam ${1} ${2} ( time RunEncode > tmpstats.txt 2> tmperrors.txt ) 2> tmptime.txt cat psnr_*.log > psnr-${TARGET%%.*}.log echo "### ${1} @ ${2} kbit/s ####################################" grep "kbit" tmpstats.txt grep "PSNR" tmpstats.txt grep "user" tmptime.txt fi