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 ESMTP id 72C8E478BE
	for <ffmpegdev@gitmailbox.com>; Tue, 26 Sep 2023 22:20:25 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0334A68CB06;
	Wed, 27 Sep 2023 01:18:43 +0300 (EEST)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05olkn2042.outbound.protection.outlook.com [40.92.90.42])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E9C3A68CB01
 for <ffmpeg-devel@ffmpeg.org>; Wed, 27 Sep 2023 01:18:41 +0300 (EEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iDx941aDHfvw2GyiGsuPaNT6FRjThzGELebI2yzcmAfNt/XAXzm6AFID2PMrvc2cDcqJHVAVJA58KVf+aJzVhHDoPxnasE5XGe1G/9i5fGbVIvmnpgVmEBjCKK4eCMbgTvXSpndhp+94q6ouy/43HxgmgUeircw/dCAM4zYaZ4mocr+mB8ItSuUhz9FhAAgD4uDCicERnm7j0RHUJMv3caR0XSVI8zTKIRArcbVPh9oJyHvN1+KwUocKMwLGOD5uad2PiObQ+k4Vw1GT/G9DtWhj4gfSB6uJB28wcCXA6aOfB7oQrU7+TYCbHV2S/JUTr5/c+rqxnRBEYqF1EDM57Q==
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=YqZE9H7q48Gp7anROArM6uEdFsOEyl4IY8EgEjNKne0=;
 b=lkoHQdDPe/v7aqQaGiZPG8JbyAdxUCtWQIMFH8MxhZdEd0GTeoKjC3IAytRtVEzbqedqmMS1BSdj4KTuN6MphcbFiTP06REXnoV6itJAwyWe3txhFguWbics82uaXMnjrOFiE2jwOzBkBZiQ3/7GKoK3BrmenWMJ7BX5TB5SGi8czOmamdWOLV7wq1SSVKCQ57iFXxcVE5nGkpB+Y/G/S4OY7sKTWIOkcOS3QpW4bjLMTEVqLdGdnKWi+0u9XxNoz6Tl4+GHaoHhltubmq3U2vhdi46nCFEfxaXiMXHld4vfJkq4ECsdKDcQaiE0+i6V3FWWCXl8AFHzMsJs2uid4w==
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=YqZE9H7q48Gp7anROArM6uEdFsOEyl4IY8EgEjNKne0=;
 b=qeWbmVFb2qsz8IhNXdTkM5wr8f+CQ9U4jqAidPqkyS1TqnAhjiyYCEIQMIxGLT9v1DQiT4iTjhVh5StMpTjLMWjT5FXJrTDGicb/sxN2EfHKBmKGrQNgAlSish0WATv+q1l0XRL4aSmTmXPvaeeTv8Rq/uerl3wZcnnl2+vGSED0ARiylWzqh18wsjCySynMoXtel7+v6oPrLp/smvXh1Q9+InSG/RgRkXOJBdQKCLqR9mMw7IKhZEm/oJ8W25lRgsNVkeMoG0K2fc35eN9ln9Fn77/KjqBM+j3A6CUSkTchGsFHhrEDBWHgeaJsBvyTSqMM5qUYu0pD/hicvEoeZQ==
Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17)
 by DU2P250MB0189.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:275::13) 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:18:40 +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:18:40 +0000
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
To: ffmpeg-devel@ffmpeg.org
Date: Wed, 27 Sep 2023 00:16:59 +0200
Message-ID: <GV1P250MB0737A4C73E14DA73FA40BE8F8FC3A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <GV1P250MB073754E215A199E7219CC13A8FC3A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM>
References: <GV1P250MB073754E215A199E7219CC13A8FC3A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM>
X-TMN: [nEKV6/Ho59Ux7jkr+smkxpiYFadTcowP]
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-27-andreas.rheinhardt@outlook.com>
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|DU2P250MB0189:EE_
X-MS-Office365-Filtering-Correlation-Id: d422028f-acdd-48c1-0c46-08dbbede8976
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: tyaYq+NbMYoPC4We8onFiRmhQ/QiSSOUMKsEMEa9BKrFirXut7efCvQ4qghuNNjFuzay8Azya0et2vKo19weXb4jEUPPKWG9Pckdk6PpPGHugXeao1NTWwHXobYtIEy3SHcfptMIPffRaEaHNGoc3AqK/966CL/IB/InpemXuAaHCEk6SOoelu802mhWADTk2z3wlo8tb94uo2sZ99OPnREuEZZ2yMf3wsB1qW8Cvz5ja+R3Efz/3Jp4q35EUFLgRlMdHjEJd4h6IoT4OFC0eY4d992SZ9hVq7u8XcbPakx2TM/DHdpppB23jY4h+uaMarjrH7bCXCvqjC4mpSjhcVINHQjx4P93R1iQv1YrzAM3NitzGNScXZL4jUznN3EmQlybcHtiSXSm/WdjK1otQ3wwZX03OQAXyeDYJOzy8EfukJMxgdheEj9DX2Gc3UzWfHNJgM4u6GJkJIhknBoTKdvMkvlU7HQlwOu07wZ7OKP4N2xu9+zR4o6GTy0fDV+DqOLhyoCpYLYKbQojXgBsvQbgnXP9B0xvHHARmb1eXDixtDUVt3Unww/egoV83HOHrKqKkUJK/VlhXliEe1ErvFyilmUKHWAjnMm3fvr2GR2Ryqpq9/WH0gcM1n/Sap5t
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Q6lHnDPyqzCxzLtH4OUzby0vN9QhEhz49IbaqTsGk9sh8DO4qDKcj0xAS7a9?=
 =?us-ascii?Q?m43PUhI6LSjdZFB7m9m3dQjiGgKJvHCgbUOg/5LC3Ep2eKFkkatoLOC6yrPb?=
 =?us-ascii?Q?KaR6IdrjlW26IE9LF7YNgUEM3+tAMk2/TN9ZDsHI5uiHCON4ppteUBBpoWFS?=
 =?us-ascii?Q?vyZFvogSAZL7OijlP7z/KzH5FKF0CySGOk5Jr44Ng6M9T9eARafTYsDRVxz9?=
 =?us-ascii?Q?HMIEFl12JrhaRUORJzJnQ3dIRBfOWHjnxc0ux4IpCrrhQnGfAi/S98zCdJui?=
 =?us-ascii?Q?k7Y8RiOh5bfmr2L5m4SyXFixEKpTysP7lVdvZPvImF1ftHQL7YxLnHnsQ+kf?=
 =?us-ascii?Q?Tj5ybtGmfd2NrQkJDJ3CP1n2oefiNQy7Jo54cMz7XMPoKE8QrKZtupQRXnN/?=
 =?us-ascii?Q?BVZFF+VDB4tG9njAIir/nVO4Nm0VTpwVUKh8LsuYJiU65VYlXDQiTuyvHIWM?=
 =?us-ascii?Q?Q9yB212LwH1/2lCtBIdpdMKB7s6L6R881yzQjpODGL/DDH103nYBYAJnxr5G?=
 =?us-ascii?Q?cPKa6XINkBhuNqmzCFCSO/P23JwnU8mCnzQhDj2riU+e5P/jI2KbAGvXyY1Z?=
 =?us-ascii?Q?b9NovqnVR1viNkycAe8po1cf7eW8/RwgI1sZrifW/BgB5thGOFzHOnAXSZXo?=
 =?us-ascii?Q?qWjmQ9tvtA724vztfT8cGZgR6t+i58eecO/1TJyVvMMHJT9K11ZtSnWhsTw/?=
 =?us-ascii?Q?ivG05T4gUNWxENxhAj06EGoYq8IvwjN6ku4FG5b/usBwVas0tNwUROC4Kwir?=
 =?us-ascii?Q?dcmMOlKOkl7AQEOFw2GW1wXgvbvlQZTPwY2nfKZFGIrOJ4kIwjHNDu2mcbwa?=
 =?us-ascii?Q?K6TyDUART+0SZ9gACe4H0+KJngrSjItaaGBnpgEyEU5KubD47GBUiRPI9Dhu?=
 =?us-ascii?Q?Vo8gARusMUpmQzLwy/MFbOG94utKP79Jk3Ugg4UMo7CxT8Q1jfPyv3kidzMl?=
 =?us-ascii?Q?yzc35lc6pbwmyVTfQ4gU1JO1lpuOQHturTpDJIFe3hn/Htnbqgw8T+Ggd0rk?=
 =?us-ascii?Q?EGB2dByRSLBfKhRLGtTGrmy6K9EHMQG/bUJdFFDNqF+zcNlYGD9OFiV4mRAy?=
 =?us-ascii?Q?YPD+0RTdLS/hBs/OQD9SgZ3egDogSQ4j4ygdFG/wPNxkQ8CTWWKNny4e8BPL?=
 =?us-ascii?Q?J28nGdfVtyh3KenPAtERSFCTUtMA/80cx+iC05XDcy0tGxxRrvTUMPtOQbrv?=
 =?us-ascii?Q?QFJF6CTaDngbmeUDmyP1L7GRkZCqb6G7NEPUF240sCk7jKLVVHVFXQg0PYhh?=
 =?us-ascii?Q?NrtnLMohCH+21d3ePoDr?=
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d422028f-acdd-48c1-0c46-08dbbede8976
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:18:40.3435 (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: DU2P250MB0189
Subject: [FFmpeg-devel] [PATCH 28/61] avcodec/vqcdec: Avoid unnecessary VLC
 structure
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>
Cc: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
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/GV1P250MB0737A4C73E14DA73FA40BE8F8FC3A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

Everything besides VLC.table is basically write-only
and even VLC.table can be removed by accessing the
underlying table directly.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/vqcdec.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/libavcodec/vqcdec.c b/libavcodec/vqcdec.c
index 462d810a2f..dc9248d99f 100644
--- a/libavcodec/vqcdec.c
+++ b/libavcodec/vqcdec.c
@@ -49,14 +49,15 @@ static const int8_t vector_symbols[] = {
     2, 3, 4, SIGNED_8BIT, -2, -3, -4, SIGNED_6BIT
 };
 
-static VLC vector_vlc;
+static VLCElem vector_vlc[1 << VECTOR_VLC_BITS];
 
 static av_cold void vqc_init_static_data(void)
 {
-    VLC_INIT_STATIC_FROM_LENGTHS(&vector_vlc, VECTOR_VLC_BITS, FF_ARRAY_ELEMS(vector_nbits),
-                             vector_nbits, 1,
-                             vector_symbols, 1, 1,
-                             0, 0, 1 << VECTOR_VLC_BITS);
+    VLC_INIT_STATIC_TABLE_FROM_LENGTHS(vector_vlc, VECTOR_VLC_BITS,
+                                       FF_ARRAY_ELEMS(vector_nbits),
+                                       vector_nbits, 1,
+                                       vector_symbols, 1, 1,
+                                       0, 0);
 }
 
 typedef struct VqcContext {
@@ -171,7 +172,7 @@ static int decode_vectors(VqcContext * s, const uint8_t * buf, int size, int wid
                 continue;
             }
 
-            symbol = get_vlc2(&gb, vector_vlc.table, VECTOR_VLC_BITS, 1);
+            symbol = get_vlc2(&gb, vector_vlc, VECTOR_VLC_BITS, 1);
             switch(symbol) {
             case SKIP_3: dst += 3; break;
             case SKIP_4: dst += 4; break;
-- 
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".