From aab3ea5f7d53d98d696b87b5661f45dfadd8600a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5ns=20Rullg=C3=A5rd?= Date: Fri, 9 Jul 2010 00:40:51 +0000 Subject: [PATCH] fate: add oneoff comparison method This adds the 'oneoff' comparison method. It compares two s16le pcm files with a max difference <= the fuzz factor treated as success. Default fuzz is 1. On failure, the full tiny_psnr output is printed. Originally committed as revision 24134 to svn://svn.ffmpeg.org/ffmpeg/trunk --- Makefile | 2 +- tests/fate-run.sh | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index efb714f6c0..4752649d6f 100644 --- a/Makefile +++ b/Makefile @@ -279,7 +279,7 @@ include $(SRC_PATH_BARE)/tests/fate.mak ifdef SAMPLES fate: $(FATE_TESTS) -$(FATE_TESTS): ffmpeg$(EXESUF) +$(FATE_TESTS): ffmpeg$(EXESUF) tests/tiny_psnr$(HOSTEXESUF) @echo "TEST FATE $(@:fate-%=%)" @$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' else diff --git a/tests/fate-run.sh b/tests/fate-run.sh index 39f42ffcc3..7dce9b030e 100755 --- a/tests/fate-run.sh +++ b/tests/fate-run.sh @@ -15,10 +15,20 @@ fuzz=$8 outdir="tests/data/fate" outfile="${outdir}/${test}" +oneoff(){ + psnr=$(tests/tiny_psnr "$1" "$2" 2 0 0) + max=$(expr "$psnr" : '.*MAXDIFF: *\([0-9]*\)') + if [ $max -gt ${3:-1} ]; then + echo "$psnr" + return 1 + fi +} + mkdir -p "$outdir" eval $target_exec $command > "$outfile" 2>/dev/null case $cmp in diff) diff -u -w "$ref" "$outfile" ;; + oneoff) oneoff "$ref" "$outfile" "$fuzz" ;; esac