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 C092A46085 for ; Mon, 29 Apr 2024 00:29:22 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C5E7968D405; Mon, 29 Apr 2024 03:29:19 +0300 (EEST) Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03olkn2059.outbound.protection.outlook.com [40.92.59.59]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B367768D164 for ; Mon, 29 Apr 2024 03:29:12 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=k7FxE57ctIUudNJclkGfZAWx1Lu8t4fQQOmxFg0orQH0bsjC6BsilhPn6GHOlA2M3FhyMkCDrfc3mlsb/MVk6WLHQ1WfAv3cpUwYdjgc1oNsSxqQ+hFa5KURYBvT2w0h7mv6ubOp4VBTpqZoSeiwX9c87apGRbFnQpZRqus9mHhHY41dENGH/VIu1pR0NuDgtnXiZBgTGLtHSQiFuuWw3SJNZFXeozWkPLrGBKm01q+IOoYPD7YFynPgM5u4/O/UJada2Y3dq3CEurOhiLa1/mVpasnnifUAHmKc+sxNWeKdb6SAAcNqYJZr1j+y/3TAimvAcIVJHZYHn3vlCpL3Kw== 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=4K1+dfFtJCAeHetnjWmw+RNXy3swRhMS7XRYrc1iZ+E=; b=i6McG4k4pdAMibGHQwAefP9Fl+0RIe4AcKVWzEYlzsMMi/8LjZlZ6cinOC1xVbIdw+RtRerDTX095khd5coaOAQr73idYe/ZBwYRQnQZstwO7zBAB+tDpmPdHC3EJC8lOTO5uRybdxmS4lwRWTgA42+QRiI17ngmPsGyIvRVZ5o09nOyuD1ly0u353A0uPd5hQtXoXATuJmOF2HByWSPswUEDBj028c2OPr+49lIi6DE9Lof3KtsJGHVy1xR6MegWHiZ5Si3PrszaS8vsSvhYpKGg0MloCeumB0J1gn0F9i0RGgZQ5NuwewDXh4Lm2Lx5VfFKy2hUVUDS++jJqO/bw== 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=4K1+dfFtJCAeHetnjWmw+RNXy3swRhMS7XRYrc1iZ+E=; b=IPnA3vp9Uac1SzZb4HNFGPYJ/9h7F7LvHVktJTg4em1/oIadkCXhJZ+Y7dzg5Sx8ehSvij8lXBBwmUWzhf1iPg2Hg+Bqa5a4kZDjFXYRu9TNPXlwRWBq3ANxQGawyB2P72wj6TFpTEF95fgCFX6nfw9eahAu/7GqSJnbPO3f2XfpPLs/1d1ZradwkFA/DPFesiHgtW73dIyFw7ltBGU53OAJM9CIyOm6viVcey1D1fveJEEKfiTjxdBnr1btdM8vq7f/MlzJhqrjhlNHalGBexU+ZKtfDRyNd4lUXU8Z3r+pHIRADUA5zGpGMavk9PQv82fnWjgQgVkB7n5OY2+Chw== Received: from GV1SPRMB0021.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:60::6) by PR3P250MB0068.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:173::12) 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 00:29:10 +0000 Received: from GV1SPRMB0021.EURP250.PROD.OUTLOOK.COM ([fe80::4eb:f54f:b451:34fd]) by GV1SPRMB0021.EURP250.PROD.OUTLOOK.COM ([fe80::4eb:f54f:b451:34fd%4]) with mapi id 15.20.7519.021; Mon, 29 Apr 2024 00:29:09 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 29 Apr 2024 02:28:49 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 X-TMN: [cqsvDD9+6zVrf5vhoU6LuVlH9dhZPLi1qgYvwLsoLj0=] X-ClientProxiedBy: FR4P281CA0313.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f6::7) To GV1SPRMB0021.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:60::6) X-Microsoft-Original-Message-ID: <20240429002902.1516002-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1SPRMB0021:EE_|PR3P250MB0068:EE_ X-MS-Office365-Filtering-Correlation-Id: 513b30fc-add8-4275-b7f5-08dc67e362d7 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|440099019|3412199016|1710799017; X-Microsoft-Antispam-Message-Info: rI+tNypLe8NXknw4WT1f9WRJB0g44UESKEDQELmedCyIomMPVTIHsefYrQeZzTH08h5JjxBl7jzJoda8SkdQA5l+TrebGohd4uibmGv2slzZWLU+RRBOav70ungV8tWndBEsFbbLsgOj3IQCNqpQZuyoCGJGuy2uPlgxhqnXOdxztR4/uBR8q5nZqKVFXdMH9NHRggiP8Wwbq1wyiq5Gpfz6VeDHGdeaNoeOSM70UHTt9k6WlogOqQyMuEr8kLEYVy1pseiZTfHIgK5Q9K1YJo9Uy9P1LQg3bnGTWGtevgjUemmnsqFeMVmt2pdlXi34Ie6IhbYAX+2ek2SLqJpb9zm+x3OckNfZyf8a/jJaYIPlUPTslNdJgAML96p1Nqe6xj2b/vq/7mbrwS1XNyG//lQVK65ODgoakb005o5wKZSK2vVC8Z6vjbMG4Bjh8iGfIpR2j6th7V9kGkihzoBQGvo/hs/I6rmSNLg6N+5rH/AepmxyRAzPJFcfaFZDlHME8XWPxP8pm3d+tFugraa3SRP7+OuPKIUAkWPX0LNEb30vLzRcU8yuJA46wFtmDY26TCYKCmCSxhuuY9jEPBB7U3PEorSAIV+tla5Het/YxPDBj+OUda5siEfeCW5E4OOm X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iJ5KNjA7rF1vHeTPMShkLGjpc2kFvNypnEQuG3nOwnoW9UKhmT27JNsHsvyG?= =?us-ascii?Q?0n7rPqvYVErdP8PeRrM4G6uHcumwM10zV6nwhBCh3/sXUwqHfZMDB+5c98mG?= =?us-ascii?Q?p2Ta2onySkNJVStzfvP3m/robNGlQewtybKRyqq2/Q8ptUFpPe8agvJSyF9x?= =?us-ascii?Q?RMmFHbRHrX15O6A1tge4kjR6TH09qAiYW+wVozC7ca7R+wF6Hu6C0ffHIHPW?= =?us-ascii?Q?l51kNaYdkdw/1+LkI6aRs16kxWau3tBFkHVUzM6mj2cJiISETbDvdwbAtbTa?= =?us-ascii?Q?rbP+3UhF7JPm0JA0YyMmbHARQWd9fUHh46hHkePLoSamAEVlwDULn2aeehFt?= =?us-ascii?Q?LvRYF4o0tiw6AE1DB6OlBkbj+xST54eyqmUmj6gSqGOR+XQ+/UGDCZHFtuao?= =?us-ascii?Q?kutqw/lQDYL3s/vxWD4lOXQieNsUOacYdedIxfXL9D56olKt3bwaGraMfl8s?= =?us-ascii?Q?o2El5WfCsKZGAQh10biYifsJuDeziwyLyZNUE/mOj2WWqdFGBX+6PmunI34m?= =?us-ascii?Q?WkQARX1kOYrAf8GOyqgcTVLbj3lrqpQ+FyzUYur3/RUM45J1hWtDnqoBzWNX?= =?us-ascii?Q?5ALjBWFc8NFH6h1HfaRcjJ9dmTa+cNv4E8+mT+pezOV8fdgFsT01aEHjT7fA?= =?us-ascii?Q?ysYENSlBNl7VSoomk/B+3YMCXeMS28c2bawfJS6kdOVMEdED/UvpI0kIdymV?= =?us-ascii?Q?20RkLn9TYZ1n0xBt2Myb/TjAjSQVQHj8qZLnkKWqWRmsdgeLtxaNTBaC/4JV?= =?us-ascii?Q?ljy+91oOetI5WbH5UpBHQ7EvQVbYIRp/aS3+pTDf9On69+8OHoFcJqGCprA4?= =?us-ascii?Q?TcCoHhsKrXXEXAb2QexquavgfVmqGOmux90LOOGoVQR7tdARfAm1mgffccF1?= =?us-ascii?Q?/Hr6BHR12zJpTNUUmLCmdtPB4mPzefKv5laXfFGE671upURz3PFaAu04udTA?= =?us-ascii?Q?zlTNB5tvAh+ZgMtDRtJ6ESFtKADusPh450VpVyfrdTtUYBp8jcRCWN3P/huU?= =?us-ascii?Q?pgMQNK1Mk+5S0VJg416uxfYc+kCav39+metzXKetdM63/82KD6eWdRllJhSW?= =?us-ascii?Q?Af7waYZlpMUIpBRQlJ5AEpP+8/Lc/YYRdSqo+/vBpJr9+y4vL90YU/A9a9jH?= =?us-ascii?Q?45tEORxVoZJ9cW7M79pvWwETgpkOQqlWFYxgH4cUirj6zTmDrSBSomk1joKc?= =?us-ascii?Q?Znon7N1lS+H2rGuivZXHwFf5f6O07dbwQTh4zyLF46fNB1u9YZv+YKCZnLcT?= =?us-ascii?Q?dvP5y2oH3mqC7QQUYUskXnLy5lny6859itWKQo/hcw=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 513b30fc-add8-4275-b7f5-08dc67e362d7 X-MS-Exchange-CrossTenant-AuthSource: GV1SPRMB0021.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2024 00:29:09.5681 (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: PR3P250MB0068 Subject: [FFmpeg-devel] [PATCH 01/14] avcodec/get_buffer: Remove redundant check 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 Cc: Andreas Rheinhardt 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: It is unnecessary to check for whether the number of planes of an already existing audio pool coincides with the number of planes to use for the frame: If the common format of both is planar, then the number of planes coincides with the number of channels for which there is already a check*; if not, then both the existing pool as well as the frame use one pool. *: In fact, one could reuse the pool in this case even if the number of channels changes. Signed-off-by: Andreas Rheinhardt --- libavcodec/get_buffer.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/libavcodec/get_buffer.c b/libavcodec/get_buffer.c index 9b35fde7c6..ff19f61e86 100644 --- a/libavcodec/get_buffer.c +++ b/libavcodec/get_buffer.c @@ -65,20 +65,15 @@ static void frame_pool_free(FFRefStructOpaque unused, void *obj) static int update_frame_pool(AVCodecContext *avctx, AVFrame *frame) { FramePool *pool = avctx->internal->pool; - int i, ret, ch, planes; - - if (avctx->codec_type == AVMEDIA_TYPE_AUDIO) { - int planar = av_sample_fmt_is_planar(frame->format); - ch = frame->ch_layout.nb_channels; - planes = planar ? ch : 1; - } + int i, ret; if (pool && pool->format == frame->format) { if (avctx->codec_type == AVMEDIA_TYPE_VIDEO && pool->width == frame->width && pool->height == frame->height) return 0; - if (avctx->codec_type == AVMEDIA_TYPE_AUDIO && pool->planes == planes && - pool->channels == ch && frame->nb_samples == pool->samples) + if (avctx->codec_type == AVMEDIA_TYPE_AUDIO && + pool->channels == frame->ch_layout.nb_channels && + frame->nb_samples == pool->samples) return 0; } @@ -141,7 +136,8 @@ static int update_frame_pool(AVCodecContext *avctx, AVFrame *frame) break; } case AVMEDIA_TYPE_AUDIO: { - ret = av_samples_get_buffer_size(&pool->linesize[0], ch, + ret = av_samples_get_buffer_size(&pool->linesize[0], + frame->ch_layout.nb_channels, frame->nb_samples, frame->format, 0); if (ret < 0) goto fail; @@ -153,9 +149,9 @@ static int update_frame_pool(AVCodecContext *avctx, AVFrame *frame) } pool->format = frame->format; - pool->planes = planes; - pool->channels = ch; + pool->channels = frame->ch_layout.nb_channels; pool->samples = frame->nb_samples; + pool->planes = av_sample_fmt_is_planar(pool->format) ? pool->channels : 1; break; } default: av_assert0(0); -- 2.40.1 _______________________________________________ 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".