From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 6FB284490A for ; Sun, 30 Oct 2022 23:56:51 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B245168BD88; Mon, 31 Oct 2022 01:56:44 +0200 (EET) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2043.outbound.protection.outlook.com [40.92.91.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 04A5E68BD60 for ; Mon, 31 Oct 2022 01:56:39 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M637GZ4wTW2pGVCrLkn3DuGaLF6HrJ9OuWjuHZDIQV0W3xqhxWt2zxWdJHXtI8oWGuC6W9zEsk2IjK5B6bN249TERmDSsNMYRd3gaCdUFBxgqFpU26UOeP8h9vgSmKEYMU/AJviixR9l8wxlPhB+WFGFtAauVX0TVvkCtp+EiI6ABi1FOpcPM88DyP21D39c+zcI8UEP4IxxgvSV4SQXvhYxuPP+lX/Y+7Y5i8iF2bxvi8vcHQY0fDS/m/pQ0POyV8Xpc5aY1JgnAivlKBrnWrMaUKBta7Wn6AiQDsgYC6RTnze7XUJEcl/IU4Hi3GGThLsa62tUmC4AhFGEsT4UJA== 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=N2UeoqIWcOWyrkU81xHBoslBf1cDV1XU1QqipqQi3Pc=; b=lKVoP8YzgW/oFzsVTvz+KSKmIzmT5yyQVrwU1Vd7add8H1G7t966mwujr295EhsNzl+2cWxT3W825/av4VTRMLiVfVGuZxjcv/HgXj236HT/UuLSOaH73S3RVYRkRvF0+PdNpv2lYxGqKiwDNCtk2qDExnPamxelZrtmZP8bix+McW84C/9gk/BZe5JwR3YGHXSktqE6oYmu8gavPzmZ8PmWEU/0Nsb56v4cJ32UtWAo6nx8Nmj8txewgaJszjpRTKZpsYZwR+dsZAqGCLFWnsxitJ9EmUDJWlX+qsND8PdW3YgADpLTYBkf9WUPnL5SA+F/tiin7WijCBc8OocnFw== 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=N2UeoqIWcOWyrkU81xHBoslBf1cDV1XU1QqipqQi3Pc=; b=Mxiw5kWdzBLzsUWI87D10w5urvjEHJQX2bZ2K2YTO2xZ6QZH+7m88nWnb+dE4fZf2X2W9JCHP1CPVmnHBF+35onfI6vgp3fZ2FMJkFMdV94T28iYYbUZpAxBO9J4d7c1BQdDaYzmT4miA4PA3FVgYk6jy9PlArnnuYLE/Vt8Qgkd56e0sPwMosjlwGfSi3F9tmH2Q1rRDEhT7RoXP1opTj79LUOEUqgxH3pLfIdx42H80379mEsi3zLu0GHJA47SxDU4+f6nR8CrExXwwYE1YbnjWwO6B5L4U7o5TlytcRbmcYB943HGomGaZt+/8ERwWO8Zxgu7dMP1IJz3oxFjrg== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by GV1P250MB0857.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:97::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5769.19; Sun, 30 Oct 2022 23:56:31 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::739a:8740:19c5:925c]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::739a:8740:19c5:925c%5]) with mapi id 15.20.5769.019; Sun, 30 Oct 2022 23:56:31 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 31 Oct 2022 00:56:16 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [Mi4h6vXFb0lUX9eDYv4zW2v8PfahZ8bHbMT4nEwKGA0=] X-ClientProxiedBy: FR0P281CA0146.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:96::20) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20221030235631.11750-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|GV1P250MB0857:EE_ X-MS-Office365-Filtering-Correlation-Id: 9233c81f-1de1-4906-dd17-08dabad25e61 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9XmqZLd1X3toBDX9YZ7dpDxvLNS/Nd1F6g0m1bDVrBvWFF1Ry30LmEtC3zWAwUJiGCbpHf4dON0IEHhMjf3F/5WjKwvKe6mTeb/E/I5RPwemZrsWBqdmJwRy03NuQETCESOZ1XiAMyV6HfypdHwy0+MPG0D0DivUsEX+X9fEM/qQCXRzRvrFLrNm0ni337M+wBKoKw3iWhtLoSbEsIY5Sd2PqhpoKrQ51GMk0oWamQZIA/uZ/bYkAW66PUzK0cYPfOC/HhNssM+cg55bxhrLeMPbh6jtS0pAY4q5rk3mtLgUYaTApbe4CxWPoXp14JNLFMee3Rw4fLoVsGPWrgfwqC004XoLhsWRmh3dIaKHstgiDl7uYvvEbMAY2ZI3L0pZrsdAG3bl/2V8HQFt7BqrffdS8l3QS5UJjCTZJ2RA3eKIXrd5aMJs4htxksSh1uyaL/b7tLrCNf4lu960QLAu9fxRihmW0eslX/CNDZTf+qZYb11fRTH4tEOdpIgXQYF4rGpnntJ++eg5pYxTKJPk0/skEuFR/tiExVRhbDaDsGVWowtUab5RSCIWgtq/J3yhV2uJWpHPFu6eSROULMobir7kkoyFqx16TUZN1P+qgoYLKJRsmPjJv37JTeo3RieiS9lozeeUrrmggeXCkdl57xo5A4+QMvNbeTanmpbZcgK7WFxD+F7o/a4Q1Np3i+UTiejMXQ/sKYd6B7ldukATZuluLop23rxzZbHq9SaLpg+p4AtLEduUhKSmbfwtG98K77Eg= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mfIT7fVyLiVdvvxbPbKrhFq/zp38STDeCPGVwhpylSAuTzho7bVrGkRIf7BEktVM5g1BkFy12Lu/cgRDA6nXjAytbnzJvAzosZD349usiEYvJRggiuBXEUxMSxrVZuGmadmKU7K0JaWnzEuL8SH6EMkGMhR836aWp+43TWv7OVtBq6fSbwVsel82GaMj4YSkF4pxS+zqbuf8Qpv7gxE9NLzSl4MJsZni6JhBggQp23L0s0rfdvuwZC0t2XrwHqMQQPhfLCuUxc5RYm5+Nlx9NlTvj3rnRpyJBUTdbJtO7XoXkH74reiL/PBNPM7Rg/58qlxMQnwfMhF+CRfsQjFt0hk8nWzxFSEgTW0V/CcDoKNc5mDZkuwKAYKuE4315zyw8axWs06bfdAIaKvPOKinCEDxV3p/jJKPvNxh1bOYsKzsV9UnfO9bLdk62BLIoWVQXilx73rpAD8YRcRn1dMN2iaF4Sw4geOXpAw0tYlcK6GYBKgBqdTEftO+EXsy0V23NB5LoHsx/SPQ7K9Ugx5ZsIg93cADwSbxoSZCiKzdXi6KK7DorU9JTd3ZJ8d2a5vfgd4Laty9KiP+e1XeAvK6XIrIZF7cnb28VHWgr+rc5kJbFezbR9ZgTMprUJ0P5+lqBEGbIxxMFKh5PHr0tM4vOvRN5bVxJn7NJSOAeSVdCTksH2LQUT5J6q6z8tM/jjLQ X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?bH0LXNtn5whZcqr5lTctvO2ume6aePC0BioAYFCTZISDP9hIBPV8oMQUYk95?= =?us-ascii?Q?uNJS6XvGuMvlrksWqp8nrPSElX3zUR/QBS9uS6JOoyJOSVp2wmNFv+q3/s4c?= =?us-ascii?Q?vv+y7fhx4+yUjlVBWR376ee5NcouvnMlUF1icdyP8zS04PtlOrbDDb9cd8EP?= =?us-ascii?Q?X4fY/nS/7Tr7GiImoCTwaQEtSWV3uF7GvT9KPsYkDZ4EVbtPuBONXJAyfpRt?= =?us-ascii?Q?eOyq5UA7R+BkSqhBJTEZLdpcUilFE9nOpcgUA7gDVR78GN68sTedNM0lfyFu?= =?us-ascii?Q?PRpKavuAK2mBO57JTYab3SezdvI16JjqWtLno0kVHgceLuvraVZBKKETNGoB?= =?us-ascii?Q?YYB5VNKPsV6kXQM2zRRhl+xBPigI1A9EjwoBwnsST5CYKwEJiDYPqe7mkN0W?= =?us-ascii?Q?2qUpuE8Bzwiq8n47sKMhniuUc8oGz82Prrvh/gk8w7fpzHsJUohvaHxcAEFg?= =?us-ascii?Q?NdVvrRoxmW9nh9yB/5X6ubeeEnH8/K1+CTPVaT+R6ipEHCNf2s9gzmjpPEtc?= =?us-ascii?Q?CoClN7/6cyWiniG15PkXbcYwGJ8CSvzDrPTcSQodMs0f/rfNvUHw4p4xOCth?= =?us-ascii?Q?fp46+ELMCjpBqNxVFvhb2WBfQOKC7HKp1F73f6rbuH9PDm5lMXIJwZGQEbqd?= =?us-ascii?Q?g0zOKQn20+63KCHHgu5RgDYhF286BsYcwU0Rc6LwSLyscjcsvtH5FbTrn7R7?= =?us-ascii?Q?UqN5DPwX1kGmhMR0fJI2cm7lkYETZrBculII9af7gOpW6Ux6obt5U3KBncHy?= =?us-ascii?Q?1T79/TnSHiXVhPuj1DIjs5nHMGrRje48OZXAl1o49pzSKj6bZvcQAB95WG8J?= =?us-ascii?Q?kx4NQ1799D6krSFEA2nPzrtdomBw3ssN2JqshJgcq30+8zywnDEdg5Oi07un?= =?us-ascii?Q?kg4tHVbHYuPI1cX+GIPHehGdGXw1VaqwGiM91pV2mM6YEhRi3fmxsfd9sRUi?= =?us-ascii?Q?aCHKKWs9uGB9fgENh6EaQgPVAk0EE8Rdt0f/Sf2X+W1QBQ1Q3PWk5qjqgqnz?= =?us-ascii?Q?LGD1CPztG2VTu+qA55V3OKP5rpia2oK0pU+BOlOV1MCGPTwLPp/GBgjQ4CJo?= =?us-ascii?Q?YCFTgpO5G1uWuaM7PeAS9jDbpiSFqBG/64QksASIUar06gJHCm69fM4cE8mZ?= =?us-ascii?Q?VyR5Ll4TgPn2WXMfVWiTNC2OnzA7m6ol9BqmHC1glia5vKA19ga71Ebg5BAl?= =?us-ascii?Q?JNbLc1WLUSdae/nPPu6Yi87fVBaFtYTnCXyjSXylOrT/ELZAu8PkCSYnIDw8?= =?us-ascii?Q?UVa5y0Vh7VIhzTuNC45wgYS9mg9qcyaGqoREVwiBe5kOqMWdc4iOXW14TC2q?= =?us-ascii?Q?8ef5PnIvax/CvHXWbD80m9jx?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9233c81f-1de1-4906-dd17-08dabad25e61 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2022 23:56:31.7435 (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: GV1P250MB0857 Subject: [FFmpeg-devel] [PATCH 04/19] avcodec/vc1: Don't use VLC to read bfraction 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: The VLC here is very simple, so that it can just be read by two get_bits(). Signed-off-by: Andreas Rheinhardt --- libavcodec/vc1.c | 8 ++++---- libavcodec/vc1data.c | 21 --------------------- libavcodec/vc1data.h | 4 ---- 3 files changed, 4 insertions(+), 29 deletions(-) diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c index 9b4e951baa..f6468b54c7 100644 --- a/libavcodec/vc1.c +++ b/libavcodec/vc1.c @@ -613,7 +613,10 @@ static void rotate_luts(VC1Context *v) } static int read_bfraction(VC1Context *v, GetBitContext* gb) { - int bfraction_lut_index = get_vlc2(gb, ff_vc1_bfraction_vlc.table, VC1_BFRACTION_VLC_BITS, 1); + int bfraction_lut_index = get_bits(gb, 3); + + if (bfraction_lut_index == 7) + bfraction_lut_index = 7 + get_bits(gb, 4); if (bfraction_lut_index == 21) { av_log(v->s.avctx, AV_LOG_ERROR, "bfraction invalid\n"); @@ -1582,9 +1585,6 @@ static av_cold void vc1_init_static(void) { static VLCElem vlc_table[32372]; - INIT_VLC_STATIC(&ff_vc1_bfraction_vlc, VC1_BFRACTION_VLC_BITS, 23, - ff_vc1_bfraction_bits, 1, 1, - ff_vc1_bfraction_codes, 1, 1, 1 << VC1_BFRACTION_VLC_BITS); INIT_VLC_STATIC(&ff_vc1_norm2_vlc, VC1_NORM2_VLC_BITS, 4, ff_vc1_norm2_bits, 1, 1, ff_vc1_norm2_codes, 1, 1, 1 << VC1_NORM2_VLC_BITS); diff --git a/libavcodec/vc1data.c b/libavcodec/vc1data.c index 844bc0f5c5..01a9767d51 100644 --- a/libavcodec/vc1data.c +++ b/libavcodec/vc1data.c @@ -102,8 +102,6 @@ const uint8_t ff_vc1_pquant_table[3][32] = { * @todo TODO move this into the context */ //@{ -#define VC1_BFRACTION_VLC_BITS 7 -VLC ff_vc1_bfraction_vlc; #define VC1_IMODE_VLC_BITS 4 VLC ff_vc1_imode_vlc; #define VC1_NORM2_VLC_BITS 3 @@ -171,25 +169,6 @@ const int16_t ff_vc1_bfraction_lut[23] = { }; #endif -const uint8_t ff_vc1_bfraction_bits[23] = { - 3, 3, 3, 3, - 3, 3, 3, - 7, 7, 7, 7, - 7, 7, 7, 7, - 7, 7, 7, 7, - 7, 7, - 7, 7 -}; -const uint8_t ff_vc1_bfraction_codes[23] = { - 0, 1, 2, 3, - 4, 5, 6, - 112, 113, 114, 115, - 116, 117, 118, 119, - 120, 121, 122, 123, - 124, 125, - 126, 127 -}; - //Same as H.264 const AVRational ff_vc1_pixel_aspect[16] = { { 0, 1 }, diff --git a/libavcodec/vc1data.h b/libavcodec/vc1data.h index 90dd8baf61..3e45ef1e79 100644 --- a/libavcodec/vc1data.h +++ b/libavcodec/vc1data.h @@ -53,8 +53,6 @@ extern const uint8_t ff_vc1_mbmode_intfrp[2][15][4]; * @todo TODO move this into the context */ //@{ -#define VC1_BFRACTION_VLC_BITS 7 -extern VLC ff_vc1_bfraction_vlc; #define VC1_IMODE_VLC_BITS 4 extern VLC ff_vc1_imode_vlc; #define VC1_NORM2_VLC_BITS 3 @@ -100,8 +98,6 @@ extern VLC ff_vc1_ac_coeff_table[8]; /* pre-computed scales for all bfractions and base=256 */ extern const int16_t ff_vc1_bfraction_lut[23]; -extern const uint8_t ff_vc1_bfraction_bits[23]; -extern const uint8_t ff_vc1_bfraction_codes[23]; //Same as H.264 extern const AVRational ff_vc1_pixel_aspect[16]; -- 2.34.1 _______________________________________________ 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".