Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: James Almer <jamrial@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Subject: [FFmpeg-devel] [PATCH v2] fate/cbs: add VVC tests
Date: Thu, 29 Jun 2023 18:19:16 -0300
Message-ID: <20230629211916.8552-1-jamrial@gmail.com> (raw)
In-Reply-To: <20230629205555.7869-1-jamrial@gmail.com>

Signed-off-by: James Almer <jamrial@gmail.com>
---
 tests/fate/cbs.mak                         | 40 ++++++++++++++++++++++
 tests/ref/fate/cbs-vvc-AUD_A_3             |  1 +
 tests/ref/fate/cbs-vvc-BOUNDARY_A_3        |  1 +
 tests/ref/fate/cbs-vvc-BUMP_A_2            |  1 +
 tests/ref/fate/cbs-vvc-CROP_B_4            |  1 +
 tests/ref/fate/cbs-vvc-CodingToolsSets_A_2 |  1 +
 tests/ref/fate/cbs-vvc-HRD_A_3             |  1 +
 tests/ref/fate/cbs-vvc-PHSH_B_1            |  1 +
 tests/ref/fate/cbs-vvc-POC_A_1             |  1 +
 tests/ref/fate/cbs-vvc-PPS_B_1             |  1 +
 tests/ref/fate/cbs-vvc-RAP_A_1             |  1 +
 tests/ref/fate/cbs-vvc-SAO_A_3             |  1 +
 tests/ref/fate/cbs-vvc-SCALING_A_1         |  1 +
 tests/ref/fate/cbs-vvc-SLICES_A_3          |  1 +
 tests/ref/fate/cbs-vvc-SPS_B_1             |  1 +
 tests/ref/fate/cbs-vvc-STILL_B_1           |  1 +
 tests/ref/fate/cbs-vvc-SUBPIC_A_3          |  1 +
 tests/ref/fate/cbs-vvc-TILE_A_2            |  1 +
 tests/ref/fate/cbs-vvc-VPS_A_3             |  1 +
 tests/ref/fate/cbs-vvc-WPP_A_3             |  1 +
 tests/ref/fate/cbs-vvc-WP_A_3              |  1 +
 tests/ref/fate/cbs-vvc-WRAP_A_4            |  1 +
 22 files changed, 61 insertions(+)
 create mode 100644 tests/ref/fate/cbs-vvc-AUD_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-BOUNDARY_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-BUMP_A_2
 create mode 100644 tests/ref/fate/cbs-vvc-CROP_B_4
 create mode 100644 tests/ref/fate/cbs-vvc-CodingToolsSets_A_2
 create mode 100644 tests/ref/fate/cbs-vvc-HRD_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-PHSH_B_1
 create mode 100644 tests/ref/fate/cbs-vvc-POC_A_1
 create mode 100644 tests/ref/fate/cbs-vvc-PPS_B_1
 create mode 100644 tests/ref/fate/cbs-vvc-RAP_A_1
 create mode 100644 tests/ref/fate/cbs-vvc-SAO_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-SCALING_A_1
 create mode 100644 tests/ref/fate/cbs-vvc-SLICES_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-SPS_B_1
 create mode 100644 tests/ref/fate/cbs-vvc-STILL_B_1
 create mode 100644 tests/ref/fate/cbs-vvc-SUBPIC_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-TILE_A_2
 create mode 100644 tests/ref/fate/cbs-vvc-VPS_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-WPP_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-WP_A_3
 create mode 100644 tests/ref/fate/cbs-vvc-WRAP_A_4

diff --git a/tests/fate/cbs.mak b/tests/fate/cbs.mak
index 0084c3d25c..344515a7fa 100644
--- a/tests/fate/cbs.mak
+++ b/tests/fate/cbs.mak
@@ -5,6 +5,7 @@
 fate-cbs: fate-cbs-av1 fate-cbs-h264 fate-cbs-hevc fate-cbs-mpeg2 fate-cbs-vp9
 
 FATE_CBS_DEPS = $(call ALLYES, $(1)_DEMUXER $(2)_PARSER $(3)_METADATA_BSF $(4)_DECODER $(5)_MUXER)
+FATE_CBS_NO_DEC_DEPS = $(call ALLYES, $(1)_DEMUXER $(2)_PARSER $(3)_METADATA_BSF $(4)_MUXER)
 
 define FATE_CBS_TEST
 # (codec, test_name, sample_file, output_format)
@@ -12,6 +13,12 @@ FATE_CBS_$(1) += fate-cbs-$(1)-$(2)
 fate-cbs-$(1)-$(2): CMD = md5 -c:v $(3) -i $(TARGET_SAMPLES)/$(4) -c:v copy -y -bsf:v $(1)_metadata -f $(5)
 endef
 
+define FATE_CBS_NO_DEC_TEST
+# (codec, test_name, sample_file, output_format)
+FATE_CBS_$(1) += fate-cbs-$(1)-$(2)
+fate-cbs-$(1)-$(2): CMD = md5 -i $(TARGET_SAMPLES)/$(3) -c:v copy -y -bsf:v $(1)_metadata -f $(4)
+endef
+
 define FATE_CBS_DISCARD_TEST
 # (codec, discard_type, sample_file, output_format, dep)
 FATE_CBS_$(1)_DISCARD += fate-cbs-$(1)-discard-$(2)
@@ -163,6 +170,39 @@ FATE_CBS_HEVC-$(call ALLYES, MP4_MUXER, HEVC_PARSER, FILTER_UNITS_BSF, HEVC_MUXE
 FATE_SAMPLES_AVCONV += $(FATE_CBS_HEVC-yes)
 fate-cbs-hevc: $(FATE_CBS_HEVC-yes)
 
+# H.266 read/write
+
+FATE_CBS_VVC_SAMPLES =        \
+    AUD_A_3.bit               \
+    BOUNDARY_A_3.bit          \
+    BUMP_A_2.bit              \
+    CodingToolsSets_A_2.bit   \
+    CROP_B_4.bit              \
+    HRD_A_3.bit               \
+    PHSH_B_1.bit              \
+    POC_A_1.bit               \
+    PPS_B_1.bit               \
+    RAP_A_1.bit               \
+    SAO_A_3.bit               \
+    SCALING_A_1.bit           \
+    SLICES_A_3.bit            \
+    SPS_B_1.bit               \
+    STILL_B_1.bit             \
+    SUBPIC_A_3.bit            \
+    TILE_A_2.bit              \
+    VPS_A_3.bit               \
+    WP_A_3.bit                \
+    WPP_A_3.bit               \
+    WRAP_A_4.bit              \
+
+
+$(foreach N,$(FATE_CBS_VVC_SAMPLES),$(eval $(call FATE_CBS_NO_DEC_TEST,vvc,$(basename $(N)),vvc-conformance/$(N),vvc)))
+
+FATE_CBS_VVC-$(call FATE_CBS_NO_DEC_DEPS, HEVC, HEVC, HEVC, HEVC) = $(FATE_CBS_vvc)
+
+FATE_SAMPLES_AVCONV += $(FATE_CBS_VVC-yes)
+fate-cbs-vvc: $(FATE_CBS_VVC-yes)
+
 # MPEG-2 read/write
 
 FATE_CBS_MPEG2_SAMPLES =     \
diff --git a/tests/ref/fate/cbs-vvc-AUD_A_3 b/tests/ref/fate/cbs-vvc-AUD_A_3
new file mode 100644
index 0000000000..91dfc817b7
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-AUD_A_3
@@ -0,0 +1 @@
+5a5bf4ec5e75d38958863ce8aa6c1fad
diff --git a/tests/ref/fate/cbs-vvc-BOUNDARY_A_3 b/tests/ref/fate/cbs-vvc-BOUNDARY_A_3
new file mode 100644
index 0000000000..2647e37041
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-BOUNDARY_A_3
@@ -0,0 +1 @@
+3ef48cf6019ee5d7ca4ab8d5cd12bbd5
diff --git a/tests/ref/fate/cbs-vvc-BUMP_A_2 b/tests/ref/fate/cbs-vvc-BUMP_A_2
new file mode 100644
index 0000000000..4f7c69c2b7
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-BUMP_A_2
@@ -0,0 +1 @@
+80cb700aa0c31e693abaad7be56a606b
diff --git a/tests/ref/fate/cbs-vvc-CROP_B_4 b/tests/ref/fate/cbs-vvc-CROP_B_4
new file mode 100644
index 0000000000..6b46df0c82
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-CROP_B_4
@@ -0,0 +1 @@
+7d451021118d63bebe613cec1f773cc5
diff --git a/tests/ref/fate/cbs-vvc-CodingToolsSets_A_2 b/tests/ref/fate/cbs-vvc-CodingToolsSets_A_2
new file mode 100644
index 0000000000..a6a787b9de
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-CodingToolsSets_A_2
@@ -0,0 +1 @@
+6f0043acadfc70d7ec8d556194169a6e
diff --git a/tests/ref/fate/cbs-vvc-HRD_A_3 b/tests/ref/fate/cbs-vvc-HRD_A_3
new file mode 100644
index 0000000000..39e4b906c6
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-HRD_A_3
@@ -0,0 +1 @@
+c0d308912bcdda2b780f3e0a808ff138
diff --git a/tests/ref/fate/cbs-vvc-PHSH_B_1 b/tests/ref/fate/cbs-vvc-PHSH_B_1
new file mode 100644
index 0000000000..437a9eb64f
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-PHSH_B_1
@@ -0,0 +1 @@
+724e3af9b9aac47049a58534ada918e6
diff --git a/tests/ref/fate/cbs-vvc-POC_A_1 b/tests/ref/fate/cbs-vvc-POC_A_1
new file mode 100644
index 0000000000..f259307ca6
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-POC_A_1
@@ -0,0 +1 @@
+608f780e20d18f8dde4ca25276a66598
diff --git a/tests/ref/fate/cbs-vvc-PPS_B_1 b/tests/ref/fate/cbs-vvc-PPS_B_1
new file mode 100644
index 0000000000..1981930a04
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-PPS_B_1
@@ -0,0 +1 @@
+de563a85244bf4a7781b98198a5bf409
diff --git a/tests/ref/fate/cbs-vvc-RAP_A_1 b/tests/ref/fate/cbs-vvc-RAP_A_1
new file mode 100644
index 0000000000..22661eed54
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-RAP_A_1
@@ -0,0 +1 @@
+6460f629ca2377bd271bd1fa5787214f
diff --git a/tests/ref/fate/cbs-vvc-SAO_A_3 b/tests/ref/fate/cbs-vvc-SAO_A_3
new file mode 100644
index 0000000000..d8b3096dde
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-SAO_A_3
@@ -0,0 +1 @@
+44f8666cd7fa1f4f52f0570ad29e7a8b
diff --git a/tests/ref/fate/cbs-vvc-SCALING_A_1 b/tests/ref/fate/cbs-vvc-SCALING_A_1
new file mode 100644
index 0000000000..e9c5477ccd
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-SCALING_A_1
@@ -0,0 +1 @@
+50b3221ba3dc373189527428ea8a4b38
diff --git a/tests/ref/fate/cbs-vvc-SLICES_A_3 b/tests/ref/fate/cbs-vvc-SLICES_A_3
new file mode 100644
index 0000000000..3ff1441c35
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-SLICES_A_3
@@ -0,0 +1 @@
+0b8bd39775a39c6eaed3e0dfaf837144
diff --git a/tests/ref/fate/cbs-vvc-SPS_B_1 b/tests/ref/fate/cbs-vvc-SPS_B_1
new file mode 100644
index 0000000000..a4ca603037
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-SPS_B_1
@@ -0,0 +1 @@
+cf3e0c51035bde7499f80eac34563762
diff --git a/tests/ref/fate/cbs-vvc-STILL_B_1 b/tests/ref/fate/cbs-vvc-STILL_B_1
new file mode 100644
index 0000000000..34b54b736f
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-STILL_B_1
@@ -0,0 +1 @@
+bfa7b1d3ad3b84dac122e8127d579a24
diff --git a/tests/ref/fate/cbs-vvc-SUBPIC_A_3 b/tests/ref/fate/cbs-vvc-SUBPIC_A_3
new file mode 100644
index 0000000000..b3b5123fd8
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-SUBPIC_A_3
@@ -0,0 +1 @@
+70eb8a1074a76e63406036e03dc8734a
diff --git a/tests/ref/fate/cbs-vvc-TILE_A_2 b/tests/ref/fate/cbs-vvc-TILE_A_2
new file mode 100644
index 0000000000..c788b028d0
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-TILE_A_2
@@ -0,0 +1 @@
+b9fca953a0b5aed276fb3c0418ada885
diff --git a/tests/ref/fate/cbs-vvc-VPS_A_3 b/tests/ref/fate/cbs-vvc-VPS_A_3
new file mode 100644
index 0000000000..62e95650e2
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-VPS_A_3
@@ -0,0 +1 @@
+40c6750868d27bba165a1553c519cee5
diff --git a/tests/ref/fate/cbs-vvc-WPP_A_3 b/tests/ref/fate/cbs-vvc-WPP_A_3
new file mode 100644
index 0000000000..82631cfdfb
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-WPP_A_3
@@ -0,0 +1 @@
+c5e6ba8eb4ef6e991b8528ca2490d350
diff --git a/tests/ref/fate/cbs-vvc-WP_A_3 b/tests/ref/fate/cbs-vvc-WP_A_3
new file mode 100644
index 0000000000..71789587dc
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-WP_A_3
@@ -0,0 +1 @@
+05a8ac4844ce65c7a64dfd304f4186a5
diff --git a/tests/ref/fate/cbs-vvc-WRAP_A_4 b/tests/ref/fate/cbs-vvc-WRAP_A_4
new file mode 100644
index 0000000000..708d07e623
--- /dev/null
+++ b/tests/ref/fate/cbs-vvc-WRAP_A_4
@@ -0,0 +1 @@
+ba7de3caf1bf4efe77bdb424ba5fc814
-- 
2.41.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".

      reply	other threads:[~2023-06-29 21:19 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-29 20:55 [FFmpeg-devel] [PATCH] " James Almer
2023-06-29 21:19 ` James Almer [this message]

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=20230629211916.8552-1-jamrial@gmail.com \
    --to=jamrial@gmail.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