Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Maryla Ustarroz-Calonge via ffmpeg-devel <ffmpeg-devel@ffmpeg.org>
To: ffmpeg-devel@ffmpeg.org
Cc: Maryla Ustarroz-Calonge <maryla@google.com>
Subject: [FFmpeg-devel] [PATCH v2 2/2] avcodec/libaom: Add tests for HDR10+ metadata support
Date: Wed,  4 Jun 2025 14:15:36 +0200
Message-ID: <20250604121536.2941354-2-maryla@google.com> (raw)
In-Reply-To: <20250604121536.2941354-1-maryla@google.com>

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@google.com>
---
 tests/Makefile                         |  1 +
 tests/fate-run.sh                      |  3 +-
 tests/fate/av1.mak                     | 11 +++++++
 tests/ref/fate/libaom-hdr10-plus       | 44 ++++++++++++++++++++++++++
 tests/ref/fate/libaom-write-hdr10-plus | 44 ++++++++++++++++++++++++++
 5 files changed, 102 insertions(+), 1 deletion(-)
 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-run.sh b/tests/fate-run.sh
index 5d904ab8bf..40fe07683f 100755
--- a/tests/fate-run.sh
+++ b/tests/fate-run.sh
@@ -319,11 +319,12 @@ enc_external(){
     enc_fmt=$2
     enc_opt=$3
     probe_opt=$4
+    enc_opt_in=$5
 
     srcfile=$(target_path $srcfile)
     encfile=$(target_path "${outdir}/${test}.${enc_fmt}")
 
-    ffmpeg -i $srcfile $enc_opt -f $enc_fmt -y $encfile || return
+    ffmpeg $enc_opt_in -i $srcfile $enc_opt -f $enc_fmt -y $encfile || return
     run ffprobe${PROGSUF}${EXECSUF} -bitexact $probe_opt $encfile || return
 }
 
diff --git a/tests/fate/av1.mak b/tests/fate/av1.mak
new file mode 100644
index 0000000000..7456ffd6de
--- /dev/null
+++ b/tests/fate/av1.mak
@@ -0,0 +1,11 @@
+# Tests that transcoding VP9 WEBM to AV1 (libaom-av1) keeps HDR10+ metadata.
+FATE_AV1_FFMPEG_FFPROBE-$(call ENCDEC, LIBAOM_AV1 VP9, IVF MATROSKA) += fate-libaom-write-hdr10-plus
+fate-libaom-write-hdr10-plus: CMD = enc_external $(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, IVF) += fate-libaom-hdr10-plus
+fate-libaom-hdr10-plus: CMD = enc_external $(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..c03dda7e7f
--- /dev/null
+++ b/tests/ref/fate/libaom-hdr10-plus
@@ -0,0 +1,44 @@
+[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..c03dda7e7f
--- /dev/null
+++ b/tests/ref/fate/libaom-write-hdr10-plus
@@ -0,0 +1,44 @@
+[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

_______________________________________________
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:[~2025-06-04 12:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-04 12:15 [FFmpeg-devel] [PATCH v2 1/2] avcodec/libaom: Add " Maryla Ustarroz-Calonge via ffmpeg-devel
2025-06-04 12:15 ` Maryla Ustarroz-Calonge via ffmpeg-devel [this message]
2025-06-04 18:54 ` James Zern via ffmpeg-devel

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=20250604121536.2941354-2-maryla@google.com \
    --to=ffmpeg-devel@ffmpeg.org \
    --cc=maryla@google.com \
    /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