From patchwork Tue Feb 1 13:06:24 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 34000 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2c4e:0:0:0:0 with SMTP id x14csp605245iov; Tue, 1 Feb 2022 05:13:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJwBgICwk1TU6CVa8QTXqr8SpKZvALI/qpa7+LSR54RgelS5d9up2NbVMvyyJ8xw0xPLwt4n X-Received: by 2002:a05:6402:693:: with SMTP id f19mr25203138edy.1.1643721189381; Tue, 01 Feb 2022 05:13:09 -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 c20si8746864ejj.420.2022.02.01.05.13.08; Tue, 01 Feb 2022 05:13:09 -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=hHwylX4z; 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 A993968B362; Tue, 1 Feb 2022 15:07:57 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-oln040092071061.outbound.protection.outlook.com [40.92.71.61]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 92E4868B347 for ; Tue, 1 Feb 2022 15:07:55 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HMpB6nMhZ6v7YtIiQrklCcgvrWFuzhpSaHtk/+siqVtWpKMI1ToU4qQXMZrVQBDpagc51ahbZDFFYUB5tY5ZfOBPh7H6wLwdObrSNJ21vqk02E+nSigwCjt9d68cgx4xMobX4OJtlt1tCx7vL6GUGGxVRhGK3Y5WWn5nZwaCokMLRFEBaa9J4pLzAazUCaCrksoSgAcVo5451OeNT01Y7KKfl/N0ezabBkSHhFHpsEI/+KK9xGNAFhW68X9geReL1iAIk8H1spF4ki5RCh/CPhLgdb7xMzwSKJCnMjLnus3EKMvdi934YXwA2j7PT4A5cgVlyW6mh2P2QNTLK3PKyQ== 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=FV0+vJnAY2hUCE1wHdQxWvDixCHHNNSGJXHFTWdK6b8=; b=hoIThLaiCaP0nOFIbyRMeoD8SRYDwJQiNPJyeTywS9EaqJ7L/gpNl+WwBBpCghXolbDQRzpLMbF8IFiiywA1LWTKqVmqgp2S3bwviUzqt1U4nKeFYzEWV0g+mmYh4Dj7CMPIvOiPBANEL4C2A0uV1Vi1DvFCAYWAZnUeb8iQdYjAwAVEoHcj85IGRDH2mwuZGTXJTPb8nuhED9ayZCLXyCFpx3wcGyvy36cCc8h8Kc8fZVS90CWU9oYe4oAZrHOqq2MIZHEVeyeWVWj1no6AcXc3oZPGjNEK4Q4GlTgeIACDhPzquD9k/rFYZImdIEItT4/v2Vo3+T2ouUt43ev/qw== 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=FV0+vJnAY2hUCE1wHdQxWvDixCHHNNSGJXHFTWdK6b8=; b=hHwylX4z3Dj8juaGC+CNrqe3ItJtjgRYp5PRj05PWdmtsOao0lexPjGdZnOudv66uYe0whrYg8THtZH+VKRI++F9vz3pwrgfGjlDXLqW4Fje7wlzuei1St89OrvJq42j1+W0qnBHvXaA78EB2qAmqdRLlKLC39i3Ciir2cxqJA261sZ+KAVXhmCsrs08XvP/isDBIey3mVmeeoXvEojvarfST+st3wFMX6lToXxaKDp5ptn1tnvPctXOqAz9xPt4TW266UatbIYYLxetlPe0kEH52RDU4zXwbhfil9zhE5RqEkZsyd7LxTPENSblQPr6AtZosNtA5pAkaHVfh1cIgA== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM9PR03MB6948.eurprd03.prod.outlook.com (2603:10a6:20b:2d9::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.22; Tue, 1 Feb 2022 13:07:54 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::ac56:2ff4:d304:ab22]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::ac56:2ff4:d304:ab22%6]) with mapi id 15.20.4951.011; Tue, 1 Feb 2022 13:07:54 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 1 Feb 2022 14:06:24 +0100 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [9fm5+ukcaYfFHhmfay+WCXLHtSWrW+0x] X-ClientProxiedBy: AM6P195CA0092.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:86::33) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20220201130706.1420875-26-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8d8478fa-4fab-47e8-4403-08d9e583dbca X-MS-TrafficTypeDiagnostic: AM9PR03MB6948:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GzwNX+cGlSfi5oTVyt7aGkPHlvxUwbiZnpGWBxZPijQnMmNjFe95bvM7GpM5CYuLc6sdLhNFsP6cZJZeE+cXpqX7dzHI3TDEQjFCxIplxiqfTIVunktmcmjKubh1QbNt+UZeOPron2kaZk/0y/SnTLEI7ucQY8k1+gxRQ+dgtpBZMmMxS1nsknEsCPGmZwIh73hoSTsSgMEgW0ldbJRd3Lt+VjbPDZ1hAuhHRkOSNweNHvkOXwXvAdhIBsyDXBpN7RYUILGAp/MZ0VSSQgG8EGIk8hJPu7P6jC7+BdK6OYBTmsXrHfK3GKx4FX/lOp0maXu0p6iDfSGPgwpTBi9htd0WW3jIMfVEXexJMOvtNLVmxbf1quDI0ck5EWp46Y+A6xd4qjOazXp4/skN/6ll1H11Z+UJMAfBA53ONdu7vfulIGVR9OoeFengXmIOa854UwhcnPlaOhzD89mh8ZLlkzwGujvwhgQFtKVbf3eTZhQLTAg678fliEMqJFmXe6YxvUxJflBACa485RiD1SmF6UuNVjN3Jthw/gvii/W4qkCG9rzcIv7uAJCy+tcJqvyt X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: UlxlKx/IOQS/Kkc/FA1+Pp3lDY4ma/Zppwu3IMtjt64enc97m68I6pSLkgq/NHYt0+3JRpJxOHQpHQay1dzqqqzR14bFVQFFUdeZ4AFmLrjAzYMnKSACTS3VK4dcw+kUFeRYQKK4ngpY+rhKFHN5oYy/cEVGsXUHJV8yNmk/Rw7OFkdkjhJahkkv4uUfpEKqih/R6HF5QoOO4PvWUpjVKuPq1hei6rRDsomZZSEAFR+JcT67PiwiMrAU1V6Otat0JytJO9oSzYmUE+YBy/IQaBa7dfMQaE7+CmDzz7YUyqaAHOfqTHOcimhnsq+bnB8nP+EKbIcBcnAdmELfql1Lfa/XnnpdHefCbrHZZNysZD8psfe7XNb76+4Y5XMCtN5OKrsCcQNrg1L9P0g+YYyEE/oZx5/rj+Up1Ha2LwTdM71XGXFJCL7fxfAJ5McCXco/EjshUIpvMnMx004XQF/WVlDmjEda0D5hEStrcIyYA/iKYwxA5rQlisWVPWNr7PN5RzM+uzt4B0MryahTbl5SoBasgaPdtwyf6Y8TPsWsacM19VSkwNDu33if0KzlNRU7aW8rudQp8K8sETK5v/WnqkM/X1DDWuxAw51O4ozzsk5HchB83qMtIEPRLAzLpxZKX9wVbzJTA19mmDBmr/aQtm8LH2UepmFB0N8KC29sMygBTGzf9fwW/fG5xchk6rRJ/o7BTjDDL6+9INsELvCt+kTbSTWx1gKbKeaH14hm90VONGftJ6LkDmsfenIUdxKkhU1ERO5Z7tZxDGnYB/cANSQPq6jQBCWAdkxA0lfjQ0vzFi7JsnloV3SWBPkQicpyncsaIwvpjRx0DyvpCg1g6LZBGQ8bK/gO8PwKTtaw+hHBW0PjQX63ynYEe9YKbYC1ETffy/f1Q9fgetq2skqq3OkmDQHDHgbQQFlkYyvfBycc5gUw67s5FzZYsrHjU/VmsQdpCb/ux6VZpN9xjVrMkg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d8478fa-4fab-47e8-4403-08d9e583dbca X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Feb 2022 13:07:54.1671 (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: AM9PR03MB6948 Subject: [FFmpeg-devel] [PATCH v2 27/69] avcodec/mpegvideo_enc: Don't find encoder by ID 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: GegmoBBIjCnq mpegvideo-based encoders supporting bframes implement this by opening encoders of their own to test how long the chains of bframes are supposed to be. The needed AVCodec was obtained via avcodec_find_encoder(). This is complicated, as the current encoder can be directly obtained. And it also is not guaranteed that one actually gets the current encoder or not another encoder for the same codec ID (the latter does not seem to be the case now). Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_enc.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 20c61dc0a6..5bf135bccf 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -1218,7 +1218,6 @@ static int encode_frame(AVCodecContext *c, AVFrame *frame, AVPacket *pkt) static int estimate_best_b_count(MPVMainEncContext *s) { - const AVCodec *codec = avcodec_find_encoder(s->avctx->codec_id); AVPacket *pkt; const int scale = s->brd_scale; int width = s->width >> scale; @@ -1302,7 +1301,7 @@ static int estimate_best_b_count(MPVMainEncContext *s) c->time_base = s->avctx->time_base; c->max_b_frames = s->max_b_frames; - ret = avcodec_open2(c, codec, NULL); + ret = avcodec_open2(c, s->avctx->codec, NULL); if (ret < 0) goto fail;