From patchwork Thu Apr 29 23:56:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 27512 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a11:4023:0:0:0:0 with SMTP id ky35csp2015885pxb; Thu, 29 Apr 2021 17:00:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwv9uPY1n08OpN8Pmz2uB7f2C2Ixid/7UcIuF5H2uKNnfN+DHLd6dWnrpUyjDZNWVdY9x2s X-Received: by 2002:aa7:dc10:: with SMTP id b16mr2610023edu.258.1619740810723; Thu, 29 Apr 2021 17:00:10 -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 r17si66853edw.273.2021.04.29.17.00.09; Thu, 29 Apr 2021 17:00:10 -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=CqKi1dU+; 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 99149689829; Fri, 30 Apr 2021 02:59:17 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR06-VI1-obe.outbound.protection.outlook.com (mail-vi1eur06olkn2025.outbound.protection.outlook.com [40.92.17.25]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5984068A2B0 for ; Fri, 30 Apr 2021 02:59:15 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T7srfbfmRa7u83HIQdZEg7Y4kZSI5VTMmDdqA+6fqqHaLp1puIDowULHXXPGWFBiQbwKKMvjxUyAEzbau4yfq0IvZeRQzukc59v81wO0HmlaJ4Rw1HNAZCJHxBi/p6FQNi9sGFeldOTmr8qQ1uoEj7JwQzQEruZvL1bc9lw2pOUq1o3r0F2jORryn12yLOUI4wnpikbzodVAGQ8bT8t162OTlZrO04W+QMib6SmYbsqyj1Jd8JVUWq4NKhEH5TclWZ2PdyL4CPWeumjODNXArHio8FGDFjaTTPwLo2h6Aft8vrtQKgAzfYCCGlXOEfPJyPaUaop3Z16kTWKU38UgOA== 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=d6GR+foVTXE+spwQw2QEhHkGbpEv4qtS5+dZ2y84UV0=; b=UjNOVhcN7FCJ8wNh2S59z/Nq2FrNW69de5ASg82wSaZ5Ha0qOR0jtMcxoNs8DW+HqwmjHKVVbiFE+kZbz4PGsXQVn+vYf6ZmEqbxFpXPsFwSfQD581xMCF0qFymdefa06U8sILajUzJDd253PheJTfduOxpFulHFx3Yhy0hQYVjc6olZihNUu/+u5SAB097EEvkZVDWytejLckltD2hNXXxO/dEKDvDGdB2vvtUVJknOJIEWSiMXMWAhz0KevVW0sH+jLbUMMuKU8hhZW9vDdjKY1tFjvcLXn7E9t7gjeGqkGgJ8r/R8E6CanlVFseQ3jybKEhq6bOIShMUvfauGRQ== 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=d6GR+foVTXE+spwQw2QEhHkGbpEv4qtS5+dZ2y84UV0=; b=CqKi1dU+2iGQRwEEt0uOc1BG6WU95cdvDUkj7NbgZJDtvqJccD68c50Bljj1CWeAZ0hzcVqCHb6he1Xkc0yENwBekPnz9A9Qce2uLSHiIT1x9urNt2HHYKvpMdy/TqgcgbsZKqCLb/3VMkCVAXrwpsI7MlCaFn6KImY0deh9gFPdLrLIjyDrcn+3/wTS2YEi8nhgNgPRisP17iPZdpvtLepsJLVtY60NG2eh1DpiQ/RuFL6njGLx0PTxoeVejh/2rrHGfs5JhvfyMjOzpB8ol+LxqfSO6B7wpP5J9zxKt0iYla1HsCF8vk8DBKbmdUYPXNzFUfEmVfLsHYSicAEwNQ== Received: from AM7EUR06FT005.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::4f) by AM7EUR06HT034.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc36::443) 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:14 +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:59:14 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:5FA20DFF16F9B1ED276CEB6852E3240E91706BFA7CF6E88702DF4B4D21AAE7E2; UpperCasedChecksum:3A1FA5EFC53AFC49E7EB5E69ECF8FC42C10B1719431C1A2FE951A6D6D1CB3730; SizeAsReceived:7584; 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:59:14 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 30 Apr 2021 01:56:48 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [rRvxgsVqKG9XVpelsyQr1NUa5PZv/BJz] 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-16-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:13 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 484b5a3f-d6eb-499b-4bd0-08d90b6aca6b X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU6XUx7q8EQ5McclV510mdN6KDHjc5pS3uOisJjw15TVCk3UxdRZgVA4/jS1xl/2xfs9aaM173/RTxcHhuOKiIcUuWp19vYQKFMTwojg7lsGKjo4gsrM1s6o1M2HkYIYqLRW5OafoAHJkjYcT3birLBReie0Y9A+ks4pk0huMnBwmA1bmeVAztQLwHBRq0clhtXILiEZ+PTZsGCxJdUSHaQdHsfAtRPT4j3uni8J/mUFcihSXK3kziExuup1vhMpjFUd4gzZ1rajLaBqqwDq/IpjpVOK0NaDf0IRclA9X/C/LlbQ5FPqLmH9P6k4m6d8Ov50Dvy8GzdmwaLgq6eOgBvFGkcQTvLFnimRKOmiwtAuMtyOPJtN2DQAZGTIwVr+u2Dt8yUecEYX7nYN80Kme/aiwq0hGRrXf/p++0RiQ1C7FtkR94PEV/JfSKiAxjKUGWOOKaPT+ye1GXYV1cB0EOHmEVHyJTZ1fBHslKXZVPrgA8rcLlhMymZYmEIudbK9qVDL9s+N6Odko3/N+alqQn4z6N6tffSDUi/3Ln25i6hmcPabwzvSj7NF3pg7+PHA1YJnkdYppYyTfGEfUiS5MLBw4J0ZdGsx26gQcxc/MHX0j2h2Yr9ht/pFA/71ALhU5oQ3HjuYxw2tEhhO3vDl9ZWOFnBsaznuFCdWiqR3X23EwYtnommsHTJRJ2FnV27bfMbv8SiTp02jJX4bZkt7zsSuv8YwQcNWDw= X-MS-TrafficTypeDiagnostic: AM7EUR06HT034: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 53anUQEpEsAlMPWADE7X+pkHre65gMGV0KY7nABOEJLHjtvv8+TBQvyECOgtj7MoJvITNetxWCdJvjOHm8CNfl4fjtKDWLGQqsIeWg0k1BDvD+Gn2ZBLs/I9cJ5L5J+oObUKdo+cQfCDTnRxk4go15Fjt1IU2jeKOyjCEoZm71y10sxLAhK8uBTKJNs10X+gDBjy/h97KnR0Px1qKBetJuIZAHptq1Fh1XgR495PxPkgHr90nweVNRApfvss2TOrIsTJUD2r+wgNn8pcnlkToULVY52wg/WLRr4t601VPKTB8qYZX0EcdebfM4yzAsygRWAjaC3bqZeEDX5wGwOiF2LBZIDohKAtSUTyVFdkKH2qUucILv8OpSss1nf68fJEnYxIiUvWTZQ9aHR7qwyohg== X-MS-Exchange-AntiSpam-MessageData: CtISz2VzLwB/4k0+I3Ltq6CwcRCoUKEwGdwHQPesPElA9jSdKm0WVg7eZcC+GzicQwrAjKZZ0hC7RLy49s//LJZNyKB92wvWEJoYNo97mb/ejuQ4xyfZ4EDLRHcRCn7JV1UJgTMRtYJsKO14sXRrYQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 484b5a3f-d6eb-499b-4bd0-08d90b6aca6b X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2021 23:59:14.2153 (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: AM7EUR06HT034 Subject: [FFmpeg-devel] [PATCH 17/46] avcodec/exrenc: 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: hgL7NPGAXYLs Trivial for an encoder that knows the size of the output packet in advance. Signed-off-by: Andreas Rheinhardt --- libavcodec/exrenc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavcodec/exrenc.c b/libavcodec/exrenc.c index b2cb9c4205..60a9948b79 100644 --- a/libavcodec/exrenc.c +++ b/libavcodec/exrenc.c @@ -33,6 +33,7 @@ #include "libavutil/pixdesc.h" #include "avcodec.h" #include "bytestream.h" +#include "encode.h" #include "internal.h" #include "float2half.h" @@ -352,7 +353,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, avctx->width, avctx->height, 64) * 3LL / 2; - if ((ret = ff_alloc_packet2(avctx, pkt, out_size, out_size)) < 0) + if ((ret = ff_get_encode_buffer(avctx, pkt, out_size, 0)) < 0) return ret; bytestream2_init_writer(pb, pkt->data, pkt->size); @@ -541,10 +542,10 @@ const AVCodec ff_exr_encoder = { .priv_class = &exr_class, .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_EXR, + .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS, .init = encode_init, .encode2 = encode_frame, .close = encode_close, - .capabilities = AV_CODEC_CAP_FRAME_THREADS, .pix_fmts = (const enum AVPixelFormat[]) { AV_PIX_FMT_GBRPF32, AV_PIX_FMT_GBRAPF32,