[FFmpeg-devel] [PATCH 2/2] avcodec/libaom: Add tests for HDR10+ metadata support
Maryla Ustarroz-Calonge
maryla at google.com
Fri May 30 13:52:50 EEST 2025
The new fate sample av1/metadata_hdr10_plus.ivf used in the second
test is the output of the first test.
Signed-off-by: Maryla Ustarroz-Calonge <maryla at google.com>
---
tests/Makefile | 1 +
tests/fate/av1.mak | 11 ++++++
tests/ref/fate/libaom-hdr10-plus | 52 ++++++++++++++++++++++++++
tests/ref/fate/libaom-write-hdr10-plus | 52 ++++++++++++++++++++++++++
4 files changed, 116 insertions(+)
create mode 100644 tests/fate/av1.mak
create mode 100644 tests/ref/fate/libaom-hdr10-plus
create mode 100644 tests/ref/fate/libaom-write-hdr10-plus
diff --git a/tests/Makefile b/tests/Makefile
index 505d7f9c6d..7e3812f1bd 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -159,6 +159,7 @@ include $(SRC_PATH)/tests/fate/apng.mak
include $(SRC_PATH)/tests/fate/apv.mak
include $(SRC_PATH)/tests/fate/atrac.mak
include $(SRC_PATH)/tests/fate/audio.mak
+include $(SRC_PATH)/tests/fate/av1.mak
include $(SRC_PATH)/tests/fate/bmp.mak
include $(SRC_PATH)/tests/fate/build.mak
include $(SRC_PATH)/tests/fate/caf.mak
diff --git a/tests/fate/av1.mak b/tests/fate/av1.mak
new file mode 100644
index 0000000000..a1883dbbfb
--- /dev/null
+++ b/tests/fate/av1.mak
@@ -0,0 +1,11 @@
+# Tests that transcoding MPEG4 WEBM to AV1 (libaom-av1) keeps HDR10+ metadata.
+FATE_AV1_FFMPEG_FFPROBE-$(call TRANSCODE, LIBAOM_AV1 MPEG4, WEBM IVF) += fate-libaom-write-hdr10-plus
+fate-libaom-write-hdr10-plus: CMD = transcode webm $(TARGET_SAMPLES)/mkv/hdr10_plus_vp9_sample.webm ivf "-map 0 -c:v libaom-av1 -cpu-used 8" "" "-show_frames -show_entries frame=side_data_list"
+
+# Tests that transcoding AV1 (libaom-av1) to AV1 (libaom-av1) keeps HDR10+ metadata.
+FATE_AV1_FFMPEG_FFPROBE-$(call ENCDEC, LIBAOM_AV1 LIBAOM_AV1, IVF IVF) += fate-libaom-hdr10-plus
+fate-libaom-hdr10-plus: CMD = transcode ivf $(TARGET_SAMPLES)/av1/metadata_hdr10_plus.ivf ivf "-map 0 -c:v libaom-av1 -cpu-used 8" "" "-show_frames -show_entries frame=side_data_list" "" "" "-c:v libaom-av1"
+
+FATE_SAMPLES_FFMPEG_FFPROBE += $(FATE_AV1_FFMPEG_FFPROBE-yes)
+
+fate-av1: $(FATE_AV1_FFMPEG_FFPROBE-yes)
diff --git a/tests/ref/fate/libaom-hdr10-plus b/tests/ref/fate/libaom-hdr10-plus
new file mode 100644
index 0000000000..d95e57f224
--- /dev/null
+++ b/tests/ref/fate/libaom-hdr10-plus
@@ -0,0 +1,52 @@
+58769dc4beb2490d2c6896d1f3d6d021 *tests/data/fate/libaom-hdr10-plus.ivf
+15925 tests/data/fate/libaom-hdr10-plus.ivf
+#tb 0: 1/25
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 1280x720
+#sar 0: 1/1
+0, 0, 0, 1, 2764800, 0x6fc3f991
+[FRAME]
+[SIDE_DATA]
+side_data_type=HDR Dynamic Metadata SMPTE2094-40 (HDR10+)
+application version=1
+num_windows=1
+targeted_system_display_maximum_luminance=400/1
+maxscl=3340/100000
+maxscl=2870/100000
+maxscl=2720/100000
+average_maxrgb=510/100000
+num_distribution_maxrgb_percentiles=9
+distribution_maxrgb_percentage=1
+distribution_maxrgb_percentile=30/100000
+distribution_maxrgb_percentage=5
+distribution_maxrgb_percentile=2940/100000
+distribution_maxrgb_percentage=10
+distribution_maxrgb_percentile=255/100000
+distribution_maxrgb_percentage=25
+distribution_maxrgb_percentile=70/100000
+distribution_maxrgb_percentage=50
+distribution_maxrgb_percentile=1340/100000
+distribution_maxrgb_percentage=75
+distribution_maxrgb_percentile=1600/100000
+distribution_maxrgb_percentage=90
+distribution_maxrgb_percentile=1850/100000
+distribution_maxrgb_percentage=95
+distribution_maxrgb_percentile=1950/100000
+distribution_maxrgb_percentage=99
+distribution_maxrgb_percentile=2940/100000
+fraction_bright_pixels=1/1000
+knee_point_x=0/4095
+knee_point_y=0/4095
+num_bezier_curve_anchors=9
+bezier_curve_anchors=102/1023
+bezier_curve_anchors=205/1023
+bezier_curve_anchors=307/1023
+bezier_curve_anchors=410/1023
+bezier_curve_anchors=512/1023
+bezier_curve_anchors=614/1023
+bezier_curve_anchors=717/1023
+bezier_curve_anchors=819/1023
+bezier_curve_anchors=922/1023
+[/SIDE_DATA]
+[/FRAME]
\ No newline at end of file
diff --git a/tests/ref/fate/libaom-write-hdr10-plus b/tests/ref/fate/libaom-write-hdr10-plus
new file mode 100644
index 0000000000..8f9639a522
--- /dev/null
+++ b/tests/ref/fate/libaom-write-hdr10-plus
@@ -0,0 +1,52 @@
+de9a40ffb4ba574767d3e82e5f977321 *tests/data/fate/libaom-write-hdr10-plus.ivf
+16029 tests/data/fate/libaom-write-hdr10-plus.ivf
+#tb 0: 1/25
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 1280x720
+#sar 0: 1/1
+0, 0, 0, 1, 2764800, 0x8cc0fc91
+[FRAME]
+[SIDE_DATA]
+side_data_type=HDR Dynamic Metadata SMPTE2094-40 (HDR10+)
+application version=1
+num_windows=1
+targeted_system_display_maximum_luminance=400/1
+maxscl=3340/100000
+maxscl=2870/100000
+maxscl=2720/100000
+average_maxrgb=510/100000
+num_distribution_maxrgb_percentiles=9
+distribution_maxrgb_percentage=1
+distribution_maxrgb_percentile=30/100000
+distribution_maxrgb_percentage=5
+distribution_maxrgb_percentile=2940/100000
+distribution_maxrgb_percentage=10
+distribution_maxrgb_percentile=255/100000
+distribution_maxrgb_percentage=25
+distribution_maxrgb_percentile=70/100000
+distribution_maxrgb_percentage=50
+distribution_maxrgb_percentile=1340/100000
+distribution_maxrgb_percentage=75
+distribution_maxrgb_percentile=1600/100000
+distribution_maxrgb_percentage=90
+distribution_maxrgb_percentile=1850/100000
+distribution_maxrgb_percentage=95
+distribution_maxrgb_percentile=1950/100000
+distribution_maxrgb_percentage=99
+distribution_maxrgb_percentile=2940/100000
+fraction_bright_pixels=1/1000
+knee_point_x=0/4095
+knee_point_y=0/4095
+num_bezier_curve_anchors=9
+bezier_curve_anchors=102/1023
+bezier_curve_anchors=205/1023
+bezier_curve_anchors=307/1023
+bezier_curve_anchors=410/1023
+bezier_curve_anchors=512/1023
+bezier_curve_anchors=614/1023
+bezier_curve_anchors=717/1023
+bezier_curve_anchors=819/1023
+bezier_curve_anchors=922/1023
+[/SIDE_DATA]
+[/FRAME]
\ No newline at end of file
--
2.49.0.1204.g71687c7c1d-goog
More information about the ffmpeg-devel
mailing list