From patchwork Fri May 21 09:17:08 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 27855 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:b214:0:0:0:0:0 with SMTP id b20csp340053iof; Fri, 21 May 2021 02:18:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx1O/sfaRMZIDTYmaBJPqffzTcc1/JnxfciYdX+GfbKxlFO7uQ3ds91Td6lm1ADN+fhkoVt X-Received: by 2002:a17:906:a88c:: with SMTP id ha12mr9352817ejb.129.1621588728762; Fri, 21 May 2021 02:18:48 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o15si4612743edc.604.2021.05.21.02.18.48; Fri, 21 May 2021 02:18:48 -0700 (PDT) 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=rxoUPI0f; 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 DA49A689A1C; Fri, 21 May 2021 12:18:13 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-oln040092064012.outbound.protection.outlook.com [40.92.64.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 076FD6899A2 for ; Fri, 21 May 2021 12:18:07 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VMt0PIdVEQYeFCDGDx4I0nrlb/swAtFTa8EV9j6+8TfCeAll6cMFKXjlGWcV2SKPucv7MZH0PCPKwT3GbKuwnaQ4adNv7N0Vz9lMIm8Dd6Yj5ye3YP3aKIqtd/OD5j+SQN3Vrl6/+zOlqw2x41+UJhCFnEV+XDwwjoNR07i7Mj+PDWdhVAdOPqtbjQ05Ltf2yEhVIku798/xpgLh4A0OUnaHxuAwSQC6p82XIbv2ffqEPFz2lTuOn9aGWxevM1phjjtUnpXOQQXDtWIkxpdLDK8Hg4e65KBOJJSFV45fDrN6/HeamkjHCHFf9SewnI9vnPW7SUNnVTBM7GAmIJr8gw== 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-SenderADCheck; bh=KLOtDW4/xx1dA4kTCpNFwEmInDEGl6xaXZQlpNYvhmI=; b=EZXvLDlIfeYFnnwW7wogxnPjAlvDbsfGFjXvaepS0Ms+ePg2yTDfVNJ+eidvGHyp6AFJkkEkhMGKDmLYEZIglCBW9vOkzXcDZTAumIw4xiekseAuImpmj9gkZRjND/GZquV8iUAUZaEw8Ffu9Cz6AoGpM9y47x2Agbpe7YG5MOOdgWrBTjCWohUoAHhuIzjkk3psyrgHScGL2AajKPSOl99VfkBd9Z0RbzmjxwIhi41amSf+r4RUco82feyXLYTSAEhDJWQbsWrvQWZtv8fggH00DmtqsNgVenQ+p/AAgGxCsXIoGFyRA4xKcU403vfPbht4Y+2Ag68nlfm08E8MXg== 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=KLOtDW4/xx1dA4kTCpNFwEmInDEGl6xaXZQlpNYvhmI=; b=rxoUPI0fqj6UfeJSX/2kq4C2+JkfWs0DRe3LxQjrQlLW5PpzXlVPBfF5vtHFPrTDYZ/BDO2soTeGTWL42b3YGW5Q84w0wFe6zpJLUAQP89UdKEMZsmFXAFL6o77v0E/nNBK+9QFGE1sjSh0iD/w9wOIjqmAYXzZaZIGKVV21ut1kUiMyduhaNApYUeeFJMaMsjKyEWzhMYbyrwn6799YKqpk8lrrsTr3b1BIfDOsy9kTZmti+Y9fHmj55LaqPTeukmc1mdsU50pYZXwlX0bNHSt3IXfxyYHcKKm/fPhY1riqs6aJpaGqBx+AhOTOQ6fR2rUNeyNL46ym5d7vQTdkQA== Received: from VE1EUR01FT010.eop-EUR01.prod.protection.outlook.com (2a01:111:e400:7e19::47) by VE1EUR01HT112.eop-EUR01.prod.protection.outlook.com (2a01:111:e400:7e19::307) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4129.25; Fri, 21 May 2021 09:18:05 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e19::41) by VE1EUR01FT010.mail.protection.outlook.com (2a01:111:e400:7e19::83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4129.25 via Frontend Transport; Fri, 21 May 2021 09:18:05 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:1C70F7026F4AEEB7F0A6D4CEAFA58911CF7D89257D1FCACC25AB6495C661A583; UpperCasedChecksum:5251F73D6D4605B6121B2368D6FA210F8F3346C3E022464ECC0A195EE62A608C; SizeAsReceived:7583; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::f4cc:63fc:9cef:37fb]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::f4cc:63fc:9cef:37fb%6]) with mapi id 15.20.4150.025; Fri, 21 May 2021 09:18:05 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 21 May 2021 11:17:08 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [x+ml4u+w3HKZMI/9FgZdGVCgL+yH8EgK] X-ClientProxiedBy: PR0P264CA0070.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1d::34) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210521091742.184902-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.95.27) by PR0P264CA0070.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1d::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.23 via Frontend Transport; Fri, 21 May 2021 09:18:04 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 6712ec70-6d7a-43b3-0cfb-08d91c395710 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/M7M4vrgvBd+IenKLBfauGgBLX+CNMivSbtevQNSoL56FUcSQK//EMw7ildqXFmjXnkT//IaJLya35HdGVznHhVZpDv0DomeFUOMJ9pwKhDX6yAdHYXF+P6hMhD5mPNrmdC0g9cl808MiPF7tjluku/WMjQDS22HFQ4mz+Xu+f4GlumkCcbmDWP8fbbPA6yt1/tvHbObGrtcStf3LZjLPaYGZyQNH11bdIZrktGrmH77AhtN4tOWoaX9HLm72mYBmZ7Cr5J+1iw7RXrTJ9OkADY64KxpQCUeJ0+L5f4x9bAXjgM6O1wpBTML23SGkzu04eYo41ZACO0mpfyZAkTNs8otbFBlydQt3dhixeKeQNBOhn3Uf3GFeldXIP443T8h9Cx3YF5wEt1fEOwipY1nUJoek4sNDadlcS7+6GBQjVu7lwgg8iwITtCCaichD2lAwCaYxm0/2I184UttvKpT8Ro3zxHzMCwHrmLc72FSuwt68E5H3vKy0QviDVHuHJ2olwHvMjnua3KDtKrgsAOPhKBvtcav5RfmOt9KI5l3/XrxMKbsbwMUqyusOC7GSHax/Kh0PKlRJUQxv6M0vmz3fNPYkgTcjKnc6/R8vwRNL2cjvQCvBG0FrXiFT5KIoBOgYSleWMQ81XSHkGVpiM8NEbu528QU1kIe+1ht3gJvV9++IwREiSSQssAlOUaU/0htW7PQ09S8+WKWWv+vrYGHqZNxMExjz6Hc= X-MS-TrafficTypeDiagnostic: VE1EUR01HT112: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QiTjVNmm7dya0PzCgd9B3hUeQA/a8UMriZboaWJBnuzKDEUBX7L3ZYy5QPTP8+gOCAuv6MQpe8CL80S9KJ0CVHd6lLDcGAkqk9bVM6+EzBkfLMicS8p5bMEZfmKV4Tt4DxneP/Xv7eKpwgBdpzteG9qO6/qFGfz4dQJdvSHB2+5Psd2oqnZ1fJvMca2DsHLH/z6TegqqyCw8A/8X9d5h0WXoXcHXCwVH7SZg1QsD0TbcNX6OBjXE+Sauc2o+VnFqB1+sHz3f+H2lIXICX6EAU2UewP6mVA2sHWG0ulGGES7QHDs2hFqNTulCcc/z8AgTCdneAnIwohNGjezu6okWvGnUtB4VaiZgecSZWest5X9v6BRe/kUvOK/f/D+4pLdCj46P43d5Cf1yAxdt+j43nw== X-MS-Exchange-AntiSpam-MessageData: bMf0868xWtgbW4GuoIA7Lpygyk6ZRKKvmqC8bgXueT45UUtWpuC98OagM3ARGqhwdORv4x7Gxh/IQ/cRMDEI6nx9Xwx0/tWBKl97VvogMee7DSymdRe8dX0saZLovh6HUXmm5twFu4hHtL9NhNlMvA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6712ec70-6d7a-43b3-0cfb-08d91c395710 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 May 2021 09:18:05.2227 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: VE1EUR01FT010.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1EUR01HT112 Subject: [FFmpeg-devel] [PATCH 05/39] avcodec/libkvazaar: Allow user-supplied buffers 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: O0D/yVPQk0BT Here the packet size is known before allocating the packet, so that supporting user-supplied buffers is trivial. Signed-off-by: Andreas Rheinhardt --- libavcodec/libkvazaar.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libavcodec/libkvazaar.c b/libavcodec/libkvazaar.c index 14eabe4e05..aabe446a28 100644 --- a/libavcodec/libkvazaar.c +++ b/libavcodec/libkvazaar.c @@ -36,6 +36,7 @@ #include "libavutil/opt.h" #include "avcodec.h" +#include "encode.h" #include "internal.h" #include "packet_internal.h" @@ -237,7 +238,7 @@ static int libkvazaar_encode(AVCodecContext *avctx, kvz_data_chunk *chunk = NULL; uint64_t written = 0; - retval = ff_alloc_packet2(avctx, avpkt, len_out, len_out); + retval = ff_get_encode_buffer(avctx, avpkt, len_out, 0); if (retval < 0) { av_log(avctx, AV_LOG_ERROR, "Failed to allocate output packet.\n"); goto done; @@ -316,7 +317,8 @@ const AVCodec ff_libkvazaar_encoder = { .long_name = NULL_IF_CONFIG_SMALL("libkvazaar H.265 / HEVC"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_HEVC, - .capabilities = AV_CODEC_CAP_DELAY | AV_CODEC_CAP_OTHER_THREADS, + .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY | + AV_CODEC_CAP_OTHER_THREADS, .pix_fmts = pix_fmts, .priv_class = &class,