diff mbox series

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

Message ID 20241019023448.48113-6-jamrial@gmail.com
State New
Headers show
Series None | expand

Commit Message

James Almer Oct. 19, 2024, 2:34 a.m. UTC
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@gmail.com>
---
 tests/fate-run.sh           | 21 +++++++++++++++++++++
 tests/fate/filter-video.mak |  2 +-
 2 files changed, 22 insertions(+), 1 deletion(-)

Comments

Michael Niedermayer Oct. 20, 2024, 11:50 p.m. UTC | #1
On Fri, Oct 18, 2024 at 11:34:48PM -0300, James Almer wrote:
> 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@gmail.com>
> ---
>  tests/fate-run.sh           | 21 +++++++++++++++++++++
>  tests/fate/filter-video.mak |  2 +-
>  2 files changed, 22 insertions(+), 1 deletion(-)

good idea

thx

[...]
diff mbox series

Patch

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)