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 61B0647BD1 for ; Tue, 3 Oct 2023 22:13:45 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CEB1C68CB71; Wed, 4 Oct 2023 01:13:42 +0300 (EEST) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2036.outbound.protection.outlook.com [40.92.73.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BF24268CAB8 for ; Wed, 4 Oct 2023 01:13:35 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OvxPLZq8E+vKAmanwlgOOd/aEgOXGQLn8epsF6A/rsdOjEjR8jPdP9nn0+NOW1pxQRyvuIK/oFC3GxJyrZFuAiPJqlnvIkcrI8pHkXkIT0bPoDCpJ6QrMlp6BmfIHXFdi9C739+lAK7YYNTAUGZq/pOlZcsy4qC8y6DrHEBgBrQbVGsK+L/5APShJoLsB1e0BXd0Jikr89aIXWudl+x48uS2FOayS2V43dBG8SGjHqpdWE/QCZwSr4YT8wFN2IMYghq+JLNlCk+291MYD9JO2R7otc3BPT7V+/JtUVlqu+dvX220Gkcf2815dF/Jk3Tph7TVsV6oqcKMsaoWIg5yvg== 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=uQHAcIrRyy9+oJuR5wmvJIw4opaootWq+xmAqfb+vvk=; b=aiNbiQRetu1kFcQYKV+ag12/n6P2SpcpUWxWT9q8+vKOPEZGFsP89rr3cXW12on2pIbRyasr7LoGDnQ1GfFgJoHgIVRfcetfO69i5xuYBo5e0ax8x2n1yT/Q3PBAVqe4Il7GV1w104+XZHN5kZ7lQChp1xq5veYxR1lO0O7OemUodAdsHogr8EMvo35FqaquQFL2xP3FEw45Hg2Pr3lpNzOoN7+IOSNthAYT7vaUashB94limfp+qKYO+ojRGivzNo8hBAnSGwT8Gn5S+izEqlECC29p2L44JjRvryWe/K+C4nR8FJ4GWQJnKoCAkq8LtLr/MirBNIkFAJOt+C1EkQ== 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=uQHAcIrRyy9+oJuR5wmvJIw4opaootWq+xmAqfb+vvk=; b=cOYYLBZXn27ZxdzGRP9/Zs4TqJ3ToMY6NuORRAP80VQZ2s1923HzxqmgGs3xl/7+PsuQt8PeWIZ+WL6rqImyTCE0l2+B6UWKdKpw7532m+17q+o/VTA/AMN9wD5bxp32Dx6Fu5104mf+qrnah6tS+h9+vQuj5LUuBjhWfZnR9BHKZJ17aMOmcIl8/PpMmHG9C3EaBAswLhqjphwmYnen3jApkIJzF4Xw5SvqYb1f+oIr5UdrDuFR/pB9mS90sZT5oSgI5/R+goPHuSeIdXoK+p+9HVciF30P5jCwRoFBUjkJk1bgrABVdw+KAHCbfiIfgHkOxNDpwtPty1PpGZJNMg== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AM8P250MB0278.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:329::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31; Tue, 3 Oct 2023 22:13:34 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa%3]) with mapi id 15.20.6792.026; Tue, 3 Oct 2023 22:13:34 +0000 Message-ID: Date: Wed, 4 Oct 2023 00:14:49 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-TMN: [6igOWju6b5DGeEGeTs52YE0CIOOVAh/9] X-ClientProxiedBy: ZR2P278CA0058.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:53::18) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <553ce099-fea3-4f54-bdc0-1b5fa4f5e867@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0278:EE_ X-MS-Office365-Filtering-Correlation-Id: da5fb582-4d3b-4ff7-209f-08dbc45dfbb6 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JDy2TB65cE7C8G9MYzizhiee72LZVIXnnxG0n3bWqFiwiczenzWpqcuwLquUvKZXhThFH0HnsEZFFKZupyAZyZN2PCRpTIK6kODjat1mI6T3yV9WfAxzajgeGIwIRboDfJzfoyE/8ER4WbfWpZotz241i1v8mOEzLvcdY1DEtSkI8cxgT/3nQVM69mb2enmWOZgjiv9JN742J/LzFON5dN6/jCTD+/LIvM7PDmh3ZITMPLsMcHM97b+sqL3LBmw2V0IvfTOlz/JBsJfOzBaJ++Vimm+Rj/Df2iwb4IdT1GxDSlRJHnkDsyiorQ3k0fp9GWK7i4wyqFGVQsfgMCq8RheYa2nuBeVIOGsRehH3WNfcoCoiPHbS8ha6dAMPg52f+2uTjr2PadE3aB7bJuJgDEPdeC/P+S5UoIOGMw/TX6+hZXBEb+eoOKpUImBHA8vGp+bMAt7jnHNdeZgw688eWQm73+AhOe2/DJD9gjByZ96mivHs4hmmXqIgomOQRiZiq2CREURFvp9aKaVjj54VaPlmCpdUjmAC2/B/TALLbfzMaBL9Umkx/dWUBX3fFwDw X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OW9nRjdZTm9MUTVjQlBRcTlJd1UzOTdWNW1aRWg1ZmxoMEp2VWtTUlFtZlVZ?= =?utf-8?B?WnFqMUFUZEZrOVg5Rkk5UUY2ZndXcGR4enBnMEJPa1pPeGZ2WW9RaUZzTGtD?= =?utf-8?B?QlpCdEJyVVFST3g0VzB4bHU0QytGSm5pbjNtRS9CY2M5YW5QWGVQcFZYMFRn?= =?utf-8?B?VWhzekxNQktCTXJwc3BWMzIrR2NGalRvc1k1OUllRmJBYlRXSTZIdXJXUnJq?= =?utf-8?B?TDBSZlB5OWdkMG1mekFhK1p6WFR4UmI3ZFRWZldXMGxQcnVSVDRLbDFiUldP?= =?utf-8?B?R0lzU0RNaWFBR1BVanpHSnUyVWdsQjgyWVJtQ3VDZldvT0owYmEydCtaQWk0?= =?utf-8?B?UGxXWmxicStOaE84bzlUWTFydWx4U0xXMFg1TzR6ZTF3aHJPS2tLOVErR1N1?= =?utf-8?B?UnF5VFdISHFINnNKSlAvc0UwNS93V2MwcXBPMUtZSEhYaEFqM1E3SDZRUCtH?= =?utf-8?B?cEwwM1YyaXJJdEZsYXBJU1JBcG9VU2RkQmx1UlpNeEF4ZUR6VDYwS1NhTXhW?= =?utf-8?B?bTVsWTJ0YVFCSlhvaDUxTUppcE9OZW0zc2VRL1BEQXpVY3JxZGdvYmV1eW0y?= =?utf-8?B?TDR6ZTN6OWlLVk5pOWk3aVM2cVprOEpkc2tjNW1TQ29meDdURWFmL3FFSm1L?= =?utf-8?B?UjBJVk5mVDdYZmF4RURNRDAwUUtSelVOcE5Oc29TQ0RaVHhuY3k3TkhQcDBK?= =?utf-8?B?di81RzBsTENwamdrVk5mSlRZdWFkT29qZDF6akxkelRtcG5FQVBRZlhiZ3dF?= =?utf-8?B?OTl1L2JTY0w1REo4RFU5MGRjQ2NSM0hTYlFEMGtRdjFqUDRUdzg1QXhkSlFM?= =?utf-8?B?Nk5SY21ZSlRDWjhXd3FQREpmTHYzYTFwSkJXeGJSNmZtZlRSV1pFWGhmb0g4?= =?utf-8?B?ckR4Q1h3L3N1b2lvSGhDTGVUWDdHVytxZDBDeFRhSVMrQytuS3FtZjVleWpI?= =?utf-8?B?SFROL0hYQnY4MSs5aXR0WHRRVnZjOTNSSjk2S3lmM0llckduU2NFaGxqbmZr?= =?utf-8?B?MWZ1NkxqYUJmd0pVd0k1RnlSaDNvdHlrVklXOGZqZ0ZEd1dKVnZsZTAyWTVZ?= =?utf-8?B?MytpYXMzRWxORlB2ZHNqZW9kZEIzV0ZrR2loaDlWMzJ0d1JrRk1IQXI1QWdK?= =?utf-8?B?OWsxZUtIcVlmR3FGV1oyMWtmNXFlK0ZHbWxhVDRCZ3pGVTE4RGVheTR1UmlR?= =?utf-8?B?aGRCVkYvU0szT3B0U3pHcC9VNms5cU00cGRFenVEQW51Z0RraVRRekxQV3lt?= =?utf-8?B?cExtb3d0ckM4dVpoeXduVHJHRXZEaVB0SHlibmU0c0Vzb09RZ1YzRUpWRFJl?= =?utf-8?B?K3dGOG1XQkNtMXNYeWlSTzdEM3N4d3N0WnNvb2ZibWJScEZDSThVaXExMEtw?= =?utf-8?B?TEZIeXlJOHFleWpGTUI4Y2JDNnBENUJBNVBYR2xEci9DY1RyaU5MRFMxRVE4?= =?utf-8?B?ODN5SGJ1MTl6cSt5b1ppN2N4ZWFmUHIyNXFSemFQK3NQMjhzKzcveUFhdVFw?= =?utf-8?B?SHE5ekJpQjlBeFphcThEUzdZRVBUYXFSSXdDUjY1eFU5a0pZTkE1TE9aQlln?= =?utf-8?B?eEFYLysrc0VqL0dLWmZreHF4UnpUK1Z1ckVMQWlRSEhQNUcxWkJIVzRXRm1i?= =?utf-8?B?YjdHVFFkT20rZXQwY2xaNU04eHNIY1VOSnBLZmVVWFNkeWN3TGkveFgvSlJp?= =?utf-8?Q?xIC8uT9a246qteLp8qkk?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: da5fb582-4d3b-4ff7-209f-08dbc45dfbb6 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 22:13:33.9853 (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: AM8P250MB0278 Subject: Re: [FFmpeg-devel] [PATCH 5/8] avcodec/mpeg12dec: Don't initialize IDCT more than once 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 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: Andreas Rheinhardt: > Before 998c9f15d1ca8c7489775ebcca51623b915988f1, the IDCTDSPContext > has only been initialized in ff_mpv_common_init() which is deferred > until immediately before decoding a picture; to nevertheless parse > the quant matrices in sequence headers or quant matrix extensions, > a dummy (identity) permutation has been stored in the codec's init > function; after ff_mpv_common_init() which could change the permutation > the matrices were repermutated. > > Yet since said commit, the IDCTDSPContext is initialized during init > and does not change afterwards (unless the user forces different CPU > flags), so there is no need to reinitialize it; the repermutation code > can be removed as well. > > Signed-off-by: Andreas Rheinhardt > --- > libavcodec/mpeg12dec.c | 26 -------------------------- > 1 file changed, 26 deletions(-) > > diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c > index 92ef6944fa..d2dbcd5b61 100644 > --- a/libavcodec/mpeg12dec.c > +++ b/libavcodec/mpeg12dec.c > @@ -1057,8 +1057,6 @@ static av_cold int mpeg_decode_init(AVCodecContext *avctx) > avctx->coded_width = avctx->coded_height = 0; // do not trust dimensions from input > ff_mpv_decode_init(s2, avctx); > > - /* we need some permutation to store matrices, > - * until the decoder sets the real permutation. */ > ff_mpv_idct_init(s2); > ff_mpeg12_init_vlcs(); > > @@ -1093,18 +1091,6 @@ static int mpeg_decode_update_thread_context(AVCodecContext *avctx, > } > #endif > > -static void quant_matrix_rebuild(uint16_t *matrix, const uint8_t *old_perm, > - const uint8_t *new_perm) > -{ > - uint16_t temp_matrix[64]; > - int i; > - > - memcpy(temp_matrix, matrix, 64 * sizeof(uint16_t)); > - > - for (i = 0; i < 64; i++) > - matrix[new_perm[i]] = temp_matrix[old_perm[i]]; > -} > - > static const enum AVPixelFormat mpeg1_hwaccel_pixfmt_list_420[] = { > #if CONFIG_MPEG1_NVDEC_HWACCEL > AV_PIX_FMT_CUDA, > @@ -1177,7 +1163,6 @@ static int mpeg_decode_postinit(AVCodecContext *avctx) > { > Mpeg1Context *s1 = avctx->priv_data; > MpegEncContext *s = &s1->mpeg_enc_ctx; > - uint8_t old_permutation[64]; > int ret; > > if (avctx->codec_id == AV_CODEC_ID_MPEG1VIDEO) { > @@ -1297,19 +1282,9 @@ FF_ENABLE_DEPRECATION_WARNINGS > > avctx->pix_fmt = mpeg_get_pixelformat(avctx); > > - /* Quantization matrices may need reordering > - * if DCT permutation is changed. */ > - memcpy(old_permutation, s->idsp.idct_permutation, 64 * sizeof(uint8_t)); > - > - ff_mpv_idct_init(s); > if ((ret = ff_mpv_common_init(s)) < 0) > return ret; > > - quant_matrix_rebuild(s->intra_matrix, old_permutation, s->idsp.idct_permutation); > - quant_matrix_rebuild(s->inter_matrix, old_permutation, s->idsp.idct_permutation); > - quant_matrix_rebuild(s->chroma_intra_matrix, old_permutation, s->idsp.idct_permutation); > - quant_matrix_rebuild(s->chroma_inter_matrix, old_permutation, s->idsp.idct_permutation); > - > s1->mpeg_enc_ctx_allocated = 1; > } > return 0; > @@ -2169,7 +2144,6 @@ static int vcr2_init_sequence(AVCodecContext *avctx) > > avctx->pix_fmt = mpeg_get_pixelformat(avctx); > > - ff_mpv_idct_init(s); > if ((ret = ff_mpv_common_init(s)) < 0) > return ret; > s1->mpeg_enc_ctx_allocated = 1; Will apply patches 5-8 tomorrow unless there are objections. - Andreas _______________________________________________ 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".