From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id D1A814A48C for ; Thu, 30 May 2024 19:33:59 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 80D5B68D4EF; Thu, 30 May 2024 22:33:58 +0300 (EEST) Received: from relay9-d.mail.gandi.net (relay9-d.mail.gandi.net [217.70.183.199]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6C55E68D3D7 for ; Thu, 30 May 2024 22:33:51 +0300 (EEST) Received: by mail.gandi.net (Postfix) with ESMTPSA id 928B8FF805 for ; Thu, 30 May 2024 19:33:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=niedermayer.cc; s=gm1; t=1717097630; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=gjWOs4fPVbHrJkXQYW/rzAx2bcrp7rFA01YDE+Enm4s=; b=daC/9HpkXBGYy4aB/dkSjw520Owai2XhlTf1PefKjJ5yugrZSBmMlB6eK4ba6d2UB7YnC0 S3cwKLJTBVqYOSmMYZEV4NDvS3Z7eKZ2REVM8Yh/7qXafO/sXcqzL4WgiZ5Nb2mHTaRnum dvBAVOyxIZS4ZUdS4sMYe0M1VovfmnDsk16dl3kRzcYCbJLnpICGfaua15kUUiLZCj9KdB cHyKMTbVQmnErDjVV+Evt8/lZDuvXQyih9sfNqggaCfGy3AmyOyEKnnIJmZ2A/kKQUsT/x t88zLyRDaSdIp7Ko3GKsBK2t2qssIV3vaxDOwS0nA9cJLBeQ42KRuk1Tu81jig== Date: Thu, 30 May 2024 21:33:49 +0200 From: Michael Niedermayer To: FFmpeg development discussions and patches Message-ID: <20240530193349.GD2821752@pb2> References: <20240427003623.118199-1-michael@niedermayer.cc> <171679774316.28895.4366606367617414113@lain.khirnov.net> <20240527181105.GN2821752@pb2> <703eafba-1d9a-458b-a4ee-f2092a73bd83@gmail.com> <20240527192055.GO2821752@pb2> <20240527193155.GP2821752@pb2> <20240527195034.GR2821752@pb2> MIME-Version: 1.0 In-Reply-To: X-GND-Sasl: michael@niedermayer.cc Subject: Re: [FFmpeg-devel] [PATCH] avformat/framecrcenc: compute the checksum for side data X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="===============4315763995521770799==" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --===============4315763995521770799== Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="eT+isKliMkztK06K" Content-Disposition: inline --eT+isKliMkztK06K Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, May 27, 2024 at 04:52:22PM -0300, James Almer wrote: > On 5/27/2024 4:50 PM, Michael Niedermayer wrote: > > On Mon, May 27, 2024 at 04:33:21PM -0300, James Almer wrote: > > > On 5/27/2024 4:31 PM, Michael Niedermayer wrote: > > > > On Mon, May 27, 2024 at 09:20:55PM +0200, Michael Niedermayer wrote: > > > > > On Mon, May 27, 2024 at 03:17:15PM -0300, James Almer wrote: > > > > > > On 5/27/2024 3:11 PM, Michael Niedermayer wrote: > > > > > > > On Mon, May 27, 2024 at 10:15:43AM +0200, Anton Khirnov wrote: > > > > > > > > Quoting Michael Niedermayer (2024-04-27 02:36:23) > > > > > > > > > This allows detecting issues in side data related code, s= ame as what > > > > > > > > > framecrc does for before already for packet data itself. > > > > > > > > >=20 > > > > > > > > > Signed-off-by: Michael Niedermayer > > > > > > > > > --- > > > > > > > >=20 > > > > > > > > I am against this patch. Checksumming side data is a fundam= entally wrong > > > > > > > > thing to do. > > > > > > >=20 > > > > > > > It, or something equivalent is neccessary for regression test= ing. > > > > > > > (and it was you who asked also for the tests i run to be part= of > > > > > > > fate. But here you object to it) > > > > > > >=20 > > > > > > > You know, not checking side data is not checking it so differ= ences would then not be > > > > > > > detected allowing for unintended changes to be introduced (ak= a bugs) > > > > > >=20 > > > > > > You have seen how much code is needed to get hashing to work fo= r all targets > > > > > > with some types, > > > > >=20 > > > > > framecrcenc.c | 76 +++++++++++++++++++++++++++++++++++++++++= ++++++++++++++++++++++++++++++++--- > > > > > 1 file changed, 73 insertions(+), 3 deletions(-) > > > > >=20 > > > > > 70 more lines of code, in my patch > > > > >=20 > > > > > If we need another 70 to handle some corner cases, no idea if we = do, thats > > > > > still negligible > > > > >=20 > > > > >=20 > > > > > > so it does feel like it's not the right thing to do. > > > > >=20 > > > > > I dont think i can follow that logic > > > > >=20 > > > > >=20 > > > > > > ffprobe (and f_sidedata) are what should be used for actual int= egrity > > > > > > checks. > > > > >=20 > > > > > ffprobe cannot test ffmpeg, ffmpeg is a seperate excutable > > > > >=20 > > > > > If you suggest that side data should not be tested in FFmpeg whil= e packet.data > > > > > should be tested. That position seems inconsistant to me > > > > >=20 > > > > > If you suggest that neither side data nor packet.data should be t= ested in FFmpeg > > > > > iam confident that there would be a majority disagreeing. > > > > >=20 > > > > > f_sidedata is not at the output of ffmpeg so even if it could tes= t it, it > > > > > does not test the ffmpeg output. > > > > > We also dont replace running md5sum and framecrc on ffmpeg output= by a bitstream > > > > > filter. > > > > >=20 > > > > > Again, there is need to test what comes out of FFmpeg, thats at t= he muxer level > > > > > thats what framecrcenc does. > > > >=20 > > > > There is also an additional aspect > > > > and that is efficiency or "time taken by all fate tests" > > > > framecrcenc already has all the side data, it costs basically 0 tim= e to print that > > > >=20 > > > > any ffprobe based check needs to run everything a 2nd time, so it w= ill be slower > > > >=20 > > > > also ffprobe is only good for side data from the demuxer. > > > > my patch tests all cases including side data from the encoder or an= y other > > > > source that gets forwarded to the muxer in each testcase. > > >=20 > > > We could extend showinfo_bsf to print side data information. > >=20 > > Well, you argued a moment ago that its too much code (in framecrcenc) > > its not going to be less code if the same or more detailed information > > is printed in a showinfo_bsf > >=20 > > again, my suggestion is that this code should go to where side data is > > and then showinfo_bsf, framecrcenc and ffprobe can use it >=20 > I mean, showinfo_bsf could be adapted in a way ffprobe can invoke/parse, = so > all the related ffprobe code can be moved there. do you agree that framecrcenc should show side data in a way to allow detecting changes, as it also does with the main packet data ? Its perfectly fine with me if that invokes the same code as showinfo_bsf thx [...] --=20 Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB If a bugfix only changes things apparently unrelated to the bug with no further explanation, that is a good sign that the bugfix is wrong. --eT+isKliMkztK06K Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iF0EABEKAB0WIQSf8hKLFH72cwut8TNhHseHBAsPqwUCZljUnQAKCRBhHseHBAsP qwozAJ9uRPbjDA+fP1cQgTENS0y51m3zfACeKA+KowRY75YK5eeos7Q7mkGtml8= =pVUr -----END PGP SIGNATURE----- --eT+isKliMkztK06K-- --===============4315763995521770799== 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". --===============4315763995521770799==--