From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 5ADCA4D0A6 for ; Sun, 15 Jun 2025 03:24:47 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 0D28368D08B; Sun, 15 Jun 2025 06:24:43 +0300 (EEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2059.outbound.protection.outlook.com [40.92.90.59]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 95C9968CFAE for ; Sun, 15 Jun 2025 06:24:36 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=edtghkCPSjOMCmtiLuqBfzvmxdwf2eHWOHyJapHIxEq1lA8XHPpSWzDkn7gqP5yJ9S1OVBnFGRFw26SnZc2u+by3GjlsnSbMeu78Yea4EYmRXUmmT/by7mmDs6DYorthfWRJDN/F3ssA+R31bEQFlnCjM9jiJBQG3DxVIEfB3WR/1XSSy5Hz77aUv6FVLI0/Dqv1h4VxhEeVmi26wPbXXhVaCQKb2jNNKsjxa6WibZr3gS2IDuHZAtanvuTepZvnD/7EYVvTB26Sc1gMahep41T5atRT8zqjv9ar3ofvWoBRwD1hpZTnDdUH43/QFE7WyPkRdQ/SjRIyqtUyJdj/ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=kLY+CUp489/E5AnQKKlf9Fu3tUIb7+uI6Bk7XAA/4+w=; b=a9g/ckwGna/nYZfJ6oi7HzZD6TN8ZoOScI4exibtkTPnIor3flKHVu2lwXgGOBNejfDKRSC8Fxh18ZdeLJApBmwAY+rZSgDUCDVfuC9YAgZbmG6E0MmMcyCxRksUHr7wZbEakhcwco/XOF339yeHVdanNglelYrG54Mg/WiVSahw9GEa1pvD0XJLwVL1xlPEyQo0cDnZl52B9kVe+atJHHzjiOHWdfTRMPFn4dngLkIfvKSpDdnci/pT7JDRt/uP71cA4ixgdYVKs0maWjRQCHinz4KXWBtSo46OMk4d99xOzI1QVe2N9mMW6eG5V2yXGY4HcZg+MrtmxUVLqHYCLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kLY+CUp489/E5AnQKKlf9Fu3tUIb7+uI6Bk7XAA/4+w=; b=Cf3IPQxHQA3naNzLDG5tJjqy8F9Y3GrB1zAt4vi42dCD6WSYKZSgcb1HBx9LskxmxSJJhQ67bJxlbFg71aCMkH5aLraKLFb56CvD6JnZj9uf56TxMenGUqPq7DHw2hcYR8UNJ/o3u6JV9JCmOeTN3Xo+VEaoepQW/L37ZSiayXGmksLy5eC1xwDzmWc2ITFmM/HhQFFw1YTMI5kgQORXCND9vedeJGPbDW7qwS6w+A2vP7KygzXBMBLkEeGwIO6xOIW/50dImcNRVqJ/CtJQtJbiGK9Lm1PgHA2s+jv1v384/WluV8tWqtjKk8I1fa51I78S3oJcCrJSKc4eSfqeCA== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AS8P250MB0963.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:5a2::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8835.19; Sun, 15 Jun 2025 03:24:35 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.8835.019; Sun, 15 Jun 2025 03:24:35 +0000 Message-ID: Date: Sun, 15 Jun 2025 05:24:34 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250614195828.20357-1-pkoshevoy@gmail.com> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20250614195828.20357-1-pkoshevoy@gmail.com> X-ClientProxiedBy: FR4P281CA0216.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:e4::20) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <85d7169f-ceb3-42cf-a9e5-026162e83298@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AS8P250MB0963:EE_ X-MS-Office365-Filtering-Correlation-Id: b757f086-6f09-4200-aef0-08ddabbc26e1 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9Xmp/XBEnRF+JMJQD5pMcpsIBxHatqaz1n3De2K1xJa4GqlnV67CciHEH+VeQCKrNbPf8Oe6zsCJEAQjXwRjTkA41wcY3wWJAU3uQzt094E7q4CH92uKw0x2ptSVNzVr6zU/AzovFIdiULYjWgChc54RhHM0HlK4FEux8EUQHGfQac7tZMMhgT99pvroxE9PBdZF8fcwTAagAZLr1zg7h9SfpOq6YlzCALBTU8aFQ4dQkeRRSPsm8YNqxUTzgHQ72Kqs65Ab4ylRvqnrQsTjnoOEBvwNDLxApMRF4uA3t/WOPoFj1psCEpIPuzYFkInk+onUGzUdbOghGTYbyaDtlAssE0fYiw4/PV7tlZxylp2zuq4KAlM2oDUbDVboBa5huO6e+zIZUAVlrDl/Dca4tCL4z9zC765iDg7oHsL/MCEYKT8L2fMHQSubIqpridCDvJeGcKnMAPFQUZk1U4KOVYABiRI5Bk5cIZTqYCU84xzH8Nnrox7VFmVvrTZ7h4zXNDcotHoMjMt61GWTHFmjacVeQlOSUm+jGGNpZci3i7wPhHA23KY7frFk7JglH/og6yOcvhkff/kKZX9EU5EXXnDU/GMjded/0Dda1/CSSS4/Y51ZachgCZSkRLhKGQ6lx/2npX1hbXrv09tvhBUIByBHekntza5VQgZFU2epok7fWit/JiwvYA7hCsLjj+gLbmt0f1VMOHJyLvM4xTXC8BmDzCzVGlGT7yKtC+/k3z6lXouPCR6LKfWTCTqfBpc+L12A= X-Microsoft-Antispam: BCL:0; ARA:14566002|6090799003|19110799006|5072599009|7092599006|15080799009|8060799009|461199028|40105399003|3412199025|440099028; X-Microsoft-Antispam-Message-Info: =?utf-8?B?WVIzQVNob0cvSWl3R20rYjd4R2p3Q0JINkNHL0h4MG5wbEQzcTYxQlhKb2N5?= =?utf-8?B?L05INXEvWFJtOGdORGpPTndsSzdISkxNa3pndkk0T0o5eFlicEtBMTdGM1Fv?= =?utf-8?B?cVVjTm9yTjlOeS83NCtXbXFrblBIVDZUcTcycHV6S1lCN2Z6cGN5ODhjVUdi?= =?utf-8?B?a1pHY3A0bVpISzUzRktqTFh3Z2Z0SFg3ekxIN2h6b1lzbS9xeDdXK2pWbWhG?= =?utf-8?B?ZFZ2N2QrT2J3TlRyWlhIUjh0OG9Eem9Keko5UEMzbkFLRDRrY2d0WU8zYkZJ?= =?utf-8?B?TExRRWRGNDQ1Y1NhdUN2QVBNSkJSV3ovbUtHTDQybjBTR2diSEJ5U2drYTNk?= =?utf-8?B?SHJKUVRmWUt6dmZUQ2ljVlZDeVRSRVZHSVI0TXAwc1VpVW5ZSEhDbXluRkUy?= =?utf-8?B?bUs1Z0k0QVpUT0Fjc2F1dTFFRFpvc0duWXFpV00vZkhOcTRwa0lTYXJYZXhh?= =?utf-8?B?cmNGdjI1d0t1WHhhTDBrVFRGbWhPblJicjV3S1VjRWdsbUxRZ2lDSkdzVC9V?= =?utf-8?B?ZDRSaE8xMmZxRzNmZHQwU2hnOHpoMTJzMFF2Rys2VXJyS0lzS3RXVHNuRTZN?= =?utf-8?B?UWdUN1RoUjk1S2RzbGZ1cHh6L3BkS1E4NzNkL3JqbkVqSjhTQWhVSVhNbVFw?= =?utf-8?B?a2k5Wnh0bEJkaFdaS29IRlRIVEZibUthM0h4SkttUU10SUlxUFRjLzRIcmc5?= =?utf-8?B?SGJZUlJ3NHZaRTNDUldtQzRheXdoT21YTFFTc3dCQ2VvSWhxZFBsb3ppVUN1?= =?utf-8?B?YnUySzkyQVpxRGc3cXhQckJBNlc3RjZEVHgwb3RyNTB2Mk9aaS9seVRUbnBV?= =?utf-8?B?anUrc2pMcUdGY3o1MUYvcGZuUGFpYmRrN0dlS0pMb3pmYnFSWUQ1bTNXMDBo?= =?utf-8?B?MjJIRDN2Smx3VldvNHpjMVFvc3Rkb2RyeExuUVZHQmp3T3gxUlkydzlPRlQ2?= =?utf-8?B?WGVoTW9KQmhkczUzZEcvMzVDSjNMZUNtN2RxdHZCdzB2YlkrRVc2SjZDNHk2?= =?utf-8?B?RXJZa3dkazNoejdKeGIyMitQa1RjSkttbDI5Y09BTzlUNmZIejBCRjRlRUZS?= =?utf-8?B?N1daMmJ4OCtjL3BpaG1MZGw2b2xMK2ZUb3NlOHFqY2dWQUlzZVlSSFM0U21h?= =?utf-8?B?T3JQNFRvejZONkZ5aEpkd1BrdGZkUExIVHRTaldhZldzTG9QdDMxbWVvbDYz?= =?utf-8?B?Zy8wYllld2FIUTN4dldreGEvblVJR29xWEtMWCswSW1TWXlOcjYyVkZDVUQx?= =?utf-8?B?dE93bmZBUFZtaXZRZHcvbjRUWDhwTlU0SUlKUWt6RUhxZGtQTmhKS21ha2xQ?= =?utf-8?B?a2QyR1J1WHczRUh4NUpyaktlSWdhV2NUcVpwdGpHaWNjY0o0YTdMNWJyMVcw?= =?utf-8?B?UVM4RmlmRjl5ZGVOekFsMERrVjJWdTlxaThYUVZvNGxBa0IzK01tc1F5SGhF?= =?utf-8?B?SEYyZzBHZjhyQXVyVUVsb3JRdDN0NmpRR082cE9SVUpGMjZRMVlEMUVUZ2c0?= =?utf-8?B?WkFZSDVvUDRsWWRPeGc5L2FDQS9TcXJUbTdSak1hU3A1WlhOZzJmQmFSTFN1?= =?utf-8?Q?540t0YIdkzulFMv8EJGGAk/jQ=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OGZDcFdPcmhOZ3JSZXRpZ2pyUUdlZG5aKzloekMzZ3d1ekVDbnNXdDRBM2Jt?= =?utf-8?B?SFh4N0xSM0N0MHcycWNOOTRWS2dTUklzWUNwTFg3R2pqWWMvMWJvVlEzVFJN?= =?utf-8?B?MG8vaW1NZ0I1Wkk1QTRLWlBmVWxweEorT3N6TGFVTlBON0VpSHkyMHVSOU9k?= =?utf-8?B?dGV1N3FYWXBROEdTZEgwNmtPWGFXcjU4eXpuNnUrV2Fma2pGKzFrN25kUzRY?= =?utf-8?B?bkRYYUdZd3pqTnc4TXJPT0xJWS9XZVJkbVdtc2RHR3d5bGhGUVBrS1puVytN?= =?utf-8?B?NTd2clVjVnp6bVVONFdjQjBjZGxQN2xHL0FTNFJTWmIreFVza3B6L0xmVHV3?= =?utf-8?B?NXdWWXA4T0JTL21CVnNHMnJWbWRqanlyMWlXNGlZUW5EZDllbWlGb1hIbU5T?= =?utf-8?B?VDNUN3FGcUlSRGtkNVBUN21pWnJUZmtvMi9DNmtlbmRheEppVkx1UzUvaml2?= =?utf-8?B?NGY5bGRoaTJVekJUWCtzaWZ2TmNKRjg3SS9KTWdCVFNKcUgyamdRSDlKKzVp?= =?utf-8?B?SjFHNS9zY0MxRVZrbnhHS3BncDVWZG9EdURuSXNXSTJySkl4MUtvUlhMZXRM?= =?utf-8?B?L1NZanJ3VTNpNmhoWWx4OGtTWlZYck9QZ2RaaTNFZExYaDhmVXdxVkF5aGFw?= =?utf-8?B?L2RSaU1JTHhiRG5LSGlrODM3a09jeEpyeFhQVG42Y3F5eWZHbjFQZ1FpdFV4?= =?utf-8?B?ZVR0OElvckhqR2g3eW1zQ3hhdUV1K05mRE1Dd05TMUVvbzgxYW9la2pDeEpy?= =?utf-8?B?SFczaFNRRXpZZDkxejlWS291VGliM3NMQWJGVTBVRVYwNWJ5T0kxUkFkSTVV?= =?utf-8?B?Uld6M3lZVldPc1VBaHpVUThRbFFtVzA2VVY1b0sxdldHSW5YcTNXVWdLdmVk?= =?utf-8?B?dlZBbWFHQnNIZHAzN3BVYURwakovME5pZGVRdmFnMmVaWng1OFVuMjhneS8w?= =?utf-8?B?T1ZWSHNrNXZRdm1HeHVVdVNmUjdwNy9OU3pDMWtjOHQzSHZJL1dEUHVxTnFw?= =?utf-8?B?RkVjWis3OGZaWDkwWW9ja2lJdXhoYmlvYnR6QXBFRThPNXorOGlTZUw3Ukwx?= =?utf-8?B?S1Q1QlR0Z3pLQ3dCQnN6L2R5SnMvNkxpck5CMHVYWkRrQUNGMlhKNk40Z1pG?= =?utf-8?B?bWlGait0VHJKVEpFMmgwM0FvTTIvRHFHZ0J5SDhkSmltd1NXOFMzZnpxakJK?= =?utf-8?B?RjJXVFR0OTBwVzQwQ3lIcVBjckNLdndvOGxUOHRBZVpqUlNraGR4SVhxWTNU?= =?utf-8?B?ME5DamN4dHVha05zMjZ0ZnJaSnNJRzUraHZOc3lEY25FcGV6ZlJ6L3A3WFdX?= =?utf-8?B?aEpVNXNINjhXeDF1M1ZFQzNCZEVTVlZidWJ0YTlRRDRrTklKckdEdzk0VnRJ?= =?utf-8?B?UDVwRm85MVZKRVI2aTE0QUJFQzRKVnRjTHBMMWJXbWxKbzJmT3I2dlRNVjZL?= =?utf-8?B?OEpVQmhTL2M0UlFJcGVOc2h6bFFwWmRTc0ZDSXRRZk5BTVNNQTgvam4wa2RB?= =?utf-8?B?Z21mbTRpN3lNOGsvZEJpNnNqYnZ6WUd6YkNhM3lLRHl5UUFOdmdlYThlMTBi?= =?utf-8?B?d1J6ZlFjUVhwbHYrdld4SmhiRmhtQWZJcnR5ZXc0TXdzYml5b3BMNTg3Zjcr?= =?utf-8?B?WmVQM3MrenBvQk43UXBwNXlxMDIrLzF6TW1STUtGUkMreWkxSjUxbkIvNkZL?= =?utf-8?B?ZjAzK2FJVmEydjV3UDJwWVc5T2J3YnJobFpLVDBST2pmc0N0MFBhbDVhNXUy?= =?utf-8?B?T09aSnlma2g1NENQS2kxamhjcTZQdnVTNXMwM2lwbXI2Umh4eVhmSmE5cHpH?= =?utf-8?B?NzgxSVdGandwYm16WVJpUT09?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b757f086-6f09-4200-aef0-08ddabbc26e1 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2025 03:24:35.4204 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0963 Subject: Re: [FFmpeg-devel] [PATCH] avformat/mpegts: Add -reprobe_stream_if_pmt_es_stream_type_changes option 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="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Pavel Koshevoy: > Make runtime AVStream.codecpar codec_id updates optional and disabled > by default, so that avformat API clients can enable this feature explicitly > when they add support for runtime codec changes. > --- > libavformat/mpegts.c | 8 +++++++- > tests/fate/demux.mak | 2 +- > 2 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c > index deb69a0548..88b1754307 100644 > --- a/libavformat/mpegts.c > +++ b/libavformat/mpegts.c > @@ -156,6 +156,8 @@ struct MpegTSContext { > /** to detect seek */ > int64_t last_pos; > > + int reprobe_stream_if_pmt_es_stream_type_changes; > + > int skip_changes; > int skip_clear; > int skip_unknown_pmt; > @@ -199,6 +201,8 @@ static const AVOption options[] = { > MPEGTS_OPTIONS, > {"fix_teletext_pts", "try to fix pts values of dvb teletext streams", offsetof(MpegTSContext, fix_teletext_pts), AV_OPT_TYPE_BOOL, > {.i64 = 1}, 0, 1, AV_OPT_FLAG_DECODING_PARAM }, > + {"reprobe_stream_if_pmt_es_stream_type_changes", "allow PMT updates to change codec_type and codec_id at runtime", > + offsetof(MpegTSContext, reprobe_stream_if_pmt_es_stream_type_changes), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, AV_OPT_FLAG_DECODING_PARAM }, > {"scan_all_pmts", "scan and combine all PMTs", offsetof(MpegTSContext, scan_all_pmts), AV_OPT_TYPE_BOOL, > {.i64 = -1}, -1, 1, AV_OPT_FLAG_DECODING_PARAM }, > {"skip_unknown_pmt", "skip PMTs for programs not advertised in the PAT", offsetof(MpegTSContext, skip_unknown_pmt), AV_OPT_TYPE_BOOL, > @@ -2510,7 +2514,9 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len > if (!st) > goto out; > > - if (pes && pes->stream_type != stream_type) > + if (pes && (!pes->stream_type || > + (pes->stream_type != stream_type && > + ts->reprobe_stream_if_pmt_es_stream_type_changes))) > mpegts_set_stream_info(st, pes, stream_type, prog_reg_desc); > > add_pid_to_program(prg, pid); > diff --git a/tests/fate/demux.mak b/tests/fate/demux.mak > index ead5ad4b10..6e5e2eb81a 100644 > --- a/tests/fate/demux.mak > +++ b/tests/fate/demux.mak > @@ -158,7 +158,7 @@ FATE_SAMPLES_DEMUX-$(CONFIG_XWMA_DEMUXER) += fate-xwma-demux > fate-xwma-demux: CMD = crc -i $(TARGET_SAMPLES)/xwma/ergon.xwma -c:a copy > > FATE_FFPROBE_DEMUX-$(CONFIG_MPEGTS_DEMUXER) += fate-ts-demux > -fate-ts-demux: CMD = ffprobe_demux $(TARGET_SAMPLES)/ac3/mp3ac325-4864-small.ts > +fate-ts-demux: CMD = ffprobe_demux $(TARGET_SAMPLES)/ac3/mp3ac325-4864-small.ts -reprobe_stream_if_pmt_es_stream_type_changes 1 > > FATE_FFPROBE_DEMUX-$(CONFIG_MPEGTS_DEMUXER) += fate-ts-timed-id3-demux > fate-ts-timed-id3-demux: CMD = ffprobe_demux $(TARGET_SAMPLES)/mpegts/id3.ts IMO this should not be mpegts specific, but for all demuxers. Other (header-less) formats may have the same issue. - Andreas _______________________________________________ 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".