From patchwork Thu May 9 01:52:18 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 48677 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:9d8e:b0:1af:cdee:28c5 with SMTP id mu14csp150353pzb; Wed, 8 May 2024 18:52:53 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVenfQNgfb3vaXYxT5QyuTFParg9w46jSQ9P2/J6Bz8CykOzJA1sbvbgMD3whBYOJxr4JSubhAu3LWkb1EqYEIN3N2nIznR4/8mFA== X-Google-Smtp-Source: AGHT+IHklaHVd6tCoVnn+nJRoofOEdFqvoz4B6MXOSuzy1T+uMlLlgqB0ADPQMQfM9bBfwcR2UnN X-Received: by 2002:a17:906:194e:b0:a59:efd0:b247 with SMTP id a640c23a62f3a-a59fb9587a9mr332128966b.40.1715219573424; Wed, 08 May 2024 18:52:53 -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 a640c23a62f3a-a5a17be6fa8si23666866b.856.2024.05.08.18.52.53; Wed, 08 May 2024 18:52:53 -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=GYz6dmqg; 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 C19ED68D6FF; Thu, 9 May 2024 04:52:49 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2086.outbound.protection.outlook.com [40.92.91.86]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BFB1868D58A for ; Thu, 9 May 2024 04:52:42 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IQto8cXLPZYI31VxLU/Odjpa3wkAz+CdGZ0RCdf1xrGRnpHjINP+oK9/LUSuaTbiQUBbZBb4CilPK2m9uoeNmEVPhhl94GUtpQZY8dr6PVF1io3COVI1VvmKChSpy20PnysgBAXp1K4y5dVJt4Iny5vThdGBDNvgCUNJHWskSUhJ0FPWu5SvosPIuyiiYEJOqBUxedjVsr1pkBiPpdG37BZjg8vZvZPiOTs4zsDirn6/yK9FzZn5UwMRe/2qWvSgaI79rUtsv5iwhRMNIW0NjBF0ssHZmGbFnTmUM7OK+XHLSTr6UqDf9f3a5oHaRLGVSfv/SmHbRIYjS0VZwhfmWw== 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=1oWtfp2EOVT0CWBE6PajMb6A6pulHqEcq8WwCF7Rh9Q=; b=NCJtEfoE/5S0df6byMR3YejiHkd5ctXzoLpAPqxYO7QLqGz3lyZxV5reKXkIM/YyDKZ32Y7MM45f9Hz7JhDot5Ywmhnk6ffnk3qiGYEu/r8Qa9nnmdF912+qzDQwPCJiVPN3e2+SA3X30qsiHY7y6LsCx3W/pje5Lox3+mpdnfC4EuARfYynd1tsa+Lu9szOMhimalKPa13yYOZpiB2zfHncVPQwgXW/Jif/9iX3lja5FppMwfufKgCx4Ko1c8niJGOeXU032J2AmJnjXxJXnygFlrfp2qybrW2c50df7/GBsUjpm9AckTKM5QtAybbm+cLP3FbztXqRJ8UznvZlSw== 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=1oWtfp2EOVT0CWBE6PajMb6A6pulHqEcq8WwCF7Rh9Q=; b=GYz6dmqgQS3MEQw0ju4A7T8+V1BSqcl99HPbHfieZ4Li2SOK0Qc+lOyj/Ac+rZ6cvM7yayAYCTJSS/3IPU9c1pqqp30enc9oHK321+bE1/J5+ielHJwc/HrlAb4oPhaTCDZ3wLeBmbRrrh4/VPlzhg01/SR3GGt0jaEZEgvcdvjPkBDivw7KVLKekPn34L8gbSlG7xOXMjRVuyPGYFjWhw2n481DYWWjrNs4YjORKAedDeDP17Q3hFLrZ7XVPEB1LG0tnfOqY1tIPn/c69Fn4KkkZYTFjmqlc+Glxh6fGAKq8ToWtLCMWKgPy9o1FbISaZhUg6eBT/jbRYdOHWT7dA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AM8P250MB0121.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:36c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.45; Thu, 9 May 2024 01:52:40 +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.041; Thu, 9 May 2024 01:52:40 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 9 May 2024 03:52:18 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 X-TMN: [k/oQAJgVh522MKA/+BdG8E6XiQaSSf5vOZeg3z30/8U=] X-ClientProxiedBy: ZR0P278CA0088.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:22::21) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240509015222.3554040-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AM8P250MB0121:EE_ X-MS-Office365-Filtering-Correlation-Id: 4bc0a4cc-216e-4360-5001-08dc6fcab5cd X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|440099019|3412199016|1710799017; X-Microsoft-Antispam-Message-Info: kUzGo4f1yNQVA1D4irkdYQenT+AdyMjDntGeXnUl3IDRzdnzVGNGydDjlwZ67JpIz63Rah1dWGoFHF/tza2/3snjqSg88k0nkVuVUonj9gMhioBPYhbqwXovOLI9/Vv3xx2NSRUUxY15EZQ9abgNV7S9yzK2dznC3ZMr1FAqJ9eTf+kztirNKgMsm1imkQmv+fNsw9ROTb37riXOwsJeMJJV/720aROs1zm0N+Rz/5Stl0wekSbyeHI5QyJaq7gBdoVL3Ao4R+jLOhPNXRcKSR3BgBlf9gyZleXifs70i9cHnoH4MZpui3caE+MBmrb+k+99XKcSy8bQGlz6BGDaKU4VOLNHrF23CbJJZVNu/UH0N4Xydj967rMJ+V5NOnERkE+P4eq+Bpy6O2CSnSnkdESO+96VSOFVlzvFbEJ4i5nQQYHzJk+CMT/q/u1FHw90v0cg9j0hzz9U8fo1BHzF3BY+T8qaTKYQhe031aOJ1eCB9K/XqawStfgtSfG3DQUA4g4gbnCcs+aZnVIZpev4TFJNkAVsuwInZXahXKjMQe8Rr3+v1buUCbopJkefRLphy4uSelgOEfKeUgohJBj3Dwaae3N8PZkANi/+SO4HEieVIQd6HMkrrBXPm6ZinrT0 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: VObyq3UYKd4su30E0NMa3dciCvQm7V3HremN5jAS2t2jTRuy5xkM7e+gPWYqu4zfE6lh8qK9e0x5YNuqguK9EN9xW9KRrUGyK++LHk8zFDDbbOyI8XU+21mD5LZxTbbhASY7sfVD/ghnYjk2WNeLLR5ysxsFTNIoWlAjehD+AqnHUNQnYz4uNfPeecnGO9CqonBoohUcBN6KBvauv367VGzApim6RY+xQyLnSORj5Vy8RvoQhMByq+bFlLE5CWg64igVYv9hWWhJCRb4Nb6r6JxuLakBWSZr2zyhuQ3Sbci/u5QUX21cGIFPM3K04agWDL7dnYHtF6LAAexGJxhBhVSPjI9eOHyFwEcga3wfFvHdTiJpxVs54xG3ejLP8dbFdDC0wFV56QgQi59+AFOk2ORah80EAMFW4DuHfBWogYoQsWnxjd5cXPPaE7O7mHFfLfsquZknGVACYP7aliTS9UhJsDia+ajwi4JoSR1pJpglYATE0grJ3jHjMDzNSrDHYGWxf440jIq85XtBfy6HkQhY+h/8XY328ScqNIRYW7+8TSayP9Ray2LGjRogMPkXQ+/2IZa6DCyV6g76YX8riZQ5BqgM6b+EWmHgn6ew4gTNnRq6jpr6GfY2vbU3duZtOk1UhXMm3GkM75XRTzUfBnfR4npnWILPqhLvZ5y4aukVTCW3CMb/MaOuQV0CWISnxafREtBZLKhxASXHTQCfhH2HCo0MLDn1GDe6eByu3grrr1Lue90hIvcQi9G5fLTbSji/9C41Q/B0cpX7INaYKX+EIGMA3q7DHS0OW0hFzQajIqCY0iWv05HJJZ2K+TV4SOh1RHQi0jJoXyrrgVR2EyftttgmqxQmK76C7WujxP5yukd/wVj3M+vdJlGnO2wy+Js8sZo5YZk6VUx0CEqOGB46XuMDae04MfmqhNzjF9MLe8k3d6ybxd/5orWW6zrEmn1UM/C+GQSXBgVExxsUBXyUzf6fNAj1HTv7LjAg76LaqYMpuLnVCfIvwvXSNsmiNcu177gaNuhID8j+xzbeAHYHeWIPQ0cVOOe9es1ZTTYl3czWS3MROSRuy9lK9jGNOegPvX1ZmU9CEVqkF/fmfKPbfcV050LRWjIkGavqrj1x19D+TCqj9VDCTebMM1mM84Hygaox/jkgsSr427v8mAfdDyakWq6yT7Bzim/Zb5AA9LGO47wcWs7rjRtsqiQe1ZngXXS2ihKoBdRzCS7H/pRHFMwNvARFv+gbNuJB9q4z4Qm8DkXLE2xrcVjRkp4ncGH8gnzUpPVLzHcvsm657A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4bc0a4cc-216e-4360-5001-08dc6fcab5cd X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 May 2024 01:52:40.6668 (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: AM8P250MB0121 Subject: [FFmpeg-devel] [PATCH 1/5] avcodec/mlpdec: Set AV_FRAME_FLAG_KEY explicitly 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: yEA4RV5Nr6sA It is currently always set for all audio frames, but this is wrong (namely for MLP/TrueHD) and will be changed. Signed-off-by: Andreas Rheinhardt --- libavcodec/mlpdec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/mlpdec.c b/libavcodec/mlpdec.c index 305c5d2b36..e85dac36a7 100644 --- a/libavcodec/mlpdec.c +++ b/libavcodec/mlpdec.c @@ -1212,6 +1212,7 @@ static int read_access_unit(AVCodecContext *avctx, AVFrame *frame, goto error; m->is_major_sync_unit = 1; header_size += m->major_sync_header_size; + frame->flags |= AV_FRAME_FLAG_KEY; } if (!m->params_valid) { From patchwork Thu May 9 02:04:41 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 48678 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:9d8e:b0:1af:cdee:28c5 with SMTP id mu14csp154598pzb; Wed, 8 May 2024 19:05:02 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWq39KvAnGl4zU8jP/Lq2XtIr06vq2hS6tV+PkDJqWbc98hyY2HKGxVOVJUF/NrIyrfGlHEPL+41g1CVmf4oeUT2EAfEn/c5EfUlw== X-Google-Smtp-Source: AGHT+IF4WS/2WUxhF7CibrGeRJ1AtWXfQ8Qt2hrfjBYV2443PxPfYRS4srG74nZZemtm74XYsVVK X-Received: by 2002:a2e:9114:0:b0:2d4:7292:92c0 with SMTP id 38308e7fff4ca-2e446f7c7c0mr23267211fa.20.1715220302625; Wed, 08 May 2024 19:05:02 -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-5733beace7csi229673a12.95.2024.05.08.19.05.02; Wed, 08 May 2024 19:05:02 -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=FNrmPF9X; 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 1C27F68D646; Thu, 9 May 2024 05:04:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2050.outbound.protection.outlook.com [40.92.91.50]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 46E9068D646 for ; Thu, 9 May 2024 05:04:52 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LBlN5z00CWF5+QUzisWesTwtRWCWggBSBSG5Zfm8+ZRsYiVmUEl4cQux7wp668IBmbeh1vzH/UbYTROUq5m7dyi0WIQTMAGF12LNxlgPxguoq4QuoUMbm1DoSYZZv1rmdSy1aBk0YvaQrcK5mAAP5rHz8fxNkhETxouXV19RtD/Wl57O5TsQ41krIZdsdl/vfUvy8tkJpYDKtxAGPYqxnWCgirgDUPyNmSJCWdSGtAiGHYrBPZda55jvKL18ptx5LA8qZVRi7kb81jUjxLCaqvGirWCGwC112bOAhFzbbEts+yaV1UrMq23IYt7vG+UCHIUy+Nw1XbbcshqTbKtDcw== 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=Dm8CiwuOnEVeuw0lO8RH1vUdPda1VzdwrfFaBCyix9o=; b=IeAHwGiQzFqD7HLxY2Tg/oqDIUQX4mlsnAbtdGaarNBkwKzUvs2N6xDxZXLjCj8GvlqikMYXrKJ/PkOSS7QxHmcH+iwZVWxlkO+cD76oKWq4m3brr0ng81qJEkbEeLn5SVzwlzCs4UJWr+IHGzTQ5vgdHDoEnBOVY5FqRGbJijAVe2Cb0Saw5F1SOdMsHiPd5GWA415htUc71YTjfH5rrjQPtDUpthwW2dUcCzGU3PgV9tfNFFy6Xltv5u7m/S6qiyMGT91Y3qnyyQxTe68HFMKpPRriI4FSFfryTOYZkujOfdYifH/GC5Qbarhgkw9Y20qwlTbdx0N/fpkF+3+EBQ== 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=Dm8CiwuOnEVeuw0lO8RH1vUdPda1VzdwrfFaBCyix9o=; b=FNrmPF9X62cc68OMjB9rSht6eNHc5PBk2SUEESUxiE65Wbv36H/jErNEXLjgJ6Sedfr7vLzvh8r/X/GVtatO0EDvi5ZPyOlDEGMcLnFt/fM5hkTowvdB0d082Lq1lJqLLWOl4yaa2WHEWkp0Nd67RZFdgG8VQS9bh2g5VelKaHtzrTczUCgmiXWxnMBFiJ18AbTdzHUbbbKfCHbUt7001u5sKkNEfY/PYPuVXfb8Y8x4eaNpEgvw9JoJbQetjd1Fl8IXjjM0XeO55SrA1rp4gM8XCl7Ozi6Io61TnUKPZCsPKQ+18SnhrKZMle5r8KTM1yin7ze+s8udCMxoso+rLw== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AM8P250MB0044.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:3db::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.47; Thu, 9 May 2024 02:04:50 +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.041; Thu, 9 May 2024 02:04:50 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 9 May 2024 04:04:41 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [rHYAsM97Qmd8gKDl1VdiDtMb9AD7uS5jGppjo8AYINc=] X-ClientProxiedBy: ZR0P278CA0067.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::18) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240509020443.3715755-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AM8P250MB0044:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f650940-a1b2-41b0-8c5a-08dc6fcc68c8 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|440099019|3412199016|1710799017; X-Microsoft-Antispam-Message-Info: 7w9WRftI/dFrzcTteuafoq85tAZWpF04qDb2y2XnwCPxfSzAl+PCZ/va4PurH6hjjvN9++9TPwxV3XcFVxAQlK8/KyiOZ7xzEADh0vprydSTpr38qyWX3ns9sjRB5VzXhk653dEPWKkuNMjFKXOt797enNHR8HTYd0aD5puMKfs8cqo47+KUbFB2yB7Rq0qNyMxjDKfusbwiAvRv7G6ipF97FsAROuQVeMPnR+l/UBt8UVW1hbSsLN80D6CQnO1eQx6dsRhp8puourGirdTHTli7SibV068oiO2Rc1mTR71Q1EfqpRXbgVT2E+NKtWz2cqKPrdXatbNHr+0N5ukN0e3Xyp+grlgyq9lzFCo8u3V5DMOENv0hsUmEu0xTsHDwSPstdc8+zeVOETNjEwVok6jB/hLobMFXF2jgEPm+D2n+Nfr6JY37hf5g/7bBui4SGlP4m0pOfaG9WZKv/DArwWGHLg2ir7ts5xv3MXzutx7KLCgcln/N18AdtoQ7CJD7HtIZppvKj0EYo/+qNBvdnoXke/fYfpMZ8AKZp4AGs4l35EYyu8iOLJblk0F9jrHx+EGwo5pQ0R/wRuD/u8LQ7RTvthnieIGA5dVJxXF5UDwwk74SFigHEqNu/Wik3cUI X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 9u9FKchF5GESAqBfTCj0K0M0BzvgCp+qAf8iQyCGl1gpXMzfaKpZMZW7e0lMwLrucfxhKmHu19+isocbTBx1SOnIjibU+mrhu4Ky2UGW8VZcvnkZkZkLKKhTevZmAIW+di09+hNNovLK/m8zGyEdpikZP5tknvBLVz+MdlbjsqUVF7w6IPdDwrb/pW7X8w75gOVa4t1ks51Gzi8E2Aw3cexYT+K/uRfnJVRnLNbU+qx04nttPiDajJ01DUsFgPnD0DZWcT/ewvejeUHF0LUKgTfrNdmXOcncT0yOpqP/RxApUE/ihpAKh5R90gcp45FrRkK1p0EHKs/fdfNVrYnsSdCX00Jk5gqDHUKojZQtV+6CQCC9iY5GjxirqjZ8LHKIbnRAAc+nW93rxpyj5F70lZ8EsaVCgs9e9tQ9xPMoN+eWBQhvVYJ1YL/u+l12zUa9kDnz2Ppsb5fke0G0EX5PPEO5AkW1Br4g0kyRRACjUBoHUikS8RIFte9Kfvi98dk3+YEI8neZRieIQ5EQI0DWr4V2TZHVC4YZEb3ANkQWR5eHXygoWghLbUD/ZJELq+pFdbM0EWJmmKfhZhBHYFeS2Uehb+SVasFPjBlaf5E7x4Qg98NHsuYv3p1YaZ31mKfgFdCcEMESo7F9Sfz4KAk1JY5C90hM4jlpq7BJ57iIU4tXYdCWlACouD9IkdSp1GmB9Jfi484VTiqmxnvV8WHnTNGG2nzLjGatj9vQmvOBCEwVDa8r1QKr3nHqEcdh6lIs2YI3GAzCcmLdKz+SgX5jAdFvjgSvmaefLVKH2C/m+OeJsRtLcx8dO8j0aiysimhN6eCc6gQszYeds9JSiXWSB+vRCtW5OuxF7bDDIKK/XiIoHHlYm9XVBqhWENbnEVR1mkHGHKAbU8VTshmIn+vP8B7GttwQRMLVbDZytcMX/2Ofpf4iV9iK4/2VB44e8LWFvCzVpyB+VUU39lHrQE/+OyIN49ObdSr3ma7g46q6jI24Mbf0qLKlw4ywE3uyKKlQkUSqfwB8cIVZ7CwMth5SksXasy0wZFNrDCb6k0YiBSkejIiZvXv2D7T86vSYZ5QhUNyYdr/Z8rMq4v6CZL39r6hQjRLoboUtDlzjp8+yLacaiXnXbKxu42bMckQoNkRAY0KjEf0RGHbTp9trRz5w6CLJ+71FkeeoIolwTT9vyo4tjqcC0YlQZO+lQJSufW/eWnqUUUP3NQ9VSE1gLYJqwekNYVWAORip9FRO8Az+ATtOPxXUcw6unpbjTTfe3mLr272i2KDbTU0clqjYpCRTug== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3f650940-a1b2-41b0-8c5a-08dc6fcc68c8 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 May 2024 02:04:50.3744 (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: AM8P250MB0044 Subject: [FFmpeg-devel] [PATCH 2/4] avcodec/codec_desc, jvdec: JV is not 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: pmOuulcqbqJD It reuses the previous frame and does not code unchanged blocks. Signed-off-by: Andreas Rheinhardt --- libavcodec/codec_desc.c | 2 +- libavcodec/jvdec.c | 2 -- tests/ref/fate/jv-demux | 14 +++++++------- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index 7dba61dc8b..5ae26f5d2b 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1095,7 +1095,7 @@ static const AVCodecDescriptor codec_descriptors[] = { .type = AVMEDIA_TYPE_VIDEO, .name = "jv", .long_name = NULL_IF_CONFIG_SMALL("Bitmap Brothers JV video"), - .props = AV_CODEC_PROP_INTRA_ONLY | AV_CODEC_PROP_LOSSY, + .props = AV_CODEC_PROP_LOSSY, }, { .id = AV_CODEC_ID_DFA, diff --git a/libavcodec/jvdec.c b/libavcodec/jvdec.c index 13ede9068a..2b7c9f0d29 100644 --- a/libavcodec/jvdec.c +++ b/libavcodec/jvdec.c @@ -215,8 +215,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *rframe, } if (video_size) { - s->frame->flags |= AV_FRAME_FLAG_KEY; - s->frame->pict_type = AV_PICTURE_TYPE_I; #if FF_API_PALETTE_HAS_CHANGED FF_DISABLE_DEPRECATION_WARNINGS s->frame->palette_has_changed = s->palette_has_changed; diff --git a/tests/ref/fate/jv-demux b/tests/ref/fate/jv-demux index b5d3196cf5..22a9217e23 100644 --- a/tests/ref/fate/jv-demux +++ b/tests/ref/fate/jv-demux @@ -11,13 +11,13 @@ 0, 0, 0, 1, 6, 0x000a0003 1, 0, 0, 131072, 131072, 0x14c664d6 0, 1, 1, 1, 773, 0x11802a51 -0, 2, 2, 1, 12974, 0xc2e466b7 -0, 3, 3, 1, 12200, 0x3c0eeb31 -0, 4, 4, 1, 13339, 0x91d82488 -0, 5, 5, 1, 13940, 0x064c350a -0, 6, 6, 1, 14418, 0x078d2dd2 -0, 7, 7, 1, 14539, 0x145167ed -0, 8, 8, 1, 2552, 0xcf2b1db7, F=0x3 +0, 2, 2, 1, 12974, 0xc2e466b7, F=0x0 +0, 3, 3, 1, 12200, 0x3c0eeb31, F=0x0 +0, 4, 4, 1, 13339, 0x91d82488, F=0x0 +0, 5, 5, 1, 13940, 0x064c350a, F=0x0 +0, 6, 6, 1, 14418, 0x078d2dd2, F=0x0 +0, 7, 7, 1, 14539, 0x145167ed, F=0x0 +0, 8, 8, 1, 2552, 0xcf2b1db7, F=0x2 1, 131072, 131072, 1764, 1764, 0x30be734d 1, 132836, 132836, 1764, 1764, 0xa4c873a7 1, 134600, 134600, 1764, 1764, 0xd5f17443 From patchwork Thu May 9 02:04:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 48679 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:9d8e:b0:1af:cdee:28c5 with SMTP id mu14csp154646pzb; Wed, 8 May 2024 19:05:12 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUUpVOqb6kFWUFZrNFPXRZfYJ+v7AnbgehB1xl7HpPDzofyZzxprgrklpEMZqiVR3dfRDK2hw4R8fZIshOK45qn9wT74eBcpmPhWw== X-Google-Smtp-Source: AGHT+IGEBYfUzv1wzBzK/cNLrvCUCWDWSOMHBnP9T9+C3F2Rb+at5tZIKLL1fmNw9fATQW1mlsOY X-Received: by 2002:a17:906:3394:b0:a59:a0ec:e02d with SMTP id a640c23a62f3a-a59fb9230cbmr259177666b.8.1715220312047; Wed, 08 May 2024 19:05:12 -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 a640c23a62f3a-a5a17c2c4b1si23751366b.1007.2024.05.08.19.05.11; Wed, 08 May 2024 19:05:12 -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=Cvusivr8; 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 7DD4368D71D; Thu, 9 May 2024 05:05:06 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2084.outbound.protection.outlook.com [40.92.91.84]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2A81668D70C for ; Thu, 9 May 2024 05:05:00 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N0OcMEOf3P9jMaWkeEvYj/vzrUAN8v0vN6Usab/RaDGazzzjQ2aplwdmbSrXGlTm6tvMIa7ZpkOGg6J4ZB3EfM2urJlK4kCdWtS8pVzTDI7oKD1s8lf1QDiubKU+SB+qRpdN6bcBNfD9CXmS+b8Ocw/T0KxNWFxK4nceSaVTCrsmbw3Db5LewrH712MCn/KKDHrF5kH3vGvRchJb1v4Il8rZM171V9IR6D6Xn0pTLcp1CKoQyhQAa8BtVQtP3os5OlJJXDRuq/ib2qH4k7C5bJT2hFfKEhu03sErmtSUH6O672qFz5mr7nP1cxmC5Pl3XhneaG626dZHc/YWW5KqtA== 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=mBKuH6j5trALGXiXkTzFdsxl5Lz0VUatB3FJxZYiPsc=; b=eC5Ftall6buKy18Q3LpO4mmsd/2YW7bM7P8djzwT4askrc0feMCgRJUGbFZw2IjlJMxnI2oBrONOlAS1ghJqlNjZeX7Og/SN0167OF6kxxG6akvf/3bR9bMTMpgWPGy2uyv8F35wcojhRyNQyn4cuBI2IDGrCZV7v/Wy0dmSEyK3REr2LEbAIhAYsK7fo8YEhnuw5BnvdjYqzQLzBpcPLsZaTk2RB4veNSbjZIfOy4xdOwXPh/YADc/0wi6fwCyzu3481KSWqVDV0AFXQZIKmuskXZJMsMT8aYzdMKP0Sw+BnYtq7U+xBa8mBatyeeLv6gHvX+K+h/9BbV2g4NGofA== 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=mBKuH6j5trALGXiXkTzFdsxl5Lz0VUatB3FJxZYiPsc=; b=Cvusivr8DRjLr0hUlUNAdEIba1Z3IopWVKxMMNFEruCDXDsXFtWdwGotSzVBzjwr1Hujd+JD3uNGJ8OeMzpMz6vrEXMPR1286YIA3NgI+9Ypi1ACQCQsaNEV4YamdDjdTrtYAgWs5m7TuCEmebPE3RpESAn+d8b+UyQK43B9JVrVJQXXSekBq6dCo3kNdTfS5riQ7eKnkkPYjxmJRsfe6Rf2mvlyKiX3LugIBkbrwtItFtuSidtGKsQPHnNh7MnJtn65o+3kuu4lL2Ti7P94eGuRXRfErQmwpZ/5eDkGLhkFAoBSFer81JIYa6zzgIqbwTrf2GXk/KXIKPBHe3cu2Q== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AM8P250MB0044.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:3db::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.47; Thu, 9 May 2024 02:04:57 +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.041; Thu, 9 May 2024 02:04:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 9 May 2024 04:04:42 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [3rwimfHBG9meWK2KdpijHVyvjoGt3LtDAgKdxtQB6bE=] X-ClientProxiedBy: ZR0P278CA0067.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::18) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240509020443.3715755-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AM8P250MB0044:EE_ X-MS-Office365-Filtering-Correlation-Id: 6982fdaa-57aa-41ea-03a1-08dc6fcc6cc5 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|440099019|3412199016|1710799017; X-Microsoft-Antispam-Message-Info: Ing0zkCR7NcBds4RCJafBKeJ/LMjcxmqX+iCFiHOLOCZ6DIwuB8Dd6xEetWkzqHV5awNZuHQIZ7nCHAEL9NrrOSf8a5y+dWGnLE9bvT0/+BNOej08+B8xNaVRlq5lzinAk+YX/oKaaIoqqGzzC5UNyaODsYK0Mtm5bQx/0y0wg0jdeKc7o9+2N7QSGYFIv6xdeWXVVDCMKczlwEufBkJE8HgsHvdW790W28C/mGY+R3bJfQv3khX4l/qg4vaN0Ch6qwWm2RyhqAc8fd9T/t/r1l/s1Jhqk8nkUD3sEL7kpwm2lFob64fMiJSMj93xsLIY6moXoA8Mb3HJri1VoGPb0ySlRGWU1JwFkw00dAU7F1gIH5QYfUmvBaXTxe/VM3VuVXG5DKi9Dqc74juys2BAWo1BUs9YD1ZiktxqswjVAtqsXE9e764Nmfs+ksGgYbqOyZgzbedekxh4U7/cycKeEU32Uhbgt2lIgbEhEo5y7DRY8qw5hUIb2EZ37hqvOZULhB/kipDfSUTJ6q/MvxI0Tw/WIYTR8m1oRTSOg0HDzMQjhf89nK75LeQr2yCkHJ/T6V/F3SaxKUHL5Gaq4I/2+hD9N3N36v5q0PwxS26+QV+Avctw4QwrHVTn2goBgaq X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: mLaz+AAPzipAlu9EHCSwfWUN8ZeusTDp5xyTbU6T89Sqcl7iHTDXtd2m7gx8ndWS2OHLZanXs3pppY5KDVevMs6Y7r9xviBIENNNXGJM7aTzNcITEP65OuUIQspD4gH8gJH3hEmnsA3s65dcTA24FIgQJhdbsnyhWT0yJjhlT2FKF3tK4J0tICuIzWsV4mFBFd1jNCuFdOF5VACxFk0ZVqOwtMATgygNxymrPZ6ClRFLcOFseGMaGM6BG1hMDe7UYMRo9Ixu0wIFs7OroC2s6aXKJsHouD0Cjr7rpE5ih0HHoeeGFv52wiL4f0mxtQPwCNPqfPw9fvacNVXY4uMajNu8zoEv4qD75BQUTGT05L4fR8rSEEqECjQiYD0Y2GhUqUwVB2347eVsfGTCy7rmrArIOpI9ZhotG+4ffpFMGE5/i9e+4TFCK+iHvkf/4P337ZL2Qi6ryNPcuHvU8cKxhIoxuusBYVEjhwgSwhaj3jvkqo84RMPsGEdJLKVf8BpULMkGpbN+/UwT5Td1xdl+GJnLlgI4dRAMTCL6mhB7I0l9P5aQyixko7U2+hyStC3sRzexFYtedtFtYWc8ABDYDbSJkm0zLZU97eulakmNMovjVy9hHc095PvAV9+zDBaIeWl+sYvM0ehLXoTyyxSiLmom78KgLDx9+LeVTrEzkd3q+xX1YXHy24LXQ9bKooJ5DvOr3kr892EFctXS7cy10tIAg288SpRrZpXyRqsj3zwB7KcZQk7d/j4fnTThkJUxPdUEUgoqQFLI9FXzwdur7Q8r1/ZROim8XGL0BId3vzgOhqCYUszAzq9vyYZyYF45pIZ6yVtaFBeUDuw36xj/c+QoqsuWXZ97W/vuJzqSj0cQx7AGdKwdARYhyKesEG2rRhTGfZVKNfjyyCD520x4uB5jCEOZrbJqF766PjsI4Ym5SUkVMW8bGED3IDEl2Y71GUiG85C9redxLZoRUnavm6KOpRgsUx0c3v81vMkfr6CXF+99eRr89V61yEJh2OaHYuEMOJrwrGYzxCRsRAMIVV6CWvgQ6/f0NwfFHe86Azn/bf1WXkS2ofK2UekKlTE70FKIo9Ji1C5Isv2mxP2bOH3u3hD8SQC+Dz+dsw6MfKBUkapDby2S7vy+LgjN6W4NFzPVzUt4jeZNBbfCsNYmALu1jRwJ3QBAUtSgofwgbF4h1OpUqaOdrkWt6RCUdz5naOcOA7yxlH3bLZf9ridD+hBsbgFiAPubEVDI4kIAigKU9xGMlWCegys/CguXIrGLMWFf0uMkFj29LZdd4En39A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6982fdaa-57aa-41ea-03a1-08dc6fcc6cc5 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 May 2024 02:04:57.0640 (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: AM8P250MB0044 Subject: [FFmpeg-devel] [PATCH 3/4] avcodec/decode: Set KEY flag+pict_type generically for intra-only codecs 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: prNjGe7G6YoX This commit is the analog of 3f11eac75741888c7b2b6f93c458766f2613bab5 for decoding: It sets the AV_FRAME_FLAG_KEY and (for video decoders) also pict_type to AV_PICTURE_TYPE_I. It furthermore stops setting audio frames as always being key frames -- it is wrong for e.g. TrueHD/MLP. The latter also affects TAK and DFPWM. The change already improves output for several decoders where it has been forgotten to set e.g. pict_type like speedhq, wnv1 or tiff. The latter is the reason for the change to the exif-image-tiff FATE test reference file. Signed-off-by: Andreas Rheinhardt --- libavcodec/decode.c | 29 +++++++++++++++++++++++++++-- libavcodec/pthread_frame.c | 17 ++++++++++++++--- tests/ref/fate/exif-image-tiff | 2 +- 3 files changed, 42 insertions(+), 6 deletions(-) diff --git a/libavcodec/decode.c b/libavcodec/decode.c index d031b1ca17..0ca5344ef5 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -57,6 +57,20 @@ typedef struct DecodeContext { AVCodecInternal avci; + /** + * This is set to AV_FRAME_FLAG_KEY for decoders of intra-only formats + * (those whose codec descriptor has AV_CODEC_PROP_INTRA_ONLY set) + * to set the flag generically. + */ + int intra_only_flag; + + /** + * This is set to AV_PICTURE_TYPE_I for intra only video decoders + * and to AV_PICTURE_TYPE_NONE for other decoders. It is used to set + * the AVFrame's pict_type before the decoder receives it. + */ + enum AVPictureType initial_pict_type; + /* to prevent infinite loop on errors when draining */ int nb_draining_errors; @@ -382,6 +396,7 @@ static int discard_samples(AVCodecContext *avctx, AVFrame *frame, int64_t *disca static inline int decode_simple_internal(AVCodecContext *avctx, AVFrame *frame, int64_t *discarded_samples) { AVCodecInternal *avci = avctx->internal; + DecodeContext *dc = decode_ctx(avci); AVPacket *const pkt = avci->in_pkt; const FFCodec *const codec = ffcodec(avctx->codec); int got_frame, consumed; @@ -409,6 +424,8 @@ static inline int decode_simple_internal(AVCodecContext *avctx, AVFrame *frame, if (HAVE_THREADS && avctx->active_thread_type & FF_THREAD_FRAME) { consumed = ff_thread_decode_frame(avctx, frame, &got_frame, pkt); } else { + frame->pict_type = dc->initial_pict_type; + frame->flags |= dc->intra_only_flag; consumed = codec->cb.decode(avctx, frame, &got_frame, pkt); if (!(codec->caps_internal & FF_CODEC_CAP_SETS_PKT_DTS)) @@ -597,6 +614,8 @@ static int decode_receive_frame_internal(AVCodecContext *avctx, AVFrame *frame) av_assert0(!frame->buf[0]); if (codec->cb_type == FF_CODEC_CB_TYPE_RECEIVE_FRAME) { + frame->pict_type = dc->initial_pict_type; + frame->flags |= dc->intra_only_flag; ret = codec->cb.receive_frame(avctx, frame); emms_c(); if (!ret) { @@ -626,8 +645,7 @@ static int decode_receive_frame_internal(AVCodecContext *avctx, AVFrame *frame) frame->width = avctx->width; if (!frame->height) frame->height = avctx->height; - } else - frame->flags |= AV_FRAME_FLAG_KEY; + } ret = fill_frame_props(avctx, frame); if (ret < 0) { @@ -1793,6 +1811,13 @@ int ff_decode_preinit(AVCodecContext *avctx) DecodeContext *dc = decode_ctx(avci); int ret = 0; + dc->initial_pict_type = AV_PICTURE_TYPE_NONE; + if (avctx->codec_descriptor->props & AV_CODEC_PROP_INTRA_ONLY) { + dc->intra_only_flag = AV_FRAME_FLAG_KEY; + if (avctx->codec_type == AVMEDIA_TYPE_VIDEO) + dc->initial_pict_type = AV_PICTURE_TYPE_I; + } + /* if the decoder init function was already called previously, * free the already allocated subtitle_header before overwriting it */ av_freep(&avctx->subtitle_header); diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c index 67f09c1f48..982e4a64c5 100644 --- a/libavcodec/pthread_frame.c +++ b/libavcodec/pthread_frame.c @@ -22,13 +22,11 @@ * @see doc/multithreading.txt */ -#include "config.h" - #include -#include #include "avcodec.h" #include "avcodec_internal.h" +#include "codec_desc.h" #include "codec_internal.h" #include "decode.h" #include "hwaccel_internal.h" @@ -108,6 +106,10 @@ typedef struct PerThreadContext { int hwaccel_threadsafe; atomic_int debug_threads; ///< Set if the FF_DEBUG_THREADS option is set. + + /// The following two fields have the same semantics as the DecodeContext field + int intra_only_flag; + enum AVPictureType initial_pict_type; } PerThreadContext; /** @@ -220,6 +222,8 @@ static attribute_align_arg void *frame_worker_thread(void *arg) av_frame_unref(p->frame); p->got_frame = 0; + p->frame->pict_type = p->initial_pict_type; + p->frame->flags |= p->intra_only_flag; p->result = codec->cb.decode(avctx, p->frame, &p->got_frame, p->avpkt); if ((p->result < 0 || !p->got_frame) && p->frame->buf[0]) @@ -763,6 +767,13 @@ static av_cold int init_thread(PerThreadContext *p, int *threads_to_free, AVCodecContext *copy; int err; + p->initial_pict_type = AV_PICTURE_TYPE_NONE; + if (avctx->codec_descriptor->props & AV_CODEC_PROP_INTRA_ONLY) { + p->intra_only_flag = AV_FRAME_FLAG_KEY; + if (avctx->codec_type == AVMEDIA_TYPE_VIDEO) + p->initial_pict_type = AV_PICTURE_TYPE_I; + } + atomic_init(&p->state, STATE_INPUT_READY); copy = av_memdup(avctx, sizeof(*avctx)); diff --git a/tests/ref/fate/exif-image-tiff b/tests/ref/fate/exif-image-tiff index 887c039df9..f5ff4dc16c 100644 --- a/tests/ref/fate/exif-image-tiff +++ b/tests/ref/fate/exif-image-tiff @@ -20,7 +20,7 @@ crop_left=0 crop_right=0 pix_fmt=rgb24 sample_aspect_ratio=1:1 -pict_type=? +pict_type=I interlaced_frame=0 top_field_first=0 repeat_pict=0 From patchwork Thu May 9 02:04:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 48680 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:9d8e:b0:1af:cdee:28c5 with SMTP id mu14csp154713pzb; Wed, 8 May 2024 19:05:22 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXiOLbCR5w6P59o1ChwfBacc4Tt8x+Gb6NUQVUy/ul2jVzbU1gBsm2KidiYrq9tIbEF1JaoATcmYy5cJ1BzIZtDFef7Qu2lSuBSvg== X-Google-Smtp-Source: AGHT+IEg6jVNBEwqyQ/0MnNKr2jpaD3HolaFDKoNwsm7wqp4QAJy/qNbGY/xDCAwp3bTD84hTKDt X-Received: by 2002:a17:907:20ed:b0:a59:a83b:d440 with SMTP id a640c23a62f3a-a59fb94daebmr261799666b.31.1715220321940; Wed, 08 May 2024 19:05:21 -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 a640c23a62f3a-a5a17b21ae8si24682566b.288.2024.05.08.19.05.21; Wed, 08 May 2024 19:05:21 -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=DBz6WuxC; 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 B48E368D714; Thu, 9 May 2024 05:05:11 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05olkn2084.outbound.protection.outlook.com [40.92.91.84]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4BA2A68D714 for ; Thu, 9 May 2024 05:05:05 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HyVInCFL5FxPQ585cnO+w2n+7N1a9/4JpnsI55DTZafdSJZvWuj1iUh0SmylH2g4pwv0teO6covadaepshAZT0FHSWCgiOszqW5tGeszKITVdApsj6spKeBaBJsx2yNwcvmN7TGCW7bivkpSOIvx1mXEZGdnqSWCWRyWZcXVTcybEcpr5frOMrsUrBj+4Ig94tEilQqWpCbQZ55m8nXiygJTcbRQjs684UBKdDro8z7XKD3I4mNwA8BAdm3LvBcm/eBRw/Q1QeEW3SNEi3avXSGpdrtr7864Y87BoO/4v6NG0ME+0Uq0bHfaawz30Ga2k+5yk4O4CTZt7sBtwi2lug== 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=aR2Q0hOu9jVifyaC2Zr+4qET0A1cPCM3yaAlTPwEdfg=; b=f289uD7CtlLMhmTHTfK0hNngCbekWl1ZPb5Krb3BcB0guhT9q8mkw1QqL24gbSfx0hzyhOY7Aqr0pHPiXkdP8igQBABHnKnG3x2iJFTyzMapwZ6PB+O8oCAUS0ZuJ1cMjn5CY7mtSDvemtawUpp+eb55R3AU4HWiE0wPzr922e+tgkM6C1CaZ1CMBujQgz3hg+f97xOm1ZcEt3dVbD6d2CX8c6U5ydAfN2oAf2l7N9YDkluwI5mRLpSQkvNa5PW6AdpjQtdSolNCIaPdLRf0iAit9E9nB9sI3Vm3IyLd4hZKpL6TlLsud0Knw/qqJiqx21bp4MxGfREfDGjIVSglfA== 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=aR2Q0hOu9jVifyaC2Zr+4qET0A1cPCM3yaAlTPwEdfg=; b=DBz6WuxCSXYZNOMuDyY6d3swbrAHnLesPbX3Zv7Qu98Txg326fSG/x7cKtYuxVEBuCqPFlm7r06KRdzduGwlm1YLAeOFzIGGh4SWZG+jzXYULzXO/2AYF1a5wlR4RD8Pfm5vksnBYkLMLuh32DaSA9G4pY872Yx3hTxTqWce5QSIROH7xDjjX5YeotHlv1R6iCsXN/KHkpvzL4F/e/UP+nKfYP8sEncISvD5WRIlLF3I5SInNLY3vejGPGuKjnlEslF6Z1Qhvh/hH4iZcKofNmqC/bZPdYdw4B90ibZQP0VZazgt40qsatwjMxIfi9vz115ItEL90FMtfFa33qJK5w== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AM8P250MB0044.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:3db::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.47; Thu, 9 May 2024 02:04:59 +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.041; Thu, 9 May 2024 02:04:59 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 9 May 2024 04:04:43 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [cV1/RzTIf5bgsMlKYn9Sj6gPUgIy91jma09rD03MUd8=] X-ClientProxiedBy: ZR0P278CA0067.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:21::18) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240509020443.3715755-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AM8P250MB0044:EE_ X-MS-Office365-Filtering-Correlation-Id: d53b755e-a050-459b-5e3c-08dc6fcc6da9 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|440099019|3412199016|1710799017; X-Microsoft-Antispam-Message-Info: sDqCf0CKMt0ns3rn0/vbp6MzNTrEUARlw3ZG+KQ6ZtePBqHrYuXsM4go68u8RCqbVXMGDfhG540Thk+hFDzAlMc6LPf5rvLoPQhIyX8QqoYK74CwmbRKe9bV4c7f+3LyLSHWrQg76+E3IO4fsiOeHs3nKbXWXqYeaenJ8zCti5IoQyLDOWEuOqWDWjIJCr4gCE+Dqvq8fNLeQrxQxMaCrY8gj3DGsEjzAgUAGS8oj6AIWBxpCUIwq3YmYk1z7fVsiV3iKwarw26RC9hrEECrNIepX95pYZ0CZ1Mcib+Z8LPD7aUoVBvU+Te1EMc8ve4OCG3RxAT0HlOSR5r5l7nbeZpnJLSy9rKgdJbXvgSK1FvvzLJlFbkRTe9rYSRtC69ElB1FTRVParrd50R+DZY1uwVPocqjJUQvinSY2scjgvwtgcE9g8vy/gonsAoDqyjVnm9WFjVvCHyISbLbqdAZZBAt9vIBd2KO+fG3sx62GSAa6uPDF5Vk1+2z4rciDqpHvhhLXsgvMuMRU+Iat0MlHrjrKePazfzsitHBd89TMMJQEmI0203cSOY79FXcuc0MnXRMRF6NAS9R0eq7KToUnIhgaGzR/G5pU7VDEgT5aMcmD2ERKytijkd7gXjNqAAP X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: BthkQbo+iqIl3Z/GZa/SwceygCtili/b5BAkYqd6G6UHl49Xm3rwIHecIMzin9Iscd5jvz/hPeAc/HkJiqziOIshMctu9HTRBWeEh1XgWbUZzpUdlhsF4KufDhwBFhZE3gU2Jc55GtfdqWnFoq+SlrAmIsB18uHMuNakchkSqicG4cct/paOMK4gZjuh3wYyOQsoVvzcrIyGBCwj4MWEgPXWZroAPQx8tbmgkROXtQ6P72Fylo+/8X6ALSOvpnpm9NYfjXzeNZpRvYQNdfxARIH4TqTS2sJbMze1pb97D2WmS60nOtwrcsK9XXjvwuhrZ6DjVGzhfaTiDDXVZxg/D1COlQH171qecVMVZJhfzDCwOO7TctPCe/NkStg00QWF88fr1s1O1WU9teXAJcKF2i9D+CJWZztt3kYmMTWnM5h6U4DvTtf4sn8GuGR1yFCe3W8mqPu91HcGX0uze8GuqZFv3imPabFWTH0FayrbTCeNQK7jDoSaMta+GPs5ohCsxP2MandV398oEXYdrzyXRZHJUQQ29jLjCQFXHNzPweUDr2E7AjewwPiFi7Ob3a/b33KrF1B/T3EAUTSAOjcPHDYuuDWIkntC210esHxmQm+vR4tD2rMpPSIvmwHcC+/ak6YNKFOVWrGUQ6Hmg0lZVVtQC5B6L6H+kZl6H7lNCCDLushw6EJm41/b8+8stPAj1+pMwTjWrD+ABXHXK/k+c3+XjJKG1bi92+2aOrVQTjCW/k/ee4/13a0JhsCbqXJ5jxYgnTFz9mlE704G29SwiY7JoqQoCfx4wZ/+h7FemvfrAm9qGMXlekOsl6yYH6oBZp1znLm6BBv/JSl2E+XtAqp0NqRL20ycuoi0wjsMTDel4jZ7Qw63+dUV2N3MSCu/ANC64IPUagN6YWqu9WNAEb6DoISs9y6JeyHykccn9AmhiOM4Gf+zRYnLZjmZW8NChoBiY7acz0l/bwzFWPIZI4ILF4yisY6utgy8SzfYWHV6U4q7Ge+GtwTNA+bEGPmcfp3xlbDNLvRl7MDx8UmljBPGIoCAlDATj9h9jfQIsaE7FUsIdmuJGilPU7MiWkzlsnkU+JnGaUvkgq/J6zJKUK6CdOHYWIlob9PO6lqpcRBu4Uf3DBygeyzSmi+8Now/DaD5aAn35tnIfFz8jkzSHTpP5ULR2VP/vxuSKs5esy2Aqtnc/4f6gutCJqM0SawpY4MWPZVaJcRzOeQZy3x/Tvmb8oWoOELhEyt5OImi2hYDu66ipU5WzJwk7mN35V11BDZIa3sCfAXM8UG0yoQkEg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d53b755e-a050-459b-5e3c-08dc6fcc6da9 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 May 2024 02:04:58.6048 (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: AM8P250MB0044 Subject: [FFmpeg-devel] [PATCH 4/4] avcodec: Remove redundant setting of AV_FRAME_FLAG_KEY, AV_PICTURE_TYPE_I 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: LQZBbVRuNDu7 This is done generically now. Signed-off-by: Andreas Rheinhardt --- libavcodec/012v.c | 3 --- libavcodec/aic.c | 2 -- libavcodec/aliaspixdec.c | 3 --- libavcodec/asvdec.c | 2 -- libavcodec/avuidec.c | 3 --- libavcodec/bitpacked_dec.c | 3 --- libavcodec/bmp.c | 2 -- libavcodec/brenderpix.c | 2 -- libavcodec/cdxl.c | 2 -- libavcodec/cljrdec.c | 2 -- libavcodec/cllc.c | 3 --- libavcodec/cri.c | 3 --- libavcodec/dds.c | 2 -- libavcodec/dnxhddec.c | 2 -- libavcodec/dvdec.c | 2 -- libavcodec/dxtory.c | 2 -- libavcodec/dxv.c | 2 -- libavcodec/fitsdec.c | 3 --- libavcodec/fraps.c | 3 --- libavcodec/frwu.c | 3 --- libavcodec/hapdec.c | 2 -- libavcodec/hdrdec.c | 3 --- libavcodec/hq_hqa.c | 3 --- libavcodec/hqx.c | 3 --- libavcodec/jpeg2000dec.c | 2 -- libavcodec/lagarith.c | 3 --- libavcodec/lcldec.c | 3 --- libavcodec/leaddec.c | 3 --- libavcodec/loco.c | 1 - libavcodec/m101.c | 2 -- libavcodec/magicyuv.c | 3 --- libavcodec/mdec.c | 2 -- libavcodec/mpeg12dec.c | 2 -- libavcodec/mscc.c | 3 --- libavcodec/msp2dec.c | 3 --- libavcodec/mvcdec.c | 3 --- libavcodec/mvha.c | 2 -- libavcodec/notchlc.c | 3 --- libavcodec/pgxdec.c | 2 -- libavcodec/pixlet.c | 2 -- libavcodec/pnmdec.c | 2 -- libavcodec/proresdec.c | 2 -- libavcodec/prosumer.c | 2 -- libavcodec/qdrw.c | 3 --- libavcodec/qoidec.c | 3 --- libavcodec/r210dec.c | 2 -- libavcodec/rawdec.c | 3 --- libavcodec/rtv1.c | 3 --- libavcodec/sgidec.c | 2 -- libavcodec/sgirledec.c | 3 --- libavcodec/sheervideo.c | 3 --- libavcodec/speedhqdec.c | 1 - libavcodec/targa_y216dec.c | 3 --- libavcodec/tiff.c | 1 - libavcodec/tmv.c | 2 -- libavcodec/truemotion2rt.c | 2 -- libavcodec/utvideodec.c | 2 -- libavcodec/v210dec.c | 3 --- libavcodec/v210x.c | 2 -- libavcodec/v308dec.c | 3 --- libavcodec/v408dec.c | 3 --- libavcodec/v410dec.c | 3 --- libavcodec/vble.c | 4 ---- libavcodec/vcr1.c | 2 -- libavcodec/vmixdec.c | 3 --- libavcodec/wbmpdec.c | 3 --- libavcodec/wnv1.c | 1 - libavcodec/xbmdec.c | 3 --- libavcodec/xl.c | 2 -- libavcodec/xpmdec.c | 3 --- libavcodec/xwddec.c | 3 --- libavcodec/y41pdec.c | 3 --- libavcodec/ylc.c | 2 -- libavcodec/yuv4dec.c | 3 --- 74 files changed, 184 deletions(-) diff --git a/libavcodec/012v.c b/libavcodec/012v.c index fa5eb0f95e..7bb60219cc 100644 --- a/libavcodec/012v.c +++ b/libavcodec/012v.c @@ -64,9 +64,6 @@ static int zero12v_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->pict_type = AV_PICTURE_TYPE_I; - pic->flags |= AV_FRAME_FLAG_KEY; - line_end = avpkt->data + stride; for (line = 0; line < avctx->height; line++) { uint16_t y_temp[6] = {0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000}; diff --git a/libavcodec/aic.c b/libavcodec/aic.c index 440c399049..3ff170b414 100644 --- a/libavcodec/aic.c +++ b/libavcodec/aic.c @@ -393,8 +393,6 @@ static int aic_decode_frame(AVCodecContext *avctx, AVFrame *frame, int slice_size; ctx->frame = frame; - ctx->frame->pict_type = AV_PICTURE_TYPE_I; - ctx->frame->flags |= AV_FRAME_FLAG_KEY; off = FFALIGN(AIC_HDR_SIZE + ctx->num_x_slices * ctx->mb_height * 2, 4); diff --git a/libavcodec/aliaspixdec.c b/libavcodec/aliaspixdec.c index 72f810d408..50a6b72a0a 100644 --- a/libavcodec/aliaspixdec.c +++ b/libavcodec/aliaspixdec.c @@ -69,9 +69,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *f, if (ret < 0) return ret; - f->pict_type = AV_PICTURE_TYPE_I; - f->flags |= AV_FRAME_FLAG_KEY; - x = 0; y = 1; out_buf = f->data[0]; diff --git a/libavcodec/asvdec.c b/libavcodec/asvdec.c index 568881ccd2..5abe279f35 100644 --- a/libavcodec/asvdec.c +++ b/libavcodec/asvdec.c @@ -244,8 +244,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 (avctx->codec_id == AV_CODEC_ID_ASV1) { av_fast_padded_malloc(&a->bitstream_buffer, &a->bitstream_buffer_size, diff --git a/libavcodec/avuidec.c b/libavcodec/avuidec.c index 48b23d4875..64a1d019d3 100644 --- a/libavcodec/avuidec.c +++ b/libavcodec/avuidec.c @@ -71,9 +71,6 @@ static int avui_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - if (!interlaced) { src += avctx->width * skip; srca += avctx->width * skip; diff --git a/libavcodec/bitpacked_dec.c b/libavcodec/bitpacked_dec.c index 54c008bd86..a1d3b7b505 100644 --- a/libavcodec/bitpacked_dec.c +++ b/libavcodec/bitpacked_dec.c @@ -130,9 +130,6 @@ static int bitpacked_decode(AVCodecContext *avctx, AVFrame *frame, if (res) return res; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return buf_size; diff --git a/libavcodec/bmp.c b/libavcodec/bmp.c index d117c06cf4..360c103200 100644 --- a/libavcodec/bmp.c +++ b/libavcodec/bmp.c @@ -209,8 +209,6 @@ static int bmp_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; buf = buf0 + hsize; dsize = buf_size - hsize; diff --git a/libavcodec/brenderpix.c b/libavcodec/brenderpix.c index 70a3e6be2a..07bb47fff9 100644 --- a/libavcodec/brenderpix.c +++ b/libavcodec/brenderpix.c @@ -285,8 +285,6 @@ FF_ENABLE_DEPRECATION_WARNINGS bytes_per_scanline, bytes_per_scanline, hdr.height); - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/cdxl.c b/libavcodec/cdxl.c index 26f05e6280..c30e85b2ed 100644 --- a/libavcodec/cdxl.c +++ b/libavcodec/cdxl.c @@ -306,8 +306,6 @@ static int cdxl_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 (encoding) { av_fast_padded_malloc(&c->new_video, &c->new_video_size, diff --git a/libavcodec/cljrdec.c b/libavcodec/cljrdec.c index a4baa015f6..66e9d56e0e 100644 --- a/libavcodec/cljrdec.c +++ b/libavcodec/cljrdec.c @@ -50,8 +50,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; init_get_bits(&gb, buf, buf_size * 8); diff --git a/libavcodec/cllc.c b/libavcodec/cllc.c index 9b07f7c78e..168b8cb3d0 100644 --- a/libavcodec/cllc.c +++ b/libavcodec/cllc.c @@ -461,9 +461,6 @@ static int cllc_decode_frame(AVCodecContext *avctx, AVFrame *pic, return AVERROR_INVALIDDATA; } - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - *got_picture_ptr = 1; return avpkt->size; diff --git a/libavcodec/cri.c b/libavcodec/cri.c index 990e52ac99..7b9a350967 100644 --- a/libavcodec/cri.c +++ b/libavcodec/cri.c @@ -406,9 +406,6 @@ skip: } } - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return 0; diff --git a/libavcodec/dds.c b/libavcodec/dds.c index 89cf225f25..2af7f5c98f 100644 --- a/libavcodec/dds.c +++ b/libavcodec/dds.c @@ -711,8 +711,6 @@ FF_ENABLE_DEPRECATION_WARNINGS run_postproc(avctx, frame); /* Frame is ready to be output. */ - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/dnxhddec.c b/libavcodec/dnxhddec.c index e549b38720..fe0809a5f5 100644 --- a/libavcodec/dnxhddec.c +++ b/libavcodec/dnxhddec.c @@ -655,8 +655,6 @@ decode_coding_unit: if (first_field) { if ((ret = ff_thread_get_buffer(avctx, picture, 0)) < 0) return ret; - picture->pict_type = AV_PICTURE_TYPE_I; - picture->flags |= AV_FRAME_FLAG_KEY; } ctx->buf_size = buf_size - ctx->data_offset; diff --git a/libavcodec/dvdec.c b/libavcodec/dvdec.c index 9e8d40187d..8297b6d2f3 100644 --- a/libavcodec/dvdec.c +++ b/libavcodec/dvdec.c @@ -643,8 +643,6 @@ static int dvvideo_decode_frame(AVCodecContext *avctx, AVFrame *frame, } s->frame = frame; - frame->flags |= AV_FRAME_FLAG_KEY; - frame->pict_type = AV_PICTURE_TYPE_I; avctx->pix_fmt = s->sys->pix_fmt; avctx->framerate = av_inv_q(s->sys->time_base); avctx->bit_rate = av_rescale_q(s->sys->frame_size, diff --git a/libavcodec/dxtory.c b/libavcodec/dxtory.c index f36420cdd9..a9b5d835db 100644 --- a/libavcodec/dxtory.c +++ b/libavcodec/dxtory.c @@ -863,8 +863,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *pic, if (ret) return ret; - pic->pict_type = AV_PICTURE_TYPE_I; - pic->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/dxv.c b/libavcodec/dxv.c index f130db3a4e..7c873a3e92 100644 --- a/libavcodec/dxv.c +++ b/libavcodec/dxv.c @@ -1048,8 +1048,6 @@ static int dxv_decode(AVCodecContext *avctx, AVFrame *frame, } /* Frame is ready to be output. */ - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/fitsdec.c b/libavcodec/fitsdec.c index 284e945ba5..56df3e4d6b 100644 --- a/libavcodec/fitsdec.c +++ b/libavcodec/fitsdec.c @@ -301,9 +301,6 @@ static int fits_decode_frame(AVCodecContext *avctx, AVFrame *p, } } - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/fraps.c b/libavcodec/fraps.c index 4e45efeba8..d7b713c7c4 100644 --- a/libavcodec/fraps.c +++ b/libavcodec/fraps.c @@ -215,9 +215,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *f, } } - f->pict_type = AV_PICTURE_TYPE_I; - f->flags |= AV_FRAME_FLAG_KEY; - avctx->pix_fmt = version & 1 ? is_pal ? AV_PIX_FMT_PAL8 : AV_PIX_FMT_BGR24 : AV_PIX_FMT_YUVJ420P; avctx->color_range = version & 1 ? AVCOL_RANGE_UNSPECIFIED : AVCOL_RANGE_JPEG; diff --git a/libavcodec/frwu.c b/libavcodec/frwu.c index 70bc136765..3b52b968fe 100644 --- a/libavcodec/frwu.c +++ b/libavcodec/frwu.c @@ -62,9 +62,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->pict_type = AV_PICTURE_TYPE_I; - pic->flags |= AV_FRAME_FLAG_KEY; - for (field = 0; field < 2; field++) { int i; int field_h = (avctx->height + !field) >> 1; diff --git a/libavcodec/hapdec.c b/libavcodec/hapdec.c index 22b7c281d1..918eff7876 100644 --- a/libavcodec/hapdec.c +++ b/libavcodec/hapdec.c @@ -330,8 +330,6 @@ static int hap_decode(AVCodecContext *avctx, AVFrame *frame, } /* Frame is ready to be output */ - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/hdrdec.c b/libavcodec/hdrdec.c index 9b6395bb6d..b7ade48e32 100644 --- a/libavcodec/hdrdec.c +++ b/libavcodec/hdrdec.c @@ -212,9 +212,6 @@ convert: } } - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/hq_hqa.c b/libavcodec/hq_hqa.c index 096fb65dc7..738ed9868d 100644 --- a/libavcodec/hq_hqa.c +++ b/libavcodec/hq_hqa.c @@ -366,9 +366,6 @@ static int hq_hqa_decode_frame(AVCodecContext *avctx, AVFrame *pic, return ret; } - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/hqx.c b/libavcodec/hqx.c index 51099aa684..ee6c5a6622 100644 --- a/libavcodec/hqx.c +++ b/libavcodec/hqx.c @@ -504,9 +504,6 @@ static int hqx_decode_frame(AVCodecContext *avctx, AVFrame *frame, avctx->execute2(avctx, decode_slice_thread, NULL, NULL, 16); - ctx->pic->flags |= AV_FRAME_FLAG_KEY; - ctx->pic->pict_type = AV_PICTURE_TYPE_I; - *got_picture_ptr = 1; return avpkt->size; diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index 28bf6be2fe..595bba6273 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -2506,8 +2506,6 @@ static int jpeg2000_decode_frame(AVCodecContext *avctx, AVFrame *picture, /* get picture buffer */ if ((ret = ff_thread_get_buffer(avctx, picture, 0)) < 0) goto end; - picture->pict_type = AV_PICTURE_TYPE_I; - picture->flags |= AV_FRAME_FLAG_KEY; if (ret = jpeg2000_read_bitstream_packets(s)) goto end; diff --git a/libavcodec/lagarith.c b/libavcodec/lagarith.c index 75b557e518..0969448eda 100644 --- a/libavcodec/lagarith.c +++ b/libavcodec/lagarith.c @@ -570,9 +570,6 @@ static int lag_decode_frame(AVCodecContext *avctx, AVFrame *p, int i, j, planes = 3; int ret = 0; - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - frametype = buf[0]; offset_gu = AV_RL32(buf + 1); diff --git a/libavcodec/lcldec.c b/libavcodec/lcldec.c index b4304618e4..b439dbe25e 100644 --- a/libavcodec/lcldec.c +++ b/libavcodec/lcldec.c @@ -481,9 +481,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame, return AVERROR_INVALIDDATA; } - frame->flags |= AV_FRAME_FLAG_KEY; - frame->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; /* always report that the buffer was completely consumed */ diff --git a/libavcodec/leaddec.c b/libavcodec/leaddec.c index 1406cb0014..947c7275be 100644 --- a/libavcodec/leaddec.c +++ b/libavcodec/leaddec.c @@ -182,9 +182,6 @@ static int lead_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; - av_fast_padded_malloc(&s->bitstream_buf, &s->bitstream_buf_size, avpkt->size - 8); if (!s->bitstream_buf) return AVERROR(ENOMEM); diff --git a/libavcodec/loco.c b/libavcodec/loco.c index 3d11823284..b1294a9798 100644 --- a/libavcodec/loco.c +++ b/libavcodec/loco.c @@ -206,7 +206,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, if ((ret = ff_get_buffer(avctx, p, 0)) < 0) return ret; - p->flags |= AV_FRAME_FLAG_KEY; #define ADVANCE_BY_DECODED do { \ if (decoded < 0 || decoded >= buf_size) goto buf_too_small; \ diff --git a/libavcodec/m101.c b/libavcodec/m101.c index 43a3c7bbe5..3ed1cab281 100644 --- a/libavcodec/m101.c +++ b/libavcodec/m101.c @@ -66,8 +66,6 @@ static int m101_decode_frame(AVCodecContext *avctx, AVFrame *frame, if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) return ret; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; if ((avctx->extradata[3*4] & 3) != 3) { frame->flags |= AV_FRAME_FLAG_INTERLACED; if (avctx->extradata[3*4] & 1) diff --git a/libavcodec/magicyuv.c b/libavcodec/magicyuv.c index 06fad8f3f7..b85505c428 100644 --- a/libavcodec/magicyuv.c +++ b/libavcodec/magicyuv.c @@ -652,9 +652,6 @@ static int magy_decode_frame(AVCodecContext *avctx, AVFrame *p, if (ret < 0) return ret; - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - if ((ret = ff_thread_get_buffer(avctx, p, 0)) < 0) return ret; diff --git a/libavcodec/mdec.c b/libavcodec/mdec.c index 31c09de5bc..5ab40719ac 100644 --- a/libavcodec/mdec.c +++ b/libavcodec/mdec.c @@ -177,8 +177,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame, if ((ret = ff_thread_get_buffer(avctx, frame, 0)) < 0) return ret; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; av_fast_padded_malloc(&a->bitstream_buffer, &a->bitstream_buffer_size, buf_size); if (!a->bitstream_buffer) diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c index 21a214ef5b..a9fe3503db 100644 --- a/libavcodec/mpeg12dec.c +++ b/libavcodec/mpeg12dec.c @@ -2822,8 +2822,6 @@ static int ipu_decode_frame(AVCodecContext *avctx, AVFrame *frame, if (get_bits_left(gb) != 32) return AVERROR_INVALIDDATA; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/mscc.c b/libavcodec/mscc.c index 39bfad0b98..26143bfd5e 100644 --- a/libavcodec/mscc.c +++ b/libavcodec/mscc.c @@ -205,9 +205,6 @@ inflate_error: s->uncomp_buf + s->bpp * j * avctx->width, s->bpp * avctx->width); } - frame->flags |= AV_FRAME_FLAG_KEY; - frame->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/msp2dec.c b/libavcodec/msp2dec.c index 30a2825e47..e1daeeb144 100644 --- a/libavcodec/msp2dec.c +++ b/libavcodec/msp2dec.c @@ -46,9 +46,6 @@ static int msp2_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; - bytestream2_init(&idx, buf, 2 * avctx->height); buf += 2 * avctx->height; buf_size -= 2 * avctx->height; diff --git a/libavcodec/mvcdec.c b/libavcodec/mvcdec.c index 6c971f709e..44cab1889b 100644 --- a/libavcodec/mvcdec.c +++ b/libavcodec/mvcdec.c @@ -246,9 +246,6 @@ static int mvc_decode_frame(AVCodecContext *avctx, AVFrame *frame, if (ret < 0) return ret; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/mvha.c b/libavcodec/mvha.c index 356cebc64e..24dd88e854 100644 --- a/libavcodec/mvha.c +++ b/libavcodec/mvha.c @@ -271,8 +271,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame, } } - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/notchlc.c b/libavcodec/notchlc.c index 6dd3f88440..39c646d790 100644 --- a/libavcodec/notchlc.c +++ b/libavcodec/notchlc.c @@ -515,9 +515,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, if (ret < 0) return ret; - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/pgxdec.c b/libavcodec/pgxdec.c index cc7cdb8c9a..bffd57eddc 100644 --- a/libavcodec/pgxdec.c +++ b/libavcodec/pgxdec.c @@ -139,8 +139,6 @@ static int pgx_decode_frame(AVCodecContext *avctx, AVFrame *p, return AVERROR_INVALIDDATA; if ((ret = ff_get_buffer(avctx, p, 0)) < 0) return ret; - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; avctx->bits_per_raw_sample = depth; if (bpp == 8) write_frame_8(p, &g, width, height, sign, depth); diff --git a/libavcodec/pixlet.c b/libavcodec/pixlet.c index f432b15d71..b3baaf6260 100644 --- a/libavcodec/pixlet.c +++ b/libavcodec/pixlet.c @@ -667,8 +667,6 @@ static int pixlet_decode_frame(AVCodecContext *avctx, AVFrame *p, bytestream2_skip(&ctx->gb, 8); - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; p->color_range = AVCOL_RANGE_JPEG; ret = ff_thread_get_buffer(avctx, p, 0); diff --git a/libavcodec/pnmdec.c b/libavcodec/pnmdec.c index acd77ea810..a6945549bd 100644 --- a/libavcodec/pnmdec.c +++ b/libavcodec/pnmdec.c @@ -64,8 +64,6 @@ static int pnm_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; avctx->bits_per_raw_sample = av_log2(s->maxval) + 1; switch (avctx->pix_fmt) { diff --git a/libavcodec/proresdec.c b/libavcodec/proresdec.c index 73fbd3458e..ec1d0bd0be 100644 --- a/libavcodec/proresdec.c +++ b/libavcodec/proresdec.c @@ -787,8 +787,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame, } ctx->frame = frame; - ctx->frame->pict_type = AV_PICTURE_TYPE_I; - ctx->frame->flags |= AV_FRAME_FLAG_KEY; ctx->first_field = 1; buf += 8; diff --git a/libavcodec/prosumer.c b/libavcodec/prosumer.c index a1ed6a9e53..1930e3e3e6 100644 --- a/libavcodec/prosumer.c +++ b/libavcodec/prosumer.c @@ -194,8 +194,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame, } } - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/qdrw.c b/libavcodec/qdrw.c index 21a53b8e72..ca38f48bd9 100644 --- a/libavcodec/qdrw.c +++ b/libavcodec/qdrw.c @@ -506,9 +506,6 @@ FF_ENABLE_DEPRECATION_WARNINGS } if (*got_frame) { - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - return avpkt->size; } else { av_log(avctx, AV_LOG_ERROR, "Frame contained no usable data\n"); diff --git a/libavcodec/qoidec.c b/libavcodec/qoidec.c index 37bc2084c0..bb48fa23cf 100644 --- a/libavcodec/qoidec.c +++ b/libavcodec/qoidec.c @@ -106,9 +106,6 @@ static int qoi_decode_frame(AVCodecContext *avctx, AVFrame *p, memcpy(&dst[off_x * channels], px, channels); } - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/r210dec.c b/libavcodec/r210dec.c index fe6a025988..7405da68e8 100644 --- a/libavcodec/r210dec.c +++ b/libavcodec/r210dec.c @@ -56,8 +56,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->pict_type = AV_PICTURE_TYPE_I; - pic->flags |= AV_FRAME_FLAG_KEY; g_line = pic->data[0]; b_line = pic->data[1]; r_line = pic->data[2]; diff --git a/libavcodec/rawdec.c b/libavcodec/rawdec.c index 8de90e0477..b02edac371 100644 --- a/libavcodec/rawdec.c +++ b/libavcodec/rawdec.c @@ -225,9 +225,6 @@ static int raw_decode(AVCodecContext *avctx, AVFrame *frame, need_copy = !avpkt->buf || context->is_1_2_4_8_bpp || context->is_yuv2 || context->is_lt_16bpp; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; - res = ff_decode_frame_props(avctx, frame); if (res < 0) return res; diff --git a/libavcodec/rtv1.c b/libavcodec/rtv1.c index 807c8a3466..c40f9ada56 100644 --- a/libavcodec/rtv1.c +++ b/libavcodec/rtv1.c @@ -132,9 +132,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, if (ret < 0) return ret; - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/sgidec.c b/libavcodec/sgidec.c index 04a347c51e..40186dcdb7 100644 --- a/libavcodec/sgidec.c +++ b/libavcodec/sgidec.c @@ -248,8 +248,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, MAP(2, 1); break; } - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; /* Skip header. */ bytestream2_seek(&g, SGI_HEADER_SIZE, SEEK_SET); diff --git a/libavcodec/sgirledec.c b/libavcodec/sgirledec.c index 18bf8081fc..3ce72eccb8 100644 --- a/libavcodec/sgirledec.c +++ b/libavcodec/sgirledec.c @@ -123,9 +123,6 @@ static int sgirle_decode_frame(AVCodecContext *avctx, AVFrame *frame, if (ret < 0) return ret; - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/sheervideo.c b/libavcodec/sheervideo.c index 660e2661a4..ef20633e1f 100644 --- a/libavcodec/sheervideo.c +++ b/libavcodec/sheervideo.c @@ -1972,9 +1972,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, return AVERROR_INVALIDDATA; } - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; - if ((ret = ff_thread_get_buffer(avctx, p, 0)) < 0) return ret; diff --git a/libavcodec/speedhqdec.c b/libavcodec/speedhqdec.c index d3605b0649..e21ef0077f 100644 --- a/libavcodec/speedhqdec.c +++ b/libavcodec/speedhqdec.c @@ -436,7 +436,6 @@ static int speedhq_decode_frame(AVCodecContext *avctx, AVFrame *frame, if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) { return ret; } - frame->flags |= AV_FRAME_FLAG_KEY; if (second_field_offset == 4 || second_field_offset == (buf_size-4)) { /* diff --git a/libavcodec/targa_y216dec.c b/libavcodec/targa_y216dec.c index 2874a51aae..08f85391d8 100644 --- a/libavcodec/targa_y216dec.c +++ b/libavcodec/targa_y216dec.c @@ -47,9 +47,6 @@ static int y216_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - y = (uint16_t *)pic->data[0]; u = (uint16_t *)pic->data[1]; v = (uint16_t *)pic->data[2]; diff --git a/libavcodec/tiff.c b/libavcodec/tiff.c index 19301d9e49..6157071792 100644 --- a/libavcodec/tiff.c +++ b/libavcodec/tiff.c @@ -2381,7 +2381,6 @@ again: } } - p->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/tmv.c b/libavcodec/tmv.c index 2a7e1a105f..2ff1424bd8 100644 --- a/libavcodec/tmv.c +++ b/libavcodec/tmv.c @@ -56,8 +56,6 @@ static int tmv_decode_frame(AVCodecContext *avctx, AVFrame *frame, return AVERROR_INVALIDDATA; } - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; dst = frame->data[0]; #if FF_API_PALETTE_HAS_CHANGED diff --git a/libavcodec/truemotion2rt.c b/libavcodec/truemotion2rt.c index 4f8590fc82..438f96f6b4 100644 --- a/libavcodec/truemotion2rt.c +++ b/libavcodec/truemotion2rt.c @@ -201,8 +201,6 @@ static int truemotion2rt_decode_frame(AVCodecContext *avctx, AVFrame *p, dst += p->linesize[2]; } - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/utvideodec.c b/libavcodec/utvideodec.c index 5377926fa6..4c0fa2ca67 100644 --- a/libavcodec/utvideodec.c +++ b/libavcodec/utvideodec.c @@ -890,8 +890,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *frame, break; } - frame->flags |= AV_FRAME_FLAG_KEY; - frame->pict_type = AV_PICTURE_TYPE_I; if (c->interlaced) frame->flags |= AV_FRAME_FLAG_INTERLACED; diff --git a/libavcodec/v210dec.c b/libavcodec/v210dec.c index 5cead150d3..8b370e5659 100644 --- a/libavcodec/v210dec.c +++ b/libavcodec/v210dec.c @@ -187,9 +187,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_thread_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->pict_type = AV_PICTURE_TYPE_I; - pic->flags |= AV_FRAME_FLAG_KEY; - if (stride) { td.stride = stride; td.buf = psrc; diff --git a/libavcodec/v210x.c b/libavcodec/v210x.c index 55630fa2fb..a4b43883ed 100644 --- a/libavcodec/v210x.c +++ b/libavcodec/v210x.c @@ -61,8 +61,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *pic, udst = (uint16_t *)pic->data[1]; vdst = (uint16_t *)pic->data[2]; yend = ydst + width; - pic->pict_type = AV_PICTURE_TYPE_I; - pic->flags |= AV_FRAME_FLAG_KEY; for (;;) { uint32_t v = av_be2ne32(*src++); diff --git a/libavcodec/v308dec.c b/libavcodec/v308dec.c index 4bc4ea4e21..b591a79dd2 100644 --- a/libavcodec/v308dec.c +++ b/libavcodec/v308dec.c @@ -48,9 +48,6 @@ static int v308_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - y = pic->data[0]; u = pic->data[1]; v = pic->data[2]; diff --git a/libavcodec/v408dec.c b/libavcodec/v408dec.c index bb6c877c79..2433c6de14 100644 --- a/libavcodec/v408dec.c +++ b/libavcodec/v408dec.c @@ -45,9 +45,6 @@ static int v408_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - y = pic->data[0]; u = pic->data[1]; v = pic->data[2]; diff --git a/libavcodec/v410dec.c b/libavcodec/v410dec.c index 35e4a8ae03..04be830ad2 100644 --- a/libavcodec/v410dec.c +++ b/libavcodec/v410dec.c @@ -102,9 +102,6 @@ static int v410_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_thread_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - td.buf = src; td.frame = pic; avctx->execute2(avctx, v410_decode_slice, &td, NULL, thread_count); diff --git a/libavcodec/vble.c b/libavcodec/vble.c index 32157913c7..c5d92bd6f5 100644 --- a/libavcodec/vble.c +++ b/libavcodec/vble.c @@ -134,10 +134,6 @@ static int vble_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_thread_get_buffer(avctx, pic, 0)) < 0) return ret; - /* Set flags */ - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - /* Version should always be 1 */ version = AV_RL32(src); diff --git a/libavcodec/vcr1.c b/libavcodec/vcr1.c index 771337e262..c9ed62266a 100644 --- a/libavcodec/vcr1.c +++ b/libavcodec/vcr1.c @@ -62,8 +62,6 @@ static int vcr1_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; for (i = 0; i < 16; i++) { a->delta[i] = *bytestream++; diff --git a/libavcodec/vmixdec.c b/libavcodec/vmixdec.c index f61fd02092..46d817c7f3 100644 --- a/libavcodec/vmixdec.c +++ b/libavcodec/vmixdec.c @@ -289,9 +289,6 @@ static int decode_frame(AVCodecContext *avctx, avctx->execute2(avctx, decode_slices, frame, NULL, s->nb_slices); - frame->pict_type = AV_PICTURE_TYPE_I; - frame->flags |= AV_FRAME_FLAG_KEY; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/wbmpdec.c b/libavcodec/wbmpdec.c index 3b5753abcd..50c729047d 100644 --- a/libavcodec/wbmpdec.c +++ b/libavcodec/wbmpdec.c @@ -74,9 +74,6 @@ static int wbmp_decode_frame(AVCodecContext *avctx, AVFrame *p, else readbits(p->data[0], width, height, p->linesize[0], gb.buffer, gb.buffer_end - gb.buffer); - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return buf_size; diff --git a/libavcodec/wnv1.c b/libavcodec/wnv1.c index 0e8dae598f..3d0d90fe38 100644 --- a/libavcodec/wnv1.c +++ b/libavcodec/wnv1.c @@ -69,7 +69,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, if ((ret = ff_get_buffer(avctx, p, 0)) < 0) return ret; - p->flags |= AV_FRAME_FLAG_KEY; if ((ret = init_get_bits8(&gb, buf + 8, buf_size - 8)) < 0) return ret; diff --git a/libavcodec/xbmdec.c b/libavcodec/xbmdec.c index 2d84327e02..09096b9df6 100644 --- a/libavcodec/xbmdec.c +++ b/libavcodec/xbmdec.c @@ -135,9 +135,6 @@ static int xbm_decode_frame(AVCodecContext *avctx, AVFrame *p, } } - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/xl.c b/libavcodec/xl.c index f008d56e89..6d60611ad3 100644 --- a/libavcodec/xl.c +++ b/libavcodec/xl.c @@ -59,8 +59,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; Y = p->data[0]; U = p->data[1]; diff --git a/libavcodec/xpmdec.c b/libavcodec/xpmdec.c index 6db9f5248e..2eb5daf545 100644 --- a/libavcodec/xpmdec.c +++ b/libavcodec/xpmdec.c @@ -429,9 +429,6 @@ static int xpm_decode_frame(AVCodecContext *avctx, AVFrame *p, ptr += mod_strcspn(ptr, ",") + 1; } - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - *got_frame = 1; return avpkt->size; diff --git a/libavcodec/xwddec.c b/libavcodec/xwddec.c index f691587be9..fac8c21af8 100644 --- a/libavcodec/xwddec.c +++ b/libavcodec/xwddec.c @@ -216,9 +216,6 @@ static int xwd_decode_frame(AVCodecContext *avctx, AVFrame *p, if ((ret = ff_get_buffer(avctx, p, 0)) < 0) return ret; - p->flags |= AV_FRAME_FLAG_KEY; - p->pict_type = AV_PICTURE_TYPE_I; - if (avctx->pix_fmt == AV_PIX_FMT_PAL8) { uint32_t *dst = (uint32_t *)p->data[1]; uint8_t red, green, blue; diff --git a/libavcodec/y41pdec.c b/libavcodec/y41pdec.c index 14e36dc998..270b23c14f 100644 --- a/libavcodec/y41pdec.c +++ b/libavcodec/y41pdec.c @@ -51,9 +51,6 @@ static int y41p_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - for (i = avctx->height - 1; i >= 0 ; i--) { y = &pic->data[0][i * pic->linesize[0]]; u = &pic->data[1][i * pic->linesize[1]]; diff --git a/libavcodec/ylc.c b/libavcodec/ylc.c index b03df31556..44cbfa712a 100644 --- a/libavcodec/ylc.c +++ b/libavcodec/ylc.c @@ -426,8 +426,6 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p, dst += p->linesize[0]; } - p->pict_type = AV_PICTURE_TYPE_I; - p->flags |= AV_FRAME_FLAG_KEY; *got_frame = 1; return avpkt->size; diff --git a/libavcodec/yuv4dec.c b/libavcodec/yuv4dec.c index ad83a2125c..3b406057f9 100644 --- a/libavcodec/yuv4dec.c +++ b/libavcodec/yuv4dec.c @@ -46,9 +46,6 @@ static int yuv4_decode_frame(AVCodecContext *avctx, AVFrame *pic, if ((ret = ff_get_buffer(avctx, pic, 0)) < 0) return ret; - pic->flags |= AV_FRAME_FLAG_KEY; - pic->pict_type = AV_PICTURE_TYPE_I; - y = pic->data[0]; u = pic->data[1]; v = pic->data[2]; From patchwork Fri May 10 18:05:59 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 48707 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1706:b0:1af:cdee:28c5 with SMTP id nv6csp757910pzb; Fri, 10 May 2024 11:06:22 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXWl+YGWoxjlI0X4ZUUz/3Kfkyq2mgWDA/wYAUEwSxlo8K6DWs0XwI+9TAJ9kTrloPZ+jw3OstAtHGLQN8bCcRRkxcqN4YaTEAktg== X-Google-Smtp-Source: AGHT+IFhajss1/MjOliaW6uxBaR/UIFrl/cXOeAA8UwAo+mWw/LbGJKorfdTvUF6TQcvxREneC0J X-Received: by 2002:a05:6512:ac2:b0:51d:3fe4:c3cc with SMTP id 2adb3069b0e04-5220f774da8mr3037627e87.0.1715364382505; Fri, 10 May 2024 11:06:22 -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-5733c362bc8si2114256a12.523.2024.05.10.11.06.20; Fri, 10 May 2024 11:06:22 -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=X63zpfJf; 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 B7A1E68D4F6; Fri, 10 May 2024 21:06:16 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04olkn2066.outbound.protection.outlook.com [40.92.74.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C381668D2DC for ; Fri, 10 May 2024 21:06:09 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CgRFpzMrz4nXZZdqtEhpX1lG6CUkDTRNlIzNpLWnzrDeEIbhxEtvmTz2K4pWiBlZ32P8AxjFG8XS+Wbb3tAyaxCIKT4zQYPiOg45DPHpEqIfvtIq7esJPbrE6qY3SK6V+/iUGuVmYa1eBjBtGhIvfJEbu0IUpXD/9k/L+AZa6gZyIf9P45xtqP8ImtP2Zqa8Mqqps7LM+1mj7FzzxqlHNPgB3O8xUTsrj4qmV1n2HKZPub1rs0iTq52vIIxlf7YtI29jdw/x7L3PK2/X03BDXG4BDhw1K9wmQlcV8ajtYzdX112fuxCkM6NNMoKB8zWtgAP0Hqfgmicmi3jzJmktsA== 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=0WPmJSjYTG6s87ZdbA6PYo8RmDGtB46Ba2QdX8HrHH8=; b=jRyceJReeOxXiWS87Ekr4zo1XZw38qvGgPl1yPabS7PHUmdos0S4rUamYF2MdQjuxTxEXwCSgSxQT1T/YtoQWTBzKIByGDiE/qNW8ILnBmgG5Fc+4fiH7r8ovcwV6WkhDPkWwc/UIj7Ma0wuqnNnxlhYxHQOTRnUnDXOXlaQP0y1S5qiRjVMFUdAJQ8SFp4MyyJGFmu66ar5N0OYw1GKZhA3WZ7ac3VkbToIs+wDrjF3GazZURrxTYzrB2nWPAVGRQcedfH3Z55goC+yHX++hQPddzpci2KoTX56zcioTISPkduvc/Io5eX2JqvKMBmgzC1KDA7BBf5lYUGPg5jIRg== 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=0WPmJSjYTG6s87ZdbA6PYo8RmDGtB46Ba2QdX8HrHH8=; b=X63zpfJf11erLDXF46SegBZfhetvRjs6d4DrqpeBr5JT7qrZGjbHXTzTYcIBgvgKA+z4qJB9Ugz+eSQ5yzowyrvTYl6wGnrI5mDeK9LIF8MYF5maLJtRSVbkh8Rpt43+0RP3gAdRvXNB70PfX2SSjKo+Tnr6y6K0k91K0gzlxrbdl8kS7h4b5BT6O3EYtDT8vLyORN+f7rotlU3fvT2yQsadRWMPlIfWtaI6FfWoz4M4PqwlXG0ryZKmSpqkQhaA0R1SwaMGiJqyltlDaTqMPlbub1MKa6q4hd81+lVxGQ0fYXTNM1wb/cBUZlk7yquYAft/PvhowfaEh3lPPJhHcw== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by DU2P250MB0237.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:276::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.49; Fri, 10 May 2024 18:06:07 +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:07 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 10 May 2024 20:05:59 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [81qBHxUbmleaB9DThBA1VoIXmgIDhuvjryNYcjhG9yU=] 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-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|DU2P250MB0237:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b3e9be2-bb4e-424f-897e-08dc711bdd20 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199019|3412199016|440099019|1710799017; X-Microsoft-Antispam-Message-Info: bb1sFs9w7AV4ri4CbEIqJVN1NU/L9wwmQOnZ+ferOdHFWuKqEFMPo5HnzE5OU9Is1vlbMdLCJU0Hzt0pJNV4hPJRNp1kn3pvdTQwERub13lTjNUTfPqR507lhbkxewJzNVSxGHf+NXDCQIrcELiuD87wv9d7ApbbzIn+Q/YO/lGOb6vXeEPkYu7/SnJb/tbNTCtJtiOoCtjDkKA9oJBtkxh5nvnklDRAnfRTiXbzO672Pphax9KXKxipOTm7ACEWFMP9UJO5rDAOf2GwBLx9kjXGPmvAiId1uysHX225df6tT0C2PsrbOcyp+FefQ9Div5KHzV/GVaGE2YWNM9i3SREiVwlb8PqMJ/zFegRW9vZZuUCVx+zBo7q7opYeJsPYUyv7EfAMUiMCXf0bCCgeS8hZb/BZsY81dJmheyKRNZYYdpCLxC/yCKYw/638tPwM0FJbkaedNrgVwOEcf7YQXvOCFQV4ZHpVxn9fl5ywaYD6hlTVDLSWZ46EcKArHwlzC/aSAsESDKm6boBrKWhJbSSqGBSrvfMjJF9d2uJ8uq8IRW/x2O1+NH1cT5o3HVWitlxSHC0qU7yX35TgRht4MJSVg6hYj566EWATNfhSNxCCaofRDgPa5xAQB96a6Hhe X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: appDgIucd/cu9R3uQSRYrgoUPQVzl0FD5GL2E/8YB4HCsCi0JWq/IQocYdP5EB5joG1AoBAiVVb0ubvQFxxgS1ZZgidHHIq7pXqdA3OhkIHCG30v9k1dbQTulRZpW1HvxfOPsFGqHAaJKsGtwQjG+VgZYSPe8TTrAds0xZwgIvUMtWfcSSmDLT7jv5ODFetAsps3cssKftDIA5l6Lmi3uNachKNQVRYJ7ybqBf53JF/wormF9Q2ANFeARrsqSHhTklZNbCXbXLXZp9AO0QRHlD+2JDdp2S8iNWL3aDLYig6G3XGk3FkAiRy8GveBI0V9n+E/0eHLtVW/kfdPEzwn83fR+eaR5kew+P0QslmVmsOlybUFIv2vJu9iEixiMjmsuA6AYbMtl52tzPVCiVYGgsnPoad1l+62vlouPc83b7mvQ4o7GYyPkMlEsGhxrqSKVG1tTEon12bm9JKrrBi5NgOq2SgkSR7G2YsplqsEX91AKwuEU4RTKlIu4uhGI/xHQvzkavifuGJ9Oq6KU55ti4FFozbzqMfNHlSQ29jnZkVxJk4p/iEaZKc+ZcKPZhBaLgjDOkt6MQcCWe2hBMeqFZm0hWTG+Elqx89aFoMGTWjXllS4peuEP96+mUTFCSJ2IKF02ad/GyIlp9ladltmgEKbRqgu47G0/WN/T54z+INaXWVzWHrnDjXhYBsMqZN4NTyK/pBLp1k0n7cKLiod556mqEuE92cBxWkAbSv7kLxfup4pHgI6bO1l58rwJqUiV07d+nHsBfVLoJStWhqZj8KQoHMm4eoRytlQliiUAvq5ub/Gv7oeVhiQAsJnb1J/KrOmzHHUCgKULY+HW7+U1YtJqLjXiTPIlk2fi1ntsjfPj5A4iYZaSKg06k6yYkHwuHsfiAMvz0VAcY13fw7F6ne4Ff4jPEqXlLoCLC1KHQi0o5ZPmf1CkqD2/5qPKA4hf5DJLx3nU2TIQ1mjs4Ptq6XCQ2b5r3OrwiWVFis4O/jl78wWDvr91FRUMFrR/ILIjFWdJ4rzz0BtOhyuxEF1kJOb2ch/upVfRCRl3ZcIG3ZAzz+svipYhP14lWq1uCKr8tKQqzHL1ke4/6RahsTzCwdvlhOG0P32fa+sF1Uhc3WPyhH9pYBTZSoyVzkR+WFitQAE8Sz8YiXWO0k10+uBeFqvru7kpGgapODUjPPJoAKMn5bf81unCWRvYcEKfuzIBshCW8/vqavkd7GfSdeVd5qL/Kc26T3wF5NuoLmrArt1Ydm38tUJ/D2z2VfjHs/x8HzLvzKkgF3HquvQiVRsWQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3b3e9be2-bb4e-424f-897e-08dc711bdd20 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:07.1743 (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: DU2P250MB0237 Subject: [FFmpeg-devel] [PATCH 5/6] avcodec/yop: Add missing AV_CODEC_CAP_DR1 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: JqNI2c19Bwfe This decoder does not do anything fancy any more since c6303f8d70c25dd6c6e6486c78bf99c9924e2b6b (before that, it overwrote the frame's linesize) so that it supports direct rendering. This effectively reverts d3de3a16d1e428139c1541e55ea483466c1380e7. Signed-off-by: Andreas Rheinhardt --- libavcodec/yop.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/yop.c b/libavcodec/yop.c index 1294c5cc00..77b8d6e055 100644 --- a/libavcodec/yop.c +++ b/libavcodec/yop.c @@ -274,6 +274,7 @@ const FFCodec ff_yop_decoder = { CODEC_LONG_NAME("Psygnosis YOP Video"), .p.type = AVMEDIA_TYPE_VIDEO, .p.id = AV_CODEC_ID_YOP, + .p.capabilities = AV_CODEC_CAP_DR1, .priv_data_size = sizeof(YopDecContext), .init = yop_decode_init, .close = yop_decode_close, 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);