#!/bin/bash i=$1 rm -f $i-*.avi if [ -z $2 ] ; then WIDTH=$(ffmpeg/ffprobe -show_streams $i | grep width | awk -F= '{ print $2}') else WIDTH=$2 fi if [ -z $3 ] ; then HEIGHT=$(ffmpeg/ffprobe -show_streams $i | grep height | awk -F= '{ print $2}') else HEIGHT=$3 fi # screens are 41x31 with a 4cm gap CROPWIDTH=$(expr $WIDTH '*' 41 / 132) CROPHEIGHT=$(expr $HEIGHT '*' 31 / 66) XOFFSET=$(expr $WIDTH '*' 4 / 132) YOFFSET=$(expr $WIDTH '*' 4 / 66) echo "$WIDTH:$HEIGHT:$CROPWIDTH:$CROPHEIGHT" if [ $WIDTH -lt $(expr $HEIGHT '*' 2) ] ; then echo "pad left and right" HPAD=$(expr $HEIGHT - $WIDTH / 2) #pad=width:height:x:y:black #tl pad=$(expr $HPAD + CROPWIDTH):$CROPHEIGHT:$HPAD:0:black #bl pad=$(expr $HPAD + CROPWIDTH):$CROPHEIGHT:$HPAD:0:black #tr pad=$(expr $HPAD + CROPWIDTH):$CROPHEIGHT:0:0:black #br pad=$(expr $HPAD + CROPWIDTH):$CROPHEIGHT:0:0:black echo ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:0:0","pad=$(expr $HPAD + $CROPWIDTH):$CROPHEIGHT:$HPAD:0:black" $i-tl.avi ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:0:0","pad=$(expr $HPAD + $CROPWIDTH):$CROPHEIGHT:$HPAD:0:black" $i-tl.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr $CROPWIDTH + $XOFFSET):0" $i-tm.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr \( $CROPWIDTH + $XOFFSET \) '*' 2):0","pad=$(expr $HPAD + $CROPWIDTH):$CROPHEIGHT:0:0:black" $i-tr.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:0:$(expr $CROPHEIGHT + $YOFFSET)","pad=$(expr $HPAD + $CROPWIDTH):$CROPHEIGHT:$HPAD:0:black" $i-bl.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr $CROPWIDTH + $XOFFSET):$(expr $CROPHEIGHT + $YOFFSET)" $i-bm.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr \( $CROPWIDTH + $XOFFSET \) '*' 2):$(expr $CROPHEIGHT + $YOFFSET)","pad=$(expr $HPAD + $CROPWIDTH):$CROPHEIGHT:0:0:black" $i-br.avi & else echo "pad top and bottom" VPAD=$(expr $WIDTH / 4 - $HEIGHT / 2) #tl "pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:$VPAD:black" #bl "pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:0:black" echo ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:0:0","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:$VPAD:black" $i-tl.avi ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:0:0","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:$VPAD:black" $i-tl.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr $CROPWIDTH + $XOFFSET):0","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:$VPAD:black" $i-tm.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr \( $CROPWIDTH + $XOFFSET \) '*' 2):0","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:$VPAD:black" $i-tr.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:0:$(expr $CROPHEIGHT + $YOFFSET)","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:0:black" $i-bl.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr $CROPWIDTH + $XOFFSET):$(expr $CROPHEIGHT + $YOFFSET)","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:0:black" $i-bm.avi & ffmpeg/ffmpeg -qscale 3 -an -i $i -vf "crop=$CROPWIDTH:$CROPHEIGHT:$(expr \( $CROPWIDTH + $XOFFSET \) '*' 2):$(expr $CROPHEIGHT + $YOFFSET)","pad=$CROPWIDTH:$(expr $CROPHEIGHT + $VPAD):0:0:black" $i-br.avi & fi