Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
To: ffmpeg-devel@ffmpeg.org
Cc: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Subject: [FFmpeg-devel] [PATCH 15/19] fate/hevc: Fix test requirements
Date: Fri, 29 Apr 2022 22:22:58 +0200
Message-ID: <AS8PR01MB79440925915E3B87966AD2108FFC9@AS8PR01MB7944.eurprd01.prod.exchangelabs.com> (raw)
In-Reply-To: <AS8PR01MB7944D402A192D6C7F266ABE58FFD9@AS8PR01MB7944.eurprd01.prod.exchangelabs.com>

Also replace define/foreach with pattern-specific variable values.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 tests/fate/hevc.mak | 102 +++++++++++++++-----------------------------
 1 file changed, 34 insertions(+), 68 deletions(-)

diff --git a/tests/fate/hevc.mak b/tests/fate/hevc.mak
index 3adee59e54..2f16e3a29f 100644
--- a/tests/fate/hevc.mak
+++ b/tests/fate/hevc.mak
@@ -1,4 +1,4 @@
-HEVC_SAMPLES =                  \
+HEVC_SAMPLES_8BIT =             \
     AMP_A_Samsung_4             \
     AMP_A_Samsung_6             \
     AMP_B_Samsung_4             \
@@ -158,23 +158,27 @@ HEVC_SAMPLES_422_10BIT =        \
     ADJUST_IPRED_ANGLE_A_RExt_Mitsubishi_1 \
     IPCM_A_RExt_NEC             \
 
-HEVC_SAMPLES_422_10BIN =        \
-    Main_422_10_A_RExt_Sony_1   \
-
 HEVC_SAMPLES_422_10BIN_LARGE =  \
     Main_422_10_B_RExt_Sony_1   \
 
+HEVC_SAMPLES_422_10BIN =        \
+    Main_422_10_A_RExt_Sony_1   \
+    $(if $(CONFIG_LARGE_TESTS), $(HEVC_SAMPLES_422_10BIN_LARGE))
+
 HEVC_SAMPLES_444_8BIT =         \
     QMATRIX_A_RExt_Sony_1       \
 
+HEVC_SAMPLES_444_12BIT_LARGE =  \
+    SAO_A_RExt_MediaTek_1       \
+
 HEVC_SAMPLES_444_12BIT =        \
     IPCM_B_RExt_NEC             \
     PERSIST_RPARAM_A_RExt_Sony_1\
     PERSIST_RPARAM_A_RExt_Sony_3\
+    $(if $(CONFIG_LARGE_TESTS), $(HEVC_SAMPLES_444_12BIT_LARGE))
 
-HEVC_SAMPLES_444_12BIT_LARGE =  \
-    SAO_A_RExt_MediaTek_1       \
-
+FATE_HEVC_VARS := 8BIT 10BIT 422_10BIT 422_10BIN 444_8BIT 444_12BIT
+$(foreach VAR,$(FATE_HEVC_VARS), $(eval HEVC_TESTS_$(VAR) := $(addprefix fate-hevc-conformance-, $(HEVC_SAMPLES_$(VAR)))))
 
 # equivalent bitstreams
 # AMP_D_Hisilicon_3 -- AMP_D_Hisilicon
@@ -190,103 +194,65 @@ HEVC_SAMPLES_444_12BIT_LARGE =  \
 # PERSIST_RPARAM_A_RExt_Sony_1 (rext)
 
 
-define FATE_HEVC_TEST
-FATE_HEVC += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv420p
-endef
-
-define FATE_HEVC_TEST_10BIT
-FATE_HEVC += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv420p10le -vf scale
-endef
-
-define FATE_HEVC_TEST_422_10BIT
-FATE_HEVC += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv422p10le -vf scale
-endef
-
-define FATE_HEVC_TEST_422_10BIN
-FATE_HEVC += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bin -pix_fmt yuv422p10le -vf scale
-endef
-
-define FATE_HEVC_TEST_422_10BIN_LARGE
-FATE_HEVC_LARGE += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bin -pix_fmt yuv422p10le -vf scale
-endef
+$(HEVC_TESTS_8BIT): SCALE_OPTS := -pix_fmt yuv420p
+$(HEVC_TESTS_444_8BIT): SCALE_OPTS := -pix_fmt yuv444p
+$(HEVC_TESTS_10BIT): SCALE_OPTS := -pix_fmt yuv420p10le -vf scale
+$(HEVC_TESTS_422_10BIT) $(HEVC_TESTS_422_10BIN): SCALE_OPTS := -pix_fmt yuv422p10le -vf scale
+$(HEVC_TESTS_444_12BIT): SCALE_OPTS := -pix_fmt yuv444p12le -vf scale
+fate-hevc-conformance-%: CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(subst fate-hevc-conformance-,,$(@)).bit $(SCALE_OPTS)
+$(HEVC_TESTS_422_10BIN): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(subst fate-hevc-conformance-,,$(@)).bin $(SCALE_OPTS)
 
-define FATE_HEVC_TEST_444_8BIT
-FATE_HEVC += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv444p
-endef
-
-define FATE_HEVC_TEST_444_12BIT
-FATE_HEVC += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv444p12le -vf scale
-endef
-
-define FATE_HEVC_TEST_444_12BIT_LARGE
-FATE_HEVC_LARGE += fate-hevc-conformance-$(1)
-fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv444p12le -vf scale
-endef
-
-$(foreach N,$(HEVC_SAMPLES),$(eval $(call FATE_HEVC_TEST,$(N))))
-$(foreach N,$(HEVC_SAMPLES_10BIT),$(eval $(call FATE_HEVC_TEST_10BIT,$(N))))
-$(foreach N,$(HEVC_SAMPLES_422_10BIT),$(eval $(call FATE_HEVC_TEST_422_10BIT,$(N))))
-$(foreach N,$(HEVC_SAMPLES_422_10BIN),$(eval $(call FATE_HEVC_TEST_422_10BIN,$(N))))
-$(foreach N,$(HEVC_SAMPLES_422_10BIN_LARGE),$(eval $(call FATE_HEVC_TEST_422_10BIN_LARGE,$(N))))
-$(foreach N,$(HEVC_SAMPLES_444_8BIT),$(eval $(call FATE_HEVC_TEST_444_8BIT,$(N))))
-$(foreach N,$(HEVC_SAMPLES_444_12BIT),$(eval $(call FATE_HEVC_TEST_444_12BIT,$(N))))
-$(foreach N,$(HEVC_SAMPLES_444_12BIT_LARGE),$(eval $(call FATE_HEVC_TEST_444_12BIT_LARGE,$(N))))
+FATE_HEVC-$(call FRAMECRC, HEVC, HEVC, HEVC_PARSER) += $(HEVC_TESTS_8BIT) $(HEVC_TESTS_444_8BIT)
+FATE_HEVC-$(call FRAMECRC, HEVC, HEVC, HEVC_PARSER SCALE_FILTER) +=         \
+                                                    $(HEVC_TESTS_10BIT)     \
+                                                    $(HEVC_TESTS_422_10BIT) \
+                                                    $(HEVC_TESTS_422_10BIN) \
+                                                    $(HEVC_TESTS_444_12BIT) \
 
 fate-hevc-paramchange-yuv420p-yuv420p10: CMD = framecrc -vsync passthrough -i $(TARGET_SAMPLES)/hevc/paramchange_yuv420p_yuv420p10.hevc -sws_flags area+accurate_rnd+bitexact
-FATE_HEVC_LARGE += fate-hevc-paramchange-yuv420p-yuv420p10
+FATE_HEVC-$(call FRAMECRC, HEVC, HEVC, HEVC_PARSER SCALE_FILTER LARGE_TESTS) += fate-hevc-paramchange-yuv420p-yuv420p10
 
 tests/data/hevc-mp4.mov: TAG = GEN
 tests/data/hevc-mp4.mov: ffmpeg$(PROGSSUF)$(EXESUF) | tests/data
 	$(M)$(TARGET_EXEC) $(TARGET_PATH)/$< -nostdin \
 	-i $(TARGET_SAMPLES)/hevc-conformance/WPP_A_ericsson_MAIN10_2.bit -c copy -flags +bitexact $(TARGET_PATH)/$@ -y 2>/dev/null
 
-FATE_HEVC-$(call ALLYES, HEVC_DEMUXER MOV_DEMUXER HEVC_MP4TOANNEXB_BSF MOV_MUXER HEVC_MUXER) += fate-hevc-bsf-mp4toannexb
+FATE_HEVC-$(call ALLYES, HEVC_DEMUXER MOV_DEMUXER HEVC_PARSER HEVC_MP4TOANNEXB_BSF MOV_MUXER HEVC_MUXER) += fate-hevc-bsf-mp4toannexb
 fate-hevc-bsf-mp4toannexb: tests/data/hevc-mp4.mov
 fate-hevc-bsf-mp4toannexb: CMD = md5 -i $(TARGET_PATH)/tests/data/hevc-mp4.mov -c:v copy -fflags +bitexact -f hevc
 fate-hevc-bsf-mp4toannexb: CMP = oneline
 fate-hevc-bsf-mp4toannexb: REF = 1873662a3af1848c37e4eb25722c8df9
 
 fate-hevc-skiploopfilter: CMD = framemd5 -skip_loop_filter nokey -i $(TARGET_SAMPLES)/hevc-conformance/SAO_D_Samsung_5.bit -sws_flags bitexact
-FATE_HEVC += fate-hevc-skiploopfilter
-
-FATE_HEVC-$(call DEMDEC, HEVC, HEVC) += $(FATE_HEVC)
-FATE_HEVC-$(call ALLYES, HEVC_DEMUXER HEVC_DECODER LARGE_TESTS) += $(FATE_HEVC_LARGE)
+FATE_HEVC-$(call FRAMEMD5, HEVC, HEVC, HEVC_PARSER) += fate-hevc-skiploopfilter
 
 # this sample has two stsd entries and needs to reload extradata
-FATE_HEVC-$(call DEMDEC, MOV, HEVC) += fate-hevc-extradata-reload
-
+FATE_HEVC-$(call FRAMEMD5, MOV, HEVC, SCALE_FILTER) += fate-hevc-extradata-reload
 fate-hevc-extradata-reload: CMD = framemd5 -i $(TARGET_SAMPLES)/hevc/extradata-reload-multi-stsd.mov -sws_flags bitexact
 
 fate-hevc-paired-fields: CMD = probeframes -show_entries frame=interlaced_frame,top_field_first $(TARGET_SAMPLES)/hevc/paired_fields.hevc
 FATE_HEVC_FFPROBE-$(call DEMDEC, HEVC, HEVC) += fate-hevc-paired-fields
 
 fate-hevc-monochrome-crop: CMD = probeframes -show_entries frame=width,height:stream=width,height $(TARGET_SAMPLES)/hevc/hevc-monochrome.hevc
-FATE_HEVC_FFPROBE-$(call DEMDEC, HEVC, HEVC) += fate-hevc-monochrome-crop
+FATE_HEVC_FFPROBE-$(call PARSERDEMDEC, HEVC, HEVC, HEVC) += fate-hevc-monochrome-crop
 
 fate-hevc-hdr10-plus-metadata: CMD = probeframes -show_entries frame=side_data_list $(TARGET_SAMPLES)/hevc/hdr10_plus_h265_sample.hevc
 FATE_HEVC_FFPROBE-$(call DEMDEC, HEVC, HEVC) += fate-hevc-hdr10-plus-metadata
 
 fate-hevc-hdr-vivid-metadata: CMD = probeframes -show_entries frame=side_data_list $(TARGET_SAMPLES)/hevc/hdr_vivid_h265_sample.hevc
-FATE_HEVC_FFPROBE-$(call DEMDEC, HEVC, HEVC) += fate-hevc-hdr-vivid-metadata
+FATE_HEVC_FFPROBE-$(call PARSERDEMDEC, HEVC, HEVC, HEVC) += fate-hevc-hdr-vivid-metadata
 
 fate-hevc-dv-rpu: CMD = probeframes -show_entries frame=side_data_list -select_streams 0 -read_intervals "%+\#2" $(TARGET_SAMPLES)/hevc/dv84.mov
-FATE_HEVC_FFPROBE-$(call DEMDEC, HEVC, HEVC) += fate-hevc-dv-rpu
+FATE_HEVC_FFPROBE-$(call DEMDEC, MOV, HEVC) += fate-hevc-dv-rpu
 
 fate-hevc-two-first-slice: CMD = threads=2 framemd5 -i $(TARGET_SAMPLES)/hevc/two_first_slice.mp4 -sws_flags bitexact -t 00:02.00 -an
-FATE_HEVC-$(call DEMDEC, MOV, HEVC) += fate-hevc-two-first-slice
+FATE_HEVC-$(call FRAMEMD5, MOV, HEVC) += fate-hevc-two-first-slice
 
 fate-hevc-cabac-tudepth: CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc/cbf_cr_cb_TUDepth_4_circle.h265 -pix_fmt yuv444p
-FATE_HEVC-$(call DEMDEC, HEVC, HEVC) += fate-hevc-cabac-tudepth
+FATE_HEVC-$(call FRAMECRC, HEVC, HEVC) += fate-hevc-cabac-tudepth
 
 fate-hevc-small422chroma: CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc/food.hevc -pix_fmt yuv422p10le -vf scale
-FATE_HEVC-$(call DEMDEC, HEVC, HEVC) += fate-hevc-small422chroma
+FATE_HEVC-$(call FRAMECRC, HEVC, HEVC, HEVC_PARSER SCALE_FILTER) += fate-hevc-small422chroma
 
 FATE_SAMPLES_AVCONV += $(FATE_HEVC-yes)
 FATE_SAMPLES_FFPROBE += $(FATE_HEVC_FFPROBE-yes)
-- 
2.32.0

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  parent reply	other threads:[~2022-04-29 20:23 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-28 23:24 [FFmpeg-devel] [PATCH 01/13] fate/qt: " Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 02/13] fate/canopus: " Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 03/13] fate/dnxhd: " Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 04/13] fate/ea: " Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 05/13] fate/vbn: " Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 06/13] fate/vbn, tests/fate-run: Delete intermediate VBN-files after tests Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 07/13] fate/vpx: Remove unnecessary eval Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 08/13] tests/Makefile: Add FRAMEMD5 auxiliary function Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 09/13] fate/vpx: Fix test requirements Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 10/13] fate/vpx: Move webm-dash-manifest tests to a new file Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 11/13] fate/prores: Fix test requirements Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 12/13] fate/gif: " Andreas Rheinhardt
2022-04-28 23:28 ` [FFmpeg-devel] [PATCH 13/13] fate/gif: Remove nonsense requirement Andreas Rheinhardt
2022-04-29 20:22 ` [FFmpeg-devel] [PATCH 14/19] tests/Makefile: Remove unset FATE_TESTS Andreas Rheinhardt
2022-04-29 20:22 ` Andreas Rheinhardt [this message]
2022-04-29 20:22 ` [FFmpeg-devel] [PATCH 16/19] fate/lossless-video: Fix test requirements Andreas Rheinhardt
2022-04-29 20:23 ` [FFmpeg-devel] [PATCH 17/19] fate/microsoft: " Andreas Rheinhardt
2022-04-29 20:23 ` [FFmpeg-devel] [PATCH 18/19] fate/mpeg4: " Andreas Rheinhardt
2022-04-29 20:23 ` [FFmpeg-devel] [PATCH 19/19] fate/pixlet: " Andreas Rheinhardt
2022-04-30  6:25 ` [FFmpeg-devel] [PATCH 20/24] fate/qtrle: " Andreas Rheinhardt
2022-04-30  6:25 ` [FFmpeg-devel] [PATCH 21/24] tests/ref: Remove unused reference files Andreas Rheinhardt
2022-04-30  6:25 ` [FFmpeg-devel] [PATCH 22/24] tests/fate-run: Always use -bitexact for ffprobe Andreas Rheinhardt
2022-04-30  6:25 ` [FFmpeg-devel] [PATCH 23/24] fate/hap: Fix test requirements Andreas Rheinhardt
2022-04-30  6:25 ` [FFmpeg-devel] [PATCH 24/24] fate/h264: " Andreas Rheinhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AS8PR01MB79440925915E3B87966AD2108FFC9@AS8PR01MB7944.eurprd01.prod.exchangelabs.com \
    --to=andreas.rheinhardt@outlook.com \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git