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 ESMTPS id A99DF4CFAA for ; Sat, 15 Feb 2025 01:28:21 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id DF80568BF85; Sat, 15 Feb 2025 03:28:16 +0200 (EET) Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02olkn2014.outbound.protection.outlook.com [40.92.48.14]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9F48A68BBE5 for ; Sat, 15 Feb 2025 03:28:10 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nVCFZEXWq+hLtUo0XgEIILRyyxauedl3q+puo20ZW25PIJsch7NR7UmJ2ST6Vxn0VpybDJ4Pu85kXL34/JAu5baPqUOkl+gevQJLDXzI4W3CV5mJ3aelnB6xc7OE6ULSuYIGeKUOCsT1Y57E9wKq/Vv8EEOqLTuqd9lCdYl0OD0oNiOlQ0jIffqDlpprrGihGU7/5a4UdErC1r3HhmcVJMa5pej05fNxSz1VaiLCF3tzlSIfb3/qD70DANil0yWQCwQdTrzQbyGMir94/1u5w4b3pEg+HXTCYp7OkG8bgICc+GI9CuXDVOUUCkXd0qUwz5u+bdUKiX2h2SJqrBcXEw== 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=LEtreiG/Tz+5s1AscdaUhc0xXCnFerk8Qv4nFevZpkA=; b=zVOj9N8JQUxM68wdI35rvWj4D8HTY7qrxoEUVvyDj9HA9k/sW95XUySZowvowgvE8UfYe2XCJKZLuWvwmyNByPpeTewpYXwJ6DVQCIRZ5bof7Lx+1q/9sZdTBrNueGQrFmHbzZNrGwC30rABXN9aj0atQF/TicMwSY7RH+VjHVNyPZ/GuF8ULxGBkRsh/Fy/tKcqE50PKZtLJlcTTaGaoQCHde9buKrVbTfK1hw8z8ib29Ny6BP2GLCLjF9fpJxdynGKq8PTLFtdXdZXOw+jdDLQ5lv8ROeKlFOG8hQHepXJlsjk70nzISXq1xUGM+V6NfFZ/SiVR8D3ix0449Zm3Q== 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=LEtreiG/Tz+5s1AscdaUhc0xXCnFerk8Qv4nFevZpkA=; b=RYaiAaooDUg3yyIUFGkdo1tgjesUpnBA1umdw+diEElBfpC4wfqyBeI+WX9DoCFwMxtUB/qwwVZ63uFbKbYXs525TiSd+aY4UKZPPTmM0muj17hjBwjDwLR396lfxoP4zfai64xquUWpF8zEuJzZGRbqHugqyiu5Oe3Zg5SzwwbPA9C22FmqfPD+QxIhK3PvMelJqtMdbd4phcUI0S4kMLZlJxvR8SbVLzlJFSPWGYRcR4jDU00XMTZ4KF6elp9Z6W2NNcvBiuNe4m6n3gS2z4LxFCXDDziuAWu800YQdDO8fmYajMa7PMRzgM3itVOKxIqhH7YUUbmJ9Gcvduzg4Q== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DB4P250MB0879.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:385::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8445.18; Sat, 15 Feb 2025 01:28:08 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%5]) with mapi id 15.20.8445.013; Sat, 15 Feb 2025 01:28:08 +0000 Message-ID: Date: Sat, 15 Feb 2025 02:28:06 +0100 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250214163302.3043-1-jamrial@gmail.com> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20250214163302.3043-1-jamrial@gmail.com> X-ClientProxiedBy: ZR0P278CA0198.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:44::12) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|DB4P250MB0879:EE_ X-MS-Office365-Filtering-Correlation-Id: 33494eb1-a5c1-47cd-0edd-08dd4d60006b X-Microsoft-Antispam: BCL:0; ARA:14566002|15080799006|19110799003|8060799006|7092599003|461199028|6090799003|5072599009|440099028|3412199025|12091999003|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?WHVNUFMxVmNNbndpODVFOU1aRVFFZ0NHQ0ltOERuL3VtVkZSVWltUGJjYjRi?= =?utf-8?B?SXI0dVRkUThoMjV2emF1SVovR2ZSdEpzN0lIdStVOXdBRzBsS1R3cW5qUVZQ?= =?utf-8?B?bDUyNEQvczZMdXByU1ZuaStIWXJUY25yeTdKTktBcjNCUmRLT3h3NjJkZVZw?= =?utf-8?B?NW9KOEZLUmlQWndpc1kzY09PUGh5VUV4bVVVVXpEZVhOOWM3NkxVTHFKUTlB?= =?utf-8?B?aWNCc29saGxTT0Q3SFI3dkpESE9tRVF5a1ZSRnNMZ2hYM0tETUpSa0dpSUxF?= =?utf-8?B?R3AxcVVQVG1FNVl5QzNwb1RkTU5iNFlpbVZBSWkvcnl3NWJPaHpNcDV4aTVO?= =?utf-8?B?TXIzMHpZbnNLakI5VVBiNVJFVjRGSUc4TWtzYjRYNjBOdVVNazRQSHRtOWZ3?= =?utf-8?B?cmkzYjVZd3MvVzluaFgxSVhDVHhWOU5pQTZLMG9HNDZZVm5iRFM4dVNYdlh2?= =?utf-8?B?QjJjKy9PMG9xYjF2aGhZWEhnc1pHS1ZTdy94TncrVmZwbC9NaEgrcS8vZDh1?= =?utf-8?B?bW4rQVRYb0lOQjB5OTIwYURQY3pYVnZpRGtrcHZuYnAwQ0orSk43Tzc4MGNN?= =?utf-8?B?WjB5UVk1SHA5MkNOM0E1bXZJRWJEekNlYkRQU0VjVU91WTkzck80Tk1JMnFt?= =?utf-8?B?ZGRkT1JXeU5TVjZXaFRkNG4vRjNhNmREOHdBM2lxbnNBTGFHQTdNWUlJcS93?= =?utf-8?B?UWpET3ljbHNGTWtTTUtrYUxCZDFZSHA3QkZCTEp6YmVpZ29ENzZ0VXZYVWxG?= =?utf-8?B?dDZVbUxsQW15OHowc1pjczliQWVIZkFXNE5OR2Z2VFFWaVVQQWZXanUzbi90?= =?utf-8?B?UERlbEJINVN6bEVvOWJ4a3ZmUjFhRmhHWUZNUzVwOXRzMzZzK3hZYjVyK2gr?= =?utf-8?B?NWk4bFVzQS9LZFAzMTNnUlNiYmlQL2ZIOE81MlA3OW9zT1BNNkxNNzJqQ1dE?= =?utf-8?B?QkwwTGlobFN5WlVWcDhmWi83WDk4K3lkZWZncVpxV1JOZ1N4UU80Sm5sZjFt?= =?utf-8?B?S2h4UmtFU2NPb2IzT0pHek41T2hLbTdRYzhOSUlxM0JZS2hNTlVEN3NyREJw?= =?utf-8?B?eEdFRjdJZ25FTFlUY05JUVFxNkRxNVcwNFdOWU9KUCsvOHhZUExENmh0dmJY?= =?utf-8?B?bkpsaUxxZTRtZVNoeVVJTk5WY1RwSFpQbGJoRnpQTit1WTZ0Vk0xZDB2d29a?= =?utf-8?B?RFdJQ0h4MDUzT3NZdXk3cmJLdFAzRE96MlNtSDc4N2tPYTNKemt4VEJHSTNt?= =?utf-8?B?ZVU1ZUd1endJcnhYNVRNa3Y4VHgvZG9OVENCSlpYWGx2UWh0ayt0R0RTV2NX?= =?utf-8?B?NkNEaGNpbUU0RVFOdmNVTzZUcTVMN2FnZVJnUDBUbzgyelpvditYVTdvam1Q?= =?utf-8?B?dEFsUDNuNEZOYnRrUmJEOHB5OVlpS0gxT1lFdXBJZTlRTCtNVFNuN2IzUDBr?= =?utf-8?B?U0gwNlVMbGJPTDgzbUpNWlhUZ29UMndUVGNHbTJ5YUd4ditzSEt4UVBkQkpO?= =?utf-8?B?RUhjZFlZc0tNK0lUZW9JT0h0d1VHMXN3VE9TdEJ0am0vL1lxLzVIMXB4VDNO?= =?utf-8?Q?nI4Chs+V7ULuGo+kQQXDvIkzU=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Qk5iSzJGaFhkWEtMdFpSN0Y1dUFjdUV5ZjEwbVVpOCthTWJyd0poV1dkU1o2?= =?utf-8?B?SDRHOTF5bHZxWW9YQ1RvZ2ZBOVo5Wkw0bFFaYjRZZ25kbFNFMXFqa3c4d2xX?= =?utf-8?B?QkRKNDBpdmwzcEpjbjZNaU4ySTE0R1lNd2ttUW42cWUrUGxIbDhJN0M1QytI?= =?utf-8?B?RmtFaThwR1ZLZmZRMHNoN3ZHa1lrRGE2NWsxT2pLN3poWG5FU0Z4bVVsWU9V?= =?utf-8?B?K0FOY3J0SlZxRVB5RVdURnh3Vi85N1lPc09LUEpHcHF6OW1qR2twUkhZWnpa?= =?utf-8?B?QXh2RU90aGNUY0doS3VMcTBrN3BFT05BTmZpelFYd0VEWTc3a25ZSmhTZGFD?= =?utf-8?B?Yk9EUWZRMlFibkduUmplc3ZsWmJ1ZmdyTEdCYzhwa2JnMUJzNmgydDFzSGlN?= =?utf-8?B?eVR2a0FXUVNBQU0zVEJkUzhtWTdnenF5dHBUajFpZXQzaWFHZmdSRFAraDRi?= =?utf-8?B?c0JWRkVaMTNrRDIycXVwZC9TblZ0ZnNGelQzRldXRTBnTmNyWTVjaldob3Q2?= =?utf-8?B?ODVRVHJKUW9NbHFSUTduZVhOSlZGMW5sSGxwK05hRHJqZXRuZFgrYUtXUnlp?= =?utf-8?B?ZktkUUZwdUI5SE5JNkhFTVJ0ZDVGTUNxY29HeW5JdUdSb2xDNVRYc2lySUdP?= =?utf-8?B?eS9JRlRoSXJOVFVnRkw5UHQvQTN4T3l1c3FaUFhQeTdkSXlEWDU2SXpJQ2Vp?= =?utf-8?B?NFRvaE5OQm1Tc24weitzdlovYTFxckNBTTByYXVMSmEwNHU3Y01jTXdrazAy?= =?utf-8?B?bSt3SVdHM3NJLzlJeGI2ckFvVjJOZHh1OTBVeDJMNTBET0k4ZXZNdVpPSkhH?= =?utf-8?B?YzduZGxXVXd2OVN6OUZna2dEWEFqSTRNdEJYaVVON3FMLy9UdWJNTkFOR0JE?= =?utf-8?B?Mll4MDNmQUNGVkZuYk5EK2toaFN6aXJhYVV6blpZTVZweXBlM3VFN0ZHRExz?= =?utf-8?B?SXR3dkdjUkJVUzkyNHl1NWFPblpwNlcrYUc3Q0NIeHZSbWRJR2hhc1dIcHI4?= =?utf-8?B?OVZCRW9ObXVnRGJ1ZzVsYWdRRHA0eVJsdXBEQ0RubjhKd0U5MEgxUHZHOVp5?= =?utf-8?B?c29qUWRRdU5NQXJzNzFzTGd5eUdkN2tyUU53TnhwdU8yZEJTdnZZNlhyZFBT?= =?utf-8?B?NUtwSUVMbjJTWXg3Q2pSVkx5MVQxdGxQRlNoUlRZUzVwV1h2cFlSVFdDdSsy?= =?utf-8?B?eHMyZHhla0dITkU5bHV4ZXBYVmFTc0N4K2V1UWh6ZW1vdDdwRHZtUFJTZUFh?= =?utf-8?B?am5jcHkxekVDdW85cGwyaVV0emxCSkNTUDBIY09FWXNlUnNRZmliT3JsVkhz?= =?utf-8?B?dnZVVGlyUHQ3NTM0cmovd3htZ0tmR29UenVYSXJKRW9hSXBueDE2aHdmcFR4?= =?utf-8?B?Qjh6MXdxNFJKQXV1THh0Y2R0U3drcmg4VC9XSm1RaTZOdGpHK1BDcVNVQzN3?= =?utf-8?B?cVVFWm9SblczRE9LNWh5cFlTcEFZenMzMzJwWE1NZWhUM1RkNHd3dWNYODN0?= =?utf-8?B?eis2L1RDcDBvOGNIVVRoWURkZDhISDBIRWN1Q2xGajl6aCtTWGF3RGNIRDlD?= =?utf-8?B?M1RpcUVlcE1ocDVHc3hFZU05WlBha3U5Y2R3OGxpVWsxLzl2RjFCcnZTeUI5?= =?utf-8?B?UkpMclhPT0tOVnRwNUZyNTFSQWV5bC8xQkpHa3VPQmowV0gvMUN3ajE3cUxa?= =?utf-8?B?STRxRkpqZlhkeTZDUDlLamd1ZE9YQlRIYko3c09kREc4RGJMdzJhRmNBPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 33494eb1-a5c1-47cd-0edd-08dd4d60006b X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Feb 2025 01:28:08.4199 (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: DB4P250MB0879 Subject: Re: [FFmpeg-devel] [PATCH] fftools/ffmpeg: use an int for nb_threads 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: James Almer: > Removes unnecessary allocations. > > Signed-off-by: James Almer > --- > fftools/ffmpeg.h | 2 +- > fftools/ffmpeg_filter.c | 16 ++++++---------- > fftools/ffmpeg_mux_init.c | 5 ++--- > 3 files changed, 9 insertions(+), 14 deletions(-) > > diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h > index 9439be0f41..6cc0da05a0 100644 > --- a/fftools/ffmpeg.h > +++ b/fftools/ffmpeg.h > @@ -316,7 +316,7 @@ typedef struct OutputFilterOptions { > AVDictionary *sws_opts; > AVDictionary *swr_opts; > > - const char *nb_threads; > + int64_t nb_threads; > > // A combination of OFilterFlags. > unsigned flags; > diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c > index a0d04fd76f..800e2a3f06 100644 > --- a/fftools/ffmpeg_filter.c > +++ b/fftools/ffmpeg_filter.c > @@ -60,7 +60,7 @@ typedef struct FilterGraphPriv { > > const char *graph_desc; > > - char *nb_threads; > + int nb_threads; > > // frame for temporarily holding output from the filtergraph > AVFrame *frame; > @@ -1042,7 +1042,6 @@ void fg_free(FilterGraph **pfg) > } > av_freep(&fg->outputs); > av_freep(&fgp->graph_desc); > - av_freep(&fgp->nb_threads); > > av_frame_free(&fgp->frame); > av_frame_free(&fgp->frame_enc); > @@ -1097,6 +1096,7 @@ int fg_create(FilterGraph **pfg, char *graph_desc, Scheduler *sch) > fg->class = &fg_class; > fgp->graph_desc = graph_desc; > fgp->disable_conversions = !auto_conversion_filters; > + fgp->nb_threads = -1; > fgp->sch = sch; > > snprintf(fgp->log_name, sizeof(fgp->log_name), "fc#%d", fg->index); > @@ -1247,12 +1247,8 @@ int fg_create_simple(FilterGraph **pfg, > if (ret < 0) > return ret; > > - if (opts->nb_threads) { > - av_freep(&fgp->nb_threads); > - fgp->nb_threads = av_strdup(opts->nb_threads); > - if (!fgp->nb_threads) > - return AVERROR(ENOMEM); > - } > + if (opts->nb_threads >= 0) > + fgp->nb_threads = opts->nb_threads; > > return 0; > } > @@ -1936,8 +1932,8 @@ static int configure_filtergraph(FilterGraph *fg, FilterGraphThread *fgt) > ret = av_opt_set(fgt->graph, "threads", filter_nbthreads, 0); > if (ret < 0) > goto fail; > - } else if (fgp->nb_threads) { > - ret = av_opt_set(fgt->graph, "threads", fgp->nb_threads, 0); > + } else if (fgp->nb_threads >= 0) { > + ret = av_opt_set_int(fgt->graph, "threads", fgp->nb_threads, 0); > if (ret < 0) > return ret; > } > diff --git a/fftools/ffmpeg_mux_init.c b/fftools/ffmpeg_mux_init.c > index 944176ca5d..d212a1f326 100644 > --- a/fftools/ffmpeg_mux_init.c > +++ b/fftools/ffmpeg_mux_init.c > @@ -930,7 +930,7 @@ ost_bind_filter(const Muxer *mux, MuxStream *ms, OutputFilter *ofilter, > .ts_offset = mux->of.start_time == AV_NOPTS_VALUE ? > 0 : mux->of.start_time, > .vs = vs, > - > + .nb_threads = -1, > .flags = OFILTER_FLAG_DISABLE_CONVERT * !!keep_pix_fmt | > OFILTER_FLAG_AUTOSCALE * !!autoscale | > OFILTER_FLAG_AUDIO_24BIT * !!(av_get_exact_bits_per_sample(enc_ctx->codec_id) == 24), > @@ -982,7 +982,7 @@ ost_bind_filter(const Muxer *mux, MuxStream *ms, OutputFilter *ofilter, > } > > if (threads_manual) { > - ret = av_opt_get(enc_ctx, "threads", 0, (uint8_t**)&opts.nb_threads); > + ret = av_opt_get_int(enc_ctx, "threads", 0, &opts.nb_threads); > if (ret < 0) > return ret; > } > @@ -1002,7 +1002,6 @@ ost_bind_filter(const Muxer *mux, MuxStream *ms, OutputFilter *ofilter, > ost->filter = ost->fg_simple->outputs[0]; > > } > - av_freep(&opts.nb_threads); > if (ret < 0) > return ret; > What about "auto"? I thought that was a thing. Or do I misremember? - 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".