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 E92A64A335 for ; Mon, 29 Apr 2024 17:35:37 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2BA1168D4E0; Mon, 29 Apr 2024 20:35:34 +0300 (EEST) Received: from PAUP264CU001.outbound.protection.outlook.com (mail-francecentralazon11021010.outbound.protection.outlook.com [52.101.167.10]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C36FB68CEBF for ; Mon, 29 Apr 2024 20:35:26 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oc5THzfkLcwMIpOOJcFTzLCXJekuyY20/W+ZzPLe9lcn+nYcrWAY9BIKBcd6yTA994q5G7pgVi4ie0LQRO+kC+WAUXF2KxLwAzob52W1aSC2Mj7AEIBhuJLyX0iCeAJ09vtFMLWFoa5tZq7NWaBZz7YbDNibpuQvOKD+WdopwoKzAqnuewWYmupd155co0jy9XUYE+zF5CotoVbWes5RHV6ZYZqfufTW2StPaCoSPHIv7JJV3Bk0XFXGtO8gkUy/XC3ZSXLTfA1HhpjGLBTO9EC4tj1333pnaDBx4FRYSpHD3VisiCWVSRQjwmUhzShppK4xRwwT/FvPb0WyS2SZEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Pkf7B6oraHsumLJqeo2H5zhhA4K6YmZaktLLx8dMbLw=; b=A6y3rtlmDUxWmsyGIlks1B4meajWRdpNzMuA7ryq7MfuiEqAbfD2buSeEpHDaiyn1utaXkfHo6fpofy0HzBmisj3yTOPSIy/4JtgzOtvo11BSoIBy6Gb4pRQeznvGt/D6Li4AYo/h2Zj2d7tA6EIwp8IqDQZOJsbAYJGfQ5NIjOZYojRlJV9FLoZA8RomcilBbEYlpRc4mf6l21Y/cS8xdVJuFdOKmI6PcAT7RtGQKYaFur5N16P8yYW3FuTWg3fi9GNmF/vjYPYPhI4ULjKk8RMBQYbcfYve1fCYK/c7TD1tadTsca7/1Ft1qRZgPI52GpGbpkN+c4NGuzBf7B/sg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cji.paris; dmarc=pass action=none header.from=cji.paris; dkim=pass header.d=cji.paris; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cjiparis.onmicrosoft.com; s=selector1-cjiparis-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Pkf7B6oraHsumLJqeo2H5zhhA4K6YmZaktLLx8dMbLw=; b=UPMk7mlKPZVXCc6GBuvlvE+EWVOlG6MyIo/0HaCK82yQrEaiwQ6BRx8nzbbwl/N4EML5TSQMZh1830/H6uCLCqw7UX1wHJ96bVb/9CbMDSKzcYhUuDZz9EBAAYLvf2o9XyD9TZC9175TuJ8XxqS1bBBFCpiV5nEqw/gswrJuO7FF7bfERQD092CscOeGJ4fMtwCFGdGDtqC7ATs67wwR0olTjkb6zPpRpIWOY4AVIZVxQQQhZhwdvuLk9/BmR24yeteWnoA+JDfzLikynhpel3RcpfWBQmUM2RKK+opZZqwsl2n/7+JnWHM+hmN4mvwJda44/5CH/LbsWRyA4W/AdA== Received: from MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:34::23) by MR1P264MB1572.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:15::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.34; Mon, 29 Apr 2024 17:35:24 +0000 Received: from MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM ([fe80::a9db:c8aa:ffcb:e463]) by MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM ([fe80::a9db:c8aa:ffcb:e463%5]) with mapi id 15.20.7519.031; Mon, 29 Apr 2024 17:35:24 +0000 From: Nicolas Gaullier To: FFmpeg development discussions and patches Thread-Topic: [PATCH v3 0/1] avformat/demux: fix accurate probing of durations in mpegts/ps Thread-Index: AQHahURjfPGGs3SnfUWz0HlPCi6ol7F0VsUAgAtVpEA= Date: Mon, 29 Apr 2024 17:35:24 +0000 Message-ID: References: <20240402212609.572420-1-nicolas.gaullier@cji.paris> In-Reply-To: Accept-Language: fr-FR, en-US Content-Language: fr-FR X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=cji.paris; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MR1P264MB2483:EE_|MR1P264MB1572:EE_ x-ms-office365-filtering-correlation-id: bd18cf21-d3d7-4389-540e-08dc6872c066 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|1800799015|376005|366007|38070700009; x-microsoft-antispam-message-info: =?iso-8859-1?Q?MvBdqarDN4GRqqyncT/PYlb+OmttipVPlYTfERkR54nz1bLkQeUg81ICqW?= =?iso-8859-1?Q?mnSVFDVf4l7w7uoNiRmMNYW0gxLuop2fBAEqTDBs+ZFVAFWwmrJu+n1FN7?= =?iso-8859-1?Q?bGwePzj5JTq6CXAyg+H8iKuHSdMBXg28AZo9yXAeCDSu6lgNeGwaFz3LRt?= =?iso-8859-1?Q?VVv2uXwkHafucLXmEmVtfzkZ9qCHxvnS9HyF91I1M9NdS3WdTHcM4bCfH6?= =?iso-8859-1?Q?2/kgMdjBVbEFz4cwN9aJ5gSSvb6tJhXNJMFxVy32QREMfJXsNr2WqnaYrm?= =?iso-8859-1?Q?z+gd4oUijp00dVmZnoUDHZCAM/tsBvBmCcsbLxpiCehdgd1KKWgQ+ORSMe?= =?iso-8859-1?Q?gO5QKEc3EAsFjnGrTfrMikovnUgVVgJ2gY89jrFFBwFJsEt/JleWfNcl6C?= =?iso-8859-1?Q?+o2NRiy9Yz8RHvmmq9lNJ8/E750YU7iCMhchXaoQ1vs6JFy703TamqaOx6?= =?iso-8859-1?Q?LPxlw8k0A0tWBdawpOME0hyIpHPSBRMYwZtefhssGn9Fq6GfPtBc9ixx0/?= =?iso-8859-1?Q?H4fdSdp28NgpOpEjjva6TeksPSZMU/XQH9dcwCJNUhfNFj8P/GV7Z+pgNR?= =?iso-8859-1?Q?WxKVMzicx+9XNm8+Xa+AypD+2rtfKVSDZvsg2+7OxMOYMjKxVbG6I67w7f?= =?iso-8859-1?Q?Z1bLlV8e7zPGldYUvAYKRvcKKKoVL0yl9jgjJTCqT7Mafbn/9Fz9Jcjjt3?= =?iso-8859-1?Q?faUg7tgdqmkLh+S3L7bMgt7iJkC3eCDEXG4JQoIVxc5waYR34rXJ7/fR8A?= =?iso-8859-1?Q?AgU6q/dsfmRZio3j4vvt9XcyWBJR5E3P/GLX/ltNvCjY6XLXr7dUfBcSq/?= =?iso-8859-1?Q?RLCKiPUcMijis6gwA/uTtunwP2j3Sj1QMtqGOzOC5rWHR555pigHxwI1xm?= =?iso-8859-1?Q?l9YmRzqa7ntLe5bHNIaZjqSwAJJuiP+rWZSuYG7gLZB+YDKrx3TDY3xJxX?= =?iso-8859-1?Q?tN4mo0/xJ4qeMX+MLdAjD0D5f9fsWqRZs7KHQ/irTUEWGrKyudKNuw/DLN?= =?iso-8859-1?Q?k2eHweNf7IVXLE6tlb/LjMW/iKupbObYX1RkSS055igk8YFgoEzUGqHWct?= =?iso-8859-1?Q?skHasSm0NMkbVKJVgBCx55i58nRmuB/cOffHe8wF75CLK3W0Zhh01s4gCn?= =?iso-8859-1?Q?+rfzym4ZCQ7E9atnfgnxohZLBqIhuRdTVtUtj46Th8IjV+6w7ldvOqQh5a?= =?iso-8859-1?Q?IBaB2CI/1SqgOMFJpZJZseo4DKOa7a/8k/Ev+T+0rpuNs9fTpiPiJNF9Kj?= =?iso-8859-1?Q?81fMpLV5gUSGJe6mbo4BI0IK2hUO7rjB+lhrFw198KMmBLJTxDtZK0JWhM?= =?iso-8859-1?Q?ebvWbP/fYGouHwfurwiIMpWXTA=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(376005)(366007)(38070700009); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?vj/76o2dKpWYB2yheFT6F6HM8gHUaQElu7NpsqNuHnOSlMH/Ee3KRFeMu0?= =?iso-8859-1?Q?iTcQaWNBQUTYgcN6C9+4nJcC4eeO/oU9YF9wqdw7rT568LhrERUMSwYczs?= =?iso-8859-1?Q?qjB5LWZDUUSNrsvuRsLinjoR4rpLkBbEqUzAYrXXi8miB4wsDppSr7VTUj?= =?iso-8859-1?Q?pCV4N+flNG2dH9gf41noWUt358sWeC2HC5OoqyKLQ6vWyFxsJMVlgKyZk4?= =?iso-8859-1?Q?W/2Ugzlcap0hEybafWcFq/HfbCXICX3Fgy8r2Vd8Y3EesrAgt9r9yFedwi?= =?iso-8859-1?Q?jwTw+efyaMKDVNY6ZpqSt8D8fO/C7lrbw30cm3pvILu7SZbkWeA8CHVe9n?= =?iso-8859-1?Q?qwlC//niPjceIMSH5klKzq8Lug18T+IN9HvKQ/eMpesrB2BAGZVnweGrO5?= =?iso-8859-1?Q?gLpPCAozrLGdbUqLHBtPbjUOuU4zVycm6DC8+f8bDv9IurIY/DpXX9Hzt6?= =?iso-8859-1?Q?hfxD623pzucRKEgVoK2obClyjcalMQyvZUvt9ohzEyzAAJHMVH4ZW0OXg6?= =?iso-8859-1?Q?7xDqdW9KH69LCwiXe8BRSeGnBJuXEZXXbozJ4SWizhN3JtFmKjXm/kM6++?= =?iso-8859-1?Q?r5Hr2TP4UVFXvQpbQID6mob4rd76uHF6pzentBqn5sAo0IWYdgchqjKgaL?= =?iso-8859-1?Q?X6n7bYhrzoA8DVcqj/GiSQUFSAqN1eWWpSRHPAaYj0G/gil2BSE2JTg0uL?= =?iso-8859-1?Q?cYpuKOr4TVQQfNgzIP6QyfZe8G4QVRimcOE06/OAh8I+1d5B8kM72AgpcZ?= =?iso-8859-1?Q?71i5/v2/pF9Us4zEjJz/+YEui8PomsnMQuXnQqmw/go5RyD3DaCi9WNO8k?= =?iso-8859-1?Q?1/wveuoi2tVNbRAyjeJKtpbkzM+5+kpQxR0ZwcbdXOlLaXoZIRldXFFRm4?= =?iso-8859-1?Q?qCpULUEcrAKLx5hmicL6mUzdkpBc/iFXQFXYoBhQuoohMsRunmViB5Bc2y?= =?iso-8859-1?Q?bSzIyAVbI3fN9K/2CFnkDNRsuXctTmJrFhpyM1bOo+301OZy4Idm07ErUk?= =?iso-8859-1?Q?5z/d8Ruuy9NP+J+q3KAsvltPL38q+DUyiPTiPruffQ933Zaro7zosprV+A?= =?iso-8859-1?Q?lu9Bz/0VYcJUbuYsDCwZj9iy0XscSbblmrnhgSnIjsqs3/vpHNifNgM3tG?= =?iso-8859-1?Q?Vlmka4WBY20b/33I465kQ/hGNJR2wpUMVGBYgY3TXjcW+Xg1UFcAEi1CDX?= =?iso-8859-1?Q?oEZOP2R5/Qv03hzG3egMzhhHgJKRChxfvr3s0PyClFjkSAXIfcVvbIbKEL?= =?iso-8859-1?Q?6w5nhkuPYlYrTFkneYEqXxq+JBCtFGZy6d6+X2g0mpsK6aKM0YiXZzwJpv?= =?iso-8859-1?Q?JxIqsDYuXV/HYx4qUyrMC0/vkmNdtAcZTc4gTjLILpDHBaDoos3rgtSDz1?= =?iso-8859-1?Q?oCZmzyOKeYOgjWffg7iDP1FxlQFmtYoR1/huc9c0EtBanFFQ7JNU95c7Gq?= =?iso-8859-1?Q?Sp1x214WzYTXGFsaKWErFcYqr3Bz5LluqS2ANwUtW5R7w9GyKCrvTPmw7O?= =?iso-8859-1?Q?2FcbMn97nDQEE61ojiKKTcnrn6eYCA0id2Hn9pUW5ApLTpSaluU+BEBlej?= =?iso-8859-1?Q?Ck3PQTJolvLe2YbQ0+gJB6MMAscT4YUkvmIoNB9jUs6Qrv4gsLydS7vy9c?= =?iso-8859-1?Q?drKRgzsmuwGtnjvPTN/IDhIln4BKKrLuWa?= MIME-Version: 1.0 X-OriginatorOrg: cji.paris X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: bd18cf21-d3d7-4389-540e-08dc6872c066 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Apr 2024 17:35:24.2769 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fc5390bc-7da7-4e42-b72b-a373be305b62 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: UwDcxIDYgUPOtEphgOEVIT8C9JQdpHkMChJSX8ubtz43BvDJwDdmlYcXOOrCLkcfxsyI96ULF8sA1/RI6nQS1T+pjgAaGngtipzd7yJA4fo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MR1P264MB1572 Subject: Re: [FFmpeg-devel] [PATCH v3 0/1] avformat/demux: fix accurate probing of durations in mpegts/ps 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: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: >Envoy=E9=A0: lundi 22 avril 2024 14:32 >=C0=A0: ffmpeg-devel@ffmpeg.org >Objet=A0: Re: [FFmpeg-devel] [PATCH v3 0/1] avformat/demux: fix accurate p= robing of durations in mpegts/ps > >>De=A0: Nicolas Gaullier Envoy=E9=A0: mardi 2 = >>avril 2024 23:26 Objet=A0: [PATCH v3 0/1] avformat/demux: fix accurate = >>probing of durations in mpegts/ps >> >>v3: rebased after ed9363052f4b8b8 applied tonight (add = >>duration_probesize AVOption) >> >>Note: I have no other plan for demux/probing; with these two patches, I c= an cover my use cases, especially mpegts-concats. >> >>For remembering, previous cover-letters: >> >>v1-------------------- >>ff_read_packet() is more lightweight, but it leads to important issues wh= en looking for accurate durations. >>As a side effect, the code looks also simpler with regular av_read_frame(= ) calls. >>1)Updates in the fate tests do exhibit most of the results. >> >>2)See also more directly the case of an audio PES containing many frames: >>>ffprobe tests/data/lavf/lavf.ts -select_streams a -show_entries = >>>stream=3Dduration -of flat >>Before patch: >> streams.stream.0.duration=3D"0.757556" >>After patch: >> streams.stream.0.duration=3D"1.018778" >> >>3)Here is an additional (commonplace) sample to demonstrate the benefit f= or twofields-encoded video: >>>https://0x0.st/HFbm.ts (say h264-50i_mp2.ts) >> >>>ffprobe h264-50i_mp2.ts -show_entries stream=3Dduration -of flat >>Before patch: >> streams.stream.0.duration=3D"2.060000" >> streams.stream.1.duration=3D"1.176000" >>After patch: >> streams.stream.0.duration=3D"2.080000" >> streams.stream.1.duration=3D"1.200000" >> >> >>v2-------------------- >>v1: There was an issue with teletext where resolution is set just once at= decoder init (teletext resolution is fixed/hard coded), so it is somewhat = fragile: when a demuxer context update occurs, it is lost/overriden by >>av= codec_parameters_to_context(sti->avctx, st->codecpar) in read_frame_interna= l. >>They could have been other scenario besides teletext, I don't know. >>v2: So now at estimate_timings_from_pts, with one or more seeking involve= d (seeking is detected by the mpegts demuxer and set last_vn=3D-1, so pmt i= s forced/updated and results in demuxer context update), it is required to = >>preserve the info in codecpar at first. >>Thanks to Michael for reporting the issue. >> >> >>Nicolas Gaullier (1): >> avformat/demux: Fix accurate probing of durations in mpegts/ps >> >> libavformat/demux.c | 36 ++-- >> tests/ref/fate/concat-demuxer-simple2-lavf-ts | 170 +++++++++--------- >> tests/ref/fate/ts-opus-demux | 4 +- >> 3 files changed, 100 insertions(+), 110 deletions(-) > >Ping for review ? >The patch (https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=3D1138= 6) still applies on current master. >Thanks. Ping ? _______________________________________________ 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".