From patchwork Sun Oct 16 20:46:49 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 38747 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4a86:b0:9d:28a3:170e with SMTP id fn6csp1306319pzb; Sun, 16 Oct 2022 13:47:11 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4YZvzeE08gXM8KPZ+B+UP5wicrB9+neBlkwmnRPmdhEsMNkltqMkdek+ryNkRO7DnrUwDQ X-Received: by 2002:a05:6402:538a:b0:457:b602:d5a6 with SMTP id ew10-20020a056402538a00b00457b602d5a6mr7398211edb.371.1665953231504; Sun, 16 Oct 2022 13:47:11 -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 25-20020a508e59000000b0045cf468c3fdsi7452843edx.534.2022.10.16.13.47.11; Sun, 16 Oct 2022 13:47:11 -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=rVYVGtR8; 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 6BCAE68BC6A; Sun, 16 Oct 2022 23:47:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2047.outbound.protection.outlook.com [40.92.89.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2D17E68BC51 for ; Sun, 16 Oct 2022 23:46:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oTkfmS+KKYrzsSAjrnDdDiIvhbbSTlXfWhOwC9uZYdnSfcq13VA5TFoQ+bhgw3dn5RWvWMQBeJThpf/S5cER8CP5rHu8IJkvTP0YNqlqIabultijVtmQKXHCip6lkSUEaWFslT4wPY7n3SsEpjr1m8DlK1EKA5tVVotkD5xnDHXnrOW1PeBm8Z3jqUJ2N6ICrrHaBoQRm6Cncy3lPKPdeyTjhaoFaNAOmMINjFtUI2mmdAxDdgciQHjhW95lBwOaVZwl3CWhO6X6+RNxisdtXCG21oz9M8omVAnfwVWfl2mtb9R2qPV7LPOx+aMq6Vx9PNcjUQXymBRGzRlPVoGMTw== 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=OiQvwEnE47VgJs7Fvv61fi/KGMxoNxCqLcKVvdNc/Ag=; b=M5RfG8VM2mcxhil2PC63sKKC27ExgZSZvnEUSfkif6ytAaFEjByvdfh2zpR3Xg5bx0Bv8dBC5WS+VPycUeKw2owCUYj0Fs2UOPAPkatGOREOy1SaQscjxoK/bmepkX1ecfEFFluvMXe2tYHWItk/3dmPGXdo+lrFnVCOn/oEC1ab7fdDCEaX9TCza9d4ZtnSXvZKMD6fYoD9BJbCvnv4VrrfWancJZmRsSNaYL5NAYDfyToBKpGUJMNvo85oTvl9AlPjoSyj5z7Sd0URvF8ZaPTxTjp6wcf6PbwLAXNzY/EkOFFaTGVNyT4AV8gIBmTc0ojoa1OnElV/Yi6hOq+76Q== 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=OiQvwEnE47VgJs7Fvv61fi/KGMxoNxCqLcKVvdNc/Ag=; b=rVYVGtR88Oi93dU0Tml3aakihFTXgEJhfnQfdiZo27BWVNqm1616cEVdNuQRrJvIFbIUl5qrzvkqLbbfe4TNFjcGcMCAk/EBeQEWTb/Ji/8BJ/wkSAovKCOkQoJKJeTxUJ9THhfbhbDRbJzMUnANF/eaVwOMwjkxVVj1lDsBa/erH7Orw8ACfd7Pvr7wgJ/EsyVfiKj2mY49uxs0YKY8z2xj1640pOVyeFvEJP9hthSsWUVBOEmiWkGcelqEBbjRSgNU/BAVQUAUBHFo60J5q/5t5Zeqv0cK6c3bKxGWUN9nnBbymFD+NP1mkHrauWFZeupXn6rPsGcFMhOJp4H+3Q== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AM8P250MB0090.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:36d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.26; Sun, 16 Oct 2022 20:46:53 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::20c0:9c9e:87f:79f]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::20c0:9c9e:87f:79f%2]) with mapi id 15.20.5723.033; Sun, 16 Oct 2022 20:46:53 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 16 Oct 2022 22:46:49 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [uM1h71nLBR8HmLrLGopPtjZejrnERTryaYpu8TE5WoE=] X-ClientProxiedBy: AM6PR08CA0035.eurprd08.prod.outlook.com (2603:10a6:20b:c0::23) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20221016204655.605202-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AM8P250MB0090:EE_ X-MS-Office365-Filtering-Correlation-Id: fe9e7c0e-b295-4421-7d55-08daafb78ed6 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9XmriMkceEMr8g+y2B+GCHAes2lAOgDFG+pyhttgb9sxgMn7mdtNWqz9bqmH1NbN0ZVe9HiDvyurFlnodm0kjEjScuwtqYgAZMlF7Bk1drolU04iUfDd24UP5WneT5EpuqaySh54m+K+eQomKTQkKJpmUQgZ+kI5X274UoAxb2JxxFRpgHxEgzkl4rPJMLB38jUIPMv53X58VYnuPNSYwhLPHgQy5jSzZZXIHu17fJLo1GtSDqET9f0I61eHkkb9RaYXC6VNDpGtnr8T6gRAwKfChbG7LnaBqSeeKI8C7V/QQTib72RxmOYOk00zBRMBKtQm+jR30aUesKC1N2nU4oXomVuefq/Z5dcHGVdQ2ZHD4XljwhD75NUwuKvxX4StaiODzDsSJTpCOQdDwKP/I3dp1k4iz6VIV1gJz/AVWiQYC7DP7wPCWGC/v9IVZit0I1I+JV11+/sOl6g17Gtp54LUQXhWZnTWf3wakc/zAtJAgt3uD2G8tv2DfRnyqlFd4OcTdWyJXT8nmXNtQfRf40DYKqA/bPKbJPDmIv6ZeAxFbLxLbD32oQ4ptnmwhUQeg2oePUcjq5X053soGl+gj+q2XEh0Fo4I4VbUOV55ejMC7bzKpviJNVCYQB9E+f6/Om09N2m65TFi3D5EHLZouUC02NhyEDPFLs3X1qGMHgq55YR1i8s5rAY4tIdWLZdj6qQhPQlBB2IxTr+nnQLH9IgO1AHZaJpsFAGsFu8CrAVfumdhFtvK9tgKhomlmVD6kfVw= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WypIJSw5L3q3yc+deD5QMZnN6uiu9ACmwGI2ZsRh59khP+YlI5fnKb9Y2eP1aWjMwN2gAS2y5QIhZ5ADjCATIsLDdkQ9aNu7Er+ZkG9BKgLhkijBqsLboPwzYa4tL4TwRoWofaxswykgXGTNPt3fDXbqE4h8yMSDds6pa7j7NsmaZDk/dialnx4sDHoXbThsv+w5qZ2jiKWjVxy7DSgz+r7XO21yumYAuXDi8fCpzU5MGiApZyfYm5EMHZT3B7hPF46Hzfkgr0chYGTfZtCrq2Pg0zbBgUPWIJbNiWMBT5eblYEsKbiAPV26u/Cl7JlDyhePZ0liK+25yZtqjrGQ20Q5D06yBPYWOnsbGN8+qIteM5nIg/bTtzuLYRIzb+O9xZV9bWEX5j/cWMIfORfyEPZIOfgPTHqOVXrQJ+mupUzk4BWs8/GfgVeU2AuGKyFPUqgYF5uUndnaWA92RL4NmuABmchrzQh2alh+DzJa6OQZG+hnP3ErV5zofzdSk4rbMnx4K8/m4fKgQ83jRag64rnUJzGBNCHvyLY7U3wO05+CngpK5mUBG3dLATEyLsVT0mzsEQZyPh2hlZzrLnfBfDRhDXezGAY/yGRzw6ie5Jp7OGgltYrmxKOeMXYsWCUz6nCXF+jR3TlxhgTQb08IAIzk0UDA8+EHja6KHRHTMn5tVnK266i/+cAhjj6JRmxy X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: //DP5xH6djDV9oA8Aix8l4lXXRWMAV5BiX39hvmD1SdPQacewUcOOY4H1N2rPc0+qYBoq/BKIKCzMQrVfmw87wX0Clww9o7DOBQH7TFWjnV7te3E2bAxcHpNc/pufYgJyZVQ3hox4ug+mdDnJrkWxgegPKG4rJLHkacUwklQvX9A2hzSXe8eqx75jNWmS/PEesY++VmtqZwZTE+Skt0ZeOBPy1ku2cev4fVrr2ekqgPnrPYullifvLi5LO7vSwFJpHRhjtJsS7uSorcXn/22SPD0Ngc9ifuDTolbEA+Aw+U+FahB7LHqpuMLAcDynkvIgzLlsGQ6suHEUZvluoM5kY0mBku9gMK0e/24Rgu+tE70IYToP/SYoaVDLhf4zCto0VgoLezEGS2w7kd8urKV+jlq0NOiXmngbTeNIJqF3WDqIsSPMqf19PGnK10/Jdi24tdTm6yIvfC1W0m44oK94VjtEtyTJqp87YqwX7flnvcNYe2XmTFvHYVw+/0H60rckUentBnCSbYyjGFSpBkIHDf6DovmvE5iGg8nZXxW6EztlYxu12HScMRkfOl8Dt8VtM0quBQuJ9mWbS0Y4uTzd4D5kCQwrdaByJLTw7cKRwDovcPEkhexYElG+ATy81AhCNNMk0qZujAkaw7/qj4cm+hMVUE8UoCRTiH+QQgPyOtNLOEfqVMomCKJluO0zW2CIVTqrnOJ5xwoLiqilN6o4nSGDW+04hrQrVfwObA/qTcNjVmHC+Mx8/Px+VdgzGDBCjHuapASkGe2ZxsWwSgYVbA/sUBRUTPlqAOJ2hU7XRcdd7QROfHzH9EZ18TiNpMKxFlSIywFB8c1R4hbXCqkklC41Gv9GpRyvdMXvHUfq1JmDKlduzKQB4RmOkfzLKfoJIJIVqSH8xdJLqWh/tbsrWyJN/T5Mjy07VZIoISplkUOR0NhyfNJwb0FTT8Wkx+Zf6rT1kk6FNlDL/eDwGeLzFvsheMjh8WBCM8LOzOoe92tSPz6JY41R7ybpUXkc3lFitl22OJ8DheKLCQfVGThuZrMhTo0sMzESZXzfxN7TrSQklyCkWbSKiU0dAacflAOKX7O4yLcs8Ty2FtgRdBtsXPRVg83ziD8lpICbmoRKUoVt6pXXb35d8GCktNorcUbO++4jcKL6iDSNMhOll+Cp4QaA/Ew9dfAjfNqZAu4H+6r1vOEA9JcSv1gfUhX3tO4Q2Y9FwXzPKxuENUdNkxfBoPXhtMOAzDAsUYsCaEM14uNzBR2u7xWz6v0jsHz0aW0PSUH6zSHIAi1V5zpE1okeagxfkjDK1mM2PqhjfVR4TS3Mf30EYolFgtnInHMuqzO X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fe9e7c0e-b295-4421-7d55-08daafb78ed6 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2022 20:46:53.8987 (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: AM8P250MB0090 Subject: [FFmpeg-devel] [PATCH 3/9] avcodec/mpegvideo: Don't check for draw_horiz_band 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: zuqGccDP8o+D Some parts of mpegvideo.c behave differently depending upon whether AVCodecContext.draw_horiz_band is set or not. This differing behaviour makes lots of FATE tests fail and leads to garbage output, although setting this callback is not supposed to change the output at all. These checks have been added in commits 3994623df2efd2749631c3492184dd8d4ffa9d1b and b68ab2609c67d07b6f12ed65125d76bf9a054479. The commit messages do not contain a real reason for adding the checks and it is indeed a mystery to me. But removing these checks fixes the FATE tests when one adds an (empty) draw_horiz_band when using a codec that claims to support it. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index 5095149eaa..ad13832fff 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -1337,7 +1337,7 @@ void mpv_reconstruct_mb_internal(MpegEncContext *s, int16_t block[12][64], qpel_mc_func (*op_qpix)[16]; const int linesize = s->current_picture.f->linesize[0]; //not s->linesize as this would be wrong for field pics const int uvlinesize = s->current_picture.f->linesize[1]; - const int readable = s->pict_type != AV_PICTURE_TYPE_B || IS_ENCODER(s) || s->avctx->draw_horiz_band || lowres_flag; + const int readable = s->pict_type != AV_PICTURE_TYPE_B || IS_ENCODER(s) || lowres_flag; const int block_size= lowres_flag ? 8>>s->avctx->lowres : 8; /* avoid copy if macroblock skipped in last frame too */ @@ -1584,8 +1584,6 @@ void ff_init_block_index(MpegEncContext *s){ //FIXME maybe rename s->dest[1] = s->current_picture.f->data[1] + (int)((s->mb_x - 1U) << (width_of_mb - s->chroma_x_shift)); s->dest[2] = s->current_picture.f->data[2] + (int)((s->mb_x - 1U) << (width_of_mb - s->chroma_x_shift)); - if(!(s->pict_type==AV_PICTURE_TYPE_B && s->avctx->draw_horiz_band && s->picture_structure==PICT_FRAME)) - { if(s->picture_structure==PICT_FRAME){ s->dest[0] += s->mb_y * linesize << height_of_mb; s->dest[1] += s->mb_y * uvlinesize << (height_of_mb - s->chroma_y_shift); @@ -1596,7 +1594,6 @@ void ff_init_block_index(MpegEncContext *s){ //FIXME maybe rename s->dest[2] += (s->mb_y>>1) * uvlinesize << (height_of_mb - s->chroma_y_shift); av_assert1((s->mb_y&1) == (s->picture_structure == PICT_BOTTOM_FIELD)); } - } } /**