From patchwork Fri Sep 3 23:18:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 29992 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2a4a:0:0:0:0 with SMTP id k10csp1732178iov; Fri, 3 Sep 2021 16:19:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzSaxCAH9uc0T/dS7WolT2s0e3kx+Lf9ef9m/Lb7PYx5x9y1otN1IVKVCjz0zk6xQvCyVFx X-Received: by 2002:a17:907:7704:: with SMTP id kw4mr1373686ejc.23.1630711197144; Fri, 03 Sep 2021 16:19:57 -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 qw32si706424ejc.11.2021.09.03.16.19.56; Fri, 03 Sep 2021 16:19:57 -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="Kzp/EiEX"; 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 E2E0F68A603; Sat, 4 Sep 2021 02:18:53 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-oln040092072037.outbound.protection.outlook.com [40.92.72.37]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8BF7568A588 for ; Sat, 4 Sep 2021 02:18:48 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ek/6z9yJ8JlvpWOC/xeYFHoCxFfwifJ8Hoq1/wiK31ff0X9zhKMy+Ub5IO92PLvJQJQv0AE+FkPjWWhkuGNXH1boAXenkvUeJaiz/fG+h2UHi726yEV8Lp1X6ASss6QAQb/WPGgPJnV5xpvKeax6y7gvMGdB3DJekLrNZaBQmmxE4Jcc8ALJRmj25euy1i3u1RZQCR6bq+MwB4zecPik6/WnsimwE5Dfwt+q0iSf9S3Rh873PWW1te513AkJpf7aO4SXu3brLNSPqtATNfKsROZ3pJcFSFf97LjSr6T061DNC5g7bwKomunLPfnM+2aFFAhQaCuuBdyn861t1vuTpw== 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=pNitdo+C2sStYgY66QrAJSJy5xz2safzX2elxABjIF0=; b=f5N9XbXGUkh2/L00HTliIPv8wyok5T/rlUY3PRGTu4NJ4Rl5J7uvzFRU3CQV3Vu7HXysE3KcrMGM3NcU/stkxmUwFVDsaytLCwMHV5RGX5lgeM7li+3yc1i/tGn9XHZWMgs95DlpIJbvp6eSHAyVnfmmlUOBPLYNp/BZpZPlMGTGj82/U01Pa04yCPuinI+9+Ok4rPG/pfNKzzyIaF4x1XqIMgDlh5muiosIYa3Y66R6F5iy63QrG1V35xjnEYoTfy707+6gdDDLZOiRKgzgBlkt16xh0HlC2A+6eqMZVQFqhb9NJERftkvjRCh+NsWQ9V9Czg6RHJ8BFil7I3OlXA== 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=pNitdo+C2sStYgY66QrAJSJy5xz2safzX2elxABjIF0=; b=Kzp/EiEXfdopkmzM2YvKaDl29YwnNE4658cMhUk8sgtST6T0y8+MzSyk0+4fHEUi74HqYYT+oovYi8XviRYcRD+X84kXeq2POEUeJ8FhjX045Xlw7t4KwrewjWqh9Ds9YcN6N1wmVAhx1rGOcYxdffWT3DkxMWn/hHazn7jtmgyhat9LZo4xRl9y6UENK1AA4o2+Do7tP51RrKj+ZxSm6dDfGElIyd3Wju9y50lZ9gwr6s3VZ7d1reJcrjXqGNcjeug4gy5U+rKZOySnZfOZ+ZSvsA50Ufw6kBphaT/m3+PjTJxEdPPUPoYey8Q0Me9qiE1ttiy5Ab/jWOHoH5V20A== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR03MB3768.eurprd03.prod.outlook.com (2603:10a6:209:37::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.23; Fri, 3 Sep 2021 23:18:38 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::787b:2156:ca99:fe00]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::787b:2156:ca99:fe00%3]) with mapi id 15.20.4478.022; Fri, 3 Sep 2021 23:18:38 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 4 Sep 2021 01:18:12 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [4oCOJsboPMD5ommcOfAGPLO3vC1aHdbj] X-ClientProxiedBy: AM0P190CA0016.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:190::26) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20210903231813.3346446-9-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.142.38) by AM0P190CA0016.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:190::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.19 via Frontend Transport; Fri, 3 Sep 2021 23:18:37 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 63979819-d95e-49ad-38b2-08d96f3128ff X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiTW2Vzrq2cduMqp40Qh10aEBEPd0mkBK//wL8jDEZmnnqFsEib9RTPeLevMPjahS7lqAQzN/xl43j6dQNDqU7fFsnjA3iuVr7uKPrjqCuu88COqM9t9FV+uYeRerfX32HGSP5035qDZU9Dhw2lDZxoiEN1K0dOAv+HAf3qCP9QCb740v2m7s3may8t1KJSCglRzi/PBZN79jpAiIeV4HyW82LNYVraxJjH3/f154SB+J2z5nT1/fDUWKDQHT9DeWd0mqF0dwjBLNBCS7Z2Za2eSG8hFwxB9GFG9SgSAV/IzLJmiW7L1BeXO9zntMCWc0uRKBdsWIvtDthGUyC8kEuoq8CZRWaRBJjGpFlla1x8AqhF1t9EiF6p5SkDQWIIXKYZscBNwFgk8jP5C3D3l/gqnwbJDG4N5KMriKHCbrM3vo6KXwhiiWVNm2nWHA4aVtDHuZ62v7ZidrlNbbxhODkaK67h0881Jki02N31BkwDxEadN+CX9QghKyZKti6ZM7sBGD58KD8VqZ3VD9a+K2I4WKyBiLG2y4UP8X+7vjhVL5wykV8CmvMMlfU+jRdPpk25SXHSBFwf6+JyATIfyet8gsckj4+f9uCOVH322HEdrqOi8ZtzqUv1DK+qBSRhahdklMaMyLD8kdWjc29l2R8mvz3iBdTYcxXeWfkbxT51fnjePXyaaiY9MAty7Wppk31ANZmfakZHiR5wueqDqS3fRGnaZE8cLM7WvMYCnZYEWnymqYmjTVsB7yj5nGfyUKio= X-MS-TrafficTypeDiagnostic: AM6PR03MB3768: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qxiqTWtPBw0KM0Iyigj1QkNCW/Z1u7WF+RR9iQShbum/sZlSVshKmZiz/uuREy2ellMd2Oa2XEiFhU0wI1+F+mxlJtl0aQBuYU8HgJ9BGlhPks6rcbHKrqTSdaiZ4vzd2JjX3RmA82O1L4aSf0+yltlFg/qxBicGoQ8WSC5lJ1iqIS9bHLJFA4Kp21eMU2exZdAmAPANArSGweQRr6Iawxrpp2iVUOcCBEYAgAk5X2qs+HZCjuOMOl/6sEMdbg/wCvHq5rsnzq5YBDSFMnAX0ohaf6LikyiV3eW9TQwc7/ibD5w4Vw9rc4YtP7ngisoSoQrrmguF5Kz2d/Tg7Zpy/Qrj+37SqaHKXoqV7fVANb/JP+MpSL7Q6K0VBdYnKT0pEXVlmnZVjmc1A+/JGg93BS3umwt4alQRwwHm3v6rRy/2HdpI6J7g0LZccsd5nyrc X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: u4jdx503pV+BxY4lWOJlHfPuIktXhWEGaVk2XhYMCh257ZXg2PVJ97EMQ+PBq3ZQzpB5DaBunv5xN4B2KM8BZWCYwhd4pyPJ3hXoz1TyimXaRHw/cmaAj+OnJQS76DYAb2lQRg8pUmym527CHS28jQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 63979819-d95e-49ad-38b2-08d96f3128ff X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Sep 2021 23:18:38.3592 (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: AM6PR03MB3768 Subject: [FFmpeg-devel] [PATCH 10/11] examples/hw_decode: Don't use stack packet 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: ybYRKaOltkfD Signed-off-by: Andreas Rheinhardt --- doc/examples/hw_decode.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/doc/examples/hw_decode.c b/doc/examples/hw_decode.c index 096a229c0d..0d23f451e6 100644 --- a/doc/examples/hw_decode.c +++ b/doc/examples/hw_decode.c @@ -153,7 +153,7 @@ int main(int argc, char *argv[]) AVStream *video = NULL; AVCodecContext *decoder_ctx = NULL; const AVCodec *decoder = NULL; - AVPacket packet; + AVPacket *packet = NULL; enum AVHWDeviceType type; int i; @@ -172,6 +172,12 @@ int main(int argc, char *argv[]) return -1; } + packet = av_packet_alloc(); + if (!packet) { + fprintf(stderr, "Failed to allocate AVPacket\n"); + return -1; + } + /* open the input file */ if (avformat_open_input(&input_ctx, argv[2], NULL, NULL) != 0) { fprintf(stderr, "Cannot open input file '%s'\n", argv[2]); @@ -227,23 +233,21 @@ int main(int argc, char *argv[]) /* actual decoding and dump the raw data */ while (ret >= 0) { - if ((ret = av_read_frame(input_ctx, &packet)) < 0) + if ((ret = av_read_frame(input_ctx, packet)) < 0) break; - if (video_stream == packet.stream_index) - ret = decode_write(decoder_ctx, &packet); + if (video_stream == packet->stream_index) + ret = decode_write(decoder_ctx, packet); - av_packet_unref(&packet); + av_packet_unref(packet); } /* flush the decoder */ - packet.data = NULL; - packet.size = 0; - ret = decode_write(decoder_ctx, &packet); - av_packet_unref(&packet); + ret = decode_write(decoder_ctx, NULL); if (output_file) fclose(output_file); + av_packet_free(&packet); avcodec_free_context(&decoder_ctx); avformat_close_input(&input_ctx); av_buffer_unref(&hw_device_ctx);