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 D0085469C1 for ; Sat, 30 Sep 2023 18:01:51 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 567C468CCE3; Sat, 30 Sep 2023 21:01:50 +0300 (EEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2096.outbound.protection.outlook.com [40.92.75.96]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4660768CC7A for ; Sat, 30 Sep 2023 21:01:47 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UMBj6UO+pUv26/wWejrzIMlHDH5Vm/FxVByW+8PdTUqFxaz9TpubK58PvfTONKzrW0X9FZ8maQPGS40YkkTiV6XqIQs2y00F+DvkvLhEWmZYyWiJFX2d6kvJSgHuCZ3peMqPa4liYTJYbJg2PomzurQcKaK9wZPj+8olmVOW0/HgU9MLUQlcwP4tHfrN1IsHTc3Il4ijQxEHUEKG26GYbnNmakYlsQD1tMD4CdpQ4Wpo++Xv5jQ9OXiFuQMYUdVmQ7Y4cvRSf+ZNDcR+TEnL7KLK04vRa2ep4hQY7K1nt+4RejTTuAXryNpBB2OKLOt2X5DFCxk6ppARWWieQFilnA== 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=cz1Y+P82yh3Mh2DDZxR9DbxbjL078hOWw6jxReXOWEo=; b=LGVarvKR1puUxSLWueQilqbTMWBukOfKYhIT4DCQLw11jdel+TEruzMjDq+2kRuwsRCnogfTPoBfomebwpmJlLQH9rZFqxRW+WfbF1okbewOIe3tRxka4HyLIyS8mCI3SmmJpEoLxdv2I7EPo/Imo+Bo8DR7aitwz26/9B4lxVCyQmGC0m9A0iSP9MYxezivtOZhdtPoZVCDKorjmCNUXqedI0gOfd0W482Xkd/t1VzIUYq7+wBdGlt1tB6LUSUlQqpsV71IPHxtrC+LfAqZF3ReP0kxYrjqpMmCkNY+nxsPSBrWYic/tx3R3GDDEV6AnxHCNoOftmPJkm4/2FKmVQ== 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=cz1Y+P82yh3Mh2DDZxR9DbxbjL078hOWw6jxReXOWEo=; b=IDrKQa6TF8ubVHr08I/ZwXRdTbekU4YbybcY1Dxfk+x9T3XhdD2tKnx4hTMwNs+PgYv1n4VXCiQk45MB3VAunsOnwHWthryHqa8bPUmOHUhkYYEeyrlgkysh+/jYxN9umXu11R3zRvY4htY/bqelToIgd0e/5NbrhqsxkmK1JbBRznMnOR6xPBbTatuIMHSC/kVU1nP66w6qvVv2+JjU2TE9+wa4bj496XzBA8K14LefuM7wz2ri9Y24x3kQqRojFJjtnzLic7O9YErofiLqlInwIRuodeb2v6mcu3/ROaFrbNAxURUoTetkARs2CXIn2ZDQ4gM8KWdq/JX/n0UHpw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AM8P250MB0247.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:32a::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Sat, 30 Sep 2023 18:01:46 +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; Sat, 30 Sep 2023 18:01:46 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sat, 30 Sep 2023 20:02:54 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [SpMlBZMuLvsW8hwPJ1HXNGW8wpuzlgqN] X-ClientProxiedBy: ZR0P278CA0149.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:41::11) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20230930180256.2938262-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0247:EE_ X-MS-Office365-Filtering-Correlation-Id: c407f57b-77eb-42ff-473d-08dbc1df4fd3 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: MjpU4e1u3/dtfAFKKpxWrYQRyjzds+864QaBTK9Jk7rY715R+yPcmFSEUSXMGc7p2HZbR2Hdxirl/LK1edBIEISUZ1XIcWiXrIGpb4hvR5qHDWJ3xlN7F6lTpwBvuOOqUCPnjfBvkSGiwOnPxjPuTXtOKgI7T3xGGGnaf/Q2BbLNz3iq3S1yqu5q7hQTINFHRX6DNLxC8zOYA1jiXiD3HzUr3M/1BeRqbvrEC/pu7ofIdx+NjN9DAlX6Q4UY0TRT4VPUPML01IX5/mOjzT9Qzjxi4bqkokBquvFZF7LYJHKgTLg3XsiBE4KUan55OeCwx1PhkoBbQYY5JbTf0QuWZMs6jU7Uy8XOfQCxb375BHC98bX5iy5VT3MDj+b+t0s1BO4YW5orf3til4Z1EfQzPGAAgpOrEkYtYVAQfNbu9RSNg7qbfAoiTKAybDc/BRMJHFBoAvt8HM/YshNEr3qMd0OikBkDLljn8RrO8SY8qA0925zZX1i8J1huAlmbMIDjo8CKqfREQU3wdglcNO7rVPauAHQJBYuWpncKYM80xITfQQsMZSMRxIRqpN15Ybc9QAjLtgYGbioVNq4xKehs0TKbxk8u7u3pJPeHLqjPD8xqff0lMgIyD7EVk3AZRopW X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gSL2POvJ1Q/IIykpyHrOKJD6VM1nkZ+wz6XwnyZ6tFC+TxXPcK+QFigiZvD3?= =?us-ascii?Q?wPJigH7w56abpPX1rzinqfuavZLuS38v0akfpmFG3/LRguwUBDghxRD3DPiV?= =?us-ascii?Q?YXsUz6ILPY5c+pqJhvC+8beAMMLc795JzI0XSDwHDhkxHLC7NuOdZ+FLsD4Z?= =?us-ascii?Q?OyWYAjEW9wifIHCFtDqfj/wVYX1jlb7+3aNjP/RKUVz/ISnA8gaMxz+hLFKL?= =?us-ascii?Q?15xuV87q+E5yaER3+3CdKuaiK4CFCtAlcN5Xts6x6Gz23I9/LQMBtLr7+odo?= =?us-ascii?Q?eW7UuWHoi27LtNANNQRvUpT/LUrYjVNo+KmRAro3O5iOWC+ss7sItiqWQqxu?= =?us-ascii?Q?+lnZRr+Ff9SFl4BUgk+3+xgV8FRE/6Cnh/sxxhZb/cKUUX4WpiQbXbJLd/fC?= =?us-ascii?Q?oYp/kt6v8S5NE93bdGAJIhcXp0crnc1ym58+REL96spRvIKgdR3nHrhdjte9?= =?us-ascii?Q?246XMBtREXBcBHQ5QalnAEVFol5Rjjb2r5u5h2HHSgMlnMNHkiyTXI04coF+?= =?us-ascii?Q?0S/h7Z0eLxfcbRse7YYDkhnRExWuiNKmKjCoSwAdW8sNk7TOxsXBx0UR0Xgz?= =?us-ascii?Q?hI0PGOaByDcbKYaWdAKR6BMu4bJoc9fTIsvwuxLghqPMi3UXLtz4InlB4++d?= =?us-ascii?Q?TNCPhvBTkLVsSDlpe88G+jH93n6Bk58+wgqJsR7ILvE/ylZFfXpWMSMGRo8Y?= =?us-ascii?Q?3P4rmHq72E88yAFTwMvcFYiLC259lI0UeZHMOR5QN8sisfKiMYJIxUE1Unyc?= =?us-ascii?Q?b/ZcvLYGE11elM1BWUhcoJwaFaiXiRpyCRBUTMx+jDSXHvfN+PF+mzmUwG0p?= =?us-ascii?Q?DVbtL++jkts7HVCHxt+BsduvOtAy+SoSsxq+zYwosh6k7ODF2tjxtBwICqet?= =?us-ascii?Q?S/W3ei1ofIlcucYNeWPngqn48wyh8bdIRjcs/RFUzxUatn1Y9GQAtC24afbS?= =?us-ascii?Q?HZEKtkuEg3T+qWQSnRUgvM2fglUjUk3/z5T5v+fOMlQBdPcrv9UIx3PAY2Hn?= =?us-ascii?Q?+oJ/L0ZCjkXwk84aZnoBljzH7mU4nLFwZ5VZ17uprmMd4WXe5brNRqhL3tgv?= =?us-ascii?Q?5wSYxg2CvPAr+1ee8OPAlo8jvDZIJvKLY+FoIEQPSg2d+x7m/PC9g2Z8wuN8?= =?us-ascii?Q?OSGGL+zneczqeGLCcfRtTIJEiEvRXlOayq+VY9xvlkU6zf/0F222TCmGBlLC?= =?us-ascii?Q?jqx6cr4Bd86+y7KaS2V+vzAtH8RKiLStQEJt6owFRXkEu8KtEQGxXyIDMjpl?= =?us-ascii?Q?VxfiU4CeqVLvSMgVyp+N?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c407f57b-77eb-42ff-473d-08dbc1df4fd3 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2023 18:01:46.6398 (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: AM8P250MB0247 Subject: [FFmpeg-devel] [PATCH 2/4] avcodec/mpegvideo_dec: Don't memset twice 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 has been done for the luma plane of missing FLV1 and H263 references. Also remove code duplication by reusing gray_frame(), which has been renamed to color_frame() for this purpose. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_dec.c | 28 +++++----------------------- 1 file changed, 5 insertions(+), 23 deletions(-) diff --git a/libavcodec/mpegvideo_dec.c b/libavcodec/mpegvideo_dec.c index 77d90104f6..617109a1f7 100644 --- a/libavcodec/mpegvideo_dec.c +++ b/libavcodec/mpegvideo_dec.c @@ -245,12 +245,12 @@ static int alloc_picture(MpegEncContext *s, Picture *pic) &s->linesize, &s->uvlinesize); } -static void gray_frame(AVFrame *frame) +static void color_frame(AVFrame *frame, int luma) { int h_chroma_shift, v_chroma_shift; for (int i = 0; i < frame->height; i++) - memset(frame->data[0] + frame->linesize[0] * i, 0x80, frame->width); + memset(frame->data[0] + frame->linesize[0] * i, luma, frame->width); if (!frame->data[1]) return; @@ -365,9 +365,6 @@ FF_ENABLE_DEPRECATION_WARNINGS if ((!s->last_picture_ptr || !s->last_picture_ptr->f->buf[0]) && (s->pict_type != AV_PICTURE_TYPE_I)) { - int h_chroma_shift, v_chroma_shift; - av_pix_fmt_get_chroma_sub_sample(s->avctx->pix_fmt, - &h_chroma_shift, &v_chroma_shift); if (s->pict_type == AV_PICTURE_TYPE_B && s->next_picture_ptr && s->next_picture_ptr->f->buf[0]) av_log(avctx, AV_LOG_DEBUG, "allocating dummy last picture for B frame\n"); @@ -393,23 +390,8 @@ FF_ENABLE_DEPRECATION_WARNINGS } if (!avctx->hwaccel) { - for (int i = 0; i < avctx->height; i++) - memset(s->last_picture_ptr->f->data[0] + s->last_picture_ptr->f->linesize[0]*i, - 0x80, avctx->width); - if (s->last_picture_ptr->f->data[2]) { - for (int i = 0; i < AV_CEIL_RSHIFT(avctx->height, v_chroma_shift); i++) { - memset(s->last_picture_ptr->f->data[1] + s->last_picture_ptr->f->linesize[1]*i, - 0x80, AV_CEIL_RSHIFT(avctx->width, h_chroma_shift)); - memset(s->last_picture_ptr->f->data[2] + s->last_picture_ptr->f->linesize[2]*i, - 0x80, AV_CEIL_RSHIFT(avctx->width, h_chroma_shift)); - } - } - - if (s->codec_id == AV_CODEC_ID_FLV1 || s->codec_id == AV_CODEC_ID_H263) { - for (int i = 0; i < avctx->height; i++) - memset(s->last_picture_ptr->f->data[0] + s->last_picture_ptr->f->linesize[0] * i, - 16, avctx->width); - } + int luma_val = s->codec_id == AV_CODEC_ID_FLV1 || s->codec_id == AV_CODEC_ID_H263 ? 16 : 0x80; + color_frame(s->last_picture_ptr->f, luma_val); } ff_thread_report_progress(&s->last_picture_ptr->tf, INT_MAX, 0); @@ -484,7 +466,7 @@ FF_ENABLE_DEPRECATION_WARNINGS } if (s->avctx->debug & FF_DEBUG_NOMC) - gray_frame(s->current_picture_ptr->f); + color_frame(s->current_picture_ptr->f, 0x80); return 0; } -- 2.34.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".