From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <ffmpeg-devel-bounces@ffmpeg.org> Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 9A6F84E5F6 for <ffmpegdev@gitmailbox.com>; Mon, 5 May 2025 13:52:40 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 069CC689D6E; Mon, 5 May 2025 16:52:37 +0300 (EEST) Received: from EUR03-VI1-obe.outbound.protection.outlook.com (mail-vi1eur03olkn2100.outbound.protection.outlook.com [40.92.57.100]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EAA6C687C61 for <ffmpeg-devel@ffmpeg.org>; Mon, 5 May 2025 16:52:30 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=j0ZWIeMd3XkwJ2mGHkWhQNXJvuX6cisEThLMVRU32cbOvq99l+ro+PjMCyJ/JsHQ5SP7UWKnWDvHv8DQr+ZW7PlNzPVFNmZBm+p9FwPZ+HwLqGVE3bihZbJhkXFNkL3VQwIQQrt0sKqfebOlW2UM+eZveDFXzsWaehE77Vvx9wL8oiAw5R97tnYFKrdbCDuVUqWxUnspUTDCNqOl+UJ2WQXfpKiMhgG5eGz/hV2FDGumj2V4qE2OfjNFXlNAhbKyG/TEyFa5c0ckZDTXuYvnGX0ET4ICtGH1zUxarrBWOhO748Qb5WeY8cKStc9jTohpnp/4H4XCpZE662wFUfjAWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=7jBRUR9UC5iybvALBepxdHM4TXiIQKH9IiKKkkMYmD8=; b=aQbgs46bucKEo1gMN+tvVE+TRpTcUipWD96eBm40xbDHSxVXCVCoE0oJUtOg76bs+ip2o5s6ufC6ZIqS7LERPa49bssHwwezWOOBw7H9TMs73f/BYVZbBlqpF+Uf9QdZhtrWiD5EEIXpg9YIX0KErqy4l0k/dCqaE+BoJ5HoI7FOrs95dEJpF7GPFpOV/uhDZtk91JsBDKAiwnaYCNR714wFkBSC25sr4IYLgTWEQTnrd4gh65HG83SJhsl2YU0SCVgFfyIKyJhOqr/EPmLiIintoV3Vif2j6zBKitQA/rKLdFu3KbvKutlv0DRU4I7fmKoPy7PfuF/4ZeFIUo9Lww== 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=7jBRUR9UC5iybvALBepxdHM4TXiIQKH9IiKKkkMYmD8=; b=lBsu7/1U0tr1vWAKgiYAcftBXnhrw48jpMaqK/zT+Gk+h7vzHcwnAJ1ChLpgmQburhSGJGSlJqz+FZimv04CM+dgKXswwSgleUMKC5R2kn/KKGc0JaW2UNo4xQpcPwUj2e+o7QWs/82btx57TdXqYj24WM2oXLA2mVmjVgtbH+5cyWtvU/38nt9OjWnkvuFDHjm+di91P8NCQXdcvEghOG9W6Jko87oRCMvEk6F10OmfbJ7+XHt7K4eyG1TQqR+IlIiDHZ86yQQVxlR1b4yZAj/+xrrqGCcXwRph25CYY7Zry7LlNvsXbpHCYG+dIBaw0m7TKdWxHuzu7KPf3/W3bQ== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AM8P250MB0390.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:329::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8699.26; Mon, 5 May 2025 13:52:29 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.8699.019; Mon, 5 May 2025 13:52:29 +0000 Message-ID: <AS8P250MB07441F15886FEE5ADBD07AB78F8E2@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM> Date: Mon, 5 May 2025 15:52:28 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250505071844.812297-1-dev@lynne.ee> Content-Language: en-US From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> In-Reply-To: <20250505071844.812297-1-dev@lynne.ee> X-ClientProxiedBy: FR4P281CA0334.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ea::10) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <6507d19b-66ff-4af8-8220-80829d1a31bd@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0390:EE_ X-MS-Office365-Filtering-Correlation-Id: 7bb7dcd5-e05f-42ee-f08d-08dd8bdc1358 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199028|7092599003|6090799003|8060799006|5072599009|15080799006|19110799003|440099028|3412199025; X-Microsoft-Antispam-Message-Info: =?utf-8?B?c2FhbWMwTkZuajZJSWZJTExBNXNUUEUwWjlOcVRudXdraWlBb3l3S1d0L000?= =?utf-8?B?aUJOUVloalZraWtjVkd1QUgvTGs1Z0ZQZmJVRDd2ekJnKzliSHJxa3ptL3NG?= =?utf-8?B?dEhPVkExTHZSNkZMb3I0enZONk41VDFrR2FYVkxFVEM5YUVrT05NMldNNUlu?= =?utf-8?B?MTVpc1hSSEI5TytrSEI3WlljVUkrV1JVdnZORk40MWZ3SVlVVVVNU3hVV2k5?= =?utf-8?B?NlhpcFIxUzd1T084YmlyTVRLUlgzTVMrQ1BNdXZ3YktuaWNZZEJOU0twVHU3?= =?utf-8?B?R0xxMTNyU2pKOWpEdXNsa3lTM2ZSYnJjd3paNGJhdUdva0g1YjdKY2NrSy9t?= =?utf-8?B?MnRGcmcwOVNNcjh5b21uYWJlYXB6eFdzdkp3RFZ0eGVrc3pBMTlOSW0zRXFW?= =?utf-8?B?bHBUVjRkVEVmTU8yOUhUeEQ5WUdDZEl6VVhBTnI1VnJJNml3WENvQmY0RUlK?= =?utf-8?B?aE80ekkvSmFGdk9TUVluVDhFQjUwSnpRRmZNSmRTTU12OFJyMGpwelBiMXBr?= =?utf-8?B?S0xNaCtnd3UrQllxWU11REI2QkZWYWFUaTh4Zmd0aFdselBDeEhIeDhNeFEz?= =?utf-8?B?TkRwNExGelFOanNDck9ZOUExY3FVTCtsekVhcThKd1RoU1AzYmUzWjBVbGN6?= =?utf-8?B?QkR1NG9mdlRzL1BEdnFjS1BFNnd3QWlOMkU3YkFib0VabkUzTHJFdjd3b0dz?= =?utf-8?B?R0N6ek1tQUptK2VWY25odmgrOWM2VkRwYWk3U3JPeWxXVk0yemhwTmNIaVRi?= =?utf-8?B?ck45NXRDVnQyL2dMR1VaS09aMXVZTmhwbEdtdzdWMzErQVV1aVEyYk5UTDNT?= =?utf-8?B?aTF2UlhZNCtkcjlkWDFTOW0xRnFxZTltUU13UkgvYUpiYi9uYWhOd0NhVmZr?= =?utf-8?B?UzBPTjF4emFacWU3L2I4Y0Z6TjhBWmFEdmYrRFBva3ZMRlJBV24rMFFCSFJU?= =?utf-8?B?YWwvWW1vU24zK1FLc2FOQlBhbU1uS1RLWGpXbzMwZW0yYW15Y1poV3JzOWtD?= =?utf-8?B?VDR2RnQ1MFpCVW1kVi9ibmZsUFNiSlVGOUVlZDgwWUtOSE5haXdqK1NzNlVI?= =?utf-8?B?V0dyYkJORzRwZzZHT2hnbzJMT1pHMGJQY2VCRU1LOEJsYnZGUG1NbGt5cS9n?= =?utf-8?B?Wm0zdzA1NUd6ZWJNK3duM3hySFV1d2JWTGRrYVlIVm40dzFpMVJSRGFjVDRj?= =?utf-8?B?Ulo2Mm9zMFczaUVsdnZsMWdoZ3c5cmRnenFsc2ZQNXhXRThxWVp5UHdyN0tM?= =?utf-8?B?R0xZR05FVVdJejRGTVlucU5ZVjlWaDE2WEh3THIvTEY4QjlUQ2lhMC8vRGIw?= =?utf-8?B?akFuTHFSamZDaXVjNE9aUmxNZFBnSmpqUUVvNHFQUnlHQU5NMWMzcVhnK3Zk?= =?utf-8?B?WU14NGpxNmtheXFLZC9rRTdjMDN5YWFJL3NCOWFUT29lcTJKeDI1U3RqSk13?= =?utf-8?B?MDVsUmRvVDdhNEVtdXNkdkpvV1hrcDR5K2NSWG95Sk5rcEF1di94SmRaVDBq?= =?utf-8?B?UVdXNllEa2diZkdxekFPSjVmQ05zVkpWQm5ySDhxWnhhdjlTUXhzQWQ1Mjlx?= =?utf-8?B?QUNIUT09?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eTlOd3Uza0prb2hRVGdCaFMvRUROVGxMV0RBaGxPQ0JjdzNBZnVnWTN0czFm?= =?utf-8?B?d1NCdExHYU9QVGR2b1ZOckdub0ZTTFZmSm5mbkZwanlCbXRSVEJvRXNGbzZI?= =?utf-8?B?RlMrZndZR1drbENwdjZSYmlMM2IrSFl2bkxvRnlTcmMxUHJLSzh4Q05vd2Rx?= =?utf-8?B?S1l6MzRCZ1J3NWZPVW90eVJscDhYdmg5QXVXVjZEVXJUT1hqMmNtaTZXVjJB?= =?utf-8?B?bEhrQWtCQ2dPcSs0UVNTM2ZSWVpGM1EreGUwbDRTSElrZWI4U3BKVlZWcjY2?= =?utf-8?B?Mk5yQno4TmNwN3FrUXBKUmlKa213TXpPTmJWSTZhRE9Bc0N5cnJKbmdvcnFE?= =?utf-8?B?aWFJWEd6Qjk1QXRYYnl1NENjQ0M5dGFVN0Y1bFBjNHJYTUZMcC9hbzJYUXU3?= =?utf-8?B?YUNVZUtwZUxRekFxSTQwOHp6K09GS3lBdlh5L3Y0VHEzeU5GUHlyWEFXaGhP?= =?utf-8?B?R3BGWTViRlJlSlBPMjRXcjlib1c2MlhjVDAxUXdiWWVVNkNlcjU3VDk0eDl0?= =?utf-8?B?S2k4WFdoa3Boa01YS2ZWKzJKMXBwL2Fsd29HU2d4SmlQcm8wdU51d1V0ZW9Q?= =?utf-8?B?aUpXaGU4VlM3cmoranJadUtqQ1d1Z1VxK005TlpPZGtNT2hiLzZRYVZic0Fx?= =?utf-8?B?TG1BK3FycitaaWZ5V05wR3lIQ3Z6TEJDNUYxMkxJdlhSYlN0b1lTbTlvb3ZO?= =?utf-8?B?SkVTTHpWMFgrelp6QUI5WHh2RWVkOHpDK3R5WS9WVjhRZUh0K0p2YkF2dkQv?= =?utf-8?B?VWVwWGFSWFdOZlAyY3M4ME5xdkdaUktiUFpqa3h4UFhwTXN5S0Y2cUlPRFIr?= =?utf-8?B?d0JPTmQvVE1EeWdOY3BnaitBZWQ5ZTJ5cldWK1FINEdBd3JEQnJvMThXVHBj?= =?utf-8?B?UXJBTUdUd2FiTHdaTVljblZCaWNseHgxK0ZMdGlLSlhIMmpGTkpYVHFFdWNE?= =?utf-8?B?TitmdnN2ZDhVd3lETDJhbDdLNlpvSm8xNk5nbEgzWU9WVWt6ZXZ0YTBZNnpP?= =?utf-8?B?Uy9JSmR5YnlXUGRUSXpVSUtOWDVldkhHT1RsemtMdmxWTGRxaFhVeWJvcmdH?= =?utf-8?B?Qks2NTdMWWdNMnQ5K2V3d0tlR2IxMWplbFdUOWZsL1NNdDZmdzcyK0FpT3JK?= =?utf-8?B?NDRSaFZidFBPOWhWNHA2am9jeXdhVVl3THZwZlY1RS90cDVpaXpSS3pOemYv?= =?utf-8?B?eSs0VFh1MzNuS1A3eFJIcC8xbGtmQkNtbVM2dDdFV00yNkcrOE1Nd0V5T1NO?= =?utf-8?B?cG5EKzF2VjJScXBXSkVwV3ZIYzhiSkRpN0lkYlYxWGlsbWMrTDZhckJHRzk0?= =?utf-8?B?aUlnMmdMR0N3Nm9RTjZtNUJtSTE5a1RYK09pdjBZWHdwVVkreGZ0RTZNZmR3?= =?utf-8?B?TmdZbUd6RTB1NkxkTWZoRjM2S0FwZlJva0JqeWVhQ1oxbVE5eWtkOFRrWVhi?= =?utf-8?B?T3FEZVZMK2o4M2Y5K1REN1d4Q21XVHl1enYvZzhMd1Z3OWxmdm1heUYyRnRT?= =?utf-8?B?UXkxRnNYajBwUkt4MENjSzRMWEdRVHpCOW5jWGZVNjdmVUpoKzdwbnBvbXMx?= =?utf-8?B?NTZiOGRRQ2FWUURSM2F4YkZQd2dkSXlSb1FCRkU2cHRmZnVIcHpDalp1bWhO?= =?utf-8?B?cmhCbTZsUHREZ3djVFVGNDdsOE5vVHZXOGRBUlJJc0ZOcko4RjhSK25lMDZU?= =?utf-8?B?b2hCT01TTElHYlprUzE3ekJ3U3RBaXhpdHN3U25YOTUyUTV1SFNjTXM3ODB1?= =?utf-8?B?endybUJiWVd2OGx5cXZya3Y0VENqS2o2Y2FQdjdwejRieG1DTFBmRTcvYjd0?= =?utf-8?B?RXhqZzZITGIyWTlaN0U4QT09?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7bb7dcd5-e05f-42ee-f08d-08dd8bdc1358 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 May 2025 13:52:29.4887 (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: AM8P250MB0390 Subject: Re: [FFmpeg-devel] [PATCH] aactab: add and initialize 2D VLC tables for USAC Mps212 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org> List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe> List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel> List-Post: <mailto:ffmpeg-devel@ffmpeg.org> List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help> List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>, <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe> Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org> Archived-At: <https://master.gitmailbox.com/ffmpegdev/AS8P250MB07441F15886FEE5ADBD07AB78F8E2@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> Lynne: > --- > libavcodec/aac/aacdec_tab.c | 54 ++ > libavcodec/aactab.c | 1820 +++++++++++++++++++++++++++++++++++ > libavcodec/aactab.h | 20 + > 3 files changed, 1894 insertions(+) > 1. This should only be applied if it is used which this patch does not. > diff --git a/libavcodec/aac/aacdec_tab.c b/libavcodec/aac/aacdec_tab.c > index 45a84a9a72..5ba20c0d8a 100644 > --- a/libavcodec/aac/aacdec_tab.c > +++ b/libavcodec/aac/aacdec_tab.c > @@ -111,6 +111,16 @@ const AVChannelLayout ff_aac_ch_layout[] = { > VLCElem ff_vlc_scalefactors[352]; > const VLCElem *ff_vlc_spectral[11]; > > +const VLCElem *ff_vlc_cld_lav3_2D[2][2]; > +const VLCElem *ff_vlc_cld_lav5_2D[2][2]; > +const VLCElem *ff_vlc_cld_lav7_2D[2][2]; > +const VLCElem *ff_vlc_cld_lav9_2D[2][2]; > + > +const VLCElem *ff_vlc_icc_lav1_2D[2][2]; > +const VLCElem *ff_vlc_icc_lav3_2D[2][2]; > +const VLCElem *ff_vlc_icc_lav5_2D[2][2]; > +const VLCElem *ff_vlc_icc_lav7_2D[2][2]; > + > /// Huffman tables for SBR > > static const uint8_t sbr_huffman_tab[][2] = { > @@ -279,6 +289,50 @@ static av_cold void aacdec_common_init(void) > 0); > } > > +#define LAV_N_PAIR(NAME, NB) \ > + ff_vlc_ ## NAME[0][0] = ff_vlc_init_tables(&state, NB, NB, \ > + ff_aac_ ## NAME ## _0_0_bits, \ > + sizeof(ff_aac_ ## NAME ## _0_0_bits), \ > + sizeof(ff_aac_ ## NAME ## _0_0_bits), \ > + ff_aac_ ## NAME ## _0_0_codes, \ > + sizeof(ff_aac_ ## NAME ## _0_0_codes), \ > + sizeof(ff_aac_ ## NAME ## _0_0_codes), \ > + 0); \ > + ff_vlc_ ## NAME[0][1] = ff_vlc_init_tables(&state, NB, NB, \ > + ff_aac_ ## NAME ## _0_1_bits, \ > + sizeof(ff_aac_ ## NAME ## _0_1_bits), \ > + sizeof(ff_aac_ ## NAME ## _0_1_bits), \ > + ff_aac_ ## NAME ## _0_1_codes, \ > + sizeof(ff_aac_ ## NAME ## _0_1_codes), \ > + sizeof(ff_aac_ ## NAME ## _0_1_codes), \ > + 0); \ > + ff_vlc_ ## NAME[1][0] = ff_vlc_init_tables(&state, NB, NB, \ > + ff_aac_ ## NAME ## _1_0_bits, \ > + sizeof(ff_aac_ ## NAME ## _1_0_bits), \ > + sizeof(ff_aac_ ## NAME ## _1_0_bits), \ > + ff_aac_ ## NAME ## _1_0_codes, \ > + sizeof(ff_aac_ ## NAME ## _1_0_codes), \ > + sizeof(ff_aac_ ## NAME ## _1_0_codes), \ > + 0); \ > + ff_vlc_ ## NAME[1][1] = ff_vlc_init_tables(&state, NB, NB, \ > + ff_aac_ ## NAME ## _1_1_bits, \ > + sizeof(ff_aac_ ## NAME ## _1_1_bits), \ > + sizeof(ff_aac_ ## NAME ## _1_1_bits), \ > + ff_aac_ ## NAME ## _1_1_codes, \ > + sizeof(ff_aac_ ## NAME ## _1_1_codes), \ > + sizeof(ff_aac_ ## NAME ## _1_1_codes), \ > + 0); 2. I am very much surprised that it works at all (does it?). You use the same state and therefore the same static storage as before; you add new VLCs, yet you do not increase the size of vlc_buf. 3. Can't you initialize this in a loop like ff_aac_sbr_vlc? This would remove code duplication as well as relocations. > + > + LAV_N_PAIR(icc_lav1_2D, 8) > + LAV_N_PAIR(icc_lav3_2D, 8) > + LAV_N_PAIR(icc_lav5_2D, 8) > + LAV_N_PAIR(icc_lav7_2D, 8) > + > + LAV_N_PAIR(cld_lav3_2D, 8) > + LAV_N_PAIR(cld_lav5_2D, 8) > + LAV_N_PAIR(cld_lav7_2D, 8) > + LAV_N_PAIR(cld_lav9_2D, 8) > + > VLC_INIT_STATIC_TABLE(ff_vlc_scalefactors, 7, > FF_ARRAY_ELEMS(ff_aac_scalefactor_code), > ff_aac_scalefactor_bits, _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".