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 3BEED4B72A for ; Wed, 12 Jun 2024 13:53:56 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 91B3668D9DD; Wed, 12 Jun 2024 16:53:00 +0300 (EEST) Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03olkn2106.outbound.protection.outlook.com [40.92.59.106]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B1E5E68D9D9 for ; Wed, 12 Jun 2024 16:52:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WjC7snVdSzMEy8iKJdtxUDHdlUHrLphh3iFTTzHHUC/01Htnwt8jVAhMAHP7+LJ9Ypkqpsgyd22tnQaLOjnX1kxsOvt7xn2gQKA3X4PnNBvKpOz9RK62T2qfEhd1JUXMzlFGkOq4YkX8T7gBCilRxWR3tuwP3Ko9HEZ9zFiQguz/r28oom8+1MTqRxr5sB+Bn3eUs4UipRtBSUTox97sn4SDihlIifQD0uWB1np0GucOgdDMg+IiCdN+0g6E6O6ioLmZ3bxRtktift7UIj0jXEuDZJJLAI1rgBGlt8k0cEJeDYB9vpqS8wvtW6rJ0GKe+dWSfeACfvIWoB8N5sol0A== 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=pD6/pwN+Ay8+88A15cTRNw5d+QU5qEfsn2DO48rX1sY=; b=KKqRnAAEMZscobTTlLcWqGbGigs8jbTUGj4Z9m530Iu9ahIOqgSppWoRol6OwoWcn9GCzIZpVm1hjbAgrH4uvaLAEx+v35FRcVawD5cDxlcdYLuU8/swfq7wSRbmVpN4IY1ZAwQDAE8kJ8gm+iyybTBHBQQHkH6UHoJEvrpg+kiAAswehlaO/HSSHWhFyKiNJ7uxck5menXzb7pzSpXehN3A/oZ9uWhGQ23BxoBc7Kh15gaIjcudrPFssBk6MUeIlpCxhNUq4BUxePHzTlUFHioUUokL8vbZwGWTrK9lapj592p6bd3FajkTJgsIhN3tEiE1V/V8nHxVMTjnic4REw== 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=pD6/pwN+Ay8+88A15cTRNw5d+QU5qEfsn2DO48rX1sY=; b=q2KAnFngU5VOj/rJUW5OobPlgehj62Ea3+BcTOthHrlvTkY52watrYYAnwY/BLS+/+WKvg+GpcuNMH8kaWXT87SswVKuKb6M5v4zjK+SWxb/VUSWvlwU8zg7ZUkuXwhfrqvQkndyuHqmi7cNssBa57KtnW/Kn2fPbTkFD/h7+w3MeQfKSEHxmfP0MUeIvx6jYHebqHIGs4ZDZt+9XBdwpRDDW9hpippzHBo11mTDc0I+Y6IYntJ/Bkl+e5qYTnAgJ67BoushLtjKtvsdB8WyTf4hPW9T4OFT7h0Rutn9HpI4qSZkA8vsugvLGzzo+SGKSm0KSJ37FIuDKYrMA5g3XA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS8P250MB0054.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:359::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.37; Wed, 12 Jun 2024 13:52:57 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614%3]) with mapi id 15.20.7633.036; Wed, 12 Jun 2024 13:52:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 12 Jun 2024 15:48:24 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [k7vlo85WgB2cLnw9GEVLNF2lIfSC8rM9] X-ClientProxiedBy: ZR0P278CA0189.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:44::6) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240612134853.2102377-27-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS8P250MB0054:EE_ X-MS-Office365-Filtering-Correlation-Id: f8b90805-9759-48ed-b46a-08dc8ae6f73d X-Microsoft-Antispam: BCL:0; ARA:14566002|461199020|440099020|3412199017|1710799020; X-Microsoft-Antispam-Message-Info: 9x07boy1+7t0pI9Gpgpu3/CUWRvi9+rYOYo3Q0vfc3InVcITNrcRxhHFQcanHPk7v081ozZ9CWqA+HQ+bNp57w/sa6kOxsVWvX0zdBG4KU+yecz0eyHbRu9fsE0rByQnX8sUvroM6krOcfWGucLeqOGoXV1YBZjKs9XLxeS74NZIY3G1mvuMbnmqmlac2xkUOp++RkFxL14dgOhhsV2rAjv2OFsnP1WBG8HncE6IC5JptvgAy49h7KjObeiiZoWYOUx/LA7dm+iCtVPfZGg9hrZ4pzs+HXcxyQQhdJbm1oL6nndxsZ8z8sZact7Ufih5+aw37wq4cyVuv62cmV12mkuGzggZQ1aZCXlZ0Qcp9365fmcqZks/Yz8Yce1Z/ErhgBGSMFM2XrEPyOn6l9Ynw9jcLs8ozBKlTmnjB9ogzDV5Ik2Sc3CgN8ce+OfZCLmDzjNxxw/ySzWYywaBaDA0bk64Y2hHC1xr78TWJDnbRIKvqdgC1iF3iv+CLuL+8PnlX+va1llV07pnZskqAEdtJ7BsXD0uejcRvJJrpvrZb1ahgvOmC2smvmRcOBTTlULz/MxQaxnuWweqjm4VJZdLNYA6xOnMZLZ5AjpdutEpItTXvlTglGZYQcD27GzJtqdo X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?SkhM+Z3dZcgIhb1nMNuPzkmoKv1E80oroxwCPy7OzJKkGMnkZE2c9d1az4RI?= =?us-ascii?Q?Jt2Yx5eJQ0YazrVqHoumwf9LX9dC2hEzAlu9iD7hXN+mdVyxhuPZlEBizJOm?= =?us-ascii?Q?yeXkTY5RkEH7MjpVkuVjt6JjDYVGa8z1VZY6JYuRWnF21IcbVqO+wCvPtpm6?= =?us-ascii?Q?lLshjpzMBHQXazFRb4pAoxsK9RkY/yAz2w4LLG7NkR2Lc0bzcPN067N2oxZF?= =?us-ascii?Q?EsivH/NFnT0y+JYQeyQORKE30GYC4pLT9kAuFyDkG5FgqPwXyTphChVbI5pp?= =?us-ascii?Q?rhNDoI3rrMGkv3Y8id3ejxUANCz27xJj0okPFwBT3972PhsYvBxTu5B0WkwM?= =?us-ascii?Q?NFvZs3mcVubjU6AdExoEQ873LujY+pC3eaCLyKDknX5CbWcG7dHu7YPeIuGW?= =?us-ascii?Q?DN5ygo6Ke01kek9eCtNaquy4zhN5rmTfwPxiqnuw/hisIh4cEkeqhvXmt6e3?= =?us-ascii?Q?4HZmTZI6ovHsyKbBDf5zcTwkXGnmzzlGruOfvL3aCM2WA+hbz/+wIa2N9/A+?= =?us-ascii?Q?awbVuLFN/nHXabp09yBBwgjF4lT/fYP936wsga6iMTtbMEIO4fibMvEcWgG/?= =?us-ascii?Q?wtivNWX0AQo42vGAG+QjlqrKjVVmfRVIMVz8cK+6rjlMBmnmw/wWMTyQhowX?= =?us-ascii?Q?sQVilddAArf1Bm2FQZ4qkoKR+3D8/x51TWOL7a1U3h3AqDa1q626lsyhwa03?= =?us-ascii?Q?APiXOUIuYBi6StBurniFqDpP2/V68ZhsjWtG5JxnprUF55OkDat7UGO8rtI7?= =?us-ascii?Q?KEZj6lPvGMfAt6M3n2P39usEtY+82udWs9ze7yMv/8Jz30hyDjnZYEnchPnu?= =?us-ascii?Q?0FiTImmDJ/zG2dwB/0N53TtTM/twuhLwcCFuCRlsexzrvpc1T/UUSBPcB6/h?= =?us-ascii?Q?5zk9Uoo5WurAUsWWkNalUACkh5q40Z6nQiauh65l89GG3nCLXDKBFroadKZG?= =?us-ascii?Q?drsDPA+QUUybof4A2CFhiS0i6qxAkRv4yk/jWZUt1qi8mbwfvEiBvvc16qhc?= =?us-ascii?Q?MZUw3gd8bh4ErIr4izUAXs0EQf0oIVWlTDq4RahgivSI/qMa4r3w/ukd5m0r?= =?us-ascii?Q?ISbJnmEtnEoaCsmrrkYcvMw4cOgfyFdGzW3ccD/vGraqPA99NoaqlhfDBLdJ?= =?us-ascii?Q?oPOpARaAQD8wXckGMDLjtowoYQYwWijxDR8bI+ew2XEjDy3R5ywvRoYufPjO?= =?us-ascii?Q?tDNUGzQVVsvFOwBgXHrJ10YXQI+kLZLcDgFBionr6/FI5gZXgVwOOeIJk2Q4?= =?us-ascii?Q?dKHgCVWSWyoerbyUF6LNyeNW1t+ZXeZSWtraKhcCeQ=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f8b90805-9759-48ed-b46a-08dc8ae6f73d X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2024 13:52:57.7490 (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: AS8P250MB0054 Subject: [FFmpeg-devel] [PATCH 28/57] avcodec/mpegvideo_enc: Avoid branch for sse vs nsse cmp 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 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: Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo.h | 1 + libavcodec/mpegvideo_enc.c | 23 +++++++++++------------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 44695776ad..79c5561793 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -507,6 +507,7 @@ typedef struct MpegEncContext { int quantizer_noise_shaping; me_cmp_func ildct_cmp[2]; ///< 0 = intra, 1 = non-intra + me_cmp_func n_sse_cmp[2]; ///< either SSE or NSSE cmp func /** * ratecontrol qmin qmax limiting method diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 8022fe474a..3d659fa290 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -329,6 +329,14 @@ static av_cold int me_cmp_init(MpegEncContext *s, AVCodecContext *avctx) s->ildct_cmp[1] = me_cmp[4]; } + if (avctx->mb_cmp == FF_CMP_NSSE) { + s->n_sse_cmp[0] = s->mecc.nsse[0]; + s->n_sse_cmp[1] = s->mecc.nsse[1]; + } else { + s->n_sse_cmp[0] = s->mecc.sse[0]; + s->n_sse_cmp[1] = s->mecc.sse[1]; + } + return 0; } @@ -2664,21 +2672,12 @@ static int sse_mb(MpegEncContext *s){ if(s->mb_y*16 + 16 > s->height) h= s->height- s->mb_y*16; if(w==16 && h==16) - if(s->avctx->mb_cmp == FF_CMP_NSSE){ - return s->mecc.nsse[0](s, s->new_pic->data[0] + s->mb_x * 16 + s->mb_y * s->linesize * 16, + return s->n_sse_cmp[0](s, s->new_pic->data[0] + s->mb_x * 16 + s->mb_y * s->linesize * 16, s->dest[0], s->linesize, 16) + - s->mecc.nsse[1](s, s->new_pic->data[1] + s->mb_x * chroma_mb_w + s->mb_y * s->uvlinesize * chroma_mb_h, + s->n_sse_cmp[1](s, s->new_pic->data[1] + s->mb_x * chroma_mb_w + s->mb_y * s->uvlinesize * chroma_mb_h, s->dest[1], s->uvlinesize, chroma_mb_h) + - s->mecc.nsse[1](s, s->new_pic->data[2] + s->mb_x * chroma_mb_w + s->mb_y * s->uvlinesize * chroma_mb_h, + s->n_sse_cmp[1](s, s->new_pic->data[2] + s->mb_x * chroma_mb_w + s->mb_y * s->uvlinesize * chroma_mb_h, s->dest[2], s->uvlinesize, chroma_mb_h); - }else{ - return s->mecc.sse[0](NULL, s->new_pic->data[0] + s->mb_x * 16 + s->mb_y * s->linesize * 16, - s->dest[0], s->linesize, 16) + - s->mecc.sse[1](NULL, s->new_pic->data[1] + s->mb_x * chroma_mb_w + s->mb_y * s->uvlinesize * chroma_mb_h, - s->dest[1], s->uvlinesize, chroma_mb_h) + - s->mecc.sse[1](NULL, s->new_pic->data[2] + s->mb_x * chroma_mb_w + s->mb_y * s->uvlinesize * chroma_mb_h, - s->dest[2], s->uvlinesize, chroma_mb_h); - } else return sse(s, s->new_pic->data[0] + s->mb_x * 16 + s->mb_y * s->linesize * 16, s->dest[0], w, h, s->linesize) + -- 2.40.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".