[FFmpeg-cvslog] r20057 - in trunk: Makefile tests/codec-regression.sh

stefano subversion
Sun Sep 27 11:33:37 CEST 2009


Author: stefano
Date: Sun Sep 27 11:33:37 2009
New Revision: 20057

Log:
Implement a lavfitest target for testing regressions in libavfilter.
The target is disabled.

See the thread: "[PATCH] libavfilter-soc: regression test for libavfilter".

Modified:
   trunk/Makefile
   trunk/tests/codec-regression.sh

Modified: trunk/Makefile
==============================================================================
--- trunk/Makefile	Sun Sep 27 10:16:50 2009	(r20056)
+++ trunk/Makefile	Sun Sep 27 11:33:37 2009	(r20057)
@@ -144,6 +144,7 @@ fulltest test: codectest lavftest seekte
 
 FFSERVER_REFFILE = $(SRC_PATH)/tests/ffserver.regression.ref
 LAVF_REFFILE     = $(SRC_PATH)/tests/lavf.regression.ref
+LAVFI_REFFILE    = $(SRC_PATH)/tests/lavfi.regression.ref
 ROTOZOOM_REFFILE = $(SRC_PATH)/tests/rotozoom.regression.ref
 SEEK_REFFILE     = $(SRC_PATH)/tests/seek.regression.ref
 VSYNTH_REFFILE   = $(SRC_PATH)/tests/vsynth.regression.ref
@@ -237,14 +238,19 @@ LAVF_TESTS = $(addprefix regtest-,      
         pcx                                     \
     )
 
+LAVFI_TESTS = $(addprefix regtest-,             \
+    )
+
 RESFILES = $(addprefix tests/data/,$(addsuffix .$(1),$(2:regtest-%=%)))
 
 ROTOZOOM_RESFILES = $(call RESFILES,rotozoom.regression,$(CODEC_TESTS))
 VSYNTH_RESFILES   = $(call RESFILES,vsynth.regression,$(CODEC_TESTS))
 
 LAVF_RESFILES = $(call RESFILES,lavf.regression,$(LAVF_TESTS))
+LAVFI_RESFILES = $(call RESFILES,lavfi.regression,$(LAVFI_TESTS))
 
 LAVF_RESFILE     = tests/data/lavf.regression
+LAVFI_RESFILE    = tests/data/lavfi.regression
 ROTOZOOM_RESFILE = tests/data/rotozoom.regression
 VSYNTH_RESFILE   = tests/data/vsynth.regression
 
@@ -264,18 +270,23 @@ codectest: $(VSYNTH_RESFILE) $(ROTOZOOM_
 lavftest: $(LAVF_RESFILE)
 	diff -u -w $(LAVF_REFFILE) $(LAVF_RESFILE)
 
-$(VSYNTH_RESFILE) $(ROTOZOOM_RESFILE) $(LAVF_RESFILE):
+# lavfitest: $(LAVFI_RESFILE)
+# 	diff -u -w $(LAVFI_REFFILE) $(LAVFI_RESFILE)
+
+$(VSYNTH_RESFILE) $(ROTOZOOM_RESFILE) $(LAVF_RESFILE) $(LAVFI_RESFILE):
 	cat $^ > $@
 
 $(LAVF_RESFILE):     $(LAVF_RESFILES)
+$(LAVFI_RESFILE):    $(LAVFI_RESFILES)
 $(ROTOZOOM_RESFILE): $(ROTOZOOM_RESFILES)
 $(VSYNTH_RESFILE):   $(VSYNTH_RESFILES)
 
 $(VSYNTH_RESFILES) $(ROTOZOOM_RESFILES): $(CODEC_TESTS)
 
 $(LAVF_RESFILES): $(LAVF_TESTS)
+$(LAVFI_RESFILES): $(LAVFI_TESTS)
 
-$(CODEC_TESTS) $(LAVF_TESTS): regtest-ref
+$(CODEC_TESTS) $(LAVF_TESTS) $(LAVFI_TESTS): regtest-ref
 
 regtest-ref: ffmpeg$(EXESUF) tests/vsynth1/00.pgm tests/vsynth2/00.pgm tests/data/asynth1.sw
 
@@ -286,6 +297,9 @@ $(CODEC_TESTS) regtest-ref: tests/tiny_p
 $(LAVF_TESTS):
 	$(SRC_PATH)/tests/codec-regression.sh $@ lavf tests/vsynth1 b "$(TARGET_EXEC)" "$(TARGET_PATH)"
 
+$(LAVFI_TESTS):
+	$(SRC_PATH)/tests/codec-regression.sh $@ lavfi tests/vsynth1 b "$(TARGET_EXEC)" "$(TARGET_PATH)"
+
 seektest: codectest lavftest tests/seek_test$(EXESUF)
 	$(SRC_PATH)/tests/seek-regression.sh $(SEEK_REFFILE) "$(TARGET_EXEC)" "$(TARGET_PATH)"
 

Modified: trunk/tests/codec-regression.sh
==============================================================================
--- trunk/tests/codec-regression.sh	Sun Sep 27 10:16:50 2009	(r20056)
+++ trunk/tests/codec-regression.sh	Sun Sep 27 11:33:37 2009	(r20057)
@@ -660,4 +660,42 @@ for pix_fmt in $conversions ; do
 done
 fi
 
+# libavfilter testing
+
+function do_lavfi() {
+    test_name=$1
+    eval test=\$do_$test_name
+    vfilters=$2
+
+    if [ -n "$test" ] ; then
+        do_video_encoding ${test_name}.avi "-qscale 10" "-vcodec huffyuv -vfilters $vfilters"
+    fi
+}
+
+# do_lavfi "crop" "crop=100:100:-1:-1"
+# do_lavfi "crop_scale" "crop=100:100,scale=200:-1"
+# do_lavfi "scale" "scale=200:200"
+
+# libavfilter testing
+
+function do_lavfi() {
+    test_name=$1
+    eval test=\$do_$test_name
+    vfilters=$2
+
+    if [ -n "$test" ] ; then
+        do_video_encoding ${test_name}.avi "-qscale 10" "-vcodec huffyuv -vfilters $vfilters"
+    fi
+}
+
+# example tests:
+# do_lavfi "crop" "crop=100:100:-1:-1"
+# do_lavfi "crop_scale" "crop=100:100,scale=200:-1"
+# do_lavfi "scale" "scale=200:200"
+
+# TODO: add tests for
+# direct rendering,
+# slices
+# chains with feedback loops
+
 rm -f "$bench" "$bench2"



More information about the ffmpeg-cvslog mailing list