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 A983440FEC for ; Sat, 12 Feb 2022 06:43:30 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 491E968B2C3; Sat, 12 Feb 2022 08:42:11 +0200 (EET) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074018.outbound.protection.outlook.com [40.92.74.18]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9BABD68B28B for ; Sat, 12 Feb 2022 08:42:03 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L4cbL232Z+zhfGbDsn7xhOCC92OrEuRadkaci6v3iT83tplNE0BmnRX+Oi10SwpCq+s1nIJh4l9AcN5sqIaEDEb0j3gRYG6IfXeIIuUNHB77VePBSd78Rj5psoaYxJ8r+LpVGo4HuIyjEWDWjgh6WNtnxGdtwwac2IEIpu0NYsKd1x3WooyVjV5a5/DWas2hLxR4vozxhmdWOI59YgvspaGlO+rU5efyxabRJOFnA7HjcrhEDxiOB9EVWatt3Ka6+NKh5MkbfwgliQT5obAl9ej4FdfFgsOzFfISYOl5rDS4YzZ+u5aplbZ0V+xVFGQB+CsGsiy3Lv6+SKCFZU8yyA== 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=Hl67cXDC7TNSYT9GIdKuP2qwMLTavXltF+u0BFI3tfg=; b=ACBA/E1jsG9faeoOdmnyLVTACWftRwsAYUcoKQ0PQ7POhoZ3uU1yWRy7X1rPpvQx6D6w7bWsQS6laXaOQnw1bmU49olU8RvfK1yde21WMdfwwirwiTHU041R1oYs4XzBSA9At6fKglTfjF1lQW5F1F+f9TRCglsKt0vev0cNCR9sXXUl1BWI10WLoDUEOBg9i7WzHouBH4942fbnwz1j4JR1CerPOFgCYTvUlW2EXrWuZJIXy0YTha/yra322tivvZtQEtjf5iO3zpZh5PhaK931NwA2p78LYPm5cJcV/O9lyzFe0UndisXC4/KGJzMOYbuH4GBoz/Ys0cAErBkCpw== 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=Hl67cXDC7TNSYT9GIdKuP2qwMLTavXltF+u0BFI3tfg=; b=aaGHlLq/TWKllwszhApEawJg7lj/BpI1Rvv1K5N/rGhbDcRmWgX+5KopBEvC+aU05kAOVsME5aHQt5aMU1AXCgJhRDiioDua8uNOwuss0GAMANTdk4mP8rJ46ixW7x+vB+hsvdFouX8hs+uLGp1/EdMxXFYoTGYAuHV0FnIVwCgdr1467kYaTDtZ4dSic6Rpsabky3FnnqiXmvkwkWDmSoTxicQVT+Ys5L40yMukZ9jIA3/x1YCOLbPDc2VgO/5qsqFBv1qn1BEjxd787+W4ll/eurLGaSEAg9XwikoAUrQda4ICtmeJiPaj4to2ZZSnmcX6roQfV2xAYbYVuSDBAg== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM9PR03MB6723.eurprd03.prod.outlook.com (2603:10a6:20b:2d8::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.11; Sat, 12 Feb 2022 06:41:57 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::ac56:2ff4:d304:ab22]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::ac56:2ff4:d304:ab22%5]) with mapi id 15.20.4975.011; Sat, 12 Feb 2022 06:41:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 12 Feb 2022 07:41:29 +0100 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [t3hOPh/9T8i2pPnkkd0MfCAvIuJwHvNi] X-ClientProxiedBy: AM7PR03CA0008.eurprd03.prod.outlook.com (2603:10a6:20b:130::18) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20220212064131.2265452-14-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d3396511-81a8-4aa1-6298-08d9edf2c3db X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNUp0/JksszMwZGXS7aFQs58Yflif83JrBe4ARLpJ6CmFsVjR4wkiCKiiy8pGRD52tE9gXXzX/tcn2/SmY2hMKLWrg4haSjD6Poh6y4RSI7cGiK6joXWe2B/ktI/e325vgKdXd7wX7KlHX7nc6eZ7Gfd14rvdfbe0jK8dYpTYai7eHp5V8vyrLgW4SeRJcnS5f6n9ONMjFc97TJOHsP3rUUjMSFQlHOx9c+Hg/zB+PUhzhPL4RMt2H6KzkJxr5T3PlZAoapUonS2R1wp+MiXJ/I00EPrxAiRVfRJ4KyWujz2O5P9+1IWhfXqN09PYdAh25wpwi5jLrcAcNp2covc4IO94fq9QjJFoxlVmxYzuivjiegf5YyswYLAIOyMDcxdoAUxfalgxzBaVDMlMKt+TIWJdbvWsYT53txl4o5YxI3aybg4LKruo8ks6MFAzo9FQW9W/YewcwDOhLnusfqKti3ZU0j+JP53aJc1R4hRuKR1eU/U5128rxmEedCIoO5WxSDLf09nQ91g0FLGXYNTsjgInxjVU80P6Tu8M00INrKKCD6ky0BetW9fhvpg2zyNYGp6vbvKfeqZxsrQDA33JJAFi/NIN4gb/b/dKCGxw/9P5lHlB7N8qD9qUwIzPX/iz61q1L3i9yYmJY3BaAg11n8Sr/i1CapyXsmGcS3cF5Pg064BrioDfks70ZMhCCcTZhaEl6v/87z95y3T5w3oyu52RPFzuJgHHr0= X-MS-TrafficTypeDiagnostic: AM9PR03MB6723:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: F5PdnhAnhfzUNb842JfxCbbwysiZrknnSniqsstRcMF8MCedZfrxmfutvuXTEFt/g597v6KKoz1s7uEh2AtZmxnOwEypfjHWX7F0LRf+pKThKkI6dj486NWL1deVwOQ9kTtXWkQ9pkbndNOw6U7EfI0tkz9UlTpZV/uCrfb5UGOShkjMq/qaz5H3qmHFKC4XKSJKTnGWLxFwi1+DnSrRjNabGocB5lAKheVz2bkxsgp0N9Xx0DhnykDYa8neDX+sK8fHdpPi0H3CCV/SYzrHMgaD/rIhU9/AjeYHG9X9Oh5HCxXUmFYmGq9QdGxVBD1Q9e25aMQGUTiWBS41Da1SQPGIvDTmdnUch0KYkcQoPxOuwpK4GOZWJ5DqiBtGQTmJRf2nRDbJWDwDLoJZkF/R3Eih3QuQd1ZJdk4GCK/evrFu7FKDLsguDRgGln9wigIm4prD4TTNvhJuKjVAiCNqTetlfamgkgweOzL6vRXuvvxaR2JtCSv4CJzU5Il9l3VtwSbWzMkK4leBcFBiC1pcueE96aF89faBNpEXvdhO9Bof9QIPE7bBtndCedkkUn077kDgWJNGWoLlDWVaI5OkTA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?/wg6Fo4d/fV2J2S1MF60RWInHImqoX4OWvCHsepNnQ/TiexDCVgGZg6vrAsC?= =?us-ascii?Q?apG5qu12MP2bhAadw4BOxUo+LB4XQ8sw093xYDLi7VVZB1zeiaaWe2j7xSHw?= =?us-ascii?Q?VBkrnm2KoKVbrtwG6uHl+lYQs7KEEUZGwxymaWO2xSSAJB3fSBFMviqDw2Da?= =?us-ascii?Q?a3hvMgJs81ZH5j/MTR6X4Z8zZ3npp9gL/AKjfcsBmEyX2Vrl1pYXjBfSdBNa?= =?us-ascii?Q?GJluZ7GPFO+2moBv9iVI0o0x7OuIiaHwG9ORqdKdg7DIJTuOCzHsT8OcXekN?= =?us-ascii?Q?Rcsf1L1o0gYYa+Pc4CGD4HoKLoh57kyExm4VBszGpGvgJHuA1TMcT+cN7IWI?= =?us-ascii?Q?LFx6kzE6GAulNLB0vq34YsUdnXeTaCIvZ1egKb4xXW8okDE67xVtJBcMieJw?= =?us-ascii?Q?RyFP1hIHvEjzfLEjAVBO15YprlZkXa6qTPHl9ZZE7bDvoaAM5I1AwR+hJ9xZ?= =?us-ascii?Q?DdUl1lc5Wj/UfuMRe+CTdpAK6s1MKC8mYorgqI+Z1bWYsjuYI+aYpeFGZBmn?= =?us-ascii?Q?WWlrSpEuJKK0iO0KxmgcIDQ7/z8xy5jdxNxpDnovNHIjsAvELatmc7sOdLkB?= =?us-ascii?Q?qzFK71srMokvMGjrVzK0WCApkBEGrpBcQGiMoRUGiD6N08jhnXG7qdKYey7h?= =?us-ascii?Q?1tCn7pAXHtSQoj88mV6V2muAFb8vM7XljVajvTG5ASOog2jcWpf6VGnDq2NM?= =?us-ascii?Q?sWhx7nMsOZheJbl50hpC+QNTOjCB3q0ggI9bmEDar0i69JwlWXGVYoktYf3q?= =?us-ascii?Q?X5LtoULGiDqg/1VWAkiRNLq6nQy/pe50mBVpf1hOf1QlvPL3ML/vZSvuD3dN?= =?us-ascii?Q?/DABfmjjVSCEx74g0Q0wY98r1mHaOwwK2JpVjVpBj4TcZq8+SwIJxuXmXNMc?= =?us-ascii?Q?WyxWV+CSLTw6b98whryCaeL23QDVFfTRclh+JqyHVno0RpDA+y2cFxzGRpFh?= =?us-ascii?Q?D8SD0rjRvK96eWuUHAOEtg=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d3396511-81a8-4aa1-6298-08d9edf2c3db X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Feb 2022 06:41:57.5469 (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: AM9PR03MB6723 Subject: [FFmpeg-devel] [PATCH 15/17] avcodec/avcodec: Decrease the amount of time while holding the lock 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: Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 4df834c708..92639dda6b 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -169,8 +169,6 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code if (avctx->extradata_size < 0 || avctx->extradata_size >= FF_MAX_EXTRADATA_SIZE) return AVERROR(EINVAL); - lock_avcodec(codec); - avci = av_mallocz(sizeof(*avci)); if (!avci) { ret = AVERROR(ENOMEM); @@ -301,16 +299,17 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code av_log(avctx, AV_LOG_WARNING, "Warning: not compiled with thread support, using thread emulation\n"); if (CONFIG_FRAME_THREAD_ENCODER && av_codec_is_encoder(avctx->codec)) { - unlock_avcodec(codec); //we will instantiate a few encoders thus kick the counter to prevent false detection of a problem ret = ff_frame_thread_encoder_init(avctx); - lock_avcodec(codec); if (ret < 0) goto free_and_end; } if (HAVE_THREADS && !(avci->frame_thread_encoder && (avctx->active_thread_type&FF_THREAD_FRAME))) { + /* Frame-threaded decoders call AVCodec.init for their child contexts. */ + lock_avcodec(codec); ret = ff_thread_init(avctx); + unlock_avcodec(codec); if (ret < 0) { goto free_and_end; } @@ -321,7 +320,9 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code if (!(avctx->active_thread_type & FF_THREAD_FRAME) || avci->frame_thread_encoder) { if (avctx->codec->init) { + lock_avcodec(codec); ret = avctx->codec->init(avctx); + unlock_avcodec(codec); if (ret < 0) { avci->needs_close = avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP; goto free_and_end; @@ -369,7 +370,6 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code av_assert0(*(const AVClass **)avctx->priv_data == codec->priv_class); end: - unlock_avcodec(codec); return ret; free_and_end: -- 2.32.0 _______________________________________________ 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".