Add QP parallelization to rd_collect for bpg.
authorJustin Nickelsburg <nickelsburg99@gmail.com>
Tue, 9 Jul 2019 21:32:36 +0000 (17:32 -0400)
committerNathan E. Egge <negge@dgql.org>
Wed, 24 Jul 2019 02:59:28 +0000 (22:59 -0400)
tools/rd_collect.sh
tools/rd_collect_bpg.sh

index a467370..1c90f7b 100755 (executable)
@@ -354,7 +354,10 @@ case $CODEC in
       exit 1
     fi
 
-    export CORES=1
+    if [ -z "$QPS" ]; then
+      QPS=$(seq 1 51)
+    fi
+
     export RD_COLLECT_SUB=$(dirname $0)/rd_collect_bpg.sh
     ;;
   rav1e)
index 1272c91..7444e15 100755 (executable)
@@ -7,8 +7,9 @@ if [ -z $RD_COLLECT_SUB ]; then
 fi
 
 FILE=$1
+QP=$2
 
-BASENAME=$(basename $FILE)
+BASENAME=$(basename $FILE)-$CODEC-$QP
 rm $BASENAME.out 2> /dev/null || true
 echo $BASENAME
 $Y4M2PNG $FILE -o $BASENAME-in.png 2> /dev/null
@@ -17,19 +18,17 @@ WIDTH=$(head -1 $FILE | cut -d\  -f 2 | tr -d 'W')
 HEIGHT=$(head -1 $FILE | cut -d\  -f 3 | tr -d 'H')
 PIXELS=$(($WIDTH*$HEIGHT))
 
-for x in $(seq 1 51); do
-  $BPGENC -q $x $BASENAME-in.png -o $BASENAME.bpg
-  $BPGDEC $BASENAME.bpg -o $BASENAME-out.png -b 16
-  $PNG2Y4M --no-dither $BASENAME-out.png -o $BASENAME.y4m 2> /dev/null
-  SIZE=$(stat -c %s $BASENAME.bpg)
-  PSNR=$($DUMP_PSNR $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
-  PSNRHVS=$($DUMP_PSNRHVS $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
-  SSIM=$($DUMP_SSIM $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
-  FASTSSIM=$($DUMP_FASTSSIM -c $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
-  CIEDE=$($DUMP_CIEDE $FILE $BASENAME.y4m 2> /dev/null | grep Total | cut -d' ' -f2-)
-  rm $BASENAME.bpg $BASENAME-out.png $BASENAME.y4m
-  echo $x $PIXELS $SIZE $PSNR $PSNRHVS $SSIM $FASTSSIM $CIEDE >> $BASENAME.out
-  #tail -1 $BASENAME.out
-done
+$BPGENC -q $QP $BASENAME-in.png -o $BASENAME.bpg
+$BPGDEC $BASENAME.bpg -o $BASENAME-out.png -b 16
+$PNG2Y4M --no-dither $BASENAME-out.png -o $BASENAME.y4m 2> /dev/null
+SIZE=$(stat -c %s $BASENAME.bpg)
+PSNR=$($DUMP_PSNR $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
+PSNRHVS=$($DUMP_PSNRHVS $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
+SSIM=$($DUMP_SSIM $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
+FASTSSIM=$($DUMP_FASTSSIM -c $FILE $BASENAME.y4m 2> /dev/null | grep Total | tr -s ' ' | cut -d\  -f $((4+$PLANE*2)))
+CIEDE=$($DUMP_CIEDE $FILE $BASENAME.y4m 2> /dev/null | grep Total | cut -d' ' -f2-)
+rm $BASENAME.bpg $BASENAME-out.png $BASENAME.y4m
+echo $QP $PIXELS $SIZE $PSNR $PSNRHVS $SSIM $FASTSSIM $CIEDE >> $BASENAME.out
+#tail -1 $BASENAME.out
 
 rm $BASENAME-in.png