From patchwork Tue Sep 26 22:16:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 43921 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:2a18:b0:15d:8365:d4b8 with SMTP id e24csp2207925pzh; Tue, 26 Sep 2023 15:16:43 -0700 (PDT) X-Google-Smtp-Source: AGHT+IERLSlDmCIc2bq/2WawPE+9i7nmZgRLxz6pmQGSzq0pkLfMf6Y/ljOGe+KN+9+D8ynNUWBI X-Received: by 2002:a17:907:7842:b0:9ad:9225:ced2 with SMTP id lb2-20020a170907784200b009ad9225ced2mr33312ejc.62.1695766602811; Tue, 26 Sep 2023 15:16:42 -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 gh16-20020a170906e09000b009886470de61si10632313ejb.857.2023.09.26.15.16.42; Tue, 26 Sep 2023 15:16:42 -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=KU4pyXHT; 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 79DD668CA70; Wed, 27 Sep 2023 01:16:36 +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-he1eur04olkn2085.outbound.protection.outlook.com [40.92.73.85]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5DB1B68C9FF for ; Wed, 27 Sep 2023 01:16:30 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VdffXnY+RrFu4FnaHzHvj1dAK7biGgrQ5iv2yj+cBmRg48Fg3q0f4BbBiVVYBK67f0qUqqsxGatiYgaJsC1k7798G2OodGiUxYe2L357s+bk+7HnsMGq7HR0RAnOtXLZCD9uhJaxxHPPt2G5j0dXyzL5nCczwR45rCn6QPXJmeymUBxEV6cCnIz6A6bhbNQbZ+NfuL9z2HrYglronpJYrcEjmzR/mS9hv96MAvr9rBbegSdTQPkm2DF0Y1Et9oUebAM7sCY/xUmCH0TPTfF5tgVrEPdNGNe6PM1UKiULp/BR/AN96cq8Ztsue6E0lUdnYwBtBrkrxmD5dqmWIui52Q== 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=FlY6b7g5TDLJxhIyVlEK5PG6rejNik9DIDwnQ9fQo3w=; b=bCa/NNhl9AiE6hYVlFXdPIwdqGGFpXJtmkd1oIsbRr4G5BO2r6f3eNbvxcQhKP/M6+27Xti0Ro8QTuEq5jWIHRe4hQtSteqDoNm/gxR+ZveKWTYCj9njQLvcXYUj4rykbYeZZ4hlycRq7JHKFo4UuOUzGOFGUUYhSOFwb6uVnZuqBDZkg4MCmRiuUP1cdCnJZJtM5QEcIJsernQ4M7hBtlcCT2/ZadlD+QVgOg5sQ+Zy9U278O776XmZYnc5o7P5W3L5pnOiwKvVZDsV7DNCN+qLHCNllTfSXz/w9yMI2CteYBZYfuybrDOGRGtXtDcWt1SFcE7oC/jCgXIRhGNYeA== 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=FlY6b7g5TDLJxhIyVlEK5PG6rejNik9DIDwnQ9fQo3w=; b=KU4pyXHTNgpNDih3NOgedFa/TYNI7QgvTmhxiuVVdKDdYGEgysKIiLzA2Uh6j93P2IYeP8wRt/kvuGOB4/E4mVRNTrJ4wS2Mmfl9EaCylFC2IcxZylsYD2t7igOjxx1IqcLO1ByDzV7qCYHDyamPduK1QQJ5mu9sWviDj/JDv9nmU8kBrF3BijkDAsVVgAdXFgSX51ZWYLN+uEi6D1hbN+9ymH3FieDA0eIeVxwgYdfcZGX2iz2oBs2qScowe92Rs5BrpC62vPIX5B9AtR4Ar2mhvnyIgqwz/H+i8yL6so5/b8w8wTcePhNWbNQ5+fyFPFaf7aEjPvpbsWLkJP6WBQ== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS4P250MB0413.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:4c0::8) 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:16:29 +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:16:29 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 27 Sep 2023 00:16:34 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [t2+LXwcu1EcxeLrX5/MbG0mw4Zb0qnJI] 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-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS4P250MB0413:EE_ X-MS-Office365-Filtering-Correlation-Id: f8e38b49-1ed8-41f3-e778-08dbbede3b35 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hhPBVa/4Fk/3PHTv9R26NJk9sdozisTiuVIwGmmhkCqb/jWSrzRC7YGfNayZlu7YmadTpoIq7RZYYe5/EtxVvhJt2QZuX0/sY1hIpwZH8Ii/myTyYfWF4GXv6Sy9OPLfNo5YVWhZvaN4SugtGSEeQwSOWe5MsDzF5o5bnuvwRnyW9DCBfSWNxeLJktEqP2h6VDLM4jktoGbA4UfNv4TWA2pEvuc0XG2pGD2u3JH8/8cwVoILk6IXjIF1pmdzZZPNTVAmSiEz42nW0vlitSSmHcLO2KRwkifaeBNnGrTb4kPbisP2Dc3XBnUgyT0uo7lM5dY02aT1Nda4Ai23or8Slf4j9HYzN/Ll1B1oCtnQIs2xxpdnqBhsgxLTFzZBW79WFWquLJq1CWvt7OnMAokWjeoL37rzfyeFfTKBT2IGj3nyv8638XFn5DAhUOV76HsBU59f/pzh7KtsTHPZPxOKekrIbYJp9izjzfAFIInYZ4QfhSzabUDUUaPf2T7LZRxZ63c/Vz6SwRdMiH+mihMBCdfrlCqUDqTyrmfLg3Z3/j1k0AI2vRbAYavB04jB4UpmJezY19CDkZZZrE5E/1Ek3kRnFM6N/RLC3WI1WoeSb8dzOBXDKlgo8DXWHuvHSKgC X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: PTVMVhVEzGTqMaFSssZxLBPU04edo5lqidqWS1LIbxSYUpXvOvN7BhoiMnxb7lJZe5X5Hs6nzNdf/RHeBN4SuOa7/1xjSiaTRjegmmAIDoZr2sxKPzUq4aAiq3cR5DjE3M4bMVJ22aT9XLfIClU+p+sOkjvwdOF4C6396zPCB7uFVfhkW2omRRpw2IhKiyuh070WhFpWdDrsgPP1OYmsveVyVSTcgJPY6tdZBIBUnV3bRfiBHK6sdLpFtUwXTMIb0+RClnmTDQGU1UPI/V90hhQgQ1wFqRCZ9Kq6EUpr6KbQ6vwlPrjXofWtnDOnv4jzUX2JdJiarJ2NcSfMft3m21M79vKpq02JLke9CmlnEphbON61BQoY2eamOKyndPUYP+82CXCOD86Q6pVJ5VDkIeweC1fZw3Gic2icQiOFQHTFnb9G8aSZqWolTe+YX8DrOdANnpxHF6E4C5A4p5I+MbZRxVq/bS9OBbltY+3VXs5o31G25YUFuFv45hpd6Ag1/o/SKlRMN5ipA44VhInUP6mUjSJYbEivP5KSBogypSaUWQl/vowqJFL1IVe9SQkwWqkUSklzMFYptDqKy9iH+35/ObHX5nu2b9l2K0FG43UvYBJtD3pVmynz4tuWFN+JEizRYrzC1Z4RwmTOLwIAasYP8ZmpidosfNe1NapELb64AxpkGg3dgODQSvGklnT1tDapyonoNhxpAExskoiOYeLOTfmlPw7UEq334ppgybEOqCMFwMJQoGRToK3Z9JX+R1QTF4r+ZooCOGMYOR4pj6h303KZvpNSK7Yjc+DV/dETP+2FSD+OMGguztuNwLlwzzF5KVBUFdsb2ngs6F5NsQY/5DFJd/4mnWwCaEYGfETYOYzJHgeee6eYBmj5puNSSj2ycTqRvgAky3NQq9MtbXbP54R1IT2lkYmKOy4TD50tSE6/XKXMEgfWYMbvS2vyuYGBLnoQzbtD3/kuLSG18W4o5oz9g4sR5A8ysI28U1x5tBNNrFBSwmLNWEaqUqaNus+xMoe9D52XU6ZLzQiiqbLFJqLJuDXpDsX6Ubv7L9AIwIaY8kouWSwsgCptxgyyN6hPip9G92fL4bIy+/NyPaYdle5BJ+beVoZrUuOZcLdiQZP8d2gGapjJbupwkXWrJZQQuTdpmC+a7dOSmjj4Ygg3ZeQhnIEbxXcp/ubBzY7F3CVNSoXIkcFZ2RMVtW7CBdehDwdLS3gVqrTrX+yu4rmHGZNOOtyMzOmwntgyp8SV3og6DF3VGw6lMcwOjo62 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f8e38b49-1ed8-41f3-e778-08dbbede3b35 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:16:29.0677 (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: AS4P250MB0413 Subject: [FFmpeg-devel] [PATCH 03/61] avcodec/vp3: Increase some VLC tables 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: mW8n1LOM+eQE These are quite small and therefore force reloads that can be avoided by modest increases in the number of bits used. Signed-off-by: Andreas Rheinhardt --- libavcodec/vp3.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c index 9199f53397..0463909f2f 100644 --- a/libavcodec/vp3.c +++ b/libavcodec/vp3.c @@ -164,7 +164,7 @@ static VLCElem fragment_run_length_vlc[56]; /* version < 2 */ static VLCElem motion_vector_vlc[112]; /* version < 2 */ // The VP4 tables reuse this vlc. -static VLCElem mode_code_vlc[18 + 2084 * CONFIG_VP4_DECODER]; +static VLCElem mode_code_vlc[24 + 2108 * CONFIG_VP4_DECODER]; #if CONFIG_VP4_DECODER static const VLCElem *vp4_mv_vlc_table[2][7]; /* version >= 2 */ @@ -681,7 +681,7 @@ static int vp4_get_mb_count(Vp3DecodeContext *s, GetBitContext *gb) static int vp4_get_block_pattern(GetBitContext *gb, int *next_block_pattern_table) { - int v = get_vlc2(gb, block_pattern_vlc[*next_block_pattern_table], 3, 2); + int v = get_vlc2(gb, block_pattern_vlc[*next_block_pattern_table], 5, 1); *next_block_pattern_table = vp4_block_pattern_table_selector[v]; return v + 1; } @@ -840,7 +840,7 @@ static int unpack_modes(Vp3DecodeContext *s, GetBitContext *gb) if (scheme == 7) coding_mode = get_bits(gb, 3); else - coding_mode = alphabet[get_vlc2(gb, mode_code_vlc, 3, 3)]; + coding_mode = alphabet[get_vlc2(gb, mode_code_vlc, 4, 2)]; s->macroblock_coding[current_macroblock] = coding_mode; for (k = 0; k < 4; k++) { @@ -2275,7 +2275,7 @@ static av_cold void init_tables_once(void) &motion_vector_vlc_table[0][0], 2, 1, -31, 0); - ff_vlc_init_tables_from_lengths(&state, 3, 8, + ff_vlc_init_tables_from_lengths(&state, 4, 8, mode_code_vlc_len, 1, NULL, 0, 0, 0, 0); @@ -2292,7 +2292,7 @@ static av_cold void init_tables_once(void) /* version >= 2 */ for (int i = 0; i < 2; i++) { block_pattern_vlc[i] = - ff_vlc_init_tables(&state, 3, 14, + ff_vlc_init_tables(&state, 5, 14, &vp4_block_pattern_vlc[i][0][1], 2, 1, &vp4_block_pattern_vlc[i][0][0], 2, 1, 0); }