From patchwork Tue Sep 26 22:17:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 43967 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:2a18:b0:15d:8365:d4b8 with SMTP id e24csp2211728pzh; Tue, 26 Sep 2023 15:24:34 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFfvF1i2CPJqGKEFwVe2oCqlAzlDO9gU4jOKzna/k+Lavk0SoxwXSLgf3GjzjZB9LiISJvY X-Received: by 2002:a17:906:51c7:b0:9ad:e41c:e9c4 with SMTP id v7-20020a17090651c700b009ade41ce9c4mr46542ejk.4.1695767074240; Tue, 26 Sep 2023 15:24:34 -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 lv27-20020a170906bc9b00b009ad7dcecf03si12106511ejb.327.2023.09.26.15.24.33; Tue, 26 Sep 2023 15:24:34 -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=DwJsw2Mb; 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 6C8B368C98A; Wed, 27 Sep 2023 01:22:49 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03olkn2101.outbound.protection.outlook.com [40.92.58.101]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 398A168CBB0 for ; Wed, 27 Sep 2023 01:22:47 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DURrqqxOkFxc2jT5DHShOw43kIDLjdnW0CymZCQsna5NRarbMZAARBh8W/v7jgVakQo/e7aWo2RAl/GvTuLPp303y9FEPtcLHXNHTPsaL/TQAAsTTidXucoOUihzMWtMtQ/cF2HOQeK7bvXBvGBR6MTTH6GkRVnPMTJNp9x1SD8piufIeEClmcdNjP/Ds4PGoRBdThlXIp9eF1TIjxsFbmueY+FjQ37Q35nA4lCdEN/97e3DKmdMkPL+H9kPg9pljqYjkirqzx2rQAAfEr+kVUSes4st/5TrFDxGH7h+nSRn46DXHu/KTRgQU1SPlDqAmiXgmreA7VI+ifOAd1oBKw== 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=Fzkyem15prfH5PNSUxBMRj+ytUv+RqEfXrD0SsTiCNU=; b=iI/LFmoEkFrSJpm6tdw5tnYvlR0E1paNt3HuT/3wbSxfH9XWalLiZTvPP2DKGHkclUTaaOVYxdqXFExTBEL1gxpEIzK17x97oSLwYyaURkgcAWy5zqBbHrAiFS0Z0bn/ICQyvVbaoPO6y9U7JvtUMdN9kbpe704j7eqj0MtsAL2Yq2xMAwrQcuWOZxEQ+tNzeAhi2Gs2YwYua7/6LRIW27spkoU4HHlxI6SF6kQaYKU4JYx6O3NnDv8hSdjp11bZ3ch6r4L8hmtJ1gSTUN1pctkQFCMwImXRHYNogOXTn9j162ugaTtX/Wgi+Av+aqvFhqL+uU/gz4vpsgZRm5FACg== 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=Fzkyem15prfH5PNSUxBMRj+ytUv+RqEfXrD0SsTiCNU=; b=DwJsw2MbqlaIzE3GQa8yqIkrlDpCx+pOrFmzdJPRcSFq7eXow2qHVuv0mLDp+SsPnYbFM5JPyrx8vWd5VlexUg8A77qgCbUZ4lNlInM3eNJJNSCxNsoX8PdcH/RT479c8QyKw3FCfVt1vKU0FLZkf8hvpVmeCbb7tzPMQLhPfgmkei4eq+47iH6INbzX/z2yuOWoBhtuMosnxofxkgpyC5ZE5buR4hBpEsR1IE0XyuqciQdTc4jnGxypr7ieao2JMyXWU37hHUCzfABjUcx/Ca4YgmQyjNRMjHfkaoTGSwo2f9MViY+RJbn9liVgYwI9T5YaBriOv2dP8PEJg8b0TQ== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AM8P250MB0160.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:323::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep 2023 22:22:46 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::9d42:7b4f:71ef:c76a]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::9d42:7b4f:71ef:c76a%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023 22:22:46 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 27 Sep 2023 00:17:27 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [JbY8nVRtc5Sp97oPgNrMiIMUfsuiRJCh] X-ClientProxiedBy: FR3P281CA0019.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::6) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20230926221732.3711507-55-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AM8P250MB0160:EE_ X-MS-Office365-Filtering-Correlation-Id: a98a256f-eb3c-40ec-2354-08dbbedf1c3d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5hspINZ2A0zPJBZUs75HLThBaWHs/LdNDgJxXSRI4V4daBxM/sKe1oM0e4neF3zsf7qB7Dhh70c3IrA5KE157LTQy54pPtPzIqqE35jOc07S/4PPW+15H9p0bOErFvgOSEJxMjPxlQ+RJb8RUwaSl1dCUd/IGSA8DHo8CcIc+IItXKP5Gi8DKgwiVl/Y1iT4SR3zgo3uBoA66voz/lCBwIPHCsGnT/b2oyRXQnHHzZ9EjJlIvXzDY3mK7aOWQHrwQ+jhATlujC/7Eqdsc9XR/0q6KHEnzD3rf634pvT72ZKpr52VZan5UX0ficjKA4Esvu5vvRn2Fl5ge8biXPQY5P65CGsYsQAtzfeuTLJ1q9ROH1on+zN/lFDdHls9VNvGr9oMjfGom4pnvwtAhjCyG2u/0JTIgpo1w47Q0NwI9w4DbWEphWEezF626nDiyp71tRYyNoOPoCDZyxf61VQc/bXXuGA4pVzQP1JtbXstg8g3jSpeckygwO4bzMJsIO2SLRJCpofM5vwUszzRfzQcSGdHNNcT9FLjaekbrmaUdvX9j7iSq1NYnchgZm/RMIU6sxT+sxQoef/5rbbSGHuPz2w2HzibfyBbkyIy7Qht0qWWfDCgx1/Xe7oJdFqng68p X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: x5bSvUuk4bafsvAg73P7jtxoRZh5/oVeay+5ilwx8oAkCG4Xq0tp3UuFCDtpANuOvo24KqzUGeXNAoS/shyhydIkBWO/AeihwX6NpAoAxxM9qjHMxuijlT8YErbf7SMamUqifvFAdBlnoyljVDrsnm6W58eqZCWcLdQKUayM21Vk6lHeGv7So+YO7PQvP59lCCKStCnaN0MR6mXzxkPr3wxGDXZ13Iu5kChcAYK14g/9S2VuWn7+/aU0HxZGoxSnLeMzjgxzeYW1/d89GqOhtlRTYvxeK1jpc/gOS5ZQf4UHVQf2H4pjRe3rxNAjVmsFQ7vbFBRGNAGKoYpmi/PGmrAf2SBg/kqfc8fGphihbjViYE+B+eR+M402B/6n4CW7g49YbR2CREkukN2YhJ5Q0Ao828cpss+ilFtxiX+/ixyZWzBIKN3bY3N19lx2/ScPYO75SjYON3phZlG9m9rF61BCuJRmOIf9w1J6x1tVUJv0hw7wsDlVEBJ5BSr2vZ/Dj+maiVphxZFUysREPC1BH+1IQ8npyNTLpbz2xa3H2shVfj1wBh/FmSLCKEfuU7F/kJQeUZe6m+4V3QUeLoZ4hB2eRH1+lNzBYQPuPsdbVP0WTYkEsYXSl9weOYF39TuoaKfMfI/CBiHzLkoMj9kMw8JmSH5TIGraDkJlIYSRFQhfMQxokhO2A8Dq/PdFKXaIcnOF0wxi0IYD0LyvQxiXlPd9lxo/R6dQ04cRw3kWAbq+J0Zp3P06Ypzsny++3Aroj1vAIFKWqqU1XCSCLh852bOeulZli391rjtdkwdfWpVOMaTMukeS8C8ykfX5p1T1JmMNvmQRtqJwzdFgPok0qOXmw9YljtOrVAy5AnxzfFP6bZnxBHcDeod0ZO+2SEQweGIfKwfbwXajazv5pl7Zhd7Og0KfUNwRRnPv3FNBY3xFk/BfRDsq4Im1DfdbfzxmTDjjsRTaG05NLPbYT4Y/ydGO4jfiMpk5FqNZTxlSfZNup3dYCvRHzVh+pL5DDPCeWBetDMuGWQSeiJ7QAna7bzgNRudZ8/QDQ0KAAGulqWoYuO4SXs8F9oh9+qlPUtnHzUBgAC0tVVgxg8EW01pfYA/aqC4ggZf/l1k2WrKiCE6/4+YnuCdCfxi44y9j0Cmmuq4JNivmvfRWM2da7hfW7XiodNjyWwXuhaLntS7JfuTOq6P0Jbjdynct0UCw0fpx+1AdFW0tBsMBI5tvoYojnv54fkrt4YV+rDX9Wr6nGhYaKYuHCC5tWcY+2+euv+Zk X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a98a256f-eb3c-40ec-2354-08dbbedf1c3d X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 22:22:46.6051 (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: AM8P250MB0160 Subject: [FFmpeg-devel] [PATCH 56/61] avcodec/aacps_common: Apply offset for VLCs during init 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: x+0LtFL/SPCz This avoids having to apply it later after every get_vlc2(). Signed-off-by: Andreas Rheinhardt --- libavcodec/aacps_common.c | 14 +++++++------- libavcodec/aacpsdata.c | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/libavcodec/aacps_common.c b/libavcodec/aacps_common.c index 7a83cbd7d6..74fa005aaf 100644 --- a/libavcodec/aacps_common.c +++ b/libavcodec/aacps_common.c @@ -60,7 +60,7 @@ static const int huff_iid[] = { static const VLCElem *vlc_ps[10]; -#define READ_PAR_DATA(PAR, OFFSET, MASK, ERR_CONDITION, NB_BITS, MAX_DEPTH) \ +#define READ_PAR_DATA(PAR, MASK, ERR_CONDITION, NB_BITS, MAX_DEPTH) \ /** \ * Read Inter-channel Intensity Difference/Inter-Channel Coherence/ \ * Inter-channel Phase Difference/Overall Phase Difference parameters from the \ @@ -82,7 +82,7 @@ static int read_ ## PAR ## _data(void *logctx, GetBitContext *gb, PSCommonContex int e_prev = e ? e - 1 : ps->num_env_old - 1; \ e_prev = FFMAX(e_prev, 0); \ for (b = 0; b < num; b++) { \ - int val = PAR[e_prev][b] + get_vlc2(gb, vlc_table, NB_BITS, MAX_DEPTH) - OFFSET; \ + int val = PAR[e_prev][b] + get_vlc2(gb, vlc_table, NB_BITS, MAX_DEPTH); \ if (MASK) val &= MASK; \ PAR[e][b] = val; \ if (ERR_CONDITION) \ @@ -91,7 +91,7 @@ static int read_ ## PAR ## _data(void *logctx, GetBitContext *gb, PSCommonContex } else { \ int val = 0; \ for (b = 0; b < num; b++) { \ - val += get_vlc2(gb, vlc_table, NB_BITS, MAX_DEPTH) - OFFSET; \ + val += get_vlc2(gb, vlc_table, NB_BITS, MAX_DEPTH); \ if (MASK) val &= MASK; \ PAR[e][b] = val; \ if (ERR_CONDITION) \ @@ -104,9 +104,9 @@ err: \ return AVERROR_INVALIDDATA; \ } -READ_PAR_DATA(iid, huff_offset[table_idx], 0, FFABS(ps->iid_par[e][b]) > 7 + 8 * ps->iid_quant, 9, 3) -READ_PAR_DATA(icc, huff_offset[table_idx], 0, ps->icc_par[e][b] > 7U, 9, 2) -READ_PAR_DATA(ipdopd, 0, 0x07, 0, 5, 1) +READ_PAR_DATA(iid, 0, FFABS(ps->iid_par[e][b]) > 7 + 8 * ps->iid_quant, 9, 3) +READ_PAR_DATA(icc, 0, ps->icc_par[e][b] > 7U, 9, 2) +READ_PAR_DATA(ipdopd, 0x07, 0, 5, 1) static int ps_read_extension_data(GetBitContext *gb, PSCommonContext *ps, int ps_extension_id) @@ -300,7 +300,7 @@ av_cold void ff_ps_init_common(void) ff_vlc_init_tables_from_lengths(&state, i <= 5 ? 9 : 5, huff_sizes[i], &tab[0][1], 2, &tab[0][0], 2, 1, - 0, 0); + huff_offset[i], 0); tab += huff_sizes[i]; } } diff --git a/libavcodec/aacpsdata.c b/libavcodec/aacpsdata.c index 6885b386c0..8c79a154e2 100644 --- a/libavcodec/aacpsdata.c +++ b/libavcodec/aacpsdata.c @@ -89,9 +89,9 @@ static const uint8_t aacps_huff_tabs[][2] = { }; static const int8_t huff_offset[] = { - 30, 30, - 14, 14, - 7, 7, + -30, -30, + -14, -14, + -7, -7, 0, 0, 0, 0, };