From patchwork Fri May 10 18:06: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: 48708 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1706:b0:1af:cdee:28c5 with SMTP id nv6csp758044pzb; Fri, 10 May 2024 11:06:32 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCW+jtQKzezY5Yq5EIfDGV/cMqqEFALrYAB2e8Pjfgk3Trw0dfGVUE4Mb4NQxCANzFm7IZ3N68mEeghx3Unw9TPGTUqTZANhedpn2A== X-Google-Smtp-Source: AGHT+IGBoVgC2jKHqt5duMIdQGNrYwNYdsXRxn6aNNkZ8haF3/c1qLb3f66KyLb1Tv3trBoOrv0A X-Received: by 2002:a50:8a99:0:b0:572:9c4c:250b with SMTP id 4fb4d7f45d1cf-5734d5db9acmr3567113a12.18.1715364392560; Fri, 10 May 2024 11:06:32 -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 4fb4d7f45d1cf-5733bec1947si2225924a12.194.2024.05.10.11.06.31; Fri, 10 May 2024 11:06:32 -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=eZaHUNhp; 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 3F82E68D53F; Fri, 10 May 2024 21:06:25 +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-db5eur02olkn2089.outbound.protection.outlook.com [40.92.50.89]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 61CFB68D515 for ; Fri, 10 May 2024 21:06:18 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FruAwEvVpAQeH4+8tsioTGYqSbWXke8lUxhRWvQKeupzfexRvyavNJFhbwoDBZi01T2zI66CxHny2HXfyNKDC/MyF1HyFFwXSVK08JlT0ejxC0Pk9/fXF/lT9u7+hM4nDlNG5RF1O2wp9Gle8GvPpTclgN5pKdy9zY0bcE/YzcOyRr3S1ig5/k6gD//QWBfr04NLe74o/NmuiMm4KYi3nGBeqcTp3XXoec5DJAWFpIzIi06T9FQfbx/y1rcGKjJ89fiZ8LuTSieJ7zre1ScvsBOPBhb/o6e1C31gH0N+/EHNs7iUsvi8XG3sLHU5XjD/PAqwAttXuJdGO7BUVkxg5w== 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=vA9TMQDJT8DXNL4SQHgNr/OwQ0Nlw1+2H0I26XaxcBY=; b=PSOpJH9Gdv+p+gzOUK5rSst50H0o8YGof9pNxAydUoG8uJQYgOjeZGPHcSXcG4vRJC+t24ezk6wKc64cy1sJB4IZ/zKTKfKWjay7e2umpZrF2+JuaGE0f3JAMRaX7gNN9RZmamINLG4/s5REJOASHKaSTXcg+9VGmT8hs3qQuU1AbLo6hvCKQqQz1U96i2wz3OQE36aNpB5v1A1B9U/kEYdbfhcG6rsc0nWQVrVe1E90JQgHji0nv7bsQ2LfBQL2z732cd24bcEm4cBjQWOxem5yCrIGJCPcqS9K9mkNXNHztMnl0uq4g60T242pNi6v1DY5/LuunkSuiKK0tTMXOg== 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=vA9TMQDJT8DXNL4SQHgNr/OwQ0Nlw1+2H0I26XaxcBY=; b=eZaHUNhpOYkJiONsVY5KPMnrS1hZTdPNEhDpBWhf0Iz8r0UlybeE9unOhI2zX4TsilL+dJx6OPRUSSfjAbOXts94gE+VUUu0s66Lv0XPbiUz9l7K9jH6JdicTMpttOba2AgY3F8sOS1YhzB2OCb4Bomb2O7HAV7FFbpxiArG36Jrv7FOKcO15PTWZUxl65i+8RbVN3f+REdJ6htL0OD4B4pFi6NJSt0oa+UFFQ77h82/O9kGjtD/8G0ktHPx4ULGv2Rv8dRFTPT/wMDaHiDfrc7gievQKaHP/9RvhzDO4dAEWyhFrKy3CzxNPRFoiJ4rH4dstffxi+MkNWJBCQNlMA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS4P250MB0557.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:4b9::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.41; Fri, 10 May 2024 18:06:16 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614%7]) with mapi id 15.20.7544.048; Fri, 10 May 2024 18:06:16 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 10 May 2024 20:06:00 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [TKxgotmv5Z1PzlQiLimmB+0SLpaWfwsKOa2vyonDtvA=] X-ClientProxiedBy: FR3P281CA0104.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::20) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240510180600.682627-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS4P250MB0557:EE_ X-MS-Office365-Filtering-Correlation-Id: 8a78fdf3-ae92-4505-e68a-08dc711be2db X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|3412199016|440099019|1710799017; X-Microsoft-Antispam-Message-Info: UrxCzzCUVAfoJz1hAgUIpCHkVGFwvFV6edK2LnHgwSvT8yDyOovgdXhQo7I2JfD1JoYthg8lQ7wGJ43Z9etro3DqBIJLaR+KI7NMYTkCCf1v+Zdt3VMSvqxyjXG0gjoORLeuvhEyafcpOK83d0aHUsIl1uJ2hBIqsYZRvZdnWWHrljgVpzo/t9i5SJaniUpUHIonVpnSWPC67AfvxpFS72WlbP/pXlHOs5CBPgafu3AELfB72gEJBkJVSnLqIuwjhH3FMhga0YgoATiQgOAFcvJsoysk+7MRgNid2Z7WaalZLzTRihgjgbFOt9MsS7PRUYUaXOKizi9v79sISTaMfpz79Lv3sVNVV/fAx7+DQ03f+Tiu2FtFUak9l4g4HYsQ0eF5yW3iXup5wGUbVMNYdQYRr18Q/FWzNO0oJ4Lsp44fTrXNJ9kbbLS48daCToUwZWt3/o2XHQtzx/0v2tE+OYU1g/6pkk/K6n+xCtjPXuBCg6KAQ5iQnDYv6Idyuie3OR3j2NWkKVSIOVg8WxNuuMzNhA8lIoSSYYdoNNAGRLkuQW/ZloKKedkmcBN8e1+mRBT7JLDBBzlF+5BUMsZkFKDJnMkyaSVuAyfVblZxBeRVyQ2V95W9ck0kOg3zESyk X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: AzJwqi+0YZrnjR1PxI5ix8vcZyVy4taDq0X9aB7xoSVvLlT9c0G3Lfre797a77Lea9/yrkYkq+VnKM4lRuT8CBoQAjAqdx6WLBZIsqjWWCeXreik1e1ESx3MB8kVglJR0KnmFo+PvTVYoVYYgKIrL7SKw8MT9nnwEpMAPGhKQQEh+1o8WoIpANcTMw/FP/5LSH9bbFD+JVUuvNazKqcOSUpsUgu8x5LCUx4/h+GUvl6rEmYzXSss0ZZR2m9dxc81am5ml/Ov9/Gf8qhRR0yh25uzdZnhg5/kPoUeFaO8pEa8GZqDak1w4AqL6mQl/4WfdMPF1tGHmMpTWArCVavmtaQGI2SSX0q84VFqWooZWbPFhnf1ebUyVNMJgz+arxfClf5arciTiJRVf1YW15PYlNoUaGd8Dt2+zxc/tzeE6uSxSBu2KUDfCSkBJD2dqNrfd491rrMB3hM75IGJqZjfDnX9DW6crf1smua4YG7NkEIYYH/H9XPfccNd7Ss8gcsN3j+KaSXIyogO9S1BXLyqtpwmOS2Spw5lTln0SQOBlsaofMTXjrkErTSHb2ux7JzkX7y3yTe9HGwJAgRqtHZ4UYU4rLgqS27d3hitm8bMBc7bLYglhJ+r1gvGpZTEqWrikyW1PIBjkmF/s3Vv0NtkKdjdN5sx2efy+oKG4s59/hazdbpBqGIChrUPHQHtI+hOLgwa32esWwQNdr6WNIyEFeGtsrnA6oWHUEo3EnTXAatq1PwrweV0gUoC2KK7n9ns04YUJLukglBO0DKjJpGEZZhkCIKaavStbSiCNdMjSgc19XP8wdEA7ulnbFASNn3S6HXypg3J/REDqUnzgtS+oqGjaKEmvCvwgxOF2t8u6PfZhIueQu/bOVBnNdMvX19A0A7noPXwOUuxlYam2EXTzmn7x8NGHfc26G0bNmCLlBuOlP74ii4RUcHCjdVu9+m8V0rhOGdkkYYduS7Nt8bxPdWL2LYCQewG7D66Y6LPHCk+31IjyhFFjtK5u4p6L5w0jzXdkHqVsbByh52V1Y+RcB2RB12bUNY72JW2TZKr4Pjj7ftuVj6iLZitHAPsTgxcgbGsgysg0qBcADkXQGWoLv3Gd6rfXx19IScVdImAWr0N+LBurAGvroQZ9WDkbCRG3mt615xUWMc+xcWHnNE+ZndgoKzcf/faZE85s2N/Eyo8B83VJHpyDRZ4eAmj/Uc0TGAtCcI5bRQ/8FUCSTmMuBaGF+LZqPPkmM43En145HN4hAcCVKYLoPdQrkEiq2lEjMspVIyOyCiJ1nuvv4EUBg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8a78fdf3-ae92-4505-e68a-08dc711be2db X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 May 2024 18:06:16.6376 (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: AS4P250MB0557 Subject: [FFmpeg-devel] [PATCH 6/6] avcodec/codec_desc: Mark AVRN, TGQ, PhotoCD, VBN as intra-only 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: O44nzzxGtgaY Also remove the then redundant assignments of AV_FRAME_FLAG_KEY, AV_PICTURE_TYPE_I. Signed-off-by: Andreas Rheinhardt --- Is SGA (AV_CIDEC_ID_SGA_VIDEO) intra only? The decoder always sets the key frame flag + picture type I, yet the demuxer does not automatically set the AV_PKT_FLAG_KEY. libavcodec/avrndec.c | 2 -- libavcodec/codec_desc.c | 7 ++++--- libavcodec/eatgq.c | 2 -- libavcodec/photocd.c | 3 --- libavcodec/vbndec.c | 3 --- 5 files changed, 4 insertions(+), 13 deletions(-) diff --git a/libavcodec/avrndec.c b/libavcodec/avrndec.c index 97d2824625..02bdfb6516 100644 --- a/libavcodec/avrndec.c +++ b/libavcodec/avrndec.c @@ -67,8 +67,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, if ((ret = ff_get_buffer(avctx, p, 0)) < 0) return ret; - p->pict_type= AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; if(a->interlace) { buf += (true_height - avctx->height)*avctx->width; diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 5ae26f5d2b..a28ef68061 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -905,7 +905,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .type = AVMEDIA_TYPE_VIDEO, .name = "tgq", .long_name = NULL_IF_CONFIG_SMALL("Electronic Arts TGQ video"), - .props = AV_CODEC_PROP_LOSSY, + .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY, }, { .id = AV_CODEC_ID_TQI, @@ -1503,6 +1503,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .type = AVMEDIA_TYPE_VIDEO, .name = "avrn", .long_name = NULL_IF_CONFIG_SMALL("Avid AVI Codec"), + .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSLESS, }, { .id = AV_CODEC_ID_CPIA, @@ -1820,7 +1821,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .type = AVMEDIA_TYPE_VIDEO, .name = "photocd", .long_name = NULL_IF_CONFIG_SMALL("Kodak Photo CD"), - .props = AV_CODEC_PROP_LOSSY, + .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY, }, { .id = AV_CODEC_ID_IPU, @@ -1869,7 +1870,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .type = AVMEDIA_TYPE_VIDEO, .name = "vbn", .long_name = NULL_IF_CONFIG_SMALL("Vizrt Binary Image"), - .props = AV_CODEC_PROP_LOSSY, + .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY, }, { .id = AV_CODEC_ID_JPEGXL, diff --git a/libavcodec/eatgq.c b/libavcodec/eatgq.c index 0f0ed3585f..d326c05390 100644 --- a/libavcodec/eatgq.c +++ b/libavcodec/eatgq.c @@ -237,8 +237,6 @@ static int tgq_decode_frame(AVCodecContext *avctx, AVFrame *frame, if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) return ret; - frame->flags |= AV_FRAME_FLAG_KEY; - frame->pict_type = AV_PICTURE_TYPE_I; for (y = 0; y < FFALIGN(avctx->height, 16) >> 4; y++) for (x = 0; x < FFALIGN(avctx->width, 16) >> 4; x++) diff --git a/libavcodec/photocd.c b/libavcodec/photocd.c index 07e8d460bd..75948d1b42 100644 --- a/libavcodec/photocd.c +++ b/libavcodec/photocd.c @@ -331,9 +331,6 @@ static int photocd_decode_frame(AVCodecContext *avctx, AVFrame *p, if ((ret = ff_thread_get_buffer(avctx, p, 0)) < 0) return ret; - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - bytestream2_init(gb, avpkt->data, avpkt->size); if (s->resolution < 3) { diff --git a/libavcodec/vbndec.c b/libavcodec/vbndec.c index 4a38b02168..a96843f212 100644 --- a/libavcodec/vbndec.c +++ b/libavcodec/vbndec.c @@ -151,9 +151,6 @@ static int vbn_decode_frame(AVCodecContext *avctx, if (ret < 0) goto out; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; - if (format == VBN_FORMAT_RAW) { uint8_t *flipped = frame->data[0] + frame->linesize[0] * (frame->height - 1); av_image_copy_plane(flipped, -frame->linesize[0], image_buf ? image_buf : gb->buffer, linesize, linesize, frame->height);