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 590F94AB35 for ; Wed, 12 Jun 2024 13:53:38 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3521868D802; Wed, 12 Jun 2024 16:52:42 +0300 (EEST) Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02olkn2073.outbound.protection.outlook.com [40.92.50.73]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0DA6368D802 for ; Wed, 12 Jun 2024 16:52:39 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DySt8kZpAs43SgT/F7+oTWiJQoHK0wHF5hxQYlICqrqw6cGBRky4LXEnjfPk4lJVwumHFI3r+c32aQIEujuNukThUG9RwmwjAwoql0viOaCu1APZOivmzGHmlTWlFqJf8CfXvKULCnTw/wPx+1Ot2fLSBrSRh3HpVUGiSQ0qhUWurG+huIWgShtWv+l4VjTdq4Zkju7TY7uP7eQJnRf13Po3B5HE6O8ZzpzDBQKdUmnD7TqCFBZsTYeldlUSHO4gXzzIA47a62ss63RnLKTjU83YRH6vcqrVLA6vMUiQbupcvsoc/fKni6wfOgRRYbnAf4xUQ1I9NcbO9WHMz74/LA== 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=pFzwO1mpQKS6lJWdb16uZLqKvC9fbjqIcZC7hS2zGb0=; b=dHH9GwtZPmtcW9mHJAi6GIKM0PAUpmvJhERru020VYHldtuf86K5VWQBLQF6mkNQt3bzk7EAYy1STMPcTGcJkKW7vll7scBSQ8V66EPR6CpdmGodHAFpWXMeX1eiA62BTxh1MqArgLXGhlhfYD1kSSP8sC3OYDup2n63WFbHUotFqRBKoDnS7SzzisItCBj8YVS7Q/DouTtYeRt6whxv2q09GSpbisT/TFFgrZOkbqceiJH+SJSNPB9vlq7STrA0bk/WlWLvKvrsz3OooKsVTkHKauQmwtsu0sf9XC1jFSYgc17Cs7QaUa7VO8hjis1BjBqGbtWrMcyUUvgTNw6cGw== 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=pFzwO1mpQKS6lJWdb16uZLqKvC9fbjqIcZC7hS2zGb0=; b=r5ySKKupt5mSiy3/CjLCPXrHmS9pI35Eaiwhz6Uu911uWnzv1tuShsakNnyrguLTizeqaqNCWhnGrRzLsUHpN0dS2N1i8/f6POGef/uVa3SXJJ0tirnLs++Vxtanlf3BmX3CEeYv3DL/rcmwU7y8kqFYQM04obXX+14uwnX7xYEYQwv97qxT8xVvZHriX3i+eslH7bp+TrMQgoeyHI2Z9UioAWSmhuwiBdKhbiuIuCfvVULLtElpkP4k+GT65rx7CG9VfzxZGMb79LIiT2IwGWuPXJbKyAXyvZRk0Zb3VB1wDkq9vqs5QiRXAWwNa/Zf01Ijh0yr16ZNsfvLpUYBkA== 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:37 +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:37 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 12 Jun 2024 15:48:22 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [9RTpGpVnLuiIzgqaCc7jSYh/MXhI5AsOsCUdKNINilw=] 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-25-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: ebe8429b-ec03-40bb-d27e-08dc8ae6eb3b X-Microsoft-Antispam: BCL:0; ARA:14566002|461199020|440099020|3412199017|1710799020; X-Microsoft-Antispam-Message-Info: dP//EQl74Vd64Zon7F46T3D+iJ/CU/YtooX9kmtr6qYo80SmItSgHcqB3gJPTelKLwggBPAX0tC6YD3rm50wUe1ygD/AUU4ABw5cJ15DkF83z/8HemLnqu8fYKuEsBG2WD1wRc5pxcyuXBL/Zkr/WHBUYQEXAbR/8VjqxQN63mz18zIQCsJmMUEqAott5NOjo2BNs5r3zfZQeEffXif8xNPoPZoGtxiVZqWRGp2yxevyobJqw/sJdz+ouiHZxQV+wGIPisi6zJdIMqef9SjrDk8z3sQJRwW4EkQVs+exdivoxNk2Ffe7aS6+3VE/SP/DonP6DYq3CbxA3ExuidePd7ZMdIkYSx98C+/YhwDqVYlAwlgYCmemk3/mXLeU3SIEV4HVP34DB4GtBVWIFGYbbDRletrK1q46aOoksgRk3z0MV5Fd9w/SKNBdJ0uGAQvY6HKQGh4Tdv84NH09pN1GPgVpy8xeSbLC9tUSxXYWySwfoR40o5QwtT9s/lOsNMCmus8R8P1lIiqhOsodjaI1BujIsI+8NvkPoYcBoV7L5J9krdO0DMZpYyVZnal7xsj64MmMF9H+PeKVOt+63YCdJ5KgD8BYjItSHpQIQwRnPRX7jZUHvjG6GvahbVu7kgw7 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?rp8A6tUXdLOt5LEtw3BuKJhqHQvv+Zudb3Am7rgINVB6QHA99LG27QpSak/5?= =?us-ascii?Q?BgdMmokubZtKncZCEotC8Ivm72TaXRClhe+pQr74Wf3AdmkEEc80FwtolWiu?= =?us-ascii?Q?gtgKenGLGW5H8xAJpTH1/g3Ohzf/Q2OVWu+Bm8Y+KsQIQPdJ1n8lxcIxhfI6?= =?us-ascii?Q?EifmoPe5ZRIjQ/GBocaOLYhd66ikEyWL7WHWtEz6rvJFS6UKW05ncf4IGh53?= =?us-ascii?Q?AFAJFKVcNET2VgjU19f4FEbHgYHMhzslQHU8ClT58E2FvqqFEW+lJlXOJTJX?= =?us-ascii?Q?xI/tNU7KkCqeWvwE/BARQsbzwq2kiAeJw6rn5snfVR/HzwpxzkJhiA5boxEh?= =?us-ascii?Q?p1JkW7T1d/TWBOGkrYIcmAP0POJw/68We4orioa4/y2z+lEBO9+b+ZhyCF5G?= =?us-ascii?Q?cN8tjeP1JvpG4rLoVDlWrJRFkIKfrd+op7BbPaDFyn63Ddb76qnPG8IGW3tc?= =?us-ascii?Q?7lletfPABurKsz7wNwRNKK2OhEYzPy/sSKnSVfAx9DnsSf71lxMQORAQ8bkD?= =?us-ascii?Q?qOxWHCK9rTKP1LOg8++Pi1uy64XNga4Uxbg0yeOnvGXSskk1TjcwmW+runoJ?= =?us-ascii?Q?3G524nz9kwONoIY1ueOgHQ1EmgPuVg7FpHhFXsGCjEYCPvg221vTkPuFOH1W?= =?us-ascii?Q?tgbLXfpk29vD2OV8v1PlEdSospXoCgngIvSBR0+CbPyVG0HWY58oeB0XEXoq?= =?us-ascii?Q?e0aqvXEcxc/6iYTiUsXeyWLlOertfzbgu5aX+1dQFzr6EphbSgnHM6OaexLS?= =?us-ascii?Q?MThW6rdS3AiFVdOW1u7rJLfC8yQz5TePHjJgBSYWGgLfxlSrnEVYU3mtRR7c?= =?us-ascii?Q?VKZGBRB2AU8wzCdDf0sc17PF+ol+QaTExDl+1Irm5rwoKnOsWaSSVbPY3Kvv?= =?us-ascii?Q?eybtwveRbunIYvZkJ8MbCQON+8tK/dBqCUvGCy7X2E3O/4Kz/lbn3Ceocl2R?= =?us-ascii?Q?kSsESkNPXBH3imOQsdr46MpKyFYuNw9E7oCuqZy7OeVMlyLrr901+n4QMhTT?= =?us-ascii?Q?/r/EKDlBhKIHyEkZtO2IZbdkV2XvPSLRU5fDSpqIyJB7qDR5gGu4sbnuNcqM?= =?us-ascii?Q?CFPp7/zmDSsh/eESmf8tc9mX5pIUWaQk2M3STa45s2eSuVl/yrIsAJr+irq+?= =?us-ascii?Q?/Bsvwsu9OrLmqkbvsKiohnwl7u8G/qvgWHOZe01CO7P2PFBTeIivuWXpBPnX?= =?us-ascii?Q?CVPeDeDC9x6+TUA/FEzF7ZJ7rTj8+1xhprBbTmC/2RQwcqXZ6i19MiY9NFri?= =?us-ascii?Q?ljCQvJ1A2981ntDWw3+iW62PtWt+X9iAuYL2CrFteg=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ebe8429b-ec03-40bb-d27e-08dc8ae6eb3b 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:37.5561 (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 26/57] avcodec/motion_est: Store remaining required me_cmp_funcs 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: This avoids using MpegEncContext.mecc; it already allows to avoid touching the latter for snowenc and svq1enc. Signed-off-by: Andreas Rheinhardt --- libavcodec/motion_est.c | 7 +++++-- libavcodec/motion_est.h | 3 +++ libavcodec/snowenc.c | 1 - libavcodec/svq1enc.c | 1 - 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c index 13f3d8040e..e783e79a94 100644 --- a/libavcodec/motion_est.c +++ b/libavcodec/motion_est.c @@ -332,6 +332,9 @@ av_cold int ff_me_init(MotionEstContext *c, AVCodecContext *avctx, if (ret < 0) return ret; + c->sse = mecc->sse[0]; + memcpy(c->pix_abs, mecc->pix_abs, sizeof(c->pix_abs)); + c->flags = get_flags(c, 0, avctx->me_cmp & FF_CMP_CHROMA); c->sub_flags = get_flags(c, 0, avctx->me_sub_cmp & FF_CMP_CHROMA); c->mb_flags = get_flags(c, 0, avctx->mb_cmp & FF_CMP_CHROMA); @@ -397,7 +400,7 @@ void ff_me_init_pic(MpegEncContext *s) #define CHECK_SAD_HALF_MV(suffix, x, y) \ {\ - d = s->mecc.pix_abs[size][(x ? 1 : 0) + (y ? 2 : 0)](NULL, pix, ptr + ((x) >> 1), stride, h); \ + d = c->pix_abs[size][(x ? 1 : 0) + (y ? 2 : 0)](NULL, pix, ptr + ((x) >> 1), stride, h); \ d += (mv_penalty[pen_x + x] + mv_penalty[pen_y + y])*penalty_factor;\ COPY3_IF_LT(dminh, d, dx, x, dy, y)\ } @@ -973,7 +976,7 @@ void ff_estimate_p_frame_motion(MpegEncContext * s, /* At this point (mx,my) are full-pell and the relative displacement */ ppix = c->ref[0][0] + (my * s->linesize) + mx; - vard = s->mecc.sse[0](NULL, pix, ppix, s->linesize, 16); + vard = c->sse(NULL, pix, ppix, s->linesize, 16); s->mc_mb_var[s->mb_stride * mb_y + mb_x] = (vard+128)>>8; c->mc_mb_var_sum_temp += (vard+128)>>8; diff --git a/libavcodec/motion_est.h b/libavcodec/motion_est.h index 243b73ff4e..12f7cd43ab 100644 --- a/libavcodec/motion_est.h +++ b/libavcodec/motion_est.h @@ -89,6 +89,9 @@ typedef struct MotionEstContext { me_cmp_func me_sub_cmp[6]; me_cmp_func mb_cmp[6]; + me_cmp_func pix_abs[2][4]; + me_cmp_func sse; + op_pixels_func(*hpel_put)[4]; op_pixels_func(*hpel_avg)[4]; qpel_mc_func(*qpel_put)[16]; diff --git a/libavcodec/snowenc.c b/libavcodec/snowenc.c index 819a7933fe..9db4314efb 100644 --- a/libavcodec/snowenc.c +++ b/libavcodec/snowenc.c @@ -1869,7 +1869,6 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, mpv->qscale = (mpv->lambda*139 + FF_LAMBDA_SCALE*64) >> (FF_LAMBDA_SHIFT + 7); enc->lambda2 = mpv->lambda2 = (mpv->lambda*mpv->lambda + FF_LAMBDA_SCALE/2) >> FF_LAMBDA_SHIFT; - mpv->mecc = enc->mecc; //move mpv->qdsp = enc->qdsp; //move mpv->hdsp = s->hdsp; ff_me_init_pic(&enc->m); diff --git a/libavcodec/svq1enc.c b/libavcodec/svq1enc.c index 5413508217..6e687166b8 100644 --- a/libavcodec/svq1enc.c +++ b/libavcodec/svq1enc.c @@ -373,7 +373,6 @@ static int svq1_encode_plane(SVQ1EncContext *s, int plane, s->m.cur_pic.motion_val[0] = s->motion_val8[plane] + 2; s->m.p_mv_table = s->motion_val16[plane] + s->m.mb_stride + 1; - s->m.mecc = s->mecc; // move ff_me_init_pic(&s->m); s->m.me.dia_size = s->avctx->dia_size; -- 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".