Maryla Ustarroz via ffmpeg-devel: > On Fri, May 30, 2025 at 2:52 PM Andreas Rheinhardt > <andreas.rheinha...@outlook.com> wrote: >> >> Maryla Ustarroz-Calonge via ffmpeg-devel: >>> 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 <mar...@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. >> >> There is no such thing as MPEG4 WebM. > > Apologies, after more careful consideration I think this would be correct? > > # 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" > > >>> +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" >> >> This test includes a checksum of the generated file. The test will >> therefore fail as soon as libaom-av1's output changes. Use enc_external >> instead. > > Thanks, I had not noticed enc_external. > >>> + >>> +# 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" >> >> This test has the same issue as the above; if ffprobe were changed so >> that one can force a specific decoder, this whole test could be made >> redundant by using the libaom-av1 decoder with ffprobe in the test above. > > I agree this would be a good feature for ffprobe to have in general. > Currently, it's the first test that is actually redundant. It tests > writing, while the > second one tests reading+writing. I used it to generate the new test > file for the second test. > Assuming the new test file gets added to fate (which I will request > when this patch gets approved), > should I just remove the first test? >
No, improving ffprobe is preferable. Then the second test and the new file can be avoided. > >>> + >>> +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 > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".