From patchwork Thu Oct 20 08:45:26 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 38842 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4a86:b0:9d:28a3:170e with SMTP id fn6csp45715pzb; Thu, 20 Oct 2022 01:46:56 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7QL4eifjCWVY5F1YxsTCuEMg4P6XtITY87AX0W/H0OwfuUdSW358E+uRecnDYP3aAWGm+J X-Received: by 2002:a17:907:86a9:b0:78d:f741:7fa0 with SMTP id qa41-20020a17090786a900b0078df7417fa0mr9918983ejc.734.1666255616506; Thu, 20 Oct 2022 01:46:56 -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 o13-20020a170906974d00b0078e0fd161dasi19598554ejy.87.2022.10.20.01.46.46; Thu, 20 Oct 2022 01:46:56 -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=hyNdVJg3; 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 A218868BE5A; Thu, 20 Oct 2022 11:46:23 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2093.outbound.protection.outlook.com [40.92.89.93]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E881868BE55 for ; Thu, 20 Oct 2022 11:46:21 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mic9xkL+Wl5DZcMG9QNvbta+FhfnYolyv5d4NVRh6Yt7o9Z6pvVqww2wAmZ+HsSbTg5f7XIdRtRecAVHV09cu6S1h662QtkF05E48m32CyGVetwXdo4YppDJc3QCjNLX8xHj+/cxjXc3kDrwSQEvAcWskWKPft2fVfjtFaOzkOWt2xKq92W6nELiGFZB4jWcDHHKLbzdgA1f0UF3U7dfKALMAAO8ZLb4xEFZZTznb5BthiEQS9JRA+n3Y5aopnijsSYwhkXaqfQ59C8XtxXBItsvxIGRXY7sRx8BYpa+9pR1S9jT++BJj3xSV2gCOfqrfStpceCfdQxSVTGcHehnrA== 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=LfidUgtkHfsMBKOpzlAPtGwLRREqTAsmYDckTBpI7+I=; b=dZoPe/wASvij/fEkhkef9sNGshSm93lYChI1nmxqIaYdgscZIrDIe4zhtwSpRcz17BdtAXqyKCA+5nM/noLk8c9s6PlvG9eLyyp9m/MER3Z/Hj/sBlabLDw0KNFZuoemn9zAv4PYKHzPYs+hldE73r4oKQp8m+Czh2aXBVeaU9OAm7tSfqQvb2ROnRw4CSlyRALBQfpiq31RGohvheoO33LQZrSt3BoAWKk0nTe5vha4Fol8lQ5p0KY+wGkKYRG2LIQk9QABCvFJQs+4shNTrSd2bQGbQfDVlpE/gsYXf90V0BeqRknSyMA1luYjSDmsghoXchpIrBm5ip/ObMwV5w== 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=LfidUgtkHfsMBKOpzlAPtGwLRREqTAsmYDckTBpI7+I=; b=hyNdVJg35b4PJOMXkKkkXfvf/vzaaKpc0XcfiszcYEzI9PtYFB/Tvnb/hN7yAOJo20MPZ0HSVYtMj7xWKR9YYeVZ08XP/Y4vxaDscGIYy/zE7rrzK7iQqu3aIyyNgWkJjjE8XBu3Lt4AYK6NrTnamu4ItZmCbw2o11WzkriLWWx6cteRq8EmwyhwN5rH1EUgIX/Rfw+L63AOoNxh88TNzNQEvQWjNAhxDdeY3wfvKwMOaUkTOXe9w6+FWXs5aMyVGFsrBAyVDignsWW2QMA6ZQ41QCTdS2PISliffq+vNMAcpWkHwfjQuibkrEjrBxI+DSpzrLJyXh2D4WzWiAUxbg== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by GV2P250MB0825.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:aa::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.34; Thu, 20 Oct 2022 08:46:20 +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; Thu, 20 Oct 2022 08:46:20 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 20 Oct 2022 10:45:26 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [cgfohdehcw1eKBPJWqdmr/+dT3n5t8lBIow61BqgqTo=] X-ClientProxiedBy: AS9PR06CA0774.eurprd06.prod.outlook.com (2603:10a6:20b:484::29) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20221020084540.2378553-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|GV2P250MB0825:EE_ X-MS-Office365-Filtering-Correlation-Id: e90246e8-7997-4226-0ad8-08dab2778f38 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9XmqqpqVHbY8r+ej275oS7ZbBLrPa6y1P5ufYOil/jnPEFab6VH+dI0pqmHwBBQteFszLind5MDXMfMQIBVxhMSq/6hYonukqLsXoKE16jxM3FKp8joMa9cAGUakxPbw0k6848xQC71pc3XW5DJgeymBJgYyc7EeViRkYIh2fHvAGRNy918PHnLZUSGxFhlI1Hrdpaelv9kqWSHvqP/TzFFSnWNIKpYfkV+cN0xcg2G9YkNG5P1IINXviudzatZQIrVR/fpQfs9tcGIxhJKa6THzc4fMm9cat5IWW8jIvTw+m8Ntzbfc5E7so17uG3w2qjokZ0qplFYtcUfjHXLwDMubbNT7h20Nq2zyoqDAFYBur/oBP5hel545dFo0EczfLhpPFhlFcSPjwWfwgZhPS9pLVfLgU2d9XVBBc7XpeKwh+WiVRlRPL8DSI4v9cz09GV3KCKQMTd6Dk641HrbBbrzZhZucIYcTVGcSp5vF+bZUFBZOHsZjy43DGo8SRWxPmoXgTEQiq3SBmTE/A/Q79aRD2iWpTDp8vwkq0m/EHbj7VbMjkdkV0CMvHmxAg4KMPpCHV5YH5VLJD7DVdo7hGHXpTqwVWL3qf1uKAlzQr1gW8WcmApRjqIsisQHqzqbHE683s8upJY9sMYAuAKtvcu3OKDQ6uYDe4cDkk1vXU10bywXEcBg2lkPpVGkokzyFi1aFw20cYe/d9PCSyLBK/bvwUUJXIJKfBZ4rO12XVsKPjFXSWBhLtvEqgXKQh7Q+Vo1c= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RD67ydQpfZvt77JbgHrCeIL4VCkwoy34JacdSh4vUMlTcEADN67ZvTXEMAldZb86XWR0Yxl/AsTfQ5+VEvsuY6pTP5DgIb4RdAjDg1XvB6PIMNPPCYkl5ApiF0F9JM7AG8ORuysXLeEg33trVDuscIvDcWs+K2yWzt+AqSr2Mdr7pw2w/JalIKinqIf9uxgdFX1y8eQO7usNaioFc1hv3mKrt1lhlily9xv8OZY0bSq/flBVC/+SAmyDngdeKaL1TkROuGWlTMv4QVLcc13e3Dg0DUgVW7DXuI6MuGwUUoc5utDLf2KB4QwwHi5CDzRZ6xQH1P7fC+hGO0kx7Kp8pcz0Z6cj84T89kT9HiGhHrgoYb4G4trHNlzMsDKWMSzU0fUS7hFlAOy17cZ7LQ3YqiLrCNqCy/Sp6z0XBA8LtdP2OMyCR3FIjHLVcva0rjp56jMvjyzvVuSlg2BnHyPtUe7sev48fSDfQpqnUwkbjeUR0Gm4KkmCCnnzM85OQJmGX+stTqN8BV3V79OXraSv6qIVrtvdb6Ov8Mp6OtGZXC8F+CwX7Cuce0Z7tdbmB4WPllLJYXglFgQDlSgujCsHy2xkvmIaMzWu8MuiId67o8P/4OOUzYSoRSK2WT/gcv4AOw7pujOgkk+/qWgStwwAOErzhF1jQBHcSLRzJWuDn75Ehs36PaGTlUxmGbvil42q X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: tpu20IAMRSB3Asfl06Vu0natYZW24L4GZsI0cHe5o/OyOzti+4v3yVAfcUFB3MhB2MmITZ7s4H02SIZRc5Nv2cT4iKT0woQtqhHERLzzDWCm2fMl1JEitCpg8A5tG3wxgS/3+E7lbqO94Qyitbj2cZk2tVl64HcS7jIOJCCdWYI8WttZTltQma0aN7bSh8YwhFbvwh85C2BHdPzz+04GfEbItRt7bud7T+yizckTjIXl18lt7OM88uU3UQWmr3fK9D2W4F+2RhzXOTc788wIEo8Xh2cXkaF9oeIdKjHsC3Aa/kFD38t7XF3gasY3+9s8YJe4tgB4ArWiQXRVhuobzJv1oAbMwgAkRbQRAFzeqF9Ta54o0HwFUNMSkXBLw5Ab+obLsygblChfpVxNEtxC4l3KjSix63weZu+CVkQT0UNLTZAyhO4Jj7ToAWNKR+JanTcIUaTfl/EL0ppCdw2SPyhoP6XX+/+CEprrynHTofOZ6GJM0T84K7Q88tTaCk59IQKTIpRb+ehjy2ZFWx+10W8Q3mLlmOuO2dFeH+GRXdGcAaj4a6CoMuh8bZ4DWumOih3DpmZ4HlI88XL4tn77F5A6xpLYnag7RSTmQdJ1mw98wlPlGJP73hSphc38zNAfzqWv2c8xGLHucwofDoNnMkHKbmYla9CLTkNNw8wWrcAdufXio31rCWYYywaRv14W95rV+gGwMmL9i3LJXX3WNbpOkR+zgIQSS09xruTQWtFDyMDsUbhgVQ5oNhI7vm5NnjlgH8SSzDJwClGoJLGTdeYXnvsJcl6c1DjHCEapjlzQWbEp+g9KLyn1Pm3a8duyyfvgsmHf/f4l7eKkwZVqs2w76NeyM+Nc/gq5iGbaqunNhiyFRMIRbUiEpBTUE4AV6MTeRA0EdvHEu069zb1nMELYdEO0yh9/nFZOcJPDizeMtWikQeI6AYzpihTBOh/x6d8b6G6NyRfz1cOSS+7yuIkhWnWC8IGIXfXJ8/BYosTAiI13CapWk74uHKZs0rOECN/j9AwYusuAbarEAzOxud2OEXM+TLQMB2HXSfbAfsTWvxMph48zvzh/Z6ti0zrGJ2TS8nudHeHC3wnNH0d7UdTuTwQ42rJWeteWeST8BjQTkKru2hjqWirgiYJnBzU6HyH0+zDz+S3YUiMmPpigKZa+ikX0vvHijPMNfBWUnRszIHFufZPEt8sw/nTM4U1SVua7zw531VJGwR1Kx1OfswDmRU6tseZSa3l7nhgCrV/bXA64ObhUeoQTA8Bs3cvgSm0oRVI/AEASdMy+GzvFwmsgNKPTLBTHTUkqbNqyYZyl1hzx46B9X8OdUtYTLBxU X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e90246e8-7997-4226-0ad8-08dab2778f38 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2022 08:46:20.1746 (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: GV2P250MB0825 Subject: [FFmpeg-devel] [PATCH 08/22] avcodec/agm: 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: QVP/76w2Vpsx Namely ScanTable.permutated. Signed-off-by: Andreas Rheinhardt --- libavcodec/agm.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/libavcodec/agm.c b/libavcodec/agm.c index 017aa0e1fa..c365ed7e9a 100644 --- a/libavcodec/agm.c +++ b/libavcodec/agm.c @@ -88,7 +88,7 @@ typedef struct AGMContext { int luma_quant_matrix[64]; int chroma_quant_matrix[64]; - ScanTable scantable; + uint8_t scantable[64]; DECLARE_ALIGNED(32, int16_t, block)[64]; int16_t *wblocks; @@ -195,7 +195,7 @@ static int read_code(GetBitContext *gb, int *oskip, int *level, int *map, int mo static int decode_intra_blocks(AGMContext *s, GetBitContext *gb, const int *quant_matrix, int *skip, int *dc_level) { - const uint8_t *scantable = s->scantable.permutated; + const uint8_t *scantable = s->scantable; int level, ret, map = 0; memset(s->wblocks, 0, s->wblocks_size); @@ -237,7 +237,7 @@ static int decode_inter_blocks(AGMContext *s, GetBitContext *gb, const int *quant_matrix, int *skip, int *map) { - const uint8_t *scantable = s->scantable.permutated; + const uint8_t *scantable = s->scantable; int level, ret; memset(s->wblocks, 0, s->wblocks_size); @@ -272,7 +272,7 @@ static int decode_inter_blocks(AGMContext *s, GetBitContext *gb, static int decode_intra_block(AGMContext *s, GetBitContext *gb, const int *quant_matrix, int *skip, int *dc_level) { - const uint8_t *scantable = s->scantable.permutated; + const uint8_t *scantable = s->scantable; const int offset = s->plus ? 0 : 1024; int16_t *block = s->block; int level, ret, map = 0; @@ -362,7 +362,7 @@ static int decode_inter_block(AGMContext *s, GetBitContext *gb, const int *quant_matrix, int *skip, int *map) { - const uint8_t *scantable = s->scantable.permutated; + const uint8_t *scantable = s->scantable; int16_t *block = s->block; int level, ret; @@ -1249,7 +1249,8 @@ static av_cold int decode_init(AVCodecContext *avctx) avctx->idct_algo = FF_IDCT_SIMPLE; ff_idctdsp_init(&s->idsp, avctx); - ff_init_scantable(s->idsp.idct_permutation, &s->scantable, ff_zigzag_direct); + ff_permute_scantable(s->scantable, ff_zigzag_direct, + s->idsp.idct_permutation); s->prev_frame = av_frame_alloc(); if (!s->prev_frame)