From patchwork Fri Oct 21 20:12:55 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 38895 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4a86:b0:9d:28a3:170e with SMTP id fn6csp957268pzb; Fri, 21 Oct 2022 13:15:53 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7wF/DdjtmpeUXh4tF02l+vppmsseoVHzN/wRn15y6JroUBNDSjGUPaWlZTtL6eem9w5oBa X-Received: by 2002:a05:6402:2201:b0:44f:443e:2a78 with SMTP id cq1-20020a056402220100b0044f443e2a78mr18802673edb.76.1666383353604; Fri, 21 Oct 2022 13:15:53 -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 z11-20020a056402274b00b0044711ea363esi24130238edd.21.2022.10.21.13.15.52; Fri, 21 Oct 2022 13:15:53 -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=DlaBCiDI; 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 AA97B68BF31; Fri, 21 Oct 2022 23:14:03 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075017.outbound.protection.outlook.com [40.92.75.17]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 69E8C68BF5C for ; Fri, 21 Oct 2022 23:14:01 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q+v6BE9GeObHnJ31KJdkWLpbTjta8mhTVR+YB9vv2RC6j7nnbeSTtSf1U+HQtOjMrFYPhwihMpJYhT4DZNkoUP6eDoL9B9D+H5K+SXQADLYC1sK3Mt3v6CzhXsR7ngc0LBOk7SAGFIAVMt7Y9SKHQh1b6img/iyKxSVcz/K4Y0Zk2XyJsaY7DPqFqW3mmDHTzK2Jca/xuZquhDYIz92x7hhU6ssz/zDp27aEVtar1qBkBitcTqVKfhSK0dBXvCAEWZDPE0DpZKZvsy/QPkiLvh0aq/VcOwLGy8u0KoDeopPXJcXmZ1pGAlkK9NGmvQRMWZA8IiwelTC2MFrlhI3Buw== 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=EKuuWKSva3wmwNJiwb5PrNgG7h5AR4dZpf1Y46c9T4A=; b=QyEUqrEyYkZ0oJV0Tc2lxKHpB4Xx5r08smUynJjlhqSag6mxap3EOQJovQQoxC36bni12cD8nTaI5NxDg9ZuCs3wBHkYobc2w7pPYe2YClxMm+QK9aKFNBrA06s+wON1glwRkTrT4pw5KNYwqCyb7GvFNkTiEeqpDil1qvojuZhPuwcRX5xnQFIzxuMfaZd/EcdNjneZ6SPSKSBHxFAkOPUGaSFfxTZjMjhmxVfBz9rcmlWDsNXNg12om5C+KrS0pP7KjolX01vxR+rreMoaX6U+rIQ2g+KN+05yhfmXmu9Z8z3ekxj9aOnIugrJMlq5uWiepjIQP5Q56X4g15werA== 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=EKuuWKSva3wmwNJiwb5PrNgG7h5AR4dZpf1Y46c9T4A=; b=DlaBCiDIeqT6ricnWrAZVakJnEPR3ImabFQ8rvWZM40Kh6cL7afOkLnwXbzFMiMhNW0rAu0HAebqQ2HjYoIFQZeQPLydTs+c9uTUcTrD70wFmKYcZZZLsY/Az1gu/LZvmEYNE4e47Xe6ia0fJy1mtSKOnAS4QfEi1XJst+ygAp8iLQNnqVQU0Kyu+UWVWf4BEOE4O52jfMagnfCHmFvvXtU7Vi1atVtj1Xv2l4cOpztMNbr8j+HfD0g235sd84UW7Cz8dhHx9zeBsCOYgCcKtDNQDAC4cK2qhDXv3nbwsl12cQsNb3A89MaCnH/zXk5UD2OZXsj6YENh9YOxiVA1lQ== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DB4P250MB1007.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3f1::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.21; Fri, 21 Oct 2022 20:14:00 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::f9d7:680f:70c4:44fe]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::f9d7:680f:70c4:44fe%7]) with mapi id 15.20.5709.015; Fri, 21 Oct 2022 20:14:00 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 21 Oct 2022 22:12:55 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [PJsXphVDhuY63aqRC6eHLNl2lHMCMIBLDPa7Zd3xPQk=] X-ClientProxiedBy: AM5PR0101CA0027.eurprd01.prod.exchangelabs.com (2603:10a6:206:16::40) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20221021201300.3565913-18-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|DB4P250MB1007:EE_ X-MS-Office365-Filtering-Correlation-Id: 184cf3a8-e839-4693-d28b-08dab3a0ca7e X-MS-Exchange-SLBlob-MailProps: ZILSnhm0P3nnHDnbJ910YUAai4EXr732EzZpUJCnm79g6UlNFoHedSFs9tYlKOr/BfK6ZsGdwCoNnVtZ8gwyhdivQ9DQGjNihWlR1GzAkNXYOvYBvnKEuIfk8ZndxR4ataYPEgvcF3esiscwbVtQE/NjfHXD5TjbyPkMOxsMGnfhC4ZI9l/ESg7fgx+p0uZDKTaf+TaG5vpD5gKfoPK09zk+UnpaOG7W0nT6Q4iMh/j8HW4mUBSrabrWF1x+q4N1Bx+m160rOkIzw+XxvHi5vJvb7jahULJR+srAzRRuai5tDI25Sx9dKxdenOQYgN/7hGBGqy7aukCT1e+wufmDQbzZr00o0SnMYWqyTrEny1uVYZ0QyEMwrppmu9ORlGG/8oW6sUqsjmNy++jiwxYDc3ORi9CcNuWjCdhz3pUso/eJzvrAzgw2b4tR92qUjEOkEog/yKmK3FaVWcSdEweK+uYk3SiaZShkm4fraCYH5Vr+fnpbG1eIavutBhAkXXEfOxb6SDhF24sPTD1v3dXATcobGGSPmAKjUTFRIx6kDlNujts8ROiP6aZcNnpLlymSGN03ZZOxk1M6swKTZQa8UVmciotJe+N+zeJsRGX7olhzHLgNIhJWj9cbp5Za/76e7Laix69/SVhwu0kODuWWOIjxjbeR+ZHFT9wm1s3U74uXeG1NZsPnuR/MBVwQlupPq4q2JsJs1d+mXepaZNQtghZFuI/7+ksVemF/MdwA4ecQTKpOHvkJjXFcKzuEVtcn9azJACTmCE8+D/8eYWXKFPaXN6OQF+8W X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: J+rOYfH65Oz0OIMxSUnJK0+sBXAEoDUqVZDI2/F7mWtvwF1uqPWNdKjMTBSBzfWH1Lkmsxt6Ao8fY0w22rXS+cQTTYbjoB7m44kqWVZhapZaBux77bjI9sn7HonjztPXe+9lhDD9x8obf1jW2XWIL+gvokIxDTyUCkkwJLKK9GiCQVDT30I0S5459+Hxxd1goIyBb0Y2li3KNdyLCvlhNlDBNaS88fehA0p3AphvJb3/9p8871gBFWgUukdb+sNnSRoFuop17TsempBj/+shXaEsjZhJwtEaTSyaNr4m5eyh+eX/hhel8qTpwRo5OwAcqZ09/I0xHvVsK7FYJ66PHeYYHYEwvIbCxoCxCgRkgXnfrJZ6KxeFoGaSYB/9TEJFSLSNx+QshJ/eQklhJBAitOANOYRdEb2oOtL5XWSjQgrUwruDLO6yz/z8B5ZpJ2ffFRj+saCwxspmwmcbgyCYnp5oc6g+vXz0jspxsb+eInNjf3h5ETg13ujjQLMuARzrWtV4SboLYoh94aKE6St3iFhIEHmhDuVF/ayIr7WVez3XXX76SeWLaidJB0ab80uqBJO99JavkSTeBP0niRf4f5esRmWyAIiamqzfYYr1c8h7LeXeE2FOlDW/fkPEe6u+lD6kFlw4/6GWSAmWyFzEMoAc6FsmaXDH9G9mX2QksOfSD7RmV0ioR1vZn86p9oB8 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: u7AHbtwcu9l1Orolny5bgycFFmORbwtlOGqxMYZg4HxnWyJaeWWM7VOGZPVkr/ZgRpb9HGfI4JMeK33+sbBp/1HdYnUqMQTw4kHLho0ON2fYlczQdK+1Nvkgk259+wOeGEZhPKrM/mQdRpUYO8DxrvskcY43CSMxqfqWDTk6T+gY8AujaqsI5ZLfQ7VPt9m4bLKRUv83u6KEHDaNetErDjPkO7lWS0+cOVxSOPYze8CJs3hZEYqrfIRKmLqvHls5ChFngFW7GQuBf9R7yhsyD9O5Sg1YHR4dVpOzw9Gzl23wZqiKU1ov5SkagUY3eH34hYytUJd+tuzxkrPTcRMe3txAMuFr4FFpc0H0hunDSpWTVR4fJueAbzQoTO+A0UuJm+y8oohh908yGPlFI/AcWWwM8NyQrAA2I0j8Yj3Tmf2uJLnqAgnySD4twrnARJ2dzJMy0XjsXSg3HZBEJIeGCNAIK0brBoDFipxVk+lrKtARur58DU1INdMNvyx+fAqRGCELAsx76ffttRYg9QOP1Hr7xHF2l2LW4TNo5plGHfG4Ms4HklpqqSxtqXJZcvK0vXJoHlaNcuzNs81n5Phukn39tbZZVidvgyW7t8F0kYuREo7MPqRcnQWhZS23SlWPhU+L/8HRkh71KPu6dp8E1x0t4rMn3s9IkucmXxCPJhsBK3ehjRUnvnF9xol0RzGTUEOUxwikUPdtTb5bIPDueQTuCCbbTVJAS+K8OmzzHY6dK6mXpe8aRZbhrUG+JAPJHXhYE9yBH8kTedhtvc12iNvcvrvdef9Du9EfJwfAH/mjMCYI0E2mnnvIH7fsz/LVO02iJwpRzvz+ktu5nu8/N2g5ndJRZg2bc/ck4FF1HniJ/zN2nsgVNSG7lZJLbEmfI/LuSL7/5c8elX/1/lze88ypD6dKc8vXpsVtRbGhWrlkcFOaSNPGiHq2T+Asd7wAjiPni/34dmYQERfU7WFabc8FC+x1Mp6cY6hs4MjCnECHuZs0+jVoGNRYkCXCdj9M6lu/jfUUxorYP/6sdJm34uMqMbL1nOTU/ZzpZstRwnJG5mnxDJtfKSqGrDeaPE4CoG3lvqgkh4HJen9guI1DWskOrMVbb3Fvc0dbmSQJS3Rpma9jnhI1P89X4gx3i/fLr44r5vCdsLnx+9wNjFcYjvvCBfiALFSVcXAHpjqZ+1j3wgPdm6ZevlPebjezYdJ6JDmjMFiEhO0/lslkqJQ5i1uduITjeBC03hi/ElW1eHSflNiz4ScliE8MxfsOP8OnLbkLt+r6rZs7YZHg4vEg6d4E/v/gOr7mJEG2hLj5Vdwz8U/6tT+GKB7I+0gLVmjK X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 184cf3a8-e839-4693-d28b-08dab3a0ca7e X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2022 20:14:00.1512 (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: DB4P250MB1007 Subject: [FFmpeg-devel] [PATCH v2 19/24] avcodec/speedhqdec: Only keep what is used from ScanTable 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: XH7gYNexOvml Namely ScanTable.permutated. Signed-off-by: Andreas Rheinhardt --- libavcodec/speedhqdec.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libavcodec/speedhqdec.c b/libavcodec/speedhqdec.c index acca437bd5..5378b987dc 100644 --- a/libavcodec/speedhqdec.c +++ b/libavcodec/speedhqdec.c @@ -53,7 +53,7 @@ typedef struct SHQContext { BlockDSPContext bdsp; IDCTDSPContext idsp; - ScanTable intra_scantable; + uint8_t permutated_intra_scantable[64]; int quant_matrix[64]; enum { SHQ_SUBSAMPLING_420, SHQ_SUBSAMPLING_422, SHQ_SUBSAMPLING_444 } subsampling; @@ -137,7 +137,7 @@ static inline int decode_alpha_block(const SHQContext *s, GetBitContext *gb, uin static inline int decode_dct_block(const SHQContext *s, GetBitContext *gb, int last_dc[4], int component, uint8_t *dest, int linesize) { const int *quant_matrix = s->quant_matrix; - const uint8_t *scantable = s->intra_scantable.permutated; + const uint8_t *scantable = s->permutated_intra_scantable; LOCAL_ALIGNED_32(int16_t, block, [64]); int dc_offset; @@ -581,7 +581,8 @@ static av_cold int speedhq_decode_init(AVCodecContext *avctx) ff_blockdsp_init(&s->bdsp); ff_idctdsp_init(&s->idsp, avctx); - ff_init_scantable(s->idsp.idct_permutation, &s->intra_scantable, ff_zigzag_direct); + ff_permute_scantable(s->permutated_intra_scantable, ff_zigzag_direct, + s->idsp.idct_permutation); switch (avctx->codec_tag) { case MKTAG('S', 'H', 'Q', '0'):