[FFmpeg-devel] [PATCH 6/6] fate/filter-video: make fate-filter-pixdesc compare the hashed output with and without pixdesctest filtering

James Almer jamrial at gmail.com
Sat Oct 19 05:34:48 EEST 2024


This helps detecting inconsistencies in swscale input/output code and
a av_read_image_line()/av_write_image_line() pass.

Signed-off-by: James Almer <jamrial at gmail.com>
---
 tests/fate-run.sh           | 21 +++++++++++++++++++++
 tests/fate/filter-video.mak |  2 +-
 2 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/tests/fate-run.sh b/tests/fate-run.sh
index 309ab85134..f8d67de25a 100755
--- a/tests/fate-run.sh
+++ b/tests/fate-run.sh
@@ -503,6 +503,27 @@ pixfmt_conversion(){
               $ENC_OPTS -f rawvideo -s 352x288 -pix_fmt yuv444p -color_range mpeg
 }
 
+pixdesc(){
+    pix_fmt=${test#filter-pixdesc-}
+    label=${test#filter-}
+    raw_src="${target_path}/tests/vsynth1/%02d.pgm"
+
+    md5file1="${outdir}/${test}-1.md5"
+    md5file2="${outdir}/${test}-2.md5"
+    cleanfiles="$cleanfiles $md5file1 $md5file2"
+
+    ffmpeg $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src \
+        $FLAGS $ENC_OPTS -vf "scale,format=$pix_fmt" -vcodec rawvideo -frames:v 5 \
+        "-pix_fmt $pix_fmt" -f nut md5:$md5file1
+    ffmpeg $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src \
+        $FLAGS $ENC_OPTS -vf "scale,format=$pix_fmt,pixdesctest" -vcodec rawvideo -frames:v 5 \
+        "-pix_fmt $pix_fmt" -f nut md5:$md5file2
+
+    diff -u -q $md5file1 $md5file2 || return
+    printf '%-20s' $label
+    cat $md5file1
+}
+
 video_filter(){
     filters=$1
     shift
diff --git a/tests/fate/filter-video.mak b/tests/fate/filter-video.mak
index 8036d692b4..8ff9a6f225 100644
--- a/tests/fate/filter-video.mak
+++ b/tests/fate/filter-video.mak
@@ -591,7 +591,7 @@ ifneq (,$(RUNNING_PIXFMTS_TESTS))
 endif
 
 FATE_FILTER_PIXDESC-$(call VIDEO_FILTER, SCALE FORMAT PIXDESCTEST) += $(addprefix fate-filter-pixdesc-, $(PIXFMTS))
-fate-filter-pixdesc-%: CMD = video_filter "scale,format=$(@:fate-filter-pixdesc-%=%),pixdesctest" -pix_fmt $(@:fate-filter-pixdesc-%=%)
+fate-filter-pixdesc-%: CMD = pixdesc
 
 fate-filter-pixdesc: $(FATE_FILTER_PIXDESC-yes)
 FATE_FILTER_VSYNTH-yes += $(FATE_FILTER_PIXDESC-yes)
-- 
2.47.0



More information about the ffmpeg-devel mailing list