#!/bin/sh def_ratio=1 def_signal=1 help(){ cat < Options: -r n aspect ratio, n=1 4:3, n=2 16:9 ($def_ratio) -v n Video Signal, n=1 ntsc n=2 pal ($def_signal) END exit 0 } ratio=$def_ratio signal=$def_signal while getopts v:a:b:i:r:h name "$@" do case $name in v) signal=$OPTARG ;; r) ratio=$OPTARG ;; *) help ;; esac done let shiftind=$OPTIND-1 shift $shiftind case $signal in 2) Vflag="25:1" Nflag="pal" fwidth="720" fheight="576" case $ratio in 2) Aflag=3 Rflag="236:99" ;; *) Aflag=2 Rflag="59:54" ;; esac ;; *) Vflag="30000:1001" Nflag="ntsc" fwidth="720" fheight="480" case $ratio in 2) Aflag=3 Rflag="40:33" ;; *) Aflag=2 Rflag="10:11" ;; esac ;; esac if test "$#" = "1" then case $1 in *.pnm) ifilter=cat input="$1" base=`echo $input | sed "s/\.pnm$//"` ;; *.ppm) ifilter=cat input="$1" base=`echo $input | sed "s/\.ppm$//"` ;; *.png) ifilter=pngtopnm input="$1" base=`echo $input | sed "s/\.png$//"` ;; *) help ;; esac echo Transcoding $input to $base.mpg.... sleep 1 $ifilter $input | ppmtoy4m -A $Rflag -F $Vflag -n 1 -r -I p -S 420mpeg2 | mpeg2enc -a $Aflag -f 8 -n $Nflag -o "$base".m2v dd if=/dev/zero bs=4 count=1600 | toolame -b 128 -s 48 /dev/stdin "$base".m2a mplex -f 8 "$base".m2v "$base".m2a -o "$base"b.mpg if test ! -f $base.xml then cat <$base.xml EOF fi spumux $base.xml <"$base"b.mpg >$base.mpg else help fi