From patchwork Mon Jul 1 12:16:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 50245 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:cc64:0:b0:482:c625:d099 with SMTP id k4csp1739065vqv; Mon, 1 Jul 2024 05:16:57 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVIDp77TS5agKwbGpel9MoyH+9UoVT+b9/lGKMiA7jz+G8USAYWymxumlbrI6P072IBHeJDx621p3qowEmapYE2YyaHa2lVn0LkBw== X-Google-Smtp-Source: AGHT+IHcGRDRcEdYY3sRlP1mmwT6csqQE91t1CVMsj2JeGBb24qcAuC8jQn5LNqHWbGWinySfQ94 X-Received: by 2002:a05:6512:acd:b0:52e:7674:b51d with SMTP id 2adb3069b0e04-52e8264bf35mr3434402e87.12.1719836216937; Mon, 01 Jul 2024 05:16: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 2adb3069b0e04-52e7ab25a80si2262793e87.321.2024.07.01.05.16.56; Mon, 01 Jul 2024 05:16: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=hOxGk9ou; 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 49DFC68D787; Mon, 1 Jul 2024 15:16:53 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02olkn2064.outbound.protection.outlook.com [40.92.50.64]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 696B868D154 for ; Mon, 1 Jul 2024 15:16:51 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QBZVzX8C+eGXHpWicYHCQUckmWGbAKCy9vueClZFSGWG1lGSeVHvuWiAMR5dlsipxoLyfTgwio7hK6xE+sjlsplZHT0onhSnSPYXodNsv6oaNg3wdUJiaJ4hI4gWqT/NGNB7liv+tOsKlBy3uJAbCgRAXDOsANCB1bEWphPyi0zq2BjbQkZR97JiPKiWbotMnsQFCvuFHgw3XH3mXKEalYe2l00Hy8siNnT3DzsUtqd6+fhTBmVpLdKAl9FsgyBgjNDHUnkRAvsXCWohzLhAqGMUREQsRaSO2BLpyJECuI2SKfbSN5pC2mPiRwYHJA9bv3K0I+gvY+koCSQGRmDggA== 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=z5XYNQq8qeZo5qv2Ai1N7VT6TfErLSdQZqmujxFG+7M=; b=i/8NHXggMW+hFCq6hLQTB42BvFCSJEjiimfjKbFe3CTJy23ZgtFNmrEQUlSSRW9+UrdDNJCgid3Up/Vf8uFlYUoS+d7VLlfkYQw78qR17PcPzXX7SAbUmp4ptTxwiyItz/vlhw+Gl/3TIO9qLHQfiB0OPv73NIx1axWyKmZplcEATcPGhcO1LZ4VzWMfuRtaHlUhgoBu5v5SRZg2CSEIU+kS+j2pgbeHNKikX3loKgqIeLeGMlEI9Zn1rl9KF410QlUy48KetDGy3qn+Qr9C+qteNtEG6zfvKz+1UHKaGzNZfglbou+yvs+RpkBE7kyKtJx01UWCihcQSsYzWFW+IQ== 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=z5XYNQq8qeZo5qv2Ai1N7VT6TfErLSdQZqmujxFG+7M=; b=hOxGk9ouwTeKuj8FRXNBcHmuAcqUGreWscNPvRyzCU9mBwdzac9ZJLhu8Sj3MI/paX8MIImjRXK3UgcLH5uILLT8PHsGETnRUVi6SDprsusMd/Ko0hiEvMhgwhbdbQGRHIiu5XYcWuzm6Apx65904B6cX7nKEWmtfiOPlqSwnOhapdshPPD9ZGTzymiXXB44K0T75vJ3yaBOLU+EWenXDQqS+CpdkHtMHfYa5KDJGud5p6/zQtVx/wR9npm1LTf+KRd0NkfzHLUFQdD+IlnKOaktBW/YihAuX4PBIkuTJY9VbDsUAfyuaHBgMUJQk3KEtviZ22tCl26n5yL7UtE+xg== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by DU0P250MB0481.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:349::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7719.32; Mon, 1 Jul 2024 12:16:48 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614%5]) with mapi id 15.20.7719.029; Mon, 1 Jul 2024 12:16:45 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 1 Jul 2024 14:16:00 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [QgM6zr0tZAIb2akF1/Su+J3D3DvdBzR0rCc57tfTBEY=] X-ClientProxiedBy: ZR0P278CA0149.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:41::11) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240701121610.3560848-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|DU0P250MB0481:EE_ X-MS-Office365-Filtering-Correlation-Id: ae7624cc-e765-4a87-bbdc-08dc99c7ac94 X-Microsoft-Antispam: BCL:0; ARA:14566002|8060799006|461199028|440099028|3412199025|1710799026; X-Microsoft-Antispam-Message-Info: 9OZ9GM9urPJLvs0Xy1JQP36pt9gU6nVpXISr+5WP1r4DfiY+2xTsoJZ2K7ZouuFE+V6XklCTjrVrN03OagRgSE6beYraHHEY5q+WmMhcSRPRlSkb0qcTYyONVvSrfp4NtJXx1z0k3HERdGHdLRoUwhqbH4MuiXDJwt1AWyj4L1cTyj1pEQm9Ep0UkxIOE7hiUOKbfpq1n9xw7QJK+weSz6uMSOOoKIZSqbU9eK0823grS43+Oh/vwXjnWX/keOssXCOb32cCsiHRH5ihrGuclLIxKm0EcARG+htmbQh09sEnNGPDdFLe55kIfkLP9jTQIn2aAuOzAjPOcrv5HhxOgrJj/azU8uk6rOyo9MSaaCHbB7sxpT00HppGlpzYbUOK1DQ4/2yeNORGC/Xn8BxNYtYESZnlThktOSMrArwcl52mIpc/8EU7Bpfz318OswmP6UphRiuEcm22c+eeHi6xNEO+D8WggSZRHY4cWlBWGWhcW90P8+OcxvzWmJM2yFdfEvj66QGBJ4UXd30FAr4duY7B2FU0l4qGHaSVsDuzPSWLLFArfohhG/9RJQNvnKl8bM5psXMll5NyVspjreOq7HJau8c85dLQQ4yvAGEyi2lRP4o/2I6lqldHzcJHwWRvbh+FGCEuGvABeFAfYrisCA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: pXelOew3OmPS1K/qPseri8OMvIx4R2/yWhnYM7gosM+VkzEMTTnCcc7hI01gzs30RVivVTJR+bPXZ/7sVLmBN/4WneH9QUNzYPVgOJ5QL0k8+3PmNRtB1Plc9WHa7yJJKtBmVUcoEQ/WXu4nbGKkpKmKy4U1ECuwGNKF10cLDbOFY4BitMjOxlX9QiYnVcqywC5H5kgmywIcIvjKMuqQDUqTxZXndUeFJx6HlpBzlofS9gtsbV3hDLn3/eihaduo1EHTqV3sMN53FFHhNnf3LKfcjlC/k59YjSk4P3Aots+/QWdYJS4888/LTi3ke0FoYDtOv98LcvuYoHYTQlVrwXoRAoODNY0FloIPpXxvPmCh7PNgRIXLKYNt05zccMSGdekeyOiy/wfjtUo4zduFTAVRHFCIHfClQqBo5ZNvWlMRkCO0AkT50db1HZvCMIoWYLYTTdw2EnSiznq2ea35w4A2+qgFmy1nb67NZ3tFra4Upjc2SDEaSPL2S6i9wiqoUexzcLt17FI9iQ0y+semy0RjwKynr3LF8j4vDLDPkDVqQJzJEDCWijcxOGw3mDD9qYOMz3qhkOXXJqU+u9slToJ2EnutVVOK3cuxeHoixqMcSpC4T2V+bZSuqrbrenKi2vHr9vCM39qUaLmjcXMWUf5rX9hnBJG2a4Ue2pDtpFBI9QItj1rbfE7Ye8JAgoGVvsoLm7zti1HwXsN/mDhel68P5/7Jt1RRd1ZzMjzh+QLT1fFRGr4ZrUB+04v/u6d5wJVQDXARWZlE+lEctZ+S2ROz8E6fj4XOm1n/97zf+zltcNi/0i+haYTHLnf89NykgSlcW+Dze3vaslY05tmnSKrveH4c4G+G5bwexg/ILoWAguy0IHg84hi3DB5Ttu4S73OyZZSAq6UIW8rw5rd35BaAx9Z2pqcM48xGTAobM3fOs1Lr4iCntQx2mq+3V4X2duBqlh0emvxFCErRukLa2aHVrJ3ppxvczlwR0YgPSx6BAvZMgyfRe7AubG0IyGZRcUsInScswenC0XEQkE6nK0laDWGelptAOIoQMu0Pbo7mt6qm4FftvBt5oEBR/LwRSsrKPVJ8GCoxDAq4NYtdAyTp1pqXz7oAVt5CRz0QCRjssNi2/LGU7yNBTwQ0N9DcupQJuNHyBN90dweNtroUoNUqQ4SlX8q14eL7fxtbfxcbZc91qnZQLpCcaW5v47aqLmf8Zck5lJJDcyZcvN9JBD20+SMmH10oedDrA/3H2E3AxddHFWt0ZlZSza2xHCjCbir0gkVgYiVNLMv+wKsT9g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ae7624cc-e765-4a87-bbdc-08dc99c7ac94 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jul 2024 12:16:45.4356 (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: DU0P250MB0481 Subject: [FFmpeg-devel] [PATCH 03/13] avcodec/mpeg12enc: Move resetting last_dc to encoder 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: UvuRealIQNLh The MPEG-1/2 encoders are the only non-intra-only mpegvideo encoders that want last_dc reset when encoding non-intra macroblocks. Therefore move resetting it to mpeg12enc.c. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpeg12enc.c | 2 ++ libavcodec/mpv_reconstruct_mb_template.c | 4 ---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index e35c916b61..72b2caab7e 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -1067,6 +1067,8 @@ static av_always_inline void mpeg1_encode_mb_internal(MpegEncContext *s, void ff_mpeg1_encode_mb(MpegEncContext *s, int16_t block[8][64], int motion_x, int motion_y) { + if (!s->mb_intra) + s->last_dc[0] = s->last_dc[1] = s->last_dc[2] = 128 << s->intra_dc_precision; if (s->chroma_format == CHROMA_420) mpeg1_encode_mb_internal(s, block, motion_x, motion_y, 6, 1); else diff --git a/libavcodec/mpv_reconstruct_mb_template.c b/libavcodec/mpv_reconstruct_mb_template.c index 4db85afef6..f1cb0d7989 100644 --- a/libavcodec/mpv_reconstruct_mb_template.c +++ b/libavcodec/mpv_reconstruct_mb_template.c @@ -66,10 +66,6 @@ void mpv_reconstruct_mb_internal(MpegEncContext *s, int16_t block[12][64], if (is_mpeg12 != DEFINITELY_MPEG12_H261 && (s->h263_pred || s->h263_aic)) { if (s->mbintra_table[mb_xy]) ff_clean_intra_table_entries(s); - } else if (IS_ENCODER) { - s->last_dc[0] = - s->last_dc[1] = - s->last_dc[2] = 128 << s->intra_dc_precision; } } else if (is_mpeg12 != DEFINITELY_MPEG12_H261 && (s->h263_pred || s->h263_aic)) s->mbintra_table[mb_xy] = 1;