From patchwork Sun Jul 9 23:36:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 42569 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:6da1:b0:131:a7d0:bc6d with SMTP id gl33csp352661pzb; Sun, 9 Jul 2023 16:35:52 -0700 (PDT) X-Google-Smtp-Source: APBJJlEd77AO2mIDxzvohMzZtjBOsYjMRQrWqT25pas1AleGrytenezh9KtQev3s3eu+J7SVrAIR X-Received: by 2002:a2e:7d0d:0:b0:2b6:ea3b:f082 with SMTP id y13-20020a2e7d0d000000b002b6ea3bf082mr8197626ljc.38.1688945752637; Sun, 09 Jul 2023 16:35:52 -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 g20-20020a1709067c5400b00992dc9d3b33si7906212ejp.863.2023.07.09.16.35.51; Sun, 09 Jul 2023 16:35:52 -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=J6oaqE6w; 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 06B5168C632; Mon, 10 Jul 2023 02:35:48 +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-db5eur01olkn2069.outbound.protection.outlook.com [40.92.64.69]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B6D1D68C551 for ; Mon, 10 Jul 2023 02:35:41 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GeuSfs4PY6dtuoa/pdeU67ML/ahlTMPHyDYj4ZXm+Z/jem+GkYYWdim1of2hH9AZXyaYG/qBU5HlqydFJpj/TuaMRzMBduyhIUL9nR7RlRXQVV7BvUULR3iK9zKPQGP6sDMX2wXhP1eUbKedivtPm02xZij6rszIT6vki0evr6Z2LQvYf3qp5r0zTkoFdD1MOM0oSb9OM9hLQiE0EU23cQUiS6yvCEHip0mnykK56yZR9/VRd1xs3xBO7KctSSJs+Wxw6I9kw5a5tnYXRq5G1MwC8TwI4kuDN2yHsNhZ7eYoQxk/7/884+VVYR33SC0OUF2p10jhTzps97PG2a8Usw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=doOp5mWHG/dIfzYnZx/ZJLI1+ptr0O3OYaq26Z1V+bw=; b=kOEdrMxUfknVD1VeQZ5bRd9GRaSqWXwLKkVJ/2eWHfQGW9C1Z/78OwpV6GgGxHWfQNGk4IZOAxt37/AMZEaOMfG/o2vyusTWHie5+zfGJl/TWrIPoeyMl9byoGnsdFVdiMumPl6aOdZibLYNtp/AlMVXR6LRvBQ1eWBt3Xphgug4M1k/m/sgqJ7XVHQDrX+NUDtbmDpxNg2VBHbU3n7ljM+98PcY2dIWNt4mYABwVuVl4PdRW5OAShnI0CNPfWH3PlUg/nlHjfXISB9akQY1RqlqayQJBqlhhzQvZrkyR6leh9Lr6DfG2iudZnGd814wt9lHlWWt91F73kh6hnQyWg== 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=doOp5mWHG/dIfzYnZx/ZJLI1+ptr0O3OYaq26Z1V+bw=; b=J6oaqE6wIdJfJdJya1pB3FHC5SDNkktT0ukd3HZF3da7BV63oGEGQUBThYrxWpD5bQ7WChbq542xTEOFj4vf+1ft298LULnAH5LjZq7KIoY2kegCOKsBtB6Fjlj2LF0jPy+DbH3ONxAd9XY+mmRnEsVoSF3U1ih9ctnReP85v26S2yNw/CEbq2fCg3LzUgcsRfmlxkgodnUHKwAPTWEDkdDxayhQ7h9aHIx0+cZBZ07W70fy4w9OK/b5N7JFB7Axp7ue5kL24uxt7UtyY7oXbrSDSBA5yVuOAJ/BkJpFSIkMD6rlrDuaD4KoNGLAZOMxpRNQE3o52v5OT0O/6VgVEA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by DB9P250MB0401.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:331::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.30; Sun, 9 Jul 2023 23:35:38 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::8f13:2ef8:4559:907]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::8f13:2ef8:4559:907%6]) with mapi id 15.20.6565.026; Sun, 9 Jul 2023 23:35:38 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 10 Jul 2023 01:36:41 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 X-TMN: [6PWqCBXekqwM0/TxaZ88VOsCELsNn8sS] X-ClientProxiedBy: FR3P281CA0201.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::13) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20230709233641.2937465-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|DB9P250MB0401:EE_ X-MS-Office365-Filtering-Correlation-Id: c4b3bbb0-0bad-40ac-73eb-08db80d53351 X-MS-Exchange-SLBlob-MailProps: znQPCv1HvwVFQjMFFRw11W5lMrylAnOaO7BI/loq7Myep1lHP+dhAEGzqvAgBQtzmYmcLa5QAl/K/t5RQizutqBlSJTFfdZoL7d0VjMFlVZGRTYiXxBaxYJYCf4NgP5N/Tpb6To1eUiUpgNIToraiYMoH+JqG2uADEs7bLDOx/Ra2AZrq4HUmv0Xp/4FTHqDs0TtFkmWSs/e5ZCigtJqINxYHghWFrUKEgBA2AvsGgD0euH5KGNXrRIGQXXS2ui0VsdJF/bLKi7EfPvIZ5hBSLfE+TyvZuHnUSytEfJLx2CP88BYJIjsHXsKkUUyD1FcSKPzwqvrBCGB2O6UdwqyxBYqeIGrNaZJz00zKwR+Z/zqLVv3orzvH5zwYkZpaIxYuFHS7cmQWDoVSin2BrD4NYjWNBztz96Rd5qE5xyfiI0eVCfv+jIPfGr8lUsZDtvAdOnJyYfAu4jpYRSVJUXPZGb/b2siNHEXyIcpvgEw1NsprlS6GMEtT43lVq3ocUYcxHxl5zIYS2ikRvFMRtK519I1GCKbySQPpVakpP5ELCd94CyKeNPJiOjFBSaVNi6RngB7WmtnZ1wqA5nyjxxouVOGZ4V26psy85THBo/GVh8Fyk9iNZRfiAs7d1ZUi7qn/0+iUh50HXW4m9gAVFRKonI1O+tavAfFpUCEeyaBnY38/uw+UwA+xg2mnNzHyx0GQ7RuuN5sqq4CTT77sKadiJtEd1LmHPd4GJZHZ+z6YkbE1zG9jD/QyckQOQxMOycZm1pA1IzPfyE= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YMIKQSRCGtSAA+znpQHyKST+6W6xWfC+IHsnxNwMGPyJKRYv7zUr09p3Gjm/hJ0P3CwIwPFXtpoQ1COVuwBZAeO7Rz2G4PZjYUL4vrg0wP4MdAskKOgNT7VcDF8vZ7C2Frv5t73WpBIPKadxV8ugTfxs0NqHBaLZVy1mt3/3I632XUqvBcpCRwNF7JlC0RHuf2lw9vQzkgRJGBHWELBaTStghO2NqcSvB6w81J+vK6pAXeiAGoEgPHzXx71qfC07WLEk2P+i2OppIMy+JCQSr5dRqYxB26xRwnqXuTpcFJD4ZWS8EyOhB6oZEIX22Bgckxz3gJg4PqtTF9AnF2jPJYS4Qo/ubeVm8hNGUxmENTcTweAO982hmaE3uddFDGTEvOD/iVqf1xfZhR8cIcOiA3TYicFisWLtaeEt/jaeHxWgAqCTuXS6v8yBRcHOSlJH1cWaJ9AfVBQah8dkbww8uE1CIM04+j/AHAW5f2YAetFOK4ltxj+bWYSoHZ6E5vt5n5ECkrx/CeUCxCrezL+YHlPwvD8WIBke4ikxP9sI05O310w3D1P8l+H/KMKAj26du/BHBsxlRHivNjcF9A63dNNrQ8mn5FeN022ESX9W4wXLLdb52adi2La8g6n8i9Xn X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: wCCkHxxSN/dqlL94BTyrt+s/6+xT0xuzyyo5E3GwxDR+KmkuRLkAMsofLbCZbs36hMwFoFAn61BNd5X5vW5x4XOxos3O0VjWCHUOSjIwwFxazFeag7fyC27RRN79060+wXRurQuPhKeMHPUWDzp7BPKamDV0kkcghVS47jVde0Q1vKAGyjCjGKbwdAxb4SWtOotNDUetSopmTkC+CxuOU6125jkoO0/v6NXZDDwYuXWtY2r8vWh1hgl4uJu3dVbMjfYIe2wn2hYIq/Qlb2RAIuTiFq9TD20j2rCHrZQX9dbhIta4b+71L7HBBx0SxFoPgoQXdGje2xaYLOSglCztpAkxYQMeYjlkiJaBh68nmbyzQOMd8WWjKo57uD02abdC8KbCPVez6RxC8m6q2/ngqvmDR84cMAAg2RwVwY72F1q9DZTllC5JWTYikg9Idl3V8gK5Cm8JlwCSsxQ4cOC0wA7PdfXLTVGt5gD0mOeSzDw159fdVI498w8t6kAiu1YT7nGlCEwO9KAVVkvUVvp/xzGbVwjYJHVYiU+3k/jNqjDRnhYTBb3sQ0zT4plMlAao0W+7RWc9EJhCJrkxnGis5gS50ORqOAGwGV2NG96KETpSmOV1Gx04htgkb5D3hJ4HsDl5DgrszlMj18VPR9y+HNrozoMk4SZBkOCuMZJWpBPZkP3wcQSIk+pd8MW95MCxwiwk5DYg6GR8ZWvoLy4p3qPJdwdPhRxUJAiJA6ik3RCjW7SE3fvIRgIn0KXZAzjvxj8f1iyKEErSVec64lxSwechWVVTmp25QQRYsoI9GP29Zx4bUybxI6XF430Z0Dt+6Dm7MrGSRnZTmukbUfyN1SOnJ1VqOWYxYfrIih9uDuQvFv9X5JjKtICEZOiThYv/N1ScDfaftQgKlSgn6dr9qKymDdJRdYnC3oe3ybJUnoatYkbdauhYSMA+lcETrHrv8A3WkymE0YSxTr2axmItTxDoaTxKoUXwIKobhYui77xeebLehuSpD0Ol6YJ9hdhgR538wB/BRUbep3uUjNZpudM2gANT5Jh4wKRrt1BjRPl8NHkrKwv/Tv76H/VXO7WBzYPizS0s3cTZGt7JrQ9BQnmhz/BW89zNqYoA1Do7eOKobUGM+bywCvOL3621MEz0LpMyeAleHt4cn321Bxs2qllYYdlzpjPxRoeXKYjBAKrmjSHJ4JB3H1hYZPraIsH1wvuxc9Bd1UHhGJvALU93eiTCjoAGu2h0G8zXqLdyOgatFordoCEdMkUKmH/Xxk7R X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c4b3bbb0-0bad-40ac-73eb-08db80d53351 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2023 23:35:38.4178 (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: DB9P250MB0401 Subject: [FFmpeg-devel] [PATCH] avcodec/decode: Return EAGAIN instead of overwriting unused 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: ZB/3joE6YBX8 Should fix #10457, a regression caused by 69516ab3e917a6e91d26e38d04183c60fd71cbab. Signed-off-by: Andreas Rheinhardt --- I am not sure about this one. The problem is that avcodec_send_packet() and avcodec_receive_frame() must not return EAGAIN at the same time. If buffer_frame contains a frame when entering avcodec_send_packet(), the next call to avcodec_receive_frame() will not return EAGAIN. But is this actually guaranteed if buffer_pkt is not empty? libavcodec/decode.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 269633ce10..6595c3ca34 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -666,6 +666,9 @@ int attribute_align_arg avcodec_send_packet(AVCodecContext *avctx, const AVPacke if (avpkt && !avpkt->size && avpkt->data) return AVERROR(EINVAL); + if (!AVPACKET_IS_EMPTY(avci->buffer_pkt)) + return AVERROR(EAGAIN); + av_packet_unref(avci->buffer_pkt); if (avpkt && (avpkt->data || avpkt->side_data_elems)) { ret = av_packet_ref(avci->buffer_pkt, avpkt);