From patchwork Thu Apr 29 23:56:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 27488 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a11:4023:0:0:0:0 with SMTP id ky35csp2014890pxb; Thu, 29 Apr 2021 16:58:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx+LL/wUB8ALn6IeTyxIf6AfKFgLbsrD7cS6GEJQAEbwQUbaqH1OO2j9BRIYajANtF7rpxG X-Received: by 2002:a05:6402:694:: with SMTP id f20mr2537284edy.93.1619740720372; Thu, 29 Apr 2021 16:58:40 -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 l7si1785798ejk.583.2021.04.29.16.58.40; Thu, 29 Apr 2021 16:58:40 -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="haUYsG/R"; 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 7135B68A126; Fri, 30 Apr 2021 02:58:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR06-AM7-obe.outbound.protection.outlook.com (mail-am7eur06olkn2016.outbound.protection.outlook.com [40.92.16.16]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 987FF689D84 for ; Fri, 30 Apr 2021 02:58:04 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ls8QCR/rxfEkeYQJTuutdyktnQdv2hVrdkD58RmuZZI3VXrnvZ491L6iFsrA9P5C4xu7t1SC2drkrBZTl9osKbWF8xpISlr9LRMrPODcn87Ga0oRbgJxKt0nJ9MDJRMjwpjV0baGfOVLgDGbCzt/oB+B//k9hQ8J9D20QeFC5oYEjprVYgSknNrPwK9jZkFK4zOiB2CzbrIvKQ1q2bx+E6HT5fPbCCAh7EjzWf9DYLhy99CKzspML4DKBB1yXdt8HmsYaoeiieGIiYiqj3NngCG7pIBJhLz5UBd+MpxEuz7ZoZ6o1btPMhnOoXJ+KPsqwGrL1hro22kfRB7vieNepA== 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=BPEcBLqbeVey9eYMciaUl+6NFe0EzY04PLA4g35ddeo=; b=IzdeuREA/DNwK3X85xbHe0C2OVPWVh+5JXHL+yjb6U9LLVrbK/rKbT9y7ogt/Lb515DJl+N4zqOsYGeoJSWAKWMmYwMJBak/aPlr4VSFDugoEcuyIzXvEkIj8ZEmfEB44U0zG55PMfFYv1x4x2zxharRZbTaaMCFfKteQ66sJ2PCKUmQesXIU2vHC4kFQ2RWtXXfCA10aEDLOFNCsahSAFC4hYZ7yIEqdYlf8Lki+bneppcb5d1pj8O2co30eAMjC0w6IoJ+WzjImmjjaHTiXXwJ+h1ubSaGxSNSVYCieni8LCBJ/6a+EjudAH5mpJW40uSASaNkM49USBBV++V1cA== 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=BPEcBLqbeVey9eYMciaUl+6NFe0EzY04PLA4g35ddeo=; b=haUYsG/RIASbFGXDSJuXpYv0Q0dOtOxIywoDyimcNw62EqnR7lD5d7dP653dNx1yjxhVyD5eaBPCuXGAP8br1vkmWjQ6te3M1TEvTj6xdU7VIy1EVNto6tncsxUjA0N3gOmzZJNlaS5hO/T5+e6DHjsCZxs+HYmkshou3o5H0lKKOYOpU7y7Lt8a+o2HtkvMjDihINfgQoBNSiszha0XPCUStFb57lzFyqXG0HtrNUSv2MwZTNk2ej4GZcBjHhXObZeFAxnVr/Lt8xnLihNy8REU+DU+JiJT3EO5rha3Ke5+KdSsta4Jp7Z+kktjmxN7YTR3/sBgBA7HKPBwG5gFBQ== Received: from AM7EUR06FT005.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::41) by AM7EUR06HT255.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::117) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27; Thu, 29 Apr 2021 23:58:03 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:fc36::4c) by AM7EUR06FT005.mail.protection.outlook.com (2a01:111:e400:fc36::397) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 23:58:03 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:23FE276742F658A69ACDD470D866F51CD71D6768DF42B79B790704B51C8FC18F; UpperCasedChecksum:4501AF5BF733F7C2B3F006B76A10809CC19A4FBD5532300D56ADB99F05AD9398; SizeAsReceived:7575; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::45bb:c44f:2b75:23b7%5]) with mapi id 15.20.4065.027; Thu, 29 Apr 2021 23:58:03 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 30 Apr 2021 01:56:39 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [i+0UkB+NBjmsD1hJHEUM73aOBCvATy0e] X-ClientProxiedBy: ZR0P278CA0088.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:22::21) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210429235717.2067041-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.193.248.86) by ZR0P278CA0088.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:22::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend Transport; Thu, 29 Apr 2021 23:58:02 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 884a717e-ed91-496d-595d-08d90b6aa01e X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU6XUx7q8EQ5McclV510mdN6KDHjc5pS3u7ostM0t1Y38ASN/v5+OZBV+8isIJWrKVT+8AyMNKiG+DpraovghQAqwMwJ0a3mzZQXk/FG7ucP6WLlM80/gBfjJGWCEPqK4k0l2Fs27Svuep98rMnLmTz9WgwUn+FYhjeZ4ekfq64J0kz8k9cUoBlK9v0VAOzNLILMK37R5C5eBLH2TgfvxXPZsEghxCpmtPOTQ0v555clP9LQiq8NmDg97m0pyUNf8ITa6QdejmA6mACH0hFLB2HVPTvQ2O23wtacig9lEoiN29CGdFVgQYIB3Ww5yCQGwTcU6PkKZqjmw2hvNwH7D2VAxMtJ/zI/mFDtmuhUd3rjpWBYt5t16hjYwzzbmULpa2nnSTePCa1zy2IN2SCURQmPiU5i72hone5TLz90Dex8AeRa6JOKz2lCOlwRMIF9Y42+Vi8W70uvIpIJAjKxsRP4KamMw+38psvZdMs84/O8/8Ri68f9YipczOwba6xNI6u/d5cs0hZ8nVDFaXI/GfpZuncRBekWJ/1XqsPbiqou9uGREB8VqBKgQGOKrBvVrlCGwj5KUahAULf3zIaXm+BuoRBjEfSSeXs6oYz6wOitA+jgNJEh3hXv3L3HADgmmyyizY/Dzr7XB1ZcJI5nrEZ4HjPaz9B6rKM1lAEXkM7diznkV7JUiQ+yrqm0Zi4QIXrF50Qj6oSHv38nmNUfIHCfpp0QDFtIjI= X-MS-TrafficTypeDiagnostic: AM7EUR06HT255: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8X7le2vtCUpIsG9E8XXitUSP7CgJcZ4KW9kq/nZCeLlzF46VxnxIrDD5rWUCfYK+YH7cosky8K02aiSzcS4KZVMgPlQ1TBIRZbs3qKVAP/cmTYD78DrJ0scLd8PlHG51FNrfJhss425OcjpAUPWdGRH8ubfdOCMvhJb2xDsQBMZ6VYTgJGWV+pMXPdeR7ac2uXUxbfTLT5jhQeK3whp8BsYMB0RKrlaIfOHCdExZY+lc6jVycKODc/FbuRtE/gdK/ZqVM47m0bjW65OBc7fjvrPCab/fRGlhx+D9OP+riIbYc+jY1znoexm23Yg1qX/rqn31nM+Un1MLBnfxKwHQosaW/zyqO+pbyCspv/LOQsuUm1HZoNwKQUhjWXhwyv+iwV29r8+Wkg1Ny+BekMPBQQ== X-MS-Exchange-AntiSpam-MessageData: qU9f8Wuz4Bi9mhe6K+2ojQrzZGZltNQHwvw3GRtOLU7ysz8GUPB+cUsMbK6TWcFS89v08wtt3w7x6vAGa0SAldanHbKb9c2gTjQgk7DzZEajmNyOr5t7M3uwDmcMJBuPZ+xMGS97XvfNieclLTJ8DQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 884a717e-ed91-496d-595d-08d90b6aa01e X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 23:58:03.2537 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM7EUR06FT005.eop-eur06.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: AM7EUR06HT255 Subject: [FFmpeg-devel] [PATCH 08/46] avcodec/avuienc: 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: DNfPlZ4Pv3iZ Trivial given that this encoder knows the size of the output buffer in advance. Signed-off-by: Andreas Rheinhardt --- libavcodec/avuienc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavcodec/avuienc.c b/libavcodec/avuienc.c index e9e30fe7f4..1c67af3fb5 100644 --- a/libavcodec/avuienc.c +++ b/libavcodec/avuienc.c @@ -21,6 +21,7 @@ */ #include "avcodec.h" +#include "encode.h" #include "internal.h" #include "libavutil/intreadwrite.h" @@ -62,7 +63,7 @@ static int avui_encode_frame(AVCodecContext *avctx, AVPacket *pkt, skip = 16; } size = 2 * avctx->width * (avctx->height + skip) + 8 * interlaced; - if ((ret = ff_alloc_packet2(avctx, pkt, size, size)) < 0) + if ((ret = ff_get_encode_buffer(avctx, pkt, size, 0)) < 0) return ret; dst = pkt->data; if (!interlaced) { @@ -98,6 +99,6 @@ const AVCodec ff_avui_encoder = { .id = AV_CODEC_ID_AVUI, .init = avui_encode_init, .encode2 = avui_encode_frame, - .capabilities = AV_CODEC_CAP_EXPERIMENTAL, + .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_EXPERIMENTAL, .pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_UYVY422, AV_PIX_FMT_NONE }, };