From patchwork Sun Aug 29 21:27:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 29862 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2a4a:0:0:0:0 with SMTP id k10csp3402654iov; Sun, 29 Aug 2021 14:29:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyavFi1VPQQUOAgFysLR/sVh5xDh7dT9K10IRUggTyst3RxGiM224G5pFG/K+FYAW1I8QcY X-Received: by 2002:a17:907:362:: with SMTP id rs2mr22012326ejb.17.1630272553919; Sun, 29 Aug 2021 14:29:13 -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 h24si13659299ejt.408.2021.08.29.14.29.13; Sun, 29 Aug 2021 14:29:13 -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=rroZuGUC; 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 62DA868A417; Mon, 30 Aug 2021 00:28:23 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075055.outbound.protection.outlook.com [40.92.75.55]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 72FED68A2CE for ; Mon, 30 Aug 2021 00:28:19 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c9Bwc1+eBvlvpxi7mVAWPLKXoQNosjqG06xHpYaKtwbyj39YNOkckucV2dKDidMmf9vh3L5dY/r0vK29iMhm+LRMdBMpqJ+Mmb2IZmrypm8/6tlv8uVpKq4ZUSQASP3JTJ/AfH+TrQXX0//iF/0KRye/wqhLitGV+VHKmkoXBHuHB1qA9Jpp/95T0A19F8egrL7ffgU362veRTtE9/gsY/I9RjzkStZ2cx1X3TMJkcE2evwhjKOQT3cZuLw/BzKIzVdUpY1cqs/60mrZgPp1gdTkIOK3YYBuryA/SJIo2VGaIXTatYiEqf/UFUcmYwsbg49KvvFD3Ii44WuyM4Iodg== 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=l9Z5zBxV4PZ9yj3bGmvbTLA1wEARUSnVUdR+QUtbB/dJPxXsAb5QNX0xBN0KXvEIyrTmMAImTz6PTdpLSJmVEm2PGam9PMdWZbJcjoaduRMS9JsL+jOYZlynn6a6HpPd88pr7ubsx/E2jXyfIjTWvOuA+4x4WdPO/wtPrWNzYm/6jvWc9cEFIJa7SWKMG7tumDeFWU0k1Xrg4ARhGRExlbNqKVoCFQsKZC8nN6wo63Vb4cqIJU5GJdqExRXPx6KvM5Fx+djpYLjPicBccs8uzf/lVCrvESVLHevagGppA7Bs7MWJw0AIyGCcwpl2qRWyF0OfTRFU4VC8t6C52k9KZA== 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=rroZuGUCpR892aBNW4Zlbv29FvxyxrrOojR8NY51u07n8DIa39cIs2KWP9HBQtqvFu2TgYkHNF064cWXqQGP+nNOYvh+mS3e1CW/p6dEC30RVsOL7ujZ2zSuP6sXewqJLKmQDriwvlxgDaYY6B7ryfX5q6+2WsvoBFTcsD+00KgMHlkzCUG2hmvEz9FR6fYDMIikobHOb1mddMwGbRQ90PN5V0UAvG6DWQJU9MUKENQ01tqOIrE6Rq9Fgu0gcwPa0R2nQvqgXqpU64GTdx+nRKq94qx2fboSDb6gdulckpB2d49ctx6juFqf6shaThRg5fE3RplgA3narcC+aNeN/g== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR03MB5927.eurprd03.prod.outlook.com (2603:10a6:20b:e3::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.23; Sun, 29 Aug 2021 21:28:10 +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; Sun, 29 Aug 2021 21:28:10 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 29 Aug 2021 23:27:43 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [h/K2ts4nQTHy0ZUvR9a5mmersdXj2KM8] X-ClientProxiedBy: PR0P264CA0178.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1c::22) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20210829212744.1505779-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.142.38) by PR0P264CA0178.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.19 via Frontend Transport; Sun, 29 Aug 2021 21:28:10 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a8a9beb3-b5d6-4124-3ebb-08d96b33e68f X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNXOVIHST31EzKLNwg5cTLbyK9k5/al5Y5IJ0DbCyXh3eLQfoGwKMK1QTJB5YWTvWzV/PbedcCSM5AfsIyFa6/fw3zw3djiyPLijF4s1JUw9cv3T0Uk7Evvq+ElkLeY0QWTG93OxCAGdALyg1EN3kyHFekNrq7DtDOc6p+Shyxd0jdW7ghUYxZSSRzbekJyv+OM4/DiYjahTWX2DS1pzs+NDVnHGR22nDsOI6zXNlCPFUAexTs8Gj8huciAF0iGBOJUB0mPIvY2/TG3vigy+Sqvp39nhaRCf2g5ztA8PG3rwzFLRFaE8Iqkul1dp6w/tlfXUhrGRkC+Oe0X4iwmpaOhPrpCU0jHELz9NTHIUuzbR0mA7LKsgQdfDgBPFvBTtGQywrM1lPe/3jmT7vZvIfNHmd+kB1v+9zVRZ2C8WSzCr8MIXFSK/G3YnjPE62jpuGO8VsX2L3ZLJ/KH+uwqY46C00ZAg95kBoXLyRgSg7ibL+opHeiXT6EbAmKhUC+DgIETXiI9mIQWDCvbzyEZKkUvxedSUzxWmBpf+XoHXCUtco4rXE+Xi0iRA4pNzUe2zYdMPyQ7uD4Kl6YokN9fjmDPGxo5x5QhZv6OxZPO2FupliurX8yuKh5cjYvGUrzY+SvXc9Io8eFbawWZWNLqwCHwCsoiATyR1Fq5CoGgg1J3H4WTiqVrFuSYlDVCRYmCiKicHuBNmuYKfgjhTWb3O0MJiZkT6ZX5yVh8= X-MS-TrafficTypeDiagnostic: AM6PR03MB5927: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: K2VyReEXUidoVa8vQuJ/bARWgxeffBeISydEJ8JvCFtg/LStBp4OLHwa7Vw5qHRxZh8towg1Udfvb1iJ5TSi/P9V8GwZdPzA3xsx9veE91l4Lfw7z5UcmoihPDc9jnNTDa+n8gLNXeTR0KI6vZ1sNku3Isom8rFHpMSYpY2ngAMunhuKKva0qzziwdw8kHC8QMa1oJMM1EHbrT5vT41oqtu2yvyFQVegMUxGBTmvzF3Hez9Jnepzxec1CMZ0XLgNWZKA8URYOA1e7gtFmU8tU2330M1jNcSbrkUDMtJaQHbpYIZoeY7I0fewBuwRf3Un60NoABf0eSK9JBMjBY1LMqoEMeLIZUfUfivLJ7bzCSJuu8k2HEUXkKRExwR2pguKYXKPeqA+cf5KOqSY1uJONBigz1wfcvZClB96VkMcSRgHEbl4DE/5x0Xy3Lu6cvmH X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2w+50ClmzEhr5O2FWqI3KQ+RJ1ELfeqRIbzJgT1JxfNEgXQiOqLEJsvNcpjliVQxrJ4AxrCqG/pCAJY29ji+OWEqmglfLW06L74TtJ4eQ6BNM3RanCX3jx2opCpAYk04hiGfGUlQfjxadeTrSlJpPw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a8a9beb3-b5d6-4124-3ebb-08d96b33e68f X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Aug 2021 21:28:10.7447 (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: AM6PR03MB5927 Subject: [FFmpeg-devel] [PATCH 10/11] 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: z/msqiaripDi 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;