From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 9F54B4E22D for ; Mon, 10 Mar 2025 03:15:06 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 8707F68E896; Mon, 10 Mar 2025 05:15:02 +0200 (EET) Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02olkn2027.outbound.protection.outlook.com [40.92.50.27]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 34C1668E73D for ; Mon, 10 Mar 2025 05:14:56 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=frPW+zzjNAhzISNner7TS0EC+Qnw+fRaRwa/HpG0H1VUlJ0QQRflgRqIwjIob9orhkrL+i9IWETTrgH1wUFGTeNmtLfiJrMGdLABnqYZiMFifTlp318dp5UUh6IKFvRihBojBaErS04si20/hZBE2PpLG0AXcdk3/Cuzs17X3iYAboXOvXqE/6J+NDVZFw+jgDRvujyCZB8csaxk4xPtEPlO5yoFjEKuDf4dn/6uHiDgPz1jxLZ7u+z7DO8isisMrSBX0OwTx/5sde0PdGT7rWbSH7zV8jVlzplAhTNGfDk2oreK/pciBupwOyiC+Qxx5W75MP8i2ojYiNR4ZKT10w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=hpPCy0s5qLxJdqmZUoW4t2j5etBVyuPmULjIyWhs/gA=; b=Z55j/JOxr/GtxgNnKZSl5g41mTyIGieBh3UkKs7/xihHlpySK8ZBj1RDR9SPXCZJDmf7PHrqCQGeyIQEHqUt9otohpTawJftyrISL18LddMzTHvv3CG0HAknRikKTMuMowKJ3IlZ09mMaWbd9TGVVHOP4Y/o84w/3apcYILsHu9rn3cTmVc0GjQ6jZn+ylQvsk/CMnRP9pbnM5VjA2QuKFll6PAR5uIoYkeHEgqN8aJsMQYHhCv4GU4Xoe+x26dlCR5lioclVZyjPm8/2NG+YVkqDUtRjRoraqpWYGHQhb4PgqBKclfgrQPBEbgWrjblwzLFSxt9G7Uaccd/MwWP1w== 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=hpPCy0s5qLxJdqmZUoW4t2j5etBVyuPmULjIyWhs/gA=; b=J+60WhsJsQXSI0A9TAHkNEQa3eoymmTj+6VeR5EwpKGNWrzzr1rKXZb7W7fX27sKxW+1yc3XmR/bIwiTH0M2CdbW7mURecddJWY5n0lpN4c4z4ErbLLX/iGdzMkXcjveEp5gXftk7xQZI4TntIAnuGZ9FXIpJAh6SD1ZPNnyUOzVGXeCCjyI5QYOlzFCEpO+jG7LgDw5A0KIxBCFu0Wai7942Ipx/EXNyWQ2YGm8R6VYy7yrtMmw9tCuDDAkTgmz3elQOMb1dR4Sx7dtCYTf3Bg0xrJZDTS5w4fQWPb6CLV+KezgHdzdiWkyTTGurQAOYKlae5x4Hwmg/7gjqEiuOw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AS8P250MB0056.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:35b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.18; Mon, 10 Mar 2025 03:14:54 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%5]) with mapi id 15.20.8534.017; Mon, 10 Mar 2025 03:14:54 +0000 Message-ID: Date: Mon, 10 Mar 2025 04:14:51 +0100 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250310030837.60814-1-dev@lynne.ee> <20250310030912.60902-1-dev@lynne.ee> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20250310030912.60902-1-dev@lynne.ee> X-ClientProxiedBy: ZR0P278CA0112.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:20::9) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <0b3fdb6d-8338-4e3b-845b-47ccaddef6e5@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AS8P250MB0056:EE_ X-MS-Office365-Filtering-Correlation-Id: 7690a32a-9802-489f-378f-08dd5f81b99b X-Microsoft-Antispam: BCL:0; ARA:14566002|8060799006|6090799003|19110799003|5072599009|461199028|7092599003|15080799006|3412199025|440099028|12091999003|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?Wk1lamEyN0ZzTmN3U1FPY3J2Q1BDc2F1ajZoMjlzSDhES0FJcVpqMjNENG1x?= =?utf-8?B?VktqSEY0VmRROHNUU1pnbmgvUW1pbW5kRDh6S2lOWDF4VGxIdVdHZzZDV3lF?= =?utf-8?B?ZWVxQXk5ai8rTVV5ZjRaaENpcStBeFhmcWZsLytxeGtCMzVjd1VqNG93Tkxn?= =?utf-8?B?ajdBVVlqM0t5a3BtT29xSUxsYVRocVV1T05sbnUxSjBwcGJ1MG40dGk2L09k?= =?utf-8?B?dDg1OXhOWGNJRUZhdUdydG9rWVFhRlg4TlMwZEpqOE0vTDdBT291bmJBM05r?= =?utf-8?B?SmluRmJ0Vm9uZjlWK2RPZkpheFI4TDRWcFA3cHJsbjFoQWd4YlA0NHQ1VVBo?= =?utf-8?B?WTdwSHlkYm1UUXJET2ZvM3BKaHBCVFVoMEc5QXBseU4ybkxQbzF1Y1F5a2hq?= =?utf-8?B?NUJEdEcxajBkajNuMDArNENMSHVuYTRVa1l3M2F5NU43QVp3RTZCci9PT3o4?= =?utf-8?B?QUNaWWl6MlRobURuNXNJVnY4T20vVUFHM1M3dUFDeHltTjROampiZ2NYY1gw?= =?utf-8?B?cExqYi9BamVpbWgxTzlsR3dndlh6aXFGRmIvOWV1Uk1yVUU5U09HaE56cEJL?= =?utf-8?B?ZUtib3llWi85eEJtR0ZEWDMrRWNCamN0TFpnVlE0T040cGNYM3RGUldSeW1h?= =?utf-8?B?b1d6K0lFY1IvV0NRZFQzTjJEVm5uLzJHY1M3dUNyZWFaNktoSnlBNDVjbkpq?= =?utf-8?B?c2FDUHBWL1RHSjVkcHM0OG1KSVdaRU03MExNSUMyYXFDVkh5bmNpOXphMHYy?= =?utf-8?B?d2hLQ3VhRFBrbVBLeFhaRmpwWmlRck5YSDZxMjZEckZUZkE3NW5qYUwrRTZD?= =?utf-8?B?MXRNR1dxcGF6RzJyNlVTVk9VSlgwTENBSDRwcytBZUc3aS9jcXZyRXQ5UmxJ?= =?utf-8?B?cThQRW5wbTZHSjNvOW9hZE9sWW1WU3d2cThJMXNZSy9pdlpub01oOHM3WlpE?= =?utf-8?B?K2RCTW1TbVBNYXdaSlVGZC8zbEJ1OFkyN01iQnhLWlRDamNiR1NlSTc3UEZL?= =?utf-8?B?cWJ4Rjhoa1V3eHFWdzJVMlNCR2wrRk5vc1VRajAyTjdpRTVwV3pnbjVCR0Jv?= =?utf-8?B?MGR5S2NYTUF5ZWNoS2Y2dEtacXI2UXpKVUM3SC94YTVNQ2UwK0kveUQ5L1c1?= =?utf-8?B?ZHlVM295aUhwWGFNYURuUVJMYkJWMWNmalVhS243N2xYeDkxdzMyRG9HRklE?= =?utf-8?B?bXdlakJ0dGd4UkxJN3ZPZ0V5VUNQNEhSZDBxTXNtQVRRU2hsekk3dm0rTnp2?= =?utf-8?B?LzlCenhCeGRtcmkzQXVWbFRvMUI2ckRCcUEvUGRLK0t6clVjam5zMjNwZzF4?= =?utf-8?B?bXl2ZnFJY0dWRXUrc2taQ3RqaVVxQVlZZ3JReHA0QWlRd20vZkJORytFOTFs?= =?utf-8?B?VHJRTVN3TWtzVHZZVFl4Y01Jb3ZQS2dudGNWVWNDOHlzWlRiT25xMURPNE9B?= =?utf-8?B?K3hIditvSW84aWNxMWorYitneEtob2h3THorZjg1Uk5FSXNEWCtnRkt2OGEr?= =?utf-8?B?RVZsYi9CMHF6ODROQWlObFdNT1lrYjQySTJ6azJLZGxjenJUSEJsOW5paHBL?= =?utf-8?Q?o1zQbjzTRSVyXtEd8gYvbII+0=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WjJYcXdZVUJEcDJOMGhkYkVOc2JoUW5xTzhsUkc3M09DS0p1Q3RXMCtobVh2?= =?utf-8?B?dURSTXhlQ1RXNHAyVTM2NkNESEtSam1icWFad0JEWWIySGU4L1lqK3ZUajhN?= =?utf-8?B?Wk5RY0sxNzR5OHV4TWxrQ3NYZEZxS2h6aGc0QVpjTThPS3B6WHRRaGZacXFp?= =?utf-8?B?MEFhL3o0WWxvcUdTeXlIZTVJdEtTMjZQOGx6OTNIY1FLZnhYd0Z1dzhRd2dv?= =?utf-8?B?Nlc0RVk2UG9wN3d1TDFGUXFIbkdVdXdJUmtNSTUxVVNSdE5tNGZnV2h2c1Jm?= =?utf-8?B?MS94dFVHNncxNEF2bHRaSkRiM2tFSGphMkhDUTRXNWRqWDlTS1ZMU0UrTHEx?= =?utf-8?B?Y0M4bkN4bVRucG1Td2JJMDRtZWo4bkx4aDBKVS9OMk1yZStTa0xVS2FYQ0pE?= =?utf-8?B?UlAwZ3JXYUJ0Ykd4N3FETDJ4a1lLdlR2aTRRRFpqZWQ0cEErL0tzb0ZvNTU2?= =?utf-8?B?ak80eFVuOVNyZk9mS1NmVzM4TzhEWTFXV25zOC8vMS9hWHZ4SHppUmZvT3E3?= =?utf-8?B?UXNZRHl3L3RjZWoyMkUwaTgxRjg2aTVCcWVDTXM2UHJZZDVWbjRKKzVGVm5P?= =?utf-8?B?Y2YyMzBiVlc4ZVJXVUtxT1Fibm9QM05xTFFveUNlcXdNcGVKWktIVm50Nnlk?= =?utf-8?B?TEplWDZ0MXlmZ3NOaGppRitGa1RhWXcwTk1CQ09JbWFnZkV4RFRNODhHc04z?= =?utf-8?B?eElMY29MNnJTaHllbVM0V09hd2l0bU53WkFQS0ZmVDRkcmROLzV5SHhtK0J3?= =?utf-8?B?RTUvbzV3MWhRakk3TnUvbmtvNVBmTy9oeFhIOU4yMHcwZE9FVzV6Ym1LTTB1?= =?utf-8?B?MGVJNlF1SFBLSUtqeTFrUVpjRXJtSFVpczFZNDVJNTEwTktKQXVSQzJHZ3lw?= =?utf-8?B?M0U5ZDFtTUZQSHd2ajdUTXFnUVY4UVVqNUpzdjRXbGhzanpEdHQ2SEJWL2M2?= =?utf-8?B?aFRVQWVUK3haMXlIRnVXT1pzZldTcDl5dmk0MWJwVERqWDhDOG0zOHFETlZ6?= =?utf-8?B?a2pHZE1JcFByU0xoTXYxV0FyV2xIVnNRaUxOdVNweWpCQWtWVTJWbkI4cWxr?= =?utf-8?B?ei9HTWlHRTYvcGVIOHJucXNwMkxiOGl0R3lVSmFxTXJxQlJrcS9NY2xpbllU?= =?utf-8?B?djdqS0cwc1RFakFjQnR5UnBXYWZRdloydkFtYzRNa2NrZkM4dUFKaWFmRlEz?= =?utf-8?B?cHFkelpVdkY3N0w4U1lzWGdHaGFURWFtdnh4UnBYZVBJNTNRc2VFRGVXRStQ?= =?utf-8?B?QWYvSjhWZ1J2VzYrd2xYaWhQaE0rRE9VbVpNRlNUa0JwUHN6ZWtkZ211Mmx2?= =?utf-8?B?eHhBN2ZiTFBmUDhUdU4zSmJ2NUpzMUN3eWwvcDZyRE96UW9pUUZKSStWa2Vy?= =?utf-8?B?VitZK2EyTU84emU3Z2d5aXFMT2Yxcmpja1pQaVRPeEk5UWdkWkFzbmRpaUp6?= =?utf-8?B?TUMwSWs3VXFyQ3YvRWxNNCtuU0ROc1RRbnc5Qmh4K2JERzhhenZNVVNUdUlR?= =?utf-8?B?ZG95Wkt2MU1LeldDQ21mczZZcmw0bDVmNkx4QkRFd3o1SVB6c3VrNkp4VGF0?= =?utf-8?B?ZFlPRWVjdytwVnYxa1VDOUkxU2FCc0lBRmcyTGhxUjNhZEx3K01NMHhUa2Jp?= =?utf-8?B?dmNHekF4NHdSUTRKcWpCeFNIUzcvT3diZVBGNW04OXNMU3NkYWhwVzJmYXRC?= =?utf-8?B?aWRJNlZ2TFFVVnd4ZmxzdDNkekdJeW8rY09aYnlWVERveWhpMkppbW5BPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7690a32a-9802-489f-378f-08dd5f81b99b X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2025 03:14:52.8186 (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: AS8P250MB0056 Subject: Re: [FFmpeg-devel] [PATCH 11/13] ffv1dec: reference the current packet into the main context 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Lynne: > --- > libavcodec/ffv1.h | 3 +++ > libavcodec/ffv1dec.c | 19 +++++++++++++++++-- > 2 files changed, 20 insertions(+), 2 deletions(-) > > diff --git a/libavcodec/ffv1.h b/libavcodec/ffv1.h > index 8c0e71284d..860a5c14b1 100644 > --- a/libavcodec/ffv1.h > +++ b/libavcodec/ffv1.h > @@ -174,6 +174,9 @@ typedef struct FFV1Context { > * NOT shared between frame threads. > */ > uint8_t frame_damaged; > + > + /* Reference to the current packet */ > + AVPacket *pkt_ref; > } FFV1Context; > > int ff_ffv1_common_init(AVCodecContext *avctx, FFV1Context *s); > diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c > index eaa21eebdf..6396f22f79 100644 > --- a/libavcodec/ffv1dec.c > +++ b/libavcodec/ffv1dec.c > @@ -469,6 +469,10 @@ static av_cold int decode_init(AVCodecContext *avctx) > f->pix_fmt = AV_PIX_FMT_NONE; > f->configured_pix_fmt = AV_PIX_FMT_NONE; > > + f->pkt_ref = av_packet_alloc(); > + if (!f->pkt_ref) > + return AVERROR(ENOMEM); > + > if ((ret = ff_ffv1_common_init(avctx, f)) < 0) > return ret; > > @@ -701,6 +705,10 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *rframe, > > /* Start */ > if (hwaccel) { > + ret = av_packet_ref(f->pkt_ref, avpkt); > + if (ret < 0) > + return ret; > + > ret = hwaccel->start_frame(avctx, avpkt->data, avpkt->size); > if (ret < 0) > return ret; > @@ -720,15 +728,21 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *rframe, > uint32_t len; > ret = find_next_slice(avctx, avpkt->data, buf_end, i, > &pos, &len); > - if (ret < 0) > + if (ret < 0) { > + av_packet_unref(f->pkt_ref); > return ret; > + } > > buf_end -= len; > > ret = hwaccel->decode_slice(avctx, pos, len); > - if (ret < 0) > + if (ret < 0) { > + av_packet_unref(f->pkt_ref); > return ret; > + } > } > + > + av_packet_unref(f->pkt_ref); > } else { > ret = decode_slices(avctx, c, avpkt); > if (ret < 0) > @@ -827,6 +841,7 @@ static av_cold int ffv1_decode_close(AVCodecContext *avctx) > ff_progress_frame_unref(&s->last_picture); > av_refstruct_unref(&s->hwaccel_last_picture_private); > > + av_packet_free(&s->pkt_ref); > ff_ffv1_close(s); > > return 0; Why not simply use a const AVPacket*? - Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".