tests: Convert image2pipe tests to non-legacy test scripts
authorDiego Biurrun <diego@biurrun.de>
Wed, 8 Aug 2018 20:17:49 +0000 (22:17 +0200)
committerDiego Biurrun <diego@biurrun.de>
Sat, 16 Feb 2019 17:15:11 +0000 (18:15 +0100)
tests/Makefile
tests/fate-run.sh
tests/fate/avformat.mak
tests/fate/lavf-image2pipe.mak [new file with mode: 0644]
tests/lavf-regression.sh
tests/ref/lavf/pbmpipe
tests/ref/lavf/pgmpipe
tests/ref/lavf/ppmpipe

index 8d9a424..1884f5e 100644 (file)
@@ -61,6 +61,7 @@ include $(SRC_PATH)/tests/fate/acodec.mak
 include $(SRC_PATH)/tests/fate/vcodec.mak
 
 include $(SRC_PATH)/tests/fate/avformat.mak
+include $(SRC_PATH)/tests/fate/lavf-image2pipe.mak
 include $(SRC_PATH)/tests/fate/seek.mak
 
 include $(SRC_PATH)/tests/fate/aac.mak
index 8c6adf1..0221e5c 100755 (executable)
@@ -152,6 +152,51 @@ enc_dec(){
     tests/tiny_psnr $srcfile $decfile $cmp_unit $cmp_shift
 }
 
+# FIXME: There is a certain duplication between the avconv-related helper
+# functions above and below that should be refactored.
+avconv2="$target_exec ${target_path}/avconv"
+raw_src="${target_path}/tests/vsynth1/%02d.pgm"
+crcfile="tests/data/$test.lavf.crc"
+target_crcfile="${target_path}/$crcfile"
+
+echov(){
+    echo "$@" >&3
+}
+
+AVCONV_OPTS="-nostats -y -cpuflags $cpuflags -threads $threads"
+DEC_OPTS="-flags +bitexact -idct simple -sws_flags +accurate_rnd+bitexact -fflags +bitexact"
+ENC_OPTS="$DEC_OPTS -threads 1 -dct fastint"
+
+run_avconv(){
+    $echov $avconv2 $AVCONV_OPTS $*
+    $avconv2 $AVCONV_OPTS $*
+}
+
+do_avconv(){
+    f="$1"
+    shift
+    set -- $* ${target_path}/$f
+    run_avconv $*
+    do_md5sum $f
+    echo $(wc -c $f)
+}
+
+do_avconv_crc(){
+    f="$1"
+    shift
+    run_avconv $* -f crc "$target_crcfile"
+    echo "$f $(cat $crcfile)"
+}
+
+lavf_image2pipe(){
+    t="${test#lavf-}"
+    t="${t%pipe}"
+    outdir="tests/data/lavf"
+    file=${outdir}/${t}pipe.$t
+    do_avconv $file $DEC_OPTS -f image2 -c:v pgmyuv -i $raw_src -f image2pipe $ENC_OPTS -t 1 -qscale 10
+    do_avconv_crc $file $DEC_OPTS -f image2pipe -i $target_path/$file
+}
+
 lavftest(){
     t="${test#lavf-}"
     ref=${base}/ref/lavf/$t
index 458ae7c..a4a0988 100644 (file)
@@ -20,13 +20,10 @@ FATE_LAVF-$(call ENCDEC2, MPEG2VIDEO, PCM_S16LE, MXF_D10 MXF)        += mxf_d10
 FATE_LAVF-$(call ENCDEC2, MPEG4,      MP2,       NUT)                += nut
 FATE_LAVF-$(call ENCDEC,  FLAC,                  OGG)                += ogg
 FATE_LAVF-$(call ENCDEC,  PAM,                   IMAGE2)             += pam
-FATE_LAVF-$(call ENCDEC,  PBM,                   IMAGE2PIPE)         += pbmpipe
 FATE_LAVF-$(call ENCDEC,  PCX,                   IMAGE2)             += pcx
 FATE_LAVF-$(call ENCDEC,  PGM,                   IMAGE2)             += pgm
-FATE_LAVF-$(call ENCDEC,  PGM,                   IMAGE2PIPE)         += pgmpipe
 FATE_LAVF-$(call ENCDEC,  PNG,                   IMAGE2)             += png
 FATE_LAVF-$(call ENCDEC,  PPM,                   IMAGE2)             += ppm
-FATE_LAVF-$(call ENCDEC,  PPM,                   IMAGE2PIPE)         += ppmpipe
 FATE_LAVF-$(call ENCMUX,  RV10 AC3_FIXED,        RM)                 += rm
 FATE_LAVF-$(call ENCDEC,  PCM_U8,                RSO)                += rso
 FATE_LAVF-$(call ENCDEC,  SGI,                   IMAGE2)             += sgi
diff --git a/tests/fate/lavf-image2pipe.mak b/tests/fate/lavf-image2pipe.mak
new file mode 100644 (file)
index 0000000..297f677
--- /dev/null
@@ -0,0 +1,12 @@
+FATE_LAVF_IMAGE2PIPE-$(call ENCDEC,     PBM,    IMAGE2PIPE)     += pbmpipe
+FATE_LAVF_IMAGE2PIPE-$(call ENCDEC,     PGM,    IMAGE2PIPE)     += pgmpipe
+FATE_LAVF_IMAGE2PIPE-$(call ENCDEC,     PPM,    IMAGE2PIPE)     += ppmpipe
+
+FATE_LAVF_IMAGE2PIPE = $(FATE_LAVF_IMAGE2PIPE-yes:%=fate-lavf-%)
+
+$(FATE_LAVF_IMAGE2PIPE): CMD = lavf_image2pipe
+$(FATE_LAVF_IMAGE2PIPE): REF = $(SRC_PATH)/tests/ref/lavf/$(@:fate-lavf-%=%)
+$(FATE_LAVF_IMAGE2PIPE): $(VREF)
+
+FATE_AVCONV += $(FATE_LAVF_IMAGE2PIPE)
+fate-lavf-image2pipe fate-lavf: $(FATE_LAVF_IMAGE2PIPE)
index 4161e37..fecc36c 100755 (executable)
@@ -19,13 +19,6 @@ do_lavf()
         do_avconv_crc $file $DEC_OPTS -i $target_path/$file $4
 }
 
-do_streamed_images()
-{
-    file=${outfile}${1}pipe.$1
-    do_avconv $file $DEC_OPTS -f image2 -c:v pgmyuv -i $raw_src -f image2pipe $ENC_OPTS -t 1 -qscale 10
-    do_avconv_crc $file $DEC_OPTS -f image2pipe -i $target_path/$file
-}
-
 do_image_formats()
 {
     outfile="$datadir/images/$1/"
@@ -109,18 +102,6 @@ fi
 #do_avconv $file -t 1 -qscale 10 -f image2 -c:v pgmyuv -i $raw_src
 #do_avconv_crc $file -i $target_path/$file
 
-if [ -n "$do_pbmpipe" ] ; then
-do_streamed_images pbm
-fi
-
-if [ -n "$do_pgmpipe" ] ; then
-do_streamed_images pgm
-fi
-
-if [ -n "$do_ppmpipe" ] ; then
-do_streamed_images ppm
-fi
-
 if [ -n "$do_gif" ] ; then
 file=${outfile}lavf.gif
 do_avconv $file $DEC_OPTS -f image2 -c:v pgmyuv -i $raw_src $ENC_OPTS -t 1 -qscale 10 -pix_fmt rgb24
index d50ed71..ab7d302 100644 (file)
@@ -1,3 +1,3 @@
-8ced96f5b6b7362358199ae993b4ceb7 *./tests/data/lavf/pbmpipe.pbm
-317075 ./tests/data/lavf/pbmpipe.pbm
-./tests/data/lavf/pbmpipe.pbm CRC=0xfae0a1ba
+8ced96f5b6b7362358199ae993b4ceb7 *tests/data/lavf/pbmpipe.pbm
+317075 tests/data/lavf/pbmpipe.pbm
+tests/data/lavf/pbmpipe.pbm CRC=0xfae0a1ba
index 28ad60e..d854897 100644 (file)
@@ -1,3 +1,3 @@
-04e66c8e9e064c8310bd657ee559bd70 *./tests/data/lavf/pgmpipe.pgm
-2534775 ./tests/data/lavf/pgmpipe.pgm
-./tests/data/lavf/pgmpipe.pgm CRC=0xadf48ba9
+04e66c8e9e064c8310bd657ee559bd70 *tests/data/lavf/pgmpipe.pgm
+2534775 tests/data/lavf/pgmpipe.pgm
+tests/data/lavf/pgmpipe.pgm CRC=0xadf48ba9
index b703e16..a50dbb0 100644 (file)
@@ -1,3 +1,3 @@
-74f1f6651ad8f192a7b4c11c2b6c71e5 *./tests/data/lavf/ppmpipe.ppm
-7603575 ./tests/data/lavf/ppmpipe.ppm
-./tests/data/lavf/ppmpipe.ppm CRC=0x87b3c15f
+74f1f6651ad8f192a7b4c11c2b6c71e5 *tests/data/lavf/ppmpipe.ppm
+7603575 tests/data/lavf/ppmpipe.ppm
+tests/data/lavf/ppmpipe.ppm CRC=0x87b3c15f