From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 1CF204DC51 for <ffmpegdev@gitmailbox.com>; Wed, 23 Apr 2025 22:56:09 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 81A2768B461; Thu, 24 Apr 2025 01:56:06 +0300 (EEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11olkn2085.outbound.protection.outlook.com [40.92.18.85]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 16F2A687DE8 for <ffmpeg-devel@ffmpeg.org>; Thu, 24 Apr 2025 01:56:00 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=RWVZ+xxDHBS1jBwspo2aJAKKCBQmigiKg97AeXSxY6s1n2TPolU4R6O59Jhcuish9mbVXskZe03p4IeeF+9X8U8J2mqDnbCz7YdllzxdwiwZwLVgzN9MtGGlN+xliNlEhtuwvBv2QnxCMNPJZDE9e5XNVwKCuJMVtOYB6wafdiYMWx0rwtdPkehgQR8Yw5ni2HUC/rGunOYTRjFhcHxIImPdQULBLgXa9iCmeKQyJt82/AmN1nU2eDpoAUwFXOFKyBUOEQdRmP8Uf2zLWMTUURAiNVVXMMMi02NFDwFYKVyS5LPKyxs9zDmswlaxnQZEbqvqYrBMjK0KW4RL4qd2EA== 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=tu5UZZbdiPO8gx1gESSaugPtEwXXi6FHnBN2MNIHXuM=; b=uSim9krU9K3fcP1Shfn7aYqy9dd+gblIoiFdivi2olggcul7lD2vnYOB9bqlpUfQeO4AgdVI4tNRixyDpK/bZg1ZmE3XWnLTsoPRylh8Fn68Ws+6flm7oo7ePLsGjT+SDQUGkW+9VdevjU5q/IJ4NjBVgZVM/typnGjtc0HR3oNy9iIbSwT35KpEz1Kd5cn2xXEANR7xBElb3NqrjzeBdL6f9N2/XHVk2nDn1hQnh5EB0gvIFHBm3FblUKN3Ui8vCgRKh0U2ZnFY8AL7fcB9C1D6r1HA3TEwF+u5HU5XqLUAxK42MawX30yb+JJG4hkatYWVvS6/+zPDye3m1D3vhQ== 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=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tu5UZZbdiPO8gx1gESSaugPtEwXXi6FHnBN2MNIHXuM=; b=IVWBZlFVtlxSkFuTt/SOIg4yzvXS19IU1LPEEAB0hVryo9IXQa+2JjWiiQpkw0kAarkhuvmmYcQ/iNd+5mPxmgvRmffe7lA6R16IvXegT8rVF5GlV9lAQPc38Wq2qrB4HfEV5SuxQCCfaAU2RjYPdKkYaO8tnfM3lB/0L2IxQaJ9cznzCL8JHAqY0Ae15gIycU1Gmpd1S5Hc0f6HnFQT4s59/F2JTwAiRtfWK3epPy4IbseQn4rxBx6zLDADXoBdCvOK/7KJMH7wl64RtHk3kz7vFPhwL546Oee9uFesQG3oDvoOMKoGtERavpP1jUa4f0DT7oKMEqrpx49ewVdJZw== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by LV8P223MB0963.NAMP223.PROD.OUTLOOK.COM (2603:10b6:408:1c7::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8655.35; Wed, 23 Apr 2025 22:55:56 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::bf09:8e9:b07f:98a7%4]) with mapi id 15.20.8655.033; Wed, 23 Apr 2025 22:55:55 +0000 From: "softworkz ." <softworkz-at-hotmail.com@ffmpeg.org> To: Stefano Sabatini <stefasab@gmail.com>, FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Thread-Topic: [FFmpeg-devel] [PATCH v5 04/14] fftools/textformat: Introduce AVTextFormatOptions for avtext_context_open() Thread-Index: AQHbs9FeK9XyRZ26mEOaT3oMVp/UyLOx3CGAgAABuoA= Date: Wed, 23 Apr 2025 22:55:55 +0000 Message-ID: <DM8P223MB03658ED5AC64EB230A523396BABA2@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> References: <pull.66.v4.ffstaging.FFmpeg.1745189954.ffmpegagent@gmail.com> <pull.66.v5.ffstaging.FFmpeg.1745358943.ffmpegagent@gmail.com> <26be409371cab3a946c6b28dcab1ac185a264e0c.1745358943.git.ffmpegagent@gmail.com> <aAluUwl7VX9QhF7u@mariano> In-Reply-To: <aAluUwl7VX9QhF7u@mariano> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM8P223MB0365:EE_|LV8P223MB0963:EE_ x-ms-office365-filtering-correlation-id: 04654f2b-68d4-4e3c-150e-08dd82ba01a1 x-microsoft-antispam: BCL:0; ARA:14566002|7092599003|8062599003|19110799003|8060799006|461199028|15080799006|440099028|3412199025|12091999003|102099032; x-microsoft-antispam-message-info: =?us-ascii?Q?t+YvaC0vaBgVpMx9Pm+xM7yXTdjai5TAhJRWKeFK8tkuzL5jJPn8g1R9xzE8?= =?us-ascii?Q?BsbjyPArRUosrU0nto8GrxBVefFS2KWJa2SpiErZIwKk0zKH6Z7DJuupMH5m?= =?us-ascii?Q?sPf/6j28rEqsUBCmbqy9CEjhH7qWYNK+jwYPabsuYqCMJcsZhj+63I75aQ5+?= =?us-ascii?Q?7XImagV4RFmSoE2pTagB3irddKv+PL0Ej30iPdOHu+aRU9iueKq0PtjatL9h?= =?us-ascii?Q?TpjLX82sbn62SIYYEIZPaRiyu4RCNiyZbLIZXJhlhnyZ5MqXz03zG2X6YZz3?= =?us-ascii?Q?OAvvDODo1J6CyloSswXiZIH5ogHN48S3RiQfyI89oAaf/arqOPHA5QUUUJv2?= =?us-ascii?Q?B98U34PL847S7Qn1ndOzccbdi6fg1R2Z0PQBG1MwKtVEiOgjrnj0byaoiTGU?= =?us-ascii?Q?9taqn7jVf3Mp1T0w6tI9QgFWQl1/rqgUG+5dPMJsRwI6vERei2sRkDz2zoyW?= =?us-ascii?Q?DI1JWZ7OO+fTZsCoC2+xp0eSk/D1AWzeNGqwbF8pZvzQb9K6uTmYQi+29LFb?= =?us-ascii?Q?eFY83I24MQmFIZnklnYq/f3FXR/1I9ss2xCpbl9Xw+gbd5WXBEyakxDUz5pc?= =?us-ascii?Q?BjOkAmYYtl0FpefWOHMu8qS+yoHPgz3prA7wbaM5pRX1B8/nm2Wsf/H9WDg0?= =?us-ascii?Q?L9N5K5cgugStFSqEBuo2zfKLq7v0v/vDnk5cLzsb8f6/s380GFz4f772RWO4?= =?us-ascii?Q?f1JXlx/HIWJM8tUKLJpg3SfLo8frGJog48rgSRTh++Duxp6x76yEOBgQt4Vx?= =?us-ascii?Q?DDHw8zipAvVNHQX6ZNmpgODglKOZoiRDo/lWIdgQPw1K7Z08fXCw7g+w5FFb?= =?us-ascii?Q?ulNF+pUcQpz3luxo4zX70sUFIdd7vFgddXMQBnbYsxJmcXhM1wjA7N9BiJIp?= =?us-ascii?Q?XN2oxQAaZDhKBWYl74+pwyALx1a5D0MTHE2svCA0iPXD8BtIyqCwRA56j2GL?= =?us-ascii?Q?0zeznc5JYVBtT5k0GD/TEaCB5WiNwYFXuLDnkFQsjaoccqdTuv5KXgGGzkRR?= =?us-ascii?Q?SSVdF4PQVNJeBRAdalZiOkpO/v+kXsjNiBZAIVl3r5sLgvYnb62EIjz29DS3?= =?us-ascii?Q?VpIf/Txx1+mI+akSmtW+335lhL1Li89EH+p9xgHed5NFi18PrZM/pzvxWpjy?= =?us-ascii?Q?MmU6PmycvNM2EZ1FC1gi7YAsCM9kNp7rwQ=3D=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?pgmpsBAGXEuAOG5MMMXHJDwQSJ4AlzgjH2SsacqtkK+w4JMgaQyi/0NkDqmf?= =?us-ascii?Q?Z3RcFXNa8wBifCK6HJTL4i5Ds5obFax9ABDpZlxE9NckS5ot2P+nyT77kMf6?= =?us-ascii?Q?f3/symyLJioYXKyEMB/Y5kxX0oXbJEgPxP6ZHzaPN5AWEEUZwGAANvbJ8oz2?= =?us-ascii?Q?rIjvF/tDebGhKPmkROEiVHz1Z1UkgQB7SzIl44pJSxAlGmr0GlJW3RFPLySZ?= =?us-ascii?Q?3ULEmOgHJxUanUgl8O8uE5muIWj+laT9RdsazRc/M++yfBkesLocJWrahzl7?= =?us-ascii?Q?BgQLN+8Y8JEBzgFYA1iSNlSonuFYReqp0PyBUWJt6tit+oBw5WJJrYWRBXtS?= =?us-ascii?Q?meeLUcelxxfsaazVSPA5UU0dEoBEYQGHE9g+/fVaBOjtJWxqrKWNSqLIGy66?= =?us-ascii?Q?FiyHb2qfqlTfBxIgZOMhnuggjCiOB9xm+i6ymDf7nhfKhiZyB7v67++tKF7C?= =?us-ascii?Q?4eKzNTu7M8HnPcCs5epnFgpypb8CRgcRy0ObgXqtlDWkvz6+YigotWQ5Ipwu?= =?us-ascii?Q?CweDsnshJLoRwFA16isOSw9Pzb5E+8aTLhVZe+vTX7X0QrEmVTsdHA8iX8gY?= =?us-ascii?Q?9FfXJkFntNg+JLKrPVv6gtxAmeFHeOzRA90RLcAdPl6OK+/tzUkQ407ZMY1X?= =?us-ascii?Q?Cy5g7goC0Z2pVsUOdf3kJhC2iqMm5Z9+mg6Kqsq3ix+nyAYiXcZQMJtjfxZl?= =?us-ascii?Q?F7AhoeiYfVTgynHPfd3fHvW0xuxOGyfCtnWVAgr0dmL7hRThWLRbf8VUc9GP?= =?us-ascii?Q?LgifKANckSTLj8OtszElJVhSEfYOL6YLilvHBMPh3saVP64fvKz3O8dlemo8?= =?us-ascii?Q?2WUIQewt+aCCdauzQfDq8seJve3N5p7uCwSeib/pRBSJ0I/CKyf7pKPa8/x8?= =?us-ascii?Q?HwHx0kECB1Y9bewTyVaHDNLkxt0G3mX27CRl/9SSqmdshMcG+t048gqPa80A?= =?us-ascii?Q?BOUSUZfnDqvmrmcV4v4fluMJUSN/c36lb7/4Sc1UWqvS0AJT0P8s0KQ8NpIH?= =?us-ascii?Q?v/QfKQ/4on9eYrcTGs63NdVLKbCcXpuB/S6vk/vpKUynM5QXk0CklrqvQQzb?= =?us-ascii?Q?C0U56Q5+yYDNEeWPRPC5CjnSkmlh7vKrhpqwacS+B3dwGP3RxvV098l53X3Y?= =?us-ascii?Q?rD6USZ8nfYjclIIFNxvEohI0pXzQSSLstUMxv735fikXdv1g4DwpDl17qGnq?= =?us-ascii?Q?14ld6nmIgUNWVaNa1T5i81QLnUwzM+V7CTGktePhsG9m/B2d27+33emBOEY?= =?us-ascii?Q?=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-7719-20-msonline-outlook-92255.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 04654f2b-68d4-4e3c-150e-08dd82ba01a1 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Apr 2025 22:55:55.9282 (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: LV8P223MB0963 Subject: Re: [FFmpeg-devel] [PATCH v5 04/14] fftools/textformat: Introduce AVTextFormatOptions for avtext_context_open() X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> 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> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/DM8P223MB03658ED5AC64EB230A523396BABA2@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> > -----Original Message----- > From: Stefano Sabatini <stefasab@gmail.com> > Sent: Donnerstag, 24. April 2025 00:49 > To: FFmpeg development discussions and patches <ffmpeg- > devel@ffmpeg.org> > Cc: softworkz <softworkz@hotmail.com> > Subject: Re: [FFmpeg-devel] [PATCH v5 04/14] fftools/textformat: > Introduce AVTextFormatOptions for avtext_context_open() > > On date Tuesday 2025-04-22 21:55:33 +0000, softworkz wrote: > > From: softworkz <softworkz@hotmail.com> > > > > This allows future addition of options without > > changes to the signature of avtext_context_open(). > > > > Signed-off-by: softworkz <softworkz@hotmail.com> > > --- > > fftools/ffprobe.c | 13 +++++++++---- > > fftools/textformat/avtextformat.c | 21 ++++++++------------- > > fftools/textformat/avtextformat.h | 22 +++++++++++++++------- > > 3 files changed, 32 insertions(+), 24 deletions(-) > > > > diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c > > index f5c83925b9..1277b1e4f9 100644 > > --- a/fftools/ffprobe.c > > +++ b/fftools/ffprobe.c > > @@ -3168,10 +3168,15 @@ int main(int argc, char **argv) > > if (ret < 0) > > goto end; > > > > - if ((ret = avtext_context_open(&tctx, f, wctx, f_args, > > - sections, FF_ARRAY_ELEMS(sections), > show_value_unit, > > - use_value_prefix, > use_byte_value_binary_prefix, use_value_sexagesimal_format, > > - show_optional_fields, show_data_hash)) > >= 0) { > > + AVTextFormatOptions tf_options = { > > + .show_optional_fields = show_optional_fields, > > + .show_value_unit = show_value_unit, > > + .use_value_prefix = use_value_prefix, > > + .use_byte_value_binary_prefix = > use_byte_value_binary_prefix, > > + .use_value_sexagesimal_format = > use_value_sexagesimal_format, > > + }; > > + > > + if ((ret = avtext_context_open(&tctx, f, wctx, f_args, > sections, FF_ARRAY_ELEMS(sections), tf_options, show_data_hash)) >= 0) > { > > if (f == &avtextformatter_xml) > > tctx->string_validation_utf8_flags |= > AV_UTF8_FLAG_EXCLUDE_XML_INVALID_CONTROL_CODES; > > > > diff --git a/fftools/textformat/avtextformat.c > b/fftools/textformat/avtextformat.c > > index 0a221f4a9a..217d9da25e 100644 > > --- a/fftools/textformat/avtextformat.c > > +++ b/fftools/textformat/avtextformat.c > > @@ -125,13 +125,7 @@ void avtext_context_close(AVTextFormatContext > **ptctx) > > > > > > int avtext_context_open(AVTextFormatContext **ptctx, const > AVTextFormatter *formatter, AVTextWriterContext *writer_context, const > char *args, > > - const AVTextFormatSection *sections, int > nb_sections, > > - int show_value_unit, > > - int use_value_prefix, > > - int use_byte_value_binary_prefix, > > - int use_value_sexagesimal_format, > > - int show_optional_fields, > > - char *show_data_hash) > > + const AVTextFormatSection *sections, int > nb_sections, AVTextFormatOptions options, char *show_data_hash) > > { > > AVTextFormatContext *tctx; > > int i, ret = 0; > > @@ -155,11 +149,11 @@ int avtext_context_open(AVTextFormatContext > **ptctx, const AVTextFormatter *form > > goto fail; > > } > > > > - tctx->show_value_unit = show_value_unit; > > - tctx->use_value_prefix = use_value_prefix; > > - tctx->use_byte_value_binary_prefix = > use_byte_value_binary_prefix; > > - tctx->use_value_sexagesimal_format = > use_value_sexagesimal_format; > > - tctx->show_optional_fields = show_optional_fields; > > + tctx->show_value_unit = options.show_value_unit; > > + tctx->use_value_prefix = options.use_value_prefix; > > + tctx->use_byte_value_binary_prefix = > options.use_byte_value_binary_prefix; > > + tctx->use_value_sexagesimal_format = > options.use_value_sexagesimal_format; > > + tctx->show_optional_fields = options.show_optional_fields; > > > > if (nb_sections > SECTION_MAX_NB_SECTIONS) { > > av_log(tctx, AV_LOG_ERROR, "The number of section > definitions (%d) is larger than the maximum allowed (%d)\n", > nb_sections, SECTION_MAX_NB_SECTIONS); > > @@ -202,7 +196,7 @@ int avtext_context_open(AVTextFormatContext > **ptctx, const AVTextFormatter *form > > av_dict_free(&opts); > > } > > > > - if (show_data_hash) > > + if (show_data_hash) { > > if ((ret = av_hash_alloc(&tctx->hash, show_data_hash)) < 0) > { > > if (ret == AVERROR(EINVAL)) { > > const char *n; > > @@ -213,6 +207,7 @@ int avtext_context_open(AVTextFormatContext > **ptctx, const AVTextFormatter *form > > } > > goto fail; > > } > > + } > > > > /* validate replace string */ > > { > > diff --git a/fftools/textformat/avtextformat.h > b/fftools/textformat/avtextformat.h > > index aea691f351..05a358132e 100644 > > --- a/fftools/textformat/avtextformat.h > > +++ b/fftools/textformat/avtextformat.h > > @@ -118,17 +118,25 @@ struct AVTextFormatContext { > > unsigned int string_validation_utf8_flags; > > }; > > > > +typedef struct AVTextFormatOptions { > > + int show_optional_fields; > > + int show_value_unit; > > + int use_value_prefix; > > + int use_byte_value_binary_prefix; > > + int use_value_sexagesimal_format; > > +} AVTextFormatOptions; > > + > > #define AV_TEXTFORMAT_PRINT_STRING_OPTIONAL 1 > > #define AV_TEXTFORMAT_PRINT_STRING_VALIDATE 2 > > > > +#define AV_TEXTFORMAT_OPEN_SHOW_VALUE_UNIT 1 > > +#define AV_TEXTFORMAT_OPEN_USE_VALUE_PREFIX 2 > > +#define AV_TEXTFORMAT_OPEN_USE_BYTE_BINARY_PREFIX 4 > > +#define AV_TEXTFORMAT_OPEN_USE_VALUE_SEXAGESIMAL_FORMAT 8 > > +#define AV_TEXTFORMAT_OPEN_SHOW_OPTIONAL_FIELDS 16 > > Since this is a bitmap shouldn't we use a flags field directly? Oops, forgot to remove that. I replaced this by the AVTextFormatOptions right above.... sw _______________________________________________ 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".