From patchwork Thu Apr 29 23:57:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 27525 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a11:4023:0:0:0:0 with SMTP id ky35csp2018639pxb; Thu, 29 Apr 2021 17:03:18 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzri/6ca9IxyviHyNbdzhFK593PtkRR8OVP6jeAAb8a+Snqxg3r1zRbWZU+dSzIizgpRD6b X-Received: by 2002:a17:906:a155:: with SMTP id bu21mr1142557ejb.400.1619740998689; Thu, 29 Apr 2021 17:03:18 -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 f27si1829944ejf.327.2021.04.29.17.03.18; Thu, 29 Apr 2021 17:03:18 -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=DmUHr4c8; 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 E3E3868A487; Fri, 30 Apr 2021 03:00:00 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR06-DB8-obe.outbound.protection.outlook.com (mail-db8eur06olkn2077.outbound.protection.outlook.com [40.92.51.77]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6B08368A467 for ; Fri, 30 Apr 2021 02:59:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YfddJuOTXzKjh4QhOBsQ1NOVmu5wVkzWbyFMq/yWdZ4S0bwpsppHL/ykfoC8eqDTaN6nycyK5tu3bz76RBgnO1HXxSaabb+KQQfx3SDFwVArf8SOJQF6Mb1SE4W7BY0Friv25DXTXYMKZWDkOciuuMH+uMJG8gx1l7y4RuVCrGl1bk4cHh42gZ2HAO2MuIYpj/Gmv/s8mZN6prNBt3YbOl26ujg3Ly9qbtF4QbT+1BV4fZEJw/32kiRLl+aKgUNAnKVV+QZgFzwAawS1hGc24WJZ3oHfuEAsJ3ZWh5uUHrKkAxdzq+C/SzXFFHKGO2P3foAgpoDd/mdIFAYOwoEOjg== 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=d+EwNRhqzTHHOcihuC7gWLqgoO0E1gushwZoytxZM4g=; b=Eq5zVHVBWgzHxsCrOLDQHb5XDISlozsCXZdsqrbXgc2QxIJ+czbpNl1VUVULxXGKTEC6BTEWR2qrInGHef6S9hLKZUbRwr3dclG7PDGqaM2MK3oPuRub01H1qUoFQGinzSZHaeB/2fRVRxRF89FZIWs3eaCbnXEHz90go/LZQNWFCGIA0JzBoNR0u6qjl9ulDrceKbjiJy89lhduCLwG04iZEwdX53LpAPSVXO/NnvrP2Z1NN4XOC8Csny/VN0EPwEeed9i9Fe2F01UNcYMOmKt6yxeF09ZB1IKiPPv8Fa7qzuI7zq+bC+muH8JzAMKPubvfklP9R5WBFjuLU6uvcg== 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=d+EwNRhqzTHHOcihuC7gWLqgoO0E1gushwZoytxZM4g=; b=DmUHr4c8evJMXo6XPo0k2Lj37A4YzSvH9Wm1DfhzvvgJkP7uWblTkSGatCXuaKLxDLvPmJ3oj3JhKf7gP6eFVapbqD4U7Wpqgkca6rtpBW5mUa+F1AHl1bw+PhqEm0vmTjCZwQxaeVDG/IVBcuAegNW0RGaybKsI9l/TLlBAcAAcaD4DyJU5uDwGXpvMrcH2vqySHW1xxA+Ew279pfcbMgkNo4nhoL9ViQT4T2OuzEAmlkui4spFyAVMM6CbM3U6wxMxZF5svM9MSvDRNcZiwolzbfJHHmoFQRtFPV1bzj5y/HMCg/boV/V6XrTONVzlKEWJ+qBvbQqPIIkuI3rSpQ== Received: from AM7EUR06FT055.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::4a) by AM7EUR06HT040.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::94) 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:59:58 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:fc36::49) by AM7EUR06FT055.mail.protection.outlook.com (2a01:111:e400:fc36::61) 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:59:58 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:3CF1BD9B5F9B2D06380F667074AE6BE00D582805896EC55D7AD21F48655D22F4; UpperCasedChecksum:8B9A8F33CC622BCEAF89B2D62903678B68E21E3BD217592033A84C742663B424; SizeAsReceived:7750; Count:50 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:59:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 30 Apr 2021 01:57:07 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [HBJGN6cIfeiWdv6qpghjaUhrnqt51t3O] 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-35-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:59:57 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: c8edb1d2-4ebe-45b1-24b3-08d90b6ae496 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/UIO6YRda03MtHguxZve2k0Pehq22FssKt6blf4rKSZa7zGk8wCyzcxX6oQftRJpFl24JuFQh0wEdWRwajLlpC3uavL+1Xbcs/s6Thjjcfcq0OQIspTkVrl7DpGh0HgQ/mPPF8SLkTe3bH+rjthI0Pjq/yHVUgjoJHsq8Av2ErDm/k1PEpAJ/kU0qYEb4NtexPD5Qjqw+/v+YiM34Fp9OiSB9ySceytftSilU+NjGPBrDkaYdPWcDGDO8wgGHFH7Oe5DJa/d9Ynra2LlfGOx4sx9K7wuzhiSCgzazm1U4BAOQCYtgdED3dip9E2rUOMWKOBBdOtVo4GKOl66mjT0wsSp7JagQhJ2zMpCrU3guzhxLJPtKpqkN1izklnedCxAoUTnsIH5nINWROHQqs6Q02zz7osyTpa3Ksf2ADHcXUhTXsBjsg2yTgcWb/I1KMe7t6uP4LvdOY5g/X2wVhVROAIfbVuV0PAEBfML/bAuTih87S7H9ggvgq9Ab38zVP9guIoJcOLsTTU2sy/9x7zqQDdR2xwBC4FHpA7qfm83L0rxrBPAhMUIc13CGt1McrKrB8OVyHaVhOAmo/+nTtb3lJcmniDTxX6iy3dXLxOY8eejdPfcbNg9s7IJL28gQ1L3xYXo0riKA25Fi+M3mQee7JzBi2Hb84H4JlYrxDgtC4RBVTop08QwEqPvBHFYywX5e5u5n1buXoi67w== X-MS-TrafficTypeDiagnostic: AM7EUR06HT040: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aTert0vLcdC+XptzO6j3Sq6ZwQ3Et0BDYa+vCcOl1AOCR/GvO/PQ58TBrx7pnOXdhKabjb45KRx9cAFmDfOGhx4gO97XbNGbkT9oeAZncJTqkaPVy4AJVGXKqa+oawDPmu4a1hCXgkQajyAFJ25xBJEDiZN/ZEkVeNXlKtwhQtYXbstk9SMq0Zz+N7onA3JqeGSs8SxlOPM7PcjOcm6ciJFRV0HebQzN98a1yu43vLkNy4+WtWoq87w/9kiS1BSP4MqGmP194VD0IbPKCAHrdNF9r+x/7RfomMKLTi/xZEiiMniZRMt+Vj79RByvCMhIPKAmAWYYn3gQgRdpwqjTDUBFM2eGBzHlM0aciWEdquxbdRmPHS9uGRed1JROu+CLYbR6FaqBuPsQCTQMWrgzRw== X-MS-Exchange-AntiSpam-MessageData: SCdZEg+aNX71vaQZz1mCrLsuMLqRD8I5ajaeaOlKmin46STha8SEaFnSZOK0l5GC5j9ctUW+0RkXWHY6agSyWRZNXFsWfIlkvOCbUtwv4z+V5B/5lgrq2+I+jXftTVVIecvj6CRhYzlVKofoJUFZrw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c8edb1d2-4ebe-45b1-24b3-08d90b6ae496 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 23:59:58.1278 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM7EUR06FT055.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: AM7EUR06HT040 Subject: [FFmpeg-devel] [PATCH 36/46] avcodec/v210enc: 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: ItG9xmDaGit2 Trivial for an encoder that knows the size of the output packet in advance. Signed-off-by: Andreas Rheinhardt --- libavcodec/v210enc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/v210enc.c b/libavcodec/v210enc.c index 020f0fffe5..ffa1cb6f4b 100644 --- a/libavcodec/v210enc.c +++ b/libavcodec/v210enc.c @@ -23,6 +23,7 @@ #include "avcodec.h" #include "bytestream.h" +#include "encode.h" #include "internal.h" #include "v210enc.h" @@ -118,7 +119,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, int ret; uint8_t *dst; - ret = ff_alloc_packet2(avctx, pkt, avctx->height * stride, avctx->height * stride); + ret = ff_get_encode_buffer(avctx, pkt, avctx->height * stride, 0); if (ret < 0) { av_log(avctx, AV_LOG_ERROR, "Error getting output packet.\n"); return ret; @@ -156,6 +157,7 @@ const AVCodec ff_v210_encoder = { .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_V210, + .capabilities = AV_CODEC_CAP_DR1, .priv_data_size = sizeof(V210EncContext), .init = encode_init, .encode2 = encode_frame,