From patchwork Tue Aug 31 12:42:57 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 29917 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2a4a:0:0:0:0 with SMTP id k10csp4889004iov; Tue, 31 Aug 2021 05:44:20 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyXIoAizPD3sc8/X3q1ZdMzAIMBvlAa4nO3g7qInkrcCrUV6qDoxL8kRP64fYiT4PXutwO5 X-Received: by 2002:a17:906:12c6:: with SMTP id l6mr31756764ejb.373.1630413860719; Tue, 31 Aug 2021 05:44:20 -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 di6si16782921edb.606.2021.08.31.05.44.20; Tue, 31 Aug 2021 05:44:20 -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=c6slcyFM; 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 2859E68A407; Tue, 31 Aug 2021 15:43:35 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073086.outbound.protection.outlook.com [40.92.73.86]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C7C2C68A3AF for ; Tue, 31 Aug 2021 15:43:30 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bt+/O9a+N4oRoww4yTDrBNNT60kFf4dNdxLwbVlZnXbhAEYHtQnYZZyvnKEnJgoabFNmPbd2LzR5pgrUcydQPBbQE3hKhvNoIRcZ9MwJrsgbBaYtiPTWsgcgksEtkUwnHUV38x9WjMEi1MogR51ekj7Ge1butzGol+87yXnlk/u5EPQ7phJBS8jwvB2OPW5KZe232yAzVHidXISmA9+SpWCLFPnroV8wyz+ZlMiQdtlmLYFGVglVdJA5/08+f7dHfn6/Do3UlWSPpQn9vYPHN1xFLDoVUFkkwkCQDglg+UQ+hvLbTLDrjILKM87DJaE9QwQf+z70bv4CDWqO4mXagQ== 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=nG4u8jh2gWoxUVClOFE0OZ6gmJIiu0aCPpxgK/vKOCA=; b=mTrw6Q8qFgH1O10WgxDm13JB1neM3WgbrUR+S/UQcALgKiKxBSKzI1Ngx+pxBqRPaGGXuzhMhxgLpiCDiC277ZHdWuEh28cD95XcuYoOvezVHw4ZMG496vrsOlg2W/qw9vRmsFo7+34HO3qST+Pz0eBiHJWCGi1vyoHeWVTvQ0HHsc6AwyKPBw7YrTT6+iQRSdHt8Rm3n9o8r6ot5/FxDVh3t6lEUjwPGDV2sPM8Zm8QQVg/fHYjZMPpB0UeceqqeciVIuE4ceSyy3GDfpC+UmL7dRiZY+Kt9Ji0EcyrUUFyk4vfWcMc/TwkBYEFRBe/pNxsmHOR1JjDJ9HO6GQh9A== 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=nG4u8jh2gWoxUVClOFE0OZ6gmJIiu0aCPpxgK/vKOCA=; b=c6slcyFMfBW6TC0CsFG66FFUO3+xXqPgv7yG8oP3PB6kxufV7HeRtbESJ+54QSBdHKV3OfvU7kswK0xYk2OYyBbYHmkciX/48WCydYjXK09MphcblHqHvgmLPLRRXaLFcsOPo4GvPs4gyk5vTyCEvPDHwrEN2dyfB1yvrYndPIDZZfwyFSw5UJ6Z95N3f5lwktfpPr0mAG31dE3jDsZQC3lhkGHt2KQ55zkKRQsE9Lu3K4JO62ehcmHCwe+qR6MbzQjr3WDG7LKTA7CJoV5tz6V74ixCTAp483WTNYGnt4/A9MMPv+eQzdZDyPtpboErsndGR4vJDm/s1KFsxmoDjA== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (10.141.218.86) by AS8PR03MB7270.eurprd03.prod.outlook.com (20.183.133.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.17; Tue, 31 Aug 2021 12:43:22 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f8b5:1ef2:89b2:f8c5]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f8b5:1ef2:89b2:f8c5%7]) with mapi id 15.20.4457.024; Tue, 31 Aug 2021 12:43:21 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 31 Aug 2021 14:42:57 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [RfCSONVohCMI48YEpDY5RJJrKwKj9O33] X-ClientProxiedBy: AM9P250CA0014.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:21c::19) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20210831124258.1715917-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.142.38) by AM9P250CA0014.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:21c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.23 via Frontend Transport; Tue, 31 Aug 2021 12:43:20 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4eacb717-19a6-4544-0383-08d96c7cea32 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNVAewO3OwszBVL1NI+kAPIBUu3mol1yNCHIgeepzYr26B2esNb2g9Q9i//m1PbDZDeyYUMXmSNxmwu8iWLOqQ38yqXcG/3bujCENfP1dAheJd7fsdceixEL+yZkUijv1UDaD1+a/ZPoL+Q0kWwHX7OM76W4obrzNXpcj4e+O02i9Ad9l8znrl+QhKfxHGaHQiKU+Lx/K0DeMTrWQdabrzd/G3CnN+LMSnfui5bLwtYnkcd4Xnkb1dQJNjdW53FCUY1JKdLvwBQuNQoxoIN7kjz2mijNXPVXf14ccS661grUTqH5M8fKo3T4DVf31NThcta7NLaZWpiJaslVj6tsIpVdZP3vZsiByj84WlNtnn4nd75Cxp1YKRVMZunUxcyXSA4n4mWv8ljJSkPuO+RKKoYVyTHHvL7me63ouFtWpSUU96Dkc0v6nDDqXYo18F1zd5zNxWpzhBKfu+8tD269cl1i29bMtH4kdrUWiMRO3Pb52TP4v2oUjTLOUy/5jEUJTgjBLnMlqvgcEAt3IhJZqu3fcmda3e6Bb9AznD8TTrOnaoaRwwLPDkD1lHKWY3sQSQUNriOX1KeLaKqIAnt8xWZNr8P7kGJXqTGqP97Yk89/JHVtxY4dkTqqlDju1vk3ssh5SPS4VWHPvprV2+JE6aIVi+VBa1aWj4dWWpLz+Z8O47xT8uKvquK84iMn6aK12/Aq3RJawAiH+1zD/UAiRg5WPZI6bBBI+Rg= X-MS-TrafficTypeDiagnostic: AS8PR03MB7270: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: f1EgVQL4lJLjzi81lZxJTdQeb2yRXZWVRfFsqAZxR+QmtLvdbblc8aoeMGLw5HMKF7ex0XA9sf6Ycj1ZCjJlCwUWj2kDk/9txi+LWbznpMc6PalygiG73m3CysZ7bkKJYd3pPTTT2YKN5Ejy/GvewHlnYvSb7iI4NOyDkdVG10OMQCcAybaXiNkuVJ4PqJD8N/wM8zGpQwyHuPt8IGL7DNaQq83Xri3fd4Jmv7w6p1WMIiKYA3zANN0htpcw7X/HQeYv0KioE28e56y5wSDNXSzQLgCVdrwWmI0fnVX9DyYlmMrjNeNoIFW3mwDTyYfyzrFV4c4HbJ66vY0If8D4baGK6Bsg0Nsi2KkfcfzWAJGDDMmgPMAe/bWEk3Ne7S2JxkKcApVrdMoCZ9dmm+EwVs9hhwVpFFNtd8joF721M8wQWlAjuY7ndX/Z3rdLnv1r X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: RnFkKf2lorHKaOeiPpdkwXzpbFoEi1tJuFOFAxW7S/iTfKVEO8/jgtFMDiiPtu9/qPgGtDwEDiSoBRjlybOwybMYPZqrc4qcfRTmITjEkWtYknTFsK68TS21+U5rnWtfrZFLJT5S3kBcivTMkIAyIA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4eacb717-19a6-4544-0383-08d96c7cea32 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Aug 2021 12:43:21.2647 (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: AS8PR03MB7270 Subject: [FFmpeg-devel] [PATCH v2 09/10] avcodec/aptxdec: Process data in complete blocks only 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: FdSyymGJaKf3 The APTX (HD) decoder decodes blocks of four (six) bytes to four output samples. It makes no sense to handle incomplete blocks: They would just lead to synchronization errors, in which case the complete frame is discarded. So only handle complete blocks. This also avoids reading from the packet's padding. Signed-off-by: Andreas Rheinhardt --- libavcodec/aptxdec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/aptxdec.c b/libavcodec/aptxdec.c index bdcc076c41..de661476b7 100644 --- a/libavcodec/aptxdec.c +++ b/libavcodec/aptxdec.c @@ -148,7 +148,7 @@ static int aptx_decode_frame(AVCodecContext *avctx, void *data, /* get output buffer */ frame->channels = NB_CHANNELS; frame->format = AV_SAMPLE_FMT_S32P; - frame->nb_samples = 4 * avpkt->size / s->block_size; + frame->nb_samples = 4 * (avpkt->size / s->block_size); if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) return ret;