#/bin/sh # $1 = input, $2 = output, $3 = video bit rate, $4 = audio bitrate # $5 = display width, $6 = h aspect ratio, $7 = v aspect ratio # $8 = croptop (unscaled) $9 = cropbottom (unscaled) # video vbitr # 640x480 768 # 640x352 768 # 320x240 320 # 320x176 256 if [ "$1" = "" ] then echo "usage: ipodenc-bath input_directory" exit 0 fi VBITR=960 ABITR=160 VWIDTH=512 HASPR=16 VASPR=9 VHIGHT=$(echo "$VWIDTH/$HASPR*$VASPR" | bc) CROPT=0 CROPB=0 echo video bitrate: $VBITR echo audio bitrate: $ABITR echo video size: "$VWIDTH"x"$VHIGHT" echo aspect ratio: $HASPR:$VASPR echo unscaled crop "(top)": $CROPT echo unscaled crop "(bottom)": $CROPB for i in $( ls "$1" ); do IFILE="$1""$i" OFILE="$i".mp4 ffmpeg -an -pass 1 -i "$IFILE" -deinterlace -croptop "$CROPT" -cropbottom "$CROPB" -s "$VWIDTH"x"$VHIGHT" -aspect "$HASPR":"$VASPR" -vcodec h264 -flags +loop -cmp +chroma -partitions +parti4x4+partp4x4+partp8x8+partb8x8 -subq 7 -trellis 2 -refs 5 -coder 0 -me_range 24 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b "$VBITR"k -minrate 100k -maxrate 2M -bufsize 10M -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 "$OFILE" rm "$OFILE" ffmpeg -i "$IFILE" -acodec aac -ab "$ABITR" -ar 48000 -pass 2 -deinterlace -croptop "$CROPT" -cropbottom "$CROPB" -s "$VWIDTH"x"$VHIGHT" -aspect "$HASPR":"$VASPR" -vcodec h264 -flags +loop -cmp +chroma -partitions +parti4x4+partp4x4+partp8x8+partb8x8 -subq 7 -trellis 2 -refs 5 -coder 0 -me_range 24 -g 300 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b "$VBITR"k -minrate 100k -maxrate 2M -bufsize 10M -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 "$OFILE" AtomicParsley "$OFILE" --DeepScan --iPod-uuid 1200 --overWrite && cp "$OFILE" /network/valeo/gjb/Movies/encoding/mp4 && rm "$OFILE" ffmpeg2pass-0.log x264_2pass.log done