From patchwork Mon Nov 21 00:26:58 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 39363 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:999a:b0:a4:2148:650a with SMTP id ve26csp1816260pzb; Sun, 20 Nov 2022 16:27:08 -0800 (PST) X-Google-Smtp-Source: AA0mqf4RpqjzwLpUDezdliEungrVmwSV52dpKTSrqCnQePrZQcEz3aKnt2ym1sxd4vgF1aCMS+n0 X-Received: by 2002:a17:906:1614:b0:78d:4e5b:ffaa with SMTP id m20-20020a170906161400b0078d4e5bffaamr13197308ejd.455.1668990427847; Sun, 20 Nov 2022 16:27:07 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id z2-20020a1709063ac200b007b2912955desi6584287ejd.125.2022.11.20.16.27.07; Sun, 20 Nov 2022 16:27:07 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@outlook.com header.s=selector1 header.b=KDXdGNQY; arc=fail (body hash mismatch); spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9C85268BCA0; Mon, 21 Nov 2022 02:27:02 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075081.outbound.protection.outlook.com [40.92.75.81]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 37C7268BC4C for ; Mon, 21 Nov 2022 02:26:56 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SWtG+A6Vrb7ZCjeuKrbRuck4L0YzF1zmWggaWLdonFkdAD/O61+zFCaQFO8ayWQs9ID63u2HDmI9hQVbKzOB+FO3L1tUmJh3p2Zm0ruN8id7XolWNkzGHDG6sEHMAIanqt2ava3C978IUvJcfggF9KeSL75vm1LbDakEbduQsJ6a8LxFpY3rTgXEMPLhImqN09l02Gmj9RfPtCcfZULXS+cO7Gowt0g6uEoOkI6t8ndYDPWwxm9WgcQXXXU00+7QpztmTgcP5JFjh21z4V5wQ1h8sy/A+kZg4tLzMs29ioiQ8TnHCDbBy6BXKdxaI4z3JU0zink65GIcXxqkV0SkoA== 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=qHnAg558o2VGD3adXxA2j6y3zTTBZcmvVvQrn0aRHjk=; b=c0Y0Ek0zRY45PMSOUWjM/rEttZfPXrLMnHopwZ/JDy0+3giAt/Tif+pmVLodP8VTiqVKtveqEjnXclRXD4KxPzNaJN0mq5akB6FbDC0dLi3L3FdeZelu43gZVMmKQ4bQwyy9c5lvKyRkW39iBvckLL8XZECFptdQAWFLhqYqcK4beMeRAAF+8wF6ahFNmxvpsFzs5wXWStyJ/9HGlC5pREwzY7ReRzLyPbTxPq93dRAXwc1dGkU531X6mCYJioHSszbY/sZbvG1nZBXnWDapAXxIPCzz0m3HroeqJ1okX3jd77qg68g0Cz/A7Ceda6jPwvtjuze0SpUEhWYddpzHew== 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=qHnAg558o2VGD3adXxA2j6y3zTTBZcmvVvQrn0aRHjk=; b=KDXdGNQYK7UFO1m3+YByr4RL2YIT3+kKDcFMdtZSeYPwItG7AiN4Nkm4pxRLYr/eYQR7VZ3rlNRBQ4f3JH/2kWsvs/y/ZbhJxYtuK1f5SSYxxZA3UfrbBWC9xQt76ANR4fteqJYCfqiiO22FKb/5Ikdp+MW3ZTQ5QYLkXSaWWoqHT/Q6WTxPdD8NReViy8jbNxf7U5nxYM/66rhJnZQbBlqgFaDqg0gven4dKSOOaJqSWWlHonwJzPzOhhNbIOiDrlSOL5lupwTtslcj7RaqfxFANOWWfQlQ1KqHSfA3d3Jsvbeg7GnYk1qTXj16/zYIKJ51vSBP8uIUHbdE6WVoBg== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AM8P250MB0198.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:325::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5834.9; Mon, 21 Nov 2022 00:26:51 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::c37:cabe:316a:60b2]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::c37:cabe:316a:60b2%4]) with mapi id 15.20.5834.011; Mon, 21 Nov 2022 00:26:51 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 21 Nov 2022 01:26:58 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [qtGfmVDSjmoG6g8H+BbjfhMA/2RfZS2bIAOjRkFWvio=] X-ClientProxiedBy: FR3P281CA0100.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::18) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20221121002701.2127898-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0198:EE_ X-MS-Office365-Filtering-Correlation-Id: 19c14c9d-db87-4a3e-b769-08dacb5715c5 X-MS-Exchange-SLBlob-MailProps: ZILSnhm0P3mtpjYJPDcWODdlEt9tqaLeQHCydPE4Jv00iTsrjizy+KGnKk2UXOjz5tCZ3cMy6DhL/VjL9DGKW/ZMaXJGOOI6vjZ5Pu2i1pgn3fslottinkUnShjP4L2ld2iYOUZwYPgnNdEyFpBSrBdhGC/2aSo+1cyEExb+YD6oFOblLQNA77AJDT6YWH864PAgDipwcwTQM+XaSDYvTcJTurCtHW+iXvqTe2cvZNbr23rooeTV2Ny+C41NRZpy5x3wbbpvAFRU/lrY4VcHLppTPPGjlR8F0JkNTzpVhjpevxG9N7T1FdT4r6znxgXQvFWJ3K5r9PIEBI+ahPtSmk2FkVo3YNRJ+GCb5J3tLQiFtX6pIg85gAgChsHpKVtuXpYb04Pap9RwUWbNpXzllTBu/HCWUJQfwDz/KLs5uAegOz5nQTdZ7hqsxij0vCe+5pWpztVjLGk1n+X+cJUH3IDTPvVLjZ96IIsVel1PBWu2aTX5bjbjafka1D/umy2lhcMQwx4eWkmuUJcpPMZxBzOmbU198l1vZslowKDsnilqsXzNIhGZtwQdLgusC80/mRDLueWyixxEMa6BUIDF14Qma6PRrD7ca31b095SBPUEYVZH+svBxb1TbfOEmVIa8WGhfUeNX79/SgivG6vt7Iow35RJ3fct2rUAERYK5B2bCEAnuxNcoosptaQwLnQ0NgIh5P/kcBB2UZwE7j0gg4ACp+3M04SudDf+fH0MkvySalklcJ8RF5PvgTfTY9XRFHUSt7ZsmMSOXZX14Wkei5bQZcxvPBXc X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: abvaVFg+sHljugh6OCLQJ25LwtqnAZc9WYDsnFfnxHeHlI+XtzVxMh9X0WpnTsdC2TXBPa05M6+1O5TAUZzo3MxcOJGEeV1hrdfbYLNOUxIR2IjYimrm7xYezVr5oqhzBc/XghgPrvLe1sGAx41lKJ/3C/MHshO04lHiuHBs/qboPGG20LxnexGVpHTyIcnTtyelVOse+K9TdNg8dtA5hvC+ZTAjhIECjiZHle+clLljNk/OmtkeHKX7Xml1l4DGxbTGLP0ppf+NlYLa7yupIM74srKdB9l95Rv5C6h+AQowJpQHKU3UWzIiIRloIOSV7bZ18aQVO289rrjSHcI+wngaoD5yutWC+DLowN5Ygcx/Ol2b6WUPmPskR5CHYu1gEpcXDD5v8+i1Yk9aqK3vqY4OKxy5020ZOvZb+LffJ1gNc7TAyzNHm2lIi81OK549amSDqs06hBGWekigSvsqGv3dpTl1Dd/LeaEGYYtnj7tLpFQxwLc2afJ2qOZeYYHl5A1EadQXYlghMfYiFZWRkOB1zKSqfYG+LN9o8Otu+uK025gzrgdvUeu8yrI37yd+I2Nwvn1kuRdE7ZpA7hjwPzQpdTgN4JZmUTwoAzbZmWv05Y8QN0bnOmf/I1pi8qnl2fDG2cJU1GAEBhc7OtANqQaiShhNtUDLiULTqE4wxiI= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 4QbJjSMF0Lg9cbtgwkS4c/WuS80imTFRZJDxrx2Gvi3z1K9r7b1GGalFdLu8XhhuiyBTVrSAJSeBUsYKLb/ROvetqxgXuxcti0UO9XWZcNbX5FPVYhYQt3kswCdBwyTg7d1iZodz8ZKKqu7VmK7DfvR5jutmCUk+BQQ7yz5H5eOaOp/CbFOSKVan+RT6VWiWyUMST1vRYHTzs5wh1tReG3S//eIucXOWHVStXvFzGrCZniTmYePMaAh04k6exvYKiqFYNrIE/rA4zUB9JVUtTNNdQBuinQ1Oqapb8LbIiSVmqqrTnIpFRUYMfQQKfMMjNSPR3xZG5o7EBz4zpIjNymEcHJSPqSMTPwoPKjriNSMBQoukxsnALMmznk10NXf01jc2YJIjhvVFHnFvMkN+POnFga0rC1dJvN0JrBFNr51+IqhNRuACklcTJw9PK9YaF7RBkfsHaDRjN9nJObRhM5VdZDRLBCi80yZME7Uxlmn7wY7HDR13+ha935awuSau3O9JmcctLZUGNvLDWHTbGrnrb4xJRkim32yuXku2sqqBazd+n5eRw7LZozN9x2X5NLsLv8mkwLIMKTSbKRsSbmuKrVhCYRvcKzAvhCpH3u5u+hXcvFAIK4NX08XxY9Tuhho51dlhUEKlQiEsKMtvNa/F1LGXhkIaCj8aYJ0tCkaMJRA2wLxqwHV9/8ierFTBvZ9bmiAnfr+q+x5mFJ6z8Olv9U05JZtCYCujVJP4cUwhjX1cV/VqN33xsF+lQIEhRzAynZZD8YyYynNaZxGsQpjNLLg2gExfulrI8D25eU6YfFjHDq1/gJOCB1qlTxL/q7dViM+ddkUNF0yeiwr14LqqiVWKUpvuZ22IWk+dFtnSYMichnxGzs8mUbPYX+iIBsAPI4qaye/WqFKgJxsFst3qubywNtfjY3gPg454rLnzvQpCp0wrU8aQmLmSr982F4Qx2/VaS7pVZKtQQkAENM8m0EQ9m4MboiTddDeycMtPZEHrJcABt8qxNrTIfoSLlVP9WBNzathDN22e/kfzOfN607BnYHLVC7/3YgdCxE3oK6RAEUvltNklPpulSJ0sbcdSc5lNK65Zh1QTLR4GasT9+DEeMFpJeUbpL44wZrepX5YGaip7gMCvXQ8ZLxWd1kX5Elv9zquDrC+URKb/6IkPCnd3klkGykdUFXqNFGifSNxTJ64QBuGinqyij5E3spU6UeVJqvucehIIPLGwsWLh33A3QkjHNZfy9CS2VxTuqjr26hNcffwx11GzWZYliV/DW04ZWFcHICqnf0O0TZYaZcF6Vxg9KIOCXZNeKlsanvEhUkD1I4/E7CSE0zJ3 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 19c14c9d-db87-4a3e-b769-08dacb5715c5 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Nov 2022 00:26:51.5937 (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: AM8P250MB0198 Subject: [FFmpeg-devel] [PATCH 3/6] swscale/utils: Avoid calling ff_thread_once() unnecessarily 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: ffzHuVGu2zr0 Signed-off-by: Andreas Rheinhardt --- libswscale/utils.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libswscale/utils.c b/libswscale/utils.c index 053c6bb76b..fb788fc330 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -1340,13 +1340,10 @@ static av_cold int sws_init_single_context(SwsContext *c, SwsFilter *srcFilter, int ret = 0; enum AVPixelFormat tmpFmt; static const float float_mult = 1.0f / 255.0f; - static AVOnce rgb2rgb_once = AV_ONCE_INIT; cpu_flags = av_get_cpu_flags(); flags = c->flags; emms_c(); - if (ff_thread_once(&rgb2rgb_once, ff_sws_rgb2rgb_init) != 0) - return AVERROR_UNKNOWN; unscaled = (srcW == dstW && srcH == dstH); @@ -2043,6 +2040,7 @@ fail: // FIXME replace things by appropriate error codes av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter, SwsFilter *dstFilter) { + static AVOnce rgb2rgb_once = AV_ONCE_INIT; int ret; c->frame_src = av_frame_alloc(); @@ -2050,6 +2048,9 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter, if (!c->frame_src || !c->frame_dst) return AVERROR(ENOMEM); + if (ff_thread_once(&rgb2rgb_once, ff_sws_rgb2rgb_init) != 0) + return AVERROR_UNKNOWN; + if (c->nb_threads != 1) { ret = context_init_threaded(c, srcFilter, dstFilter); if (ret < 0 || c->nb_threads > 1)