From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id B6BE34EAB3 for <ffmpegdev@gitmailbox.com>; Fri, 13 Jun 2025 07:17:08 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id A48A368C6DE; Fri, 13 Jun 2025 10:17:03 +0300 (EEST) References: <20250530105250.1968118-1-maryla@google.com> <20250530105250.1968118-2-maryla@google.com> <GV1P250MB0737DFAC16D82C9F079649EB8F61A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM> <CA+yX6GHt+OojRr93SZUaJLrF6r5bMqcu_XHbtzOVJXi+HwPwvA@mail.gmail.com> <DU0P250MB0747DB28A5502F4D819B89F78F6FA@DU0P250MB0747.EURP250.PROD.OUTLOOK.COM> In-Reply-To: <DU0P250MB0747DB28A5502F4D819B89F78F6FA@DU0P250MB0747.EURP250.PROD.OUTLOOK.COM> Date: Fri, 13 Jun 2025 09:16:42 +0200 To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> MIME-Version: 1.0 Message-ID: <mailman.3170.1749799022.1384.ffmpeg-devel@ffmpeg.org> List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> From: Maryla Ustarroz via ffmpeg-devel <ffmpeg-devel@ffmpeg.org> Precedence: list Cc: Maryla Ustarroz <maryla@google.com> X-Mailman-Version: 2.1.29 X-BeenThere: ffmpeg-devel@ffmpeg.org List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> Subject: Re: [FFmpeg-devel] [PATCH 2/2] avcodec/libaom: Add tests for HDR10+ metadata support Content-Type: multipart/mixed; boundary="===============3183586024075776866==" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/mailman.3170.1749799022.1384.ffmpeg-devel@ffmpeg.org/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> --===============3183586024075776866== Content-Type: message/rfc822 Content-Disposition: inline Return-Path: <maryla-at-google.com@ffmpeg.org> X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qv1-f44.google.com (mail-qv1-f44.google.com [209.85.219.44]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 2F72568C62A for <ffmpeg-devel@ffmpeg.org>; Fri, 13 Jun 2025 10:16:56 +0300 (EEST) Received: by mail-qv1-f44.google.com with SMTP id 6a1803df08f44-6facf4d8ea8so20077406d6.0 for <ffmpeg-devel@ffmpeg.org>; Fri, 13 Jun 2025 00:16:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1749799014; x=1750403814; darn=ffmpeg.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=UIXfSRO3puidfJOXoa+mfwFzeW5Pbg/eue9w8RkK2dw=; b=EyfT+d94YnbWx5lRl3sjSoSFgDmJK24H9vw/mzpp5+iWpvfV52jXFav9caXWkkLzGl DPUG2y638yTKoaLgx3HHUPfcLEM+NO6ioqfZnFEy4tAdty5nZWPd3EmaVqbxaaYPLStc UcLTNTBYIlSX1yfsqyjtdLJn1FYZVYmFDrTcO03iZsC8e2vqhM13WPKnw+/fxeJdbCIv E7TAjRIwB24AwjEMgl9f2ae803fnAU21Zpmc2n7sU2UzCLjGivbr1lKCYVvqlg4s1JAv yHqswzcoQS98TY4p8Q8uDCQcMy32YNdLgfQpVaQh4L5/8mRpj0d3OLg1w5MmDO+j9jmE k43Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749799014; x=1750403814; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UIXfSRO3puidfJOXoa+mfwFzeW5Pbg/eue9w8RkK2dw=; b=D0gwG5wc7DyGv1914j/7fIHF6EFSrmyWkHg2dePHuTVYOT4Ejl2WLO5dPlJrdDqx8N Q5Q7PPiiHJy+MX45ufspG435I++DuL2M7NEzr0UZ69BNRNkzjJTRXa48Oir41jFKrlSr W0TZAPomMofdy/HKigSwWiIhBvtR6DMfxqyUQGZ0G5pEsmFBZgndWkMyuY4l6LS/yqX7 gpLWS0HcFJgFmiU4iZCFQ6NUdLhYSdhnbzdarHBbeDpwc1b5aDJN9KbAbEkkeCR5FeHb xS7Y48+A0yXfJgvN9yVqlEPzpXbfS2Ql1hRHBXVVDiDd5QEuuUPooM60JPtr5puroW2q O79Q== X-Gm-Message-State: AOJu0YwAQHogXYTBIPSSnoKXVdxiQfdfaISb1EvxHqrCcktvIWWINfA1 JRblENZkOB88yorFJGhSY7/kuN+EjTO2rZAe8AoL15dvM4G4Vd6eb5+X/JNzUby/+/B+rJYNvmd Mc1iSSr7fogw9pyqR0eYETv0Qwc5lUZ/NtD9lCdajG4ysRnms7UnVoC4F X-Gm-Gg: ASbGncv/Fry8hY2Q9mQsCufqepMbv6IkN3y4whYWcOTxBjIPW3ACcegGjvXeA/8lrfL T8uBYI8X4RiqcJtlyU5ot3HrF6i78BZZVR678pTmumPg/ylJBzAN6V9c3r8GVxIHPxNIA+4Q3ar 2lD3Wial1+dAC/6ws64BAJPSuWf5YKDieNCsnWIT8sJ0o= X-Google-Smtp-Source: AGHT+IHWL7DqRaXyJec7mbj3Hs3gv0/GGcXjN9mki3oeaOrrsw9xOlSA2S8Z3sco8pIWCLXTOP1QlxsfVDuu70H+ZM8= X-Received: by 2002:a05:6214:c41:b0:6e8:9b52:7a1d with SMTP id 6a1803df08f44-6fb3e59a035mr29319786d6.8.1749799013991; Fri, 13 Jun 2025 00:16:53 -0700 (PDT) MIME-Version: 1.0 References: <20250530105250.1968118-1-maryla@google.com> <20250530105250.1968118-2-maryla@google.com> <GV1P250MB0737DFAC16D82C9F079649EB8F61A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM> <CA+yX6GHt+OojRr93SZUaJLrF6r5bMqcu_XHbtzOVJXi+HwPwvA@mail.gmail.com> <DU0P250MB0747DB28A5502F4D819B89F78F6FA@DU0P250MB0747.EURP250.PROD.OUTLOOK.COM> In-Reply-To: <DU0P250MB0747DB28A5502F4D819B89F78F6FA@DU0P250MB0747.EURP250.PROD.OUTLOOK.COM> From: Maryla Ustarroz <maryla@google.com> Date: Fri, 13 Jun 2025 09:16:42 +0200 X-Gm-Features: AX0GCFuRWVSoFaY4gdap6kOXqnflbsTj042VmvJogR_eduW_LiCCa8zvzAyV2Ho Message-ID: <CA+yX6GF8uz-xFd-L82kqrQVW6fFOhHHrbCJ-M+a30w68PbsuLQ@mail.gmail.com> Subject: Re: [FFmpeg-devel] [PATCH 2/2] avcodec/libaom: Add tests for HDR10+ metadata support To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 5, 2025 at 9:27=E2=80=AFAM Andreas Rheinhardt <andreas.rheinhardt@outlook.com> wrote: > > Maryla Ustarroz via ffmpeg-devel: > > On Fri, May 30, 2025 at 2:52=E2=80=AFPM Andreas Rheinhardt > > <andreas.rheinhardt@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 <maryla@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 corre= ct? > > > > # Tests that transcoding VP9 WEBM to AV1 (libaom-av1) keeps HDR10+ meta= data. > > FATE_AV1_FFMPEG_FFPROBE-$(call ENCDEC, LIBAOM_AV1 VP9, IVF MATROSKA) > > +=3D fate-libaom-write-hdr10-plus > > fate-libaom-write-hdr10-plus: CMD =3D 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=3Dside_data_list" > > > > > >>> +FATE_AV1_FFMPEG_FFPROBE-$(call TRANSCODE, LIBAOM_AV1 MPEG4, WEBM IVF= ) +=3D fate-libaom-write-hdr10-plus > >>> +fate-libaom-write-hdr10-plus: CMD =3D transcode webm $(TARGET_SAMPLE= S)/mkv/hdr10_plus_vp9_sample.webm ivf "-map 0 -c:v libaom-av1 -cpu-used 8" = "" "-show_frames -show_entries frame=3Dside_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_externa= l > >> 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 IV= F) +=3D fate-libaom-hdr10-plus > >>> +fate-libaom-hdr10-plus: CMD =3D transcode ivf $(TARGET_SAMPLES)/av1/= metadata_hdr10_plus.ivf ivf "-map 0 -c:v libaom-av1 -cpu-used 8" "" "-show_= frames -show_entries frame=3Dside_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 abo= ve. > > > > 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. FYI I sent a patch for ffprobe a couple of days ago (titled "ffprobe: add -codec:<media_spec> option") Let me know what you think. > > > >>> + > >>> +FATE_SAMPLES_FFMPEG_FFPROBE +=3D $(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=3DHDR Dynamic Metadata SMPTE2094-40 (HDR10+) > >>> +application version=3D1 > >>> +num_windows=3D1 > >>> +targeted_system_display_maximum_luminance=3D400/1 > >>> +maxscl=3D3340/100000 > >>> +maxscl=3D2870/100000 > >>> +maxscl=3D2720/100000 > >>> +average_maxrgb=3D510/100000 > >>> +num_distribution_maxrgb_percentiles=3D9 > >>> +distribution_maxrgb_percentage=3D1 > >>> +distribution_maxrgb_percentile=3D30/100000 > >>> +distribution_maxrgb_percentage=3D5 > >>> +distribution_maxrgb_percentile=3D2940/100000 > >>> +distribution_maxrgb_percentage=3D10 > >>> +distribution_maxrgb_percentile=3D255/100000 > >>> +distribution_maxrgb_percentage=3D25 > >>> +distribution_maxrgb_percentile=3D70/100000 > >>> +distribution_maxrgb_percentage=3D50 > >>> +distribution_maxrgb_percentile=3D1340/100000 > >>> +distribution_maxrgb_percentage=3D75 > >>> +distribution_maxrgb_percentile=3D1600/100000 > >>> +distribution_maxrgb_percentage=3D90 > >>> +distribution_maxrgb_percentile=3D1850/100000 > >>> +distribution_maxrgb_percentage=3D95 > >>> +distribution_maxrgb_percentile=3D1950/100000 > >>> +distribution_maxrgb_percentage=3D99 > >>> +distribution_maxrgb_percentile=3D2940/100000 > >>> +fraction_bright_pixels=3D1/1000 > >>> +knee_point_x=3D0/4095 > >>> +knee_point_y=3D0/4095 > >>> +num_bezier_curve_anchors=3D9 > >>> +bezier_curve_anchors=3D102/1023 > >>> +bezier_curve_anchors=3D205/1023 > >>> +bezier_curve_anchors=3D307/1023 > >>> +bezier_curve_anchors=3D410/1023 > >>> +bezier_curve_anchors=3D512/1023 > >>> +bezier_curve_anchors=3D614/1023 > >>> +bezier_curve_anchors=3D717/1023 > >>> +bezier_curve_anchors=3D819/1023 > >>> +bezier_curve_anchors=3D922/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=3DHDR Dynamic Metadata SMPTE2094-40 (HDR10+) > >>> +application version=3D1 > >>> +num_windows=3D1 > >>> +targeted_system_display_maximum_luminance=3D400/1 > >>> +maxscl=3D3340/100000 > >>> +maxscl=3D2870/100000 > >>> +maxscl=3D2720/100000 > >>> +average_maxrgb=3D510/100000 > >>> +num_distribution_maxrgb_percentiles=3D9 > >>> +distribution_maxrgb_percentage=3D1 > >>> +distribution_maxrgb_percentile=3D30/100000 > >>> +distribution_maxrgb_percentage=3D5 > >>> +distribution_maxrgb_percentile=3D2940/100000 > >>> +distribution_maxrgb_percentage=3D10 > >>> +distribution_maxrgb_percentile=3D255/100000 > >>> +distribution_maxrgb_percentage=3D25 > >>> +distribution_maxrgb_percentile=3D70/100000 > >>> +distribution_maxrgb_percentage=3D50 > >>> +distribution_maxrgb_percentile=3D1340/100000 > >>> +distribution_maxrgb_percentage=3D75 > >>> +distribution_maxrgb_percentile=3D1600/100000 > >>> +distribution_maxrgb_percentage=3D90 > >>> +distribution_maxrgb_percentile=3D1850/100000 > >>> +distribution_maxrgb_percentage=3D95 > >>> +distribution_maxrgb_percentile=3D1950/100000 > >>> +distribution_maxrgb_percentage=3D99 > >>> +distribution_maxrgb_percentile=3D2940/100000 > >>> +fraction_bright_pixels=3D1/1000 > >>> +knee_point_x=3D0/4095 > >>> +knee_point_y=3D0/4095 > >>> +num_bezier_curve_anchors=3D9 > >>> +bezier_curve_anchors=3D102/1023 > >>> +bezier_curve_anchors=3D205/1023 > >>> +bezier_curve_anchors=3D307/1023 > >>> +bezier_curve_anchors=3D410/1023 > >>> +bezier_curve_anchors=3D512/1023 > >>> +bezier_curve_anchors=3D614/1023 > >>> +bezier_curve_anchors=3D717/1023 > >>> +bezier_curve_anchors=3D819/1023 > >>> +bezier_curve_anchors=3D922/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-request@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-request@ffmpeg.org with subject "unsubscribe". --===============3183586024075776866== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ 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". --===============3183586024075776866==--