From patchwork Sat Dec 25 06:06:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 32907 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp8686024iog; Fri, 24 Dec 2021 22:06:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJzWiZYcXWVYL35AH4iM1idxfA/rMtm+VFFKA0UVTJYwNm4WB+9N6xjfSWrAjXzF+9o7lrdi X-Received: by 2002:a17:907:1c92:: with SMTP id nb18mr7203331ejc.157.1640412417261; Fri, 24 Dec 2021 22:06:57 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id og15si3659809ejc.3.2021.12.24.22.06.34; Fri, 24 Dec 2021 22:06:57 -0800 (PST) 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=CUMv9ZSn; 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 926E668AFD4; Sat, 25 Dec 2021 08:06:30 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2085.outbound.protection.outlook.com [40.92.91.85]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F3A2868AE34 for ; Sat, 25 Dec 2021 08:06:23 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ql8XEbhvwjb4IlR5pRVx3/+DHmEBgU5i+Ase4brVKQjC6zAQ0iRWnnaTbhU8OZuIyrJKSTpjx+JDpGsSw9WAqO/ctWVfFqd7V+C4K9BNc3fMSUmH757blEG4Wij6zOXComZiT/ptyCxP38LNYj5rqEv2RJckE43kxBAAR8yDmuodlgaSggFgSxZxDZKMrhwzg1APXeRsGlXaoWmW0YWHYxawYDxSQo+Tc3Xu1XcF8l5kxT0GPUUPaxu9zKAv2ezm4RBv+PtfHQvDGX4oolNOMUheMf0RwPAhVM3SagNIZJyV6ogyIpKX0PrmvfKpx658ZsAv4wU/KKU+V9Hru8G0yQ== 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=e2hgXuevb0epPIqh8h3iSczhz/25W9qoW2l0TIjnt80=; b=C6LPfv1ven6neaG6Bjyk3xGdKMBMNBCCpIUglDPRitmvjNRFytG8ho5v2YXttS6We7D+ND4vL5+f1AzxZ8/LNm/PuCBXruELrgQ6glm4H+CT823B5tkiRaso8nzzjBCDtoUgqGx9V9VU15U+jAWsSF1jN3PGTr6qANZVzURXC3WSj7FPZSwzAtVKhEPLVpZeXiVZYSMDKsKOHXzqo/avx5YXHIiedSj/EP1kJ5n5LvqM3N9sYjMN7epK+lDyguHGTHhIrmYrjgxmdHth79/1M5u7esfaHnGnX4Npcuxr3hRIMCR0x5ySghCzzI8qwRC01AUZOFl+CX5ESH85xeTBYg== 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=e2hgXuevb0epPIqh8h3iSczhz/25W9qoW2l0TIjnt80=; b=CUMv9ZSneJulAEbawUpbuxdt4Uun4eJTEGJtL80u8e8E0BlN0myN59RUydGQufQMV97s6W7i9+GTMYxWEU7XuLUXE4dtxmPPDOuh6Kq/kWbmCZUjMgR7/p5MRJCT42ZNq3rjyd05iJtAu0XR9riEEPb+DnuGDn/AWPWgyROft/WriLNGIb0brwDoqLtnVly0O97o0EAobZ/NpnnwdwDcDN8m45SQh+ZGQvghUO7huQG3fwHnmcDcENQlBqtTQ0nPFWbPWoTIiDT7GM4SJuKQOv0ML4l/l1+dCDZWtIfYuMhL6hOZPDdHz7yTRw8a7w08MNAayC2HFPpl16Lsa45G1A== Received: from DBAPR03MB6664.eurprd03.prod.outlook.com (2603:10a6:10:17d::22) by DBBPR03MB5445.eurprd03.prod.outlook.com (2603:10a6:10:dc::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.18; Sat, 25 Dec 2021 06:06:22 +0000 Received: from DBAPR03MB6664.eurprd03.prod.outlook.com ([fe80::8c52:d93a:8d07:9f77]) by DBAPR03MB6664.eurprd03.prod.outlook.com ([fe80::8c52:d93a:8d07:9f77%6]) with mapi id 15.20.4823.021; Sat, 25 Dec 2021 06:06:21 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 25 Dec 2021 07:06:12 +0100 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [3lqGrceM0vTJxkCXfT8lohp5jhOs6iAA] X-ClientProxiedBy: AM3PR05CA0135.eurprd05.prod.outlook.com (2603:10a6:207:3::13) To DBAPR03MB6664.eurprd03.prod.outlook.com (2603:10a6:10:17d::22) X-Microsoft-Original-Message-ID: <20211225060614.2345147-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5b40a6c4-bef4-43dc-127f-08d9c76cac8c X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiR3EehW4kxQzdNcP2D/mG1JdHiaIs/1TneSHBWoLcu2lwOixX8VZ5GpU+Ivkx7BOdNsANDxTtEpS8Gd/4zbH6y4lYet2LPbf/qIRRSDLG908lgr69kk/ozZ5xlCCYuIUyKoigqcdRFODdPpivmjYKPPyROAfha0bldDxWSWca5q8ZEtGzUdKTR5nngn2oNnKkaJM3uW8b/jNusy3OleMwChkd0d+iW0br6rZuoklMDga0/pk+eN02jGlCGHyrbXuNKtkfae6jFoJOcYw9SDNLbKjM6FwEOHGFTfFVT+nPIp73PCNNkd4/6RNbvbfIfepP1cBVAYYz+jatLphyqOri+2OMmppW+1RryN3E4kmTyScE8bRNu05jWS684QV5diOb101rFf3VOu2xM2Oi3SL8a8bDb5PhUx7u0ILa/5LopnoH4wkAOnehWC1SZ7hVMisSVgQRVjpgXIKFaw8qUddhdWJwXzRIo+uzmRaTlIzddYXWuY+w7I9hjhkXQqoqTAHzWSzvijk0pG2LJw0QONZmsqjQHg+3CSF9I6oIRjBSd1Qo/kACSwmyIikyO0X8T2bcxbbd7PGEBAs2vRjiOXfNEBQACW49tEHDB3k2Vzl8ede/Ri2YirztlvtA+ozwErRqU3WWLzlHJ9+LFpbqwPcbZfnbpWoz9g7jQkbww7al1CVF5l45M3dNFYm4Fedpi5hICQRYzBopD7yd4bbsu5+Tl8p4qv7ull1+dIYBWb8t78JGQZYODKnllCItHvSCZwGZo= X-MS-TrafficTypeDiagnostic: DBBPR03MB5445:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CqpFMXyndpnSnW3zdgGxQHjCH0parD7ac+XaZm+6Dzi1FQ/IiVu87B08P2eonaRdcsT8f7q0a+SgJ2z1QTFm4BPqgvaqOWrG9Up2S1arFWYSyWcrkkASocp9Gf5jJkaSLdTJfM5ft7YApPzKqHH3/aj4tDLlmvYueXsYwyEv9X74SrCv0BJFwZdiL+GcHczWyqtp6W9U+8P/sbfeDHnNAUTTN0ySiGt4AuN/uGBouXqIAXpSL/KT5CXHewiuz13s+VM6/QqD3bLtBc47b+CJgRmjEwRt0q9RpKyjssy+yCIETeX2ua6/rwj8PhVHMlZqFRD+ynzVUdDi0psWxTeDL0vq5ZwagesnhlCTLvuHr1BAGU9hcufSCMiIqMKL9pE73M2Egr5EHgwrNHS3EO6Jj7voZJ94kkKi+IKKkbybm2ZLQ+Ubn6WIdtiWl1k4HOgXdB8B3nrjkJPAze0pi1dp0S+49xCxf1liMkb+VkhYSbR9KbWiYECOGNFP4eUtnSJuilbunR81zZEhGZxEtPMHuwY8FJ/m0heaCNqE6aUaOCf2Y0iqAafk14FolXY59yGqgi648lgiiWQIKRkQRv423A== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: h27zHx4grbY7FgxAuZlh67/u1I5/wswqy7eIo/OMHc1pRCFoetGkcmUMZ1jJtWQK2qDMdTkTgtA4q5evTTfvjlzARTEmurVwCyBpOCwq0J1lIy6orRzh40M1bCzau5jSWrha9/UrT0+LlRBJ7oR+d1XEsK4ZpYnC22zPmac6yB3sHqZJnN5/YLLpnFEY8dpIlBVGQy3RHfdFdcjnsi7o3ADOcY1KxcaUi5GiB+f5H/HSJfBgKs3n7F7sk7fWAYZPrV10MxbQ4z1/Q6/Zjswq9UC+ki68yffeLqCL1vNQmt0MKWVCRNCEbaXqfodYF+WqvfQzD0J2jWevyppR+NUaYlNwmZc3sFue5zZ0SxSk9bxkIT0glslYGADFy1+WoY7ZIv6Gzn6+gjOpnQ3dJlRAMoZCLPxST2d/8k6UzkozXKaa4+sqUpbRQmn4qEJQI+KNETfAVGAVXBg/aqdTk1qLmAEKDLsi6d8ansHf3SMdk3VOFKqJYdXmurYQyVvyZfVkH7eljqqk4eCSXYruhgOJ26JYQ2ubgwwOqj24g2aAph2VjTxmrTFn3136/MUcHks/ogJaPGCEjrk8Q2crPGCjupYxfNi7arJuAk/Nu3ONGOp2xdXeb8NydPAqCU41Wkm+m6mSyj53MCDWUflDo8IEc6/0iZoeQ3oQgi5PN0s98QjqWQJqjUMBcRRNhbADQYV+jnevSYYkKGwu7LGiC/GNUwpZshfnYxattEgJzNFgSgJ11R+pZnZH+K1eZCoNa4H7lxg0XDDIUZB0VBlyB/ag/uqc6Vu+Ztb+v6S1OqGNUJMy5HHtuhKibtx23eliKBvVZX9rOUnhgJB2VgLSS0Yqj2hTm2a10kgLrv2kJrkgAgZLAdeHxobknxODzxjzpHpzeRHNJEmvejRQThgzMJRsWQ+GIbJ3Csby/GHaud9biehWxiHVc/vF1TxtkMA4+63JaI5jb2b08Zw7SotuMWQj9A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5b40a6c4-bef4-43dc-127f-08d9c76cac8c X-MS-Exchange-CrossTenant-AuthSource: DBAPR03MB6664.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Dec 2021 06:06:21.8953 (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: DBBPR03MB5445 Subject: [FFmpeg-devel] [PATCH 37/39] avcodec/mpeg12enc: Also inline chroma subsampling 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: LKUfW8gSYSZJ ff_mpeg1_encode_mb() contains two inlined calls to mpeg1_encode_mb_internal(); these calls are supposed to inline the properties depending upon the color space used. Yet inlining vertical chroma subsampling (which allows to remove complete branches and blocks depending upon them) has been forgotten. Signed-off-by: Andreas Rheinhardt --- Looking at this code makes me wonder whether inlining was ever worth it here. libavcodec/mpeg12enc.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 3692494713..1437ac421c 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -773,7 +773,8 @@ next_coef: static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s, int16_t block[8][64], int motion_x, int motion_y, - int mb_block_count) + int mb_block_count, + int chroma_y_shift) { int i, cbp; const int mb_x = s->mb_x; @@ -918,7 +919,7 @@ static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s, s->mv_bits += get_bits_diff(s); } if (cbp) { - if (s->chroma_y_shift) { + if (chroma_y_shift) { put_bits(&s->pb, ff_mpeg12_mbPatTable[cbp][1], ff_mpeg12_mbPatTable[cbp][0]); @@ -1025,7 +1026,7 @@ static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s, } s->mv_bits += get_bits_diff(s); if (cbp) { - if (s->chroma_y_shift) { + if (chroma_y_shift) { put_bits(&s->pb, ff_mpeg12_mbPatTable[cbp][1], ff_mpeg12_mbPatTable[cbp][0]); @@ -1052,9 +1053,9 @@ void ff_mpeg1_encode_mb(MpegEncContext *s, int16_t block[8][64], int motion_x, int motion_y) { if (s->chroma_format == CHROMA_420) - mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 6); + mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 6, 1); else - mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 8); + mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 8, 0); } static av_cold void mpeg12_encode_init_static(void)