Hi Kieran, Thank you for the patch. On Wednesday 08 Feb 2017 14:03:59 Kieran Bingham wrote: > From: Kieran Bingham <kieran.bingham@xxxxxxxxxxxxxxxx> > > Pass the optional '--crop (X,Y)/WxH' parameter through reference_frame > allowing the input to be cropped for comparison > > Signed-off-by: Kieran Bingham <kieran.bingham@xxxxxxxxxxxxxxxx> > --- > scripts/vsp-lib.sh | 37 +++++++++++++++++++++++++++++++++++++ > 1 file changed, 37 insertions(+) > > diff --git a/scripts/vsp-lib.sh b/scripts/vsp-lib.sh > index 08bf8f36c582..42a4bb20d1be 100755 > --- a/scripts/vsp-lib.sh > +++ b/scripts/vsp-lib.sh > @@ -162,6 +162,9 @@ reference_frame() { > vflip) > [ x$value = x1 ] && options="$options --vflip" > ;; > + crop) > + options="$options --crop $value" > + ;; Could you please keep the options sorted alphabetically ? > esac > done > > @@ -717,6 +720,40 @@ format_rpf_wpf() { > __vsp_wpf_format=$5 > } > > +format_crop_rpf_wpf() { > + local rpf=$1 > + local wpf=$2 > + local infmt=$(format_v4l2_to_mbus $3) > + local size=$4 > + local outfmt=$(format_v4l2_to_mbus $5) > + local rpfcrop=$6 > + local wpfcrop=$7 > + local rpfoutsize= > + local outsize= > + > + if [ x$rpfcrop != 'x' ] ; then I don't think this will work properly. You want to test for the presence of an RPF crop argument. If it's absent, and the WPF crop argument is specified, WPF crop will be stored in $6, and will thus be assigned to $rpfcrop. I see two possible solutions. One of them is to make the RPF crop argument mandatory. After all, given the function name, one can expect RPF crop to be specified, otherwise the caller should use rpf-wpf, not crop-rpf-wpf. Another more versatile option would be to add RPF crop support to the existing format_rpf_wpf() crop function, and make both RPF and WPF crop optional. You could use named option for that (rcrop=... wcrop=...) or use a special value to indicate that an option should be skipped (for instance "- (0,0)/640x480" to set the WPF crop rectangle without setting the RPF crop rectangle). > + rpfcrop="crop:$rpfcrop" > + rpfoutsize=$(echo $rpfcrop | sed 's/.*\///') > + else > + rpfoutsize=$size > + fi > + > + if [ x$wpfcrop != 'x' ] ; then > + wpfcrop="crop:$wpfcrop" > + outsize=$(echo $wpfcrop | sed 's/.*\///') > + else > + outsize=$rpfoutsize > + fi > + > + $mediactl -d $mdev -V "'$dev rpf.$rpf':0 [fmt:$infmt/$size $rpfcrop]" > + $mediactl -d $mdev -V "'$dev rpf.$rpf':1 [fmt:$infmt/$rpfoutsize]" > + $mediactl -d $mdev -V "'$dev wpf.$wpf':0 [fmt:$infmt/$rpfoutsize > $wpfcrop]" > + $mediactl -d $mdev -V "'$dev wpf.$wpf':1 [fmt:$outfmt/$outsize]" > + > + __vsp_rpf_format=$3 > + __vsp_wpf_format=$5 > +} > + > format_wpf() { > local format=$(format_v4l2_to_mbus $1) > local size=$2 -- Regards, Laurent Pinchart