From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 6061142BF5 for ; Mon, 2 May 2022 06:49:56 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A40E168B28D; Mon, 2 May 2022 09:49:53 +0300 (EEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10olkn2074.outbound.protection.outlook.com [40.92.42.74]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7E46668B167 for ; Mon, 2 May 2022 09:49:46 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i1Dcz1C3f9ETuyv6kX7yG6+leUEgl3dxZKoSID7yStBZWzCtM1q9yhUJX6TdVf+lZQzOvRrVf+nes6UXz7pykiBMXezZ92IdWS5zFAdSNH5r6W8Kh6QM0kkwh6epUMXt57Yw2BPfkIBx5hO04gEeV8H8dIUBFlLl4Ysiy68UYlqOJgwaf+ayzvl5yomXHLyh+t/MdhtRXVZz92wlnJzCuiqAZOn984UfEHkt6Szi3killb1oZuJslXWUhDQFHQJQQHvrzsQXtIZsBpJraWSaTPjGC8Nw80SvOp60jnQKbTwg5st5qbOz/JjzsVGSWSjPhoXx7fZTDi8sf3qdXpFQxw== 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=/3+MJrfPkbIrVZ1jc6kDgvdaN/MRuhvLQT3+D5/1HH4=; b=Bknjr4d2R4MYq86dGitNQhMsmqpLW/2zl0vWD3K1yyM+whaFzNPt10U87buyyMtr90uOWFwj1GcA78LioAVeUJ6R6Hn6uuetcTK8Dfv2luwNgj8Z+wsb5Lf06V2lEwoIgLHhdjsCkfPjA7s+IcbAqZdJHlU+rd8TXrJZXNsbsfeWCCKAXesDYyAnmOS0rqMoUdnTmb96xbDENhxwfaXWXpPGxwXdg0yNmaiU1u6MWwWNCCWf0vaXy2qP/RZ+qi+uwUBT9xaE8VnN15YBM9c0XfiKR5PBgNRJoMAPpspkcfs8wg9x/1FSRgTnd60wMRLUReXdQSx6ruXw5C2lSUZleA== 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=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/3+MJrfPkbIrVZ1jc6kDgvdaN/MRuhvLQT3+D5/1HH4=; b=LKf1yCOMpgyTAlHb8btS5B5Nbym2PL/9HqVDMSzMr9eNTFiRu9b8MSTFmoTZBgV5xYki9dmOQ022cdJu/xH8bBS6+xX8qvdeug6hOONUVLG+u7zPVHN+jeeERkDdivN4zexYarn5kpx/Hlef1fBGWMQs1KvKRFaQIeEvG+HNcWf4DBK3d3wQ4OBEUDIcn3YPMdEeWHTve3+xbUXzP7uOrLb9u3N0L/BGOKwsTwK1TyL1YbHJbMjEvu2Jk9t+hQ/QEG4rvdiCknRhPilER7pUjXL0phWWzC4OQdDH55hn67S12oYxnBnRwgRIOI9zTIf+VXx1L+q8oAnD0jd2Fp3xlQ== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by CH0P223MB0124.NAMP223.PROD.OUTLOOK.COM (2603:10b6:610:f5::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5206.24; Mon, 2 May 2022 06:49:43 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::7472:6f83:eeb:45e3]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::7472:6f83:eeb:45e3%9]) with mapi id 15.20.5206.013; Mon, 2 May 2022 06:49:43 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH 1/3] avutils/hwcontext: add derive-device function which searches for existing devices in both directions Thread-Index: AQHYXM31okUFSHUnd0mZd8hUGLzrfq0I+66AgAABwGCAAZbXgIAAknHQ Date: Mon, 2 May 2022 06:49:43 +0000 Message-ID: References: <85ff784b6ff80d4f2e0f724d0b93472e50d2c256.1651349262.git.ffmpegagent@gmail.com> <994ee7a9-ab91-4d13-9538-ed4502c73bd6@jkqxz.net> In-Reply-To: <994ee7a9-ab91-4d13-9538-ed4502c73bd6@jkqxz.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [8wC9rSHa9i3jhjbCcbXM/BIo1nqEeYXF] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8c6353d3-6dd9-4a3c-172b-08da2c07f034 x-ms-traffictypediagnostic: CH0P223MB0124:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: BkBdSJME1trP7/Av5w7q6Ow9SrpgFMACgmjfYT+3O2Ov922McHXC9c0iPJZotTSCIH9UVvRNzizVzCrTGgdwWoMbLFXrhwDJ5pAdx1rprVFvmyOMFaN5vSogjTFQBU/2OAHIisEmrluA2P46m0xlqvh3NtFhbsSENnbkDcgOgZhi2PS4Nz/I7kM1vGDsld5aqlyouLhK1clYaGvC7UahNajD0cq5yStrV75KmVgTmhJvLQ1ujX09Y2ZhyYwFGlPB0IGT8VZjmHjsQG03dYk6vDwNH/maBKu+O3/95o1OeFVBS3n8xc9Po0cgRxKBBWCx+Zuo03c8IR6F0UvPt0xMIugEUKJ/X3DdqvpXeEdfPLt2YfYLjI5mkOWQ5ZNIB04qdNwOfa+lttxteO4gDnESdFML3YuwGfHwUU99dX66VDV/rzZnoDbVjLfVjrXaegpiz3E800XvTJzOND4bdYU138mQrqb/E0KjK/JbLwR9fUMEQRQyBggu2yIlNHK57VDse+2fhitWmV/mbooDeGFD0FvT+B1qUVykEtIC5CanwazX/KzwoUPpwbEzVrvn2/lRn3mI5IYcLtulEWn5aSxWCw== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OEF1R3I4bVBUbGFjQkdyY1lEL3paMXdWclplTWFXL3dBa2tWNkFXU1BHaUR5?= =?utf-8?B?eUJud3dRcEFPaFB6Mk9idlkyRVBlOExFalFHdGxYUVZEMUVFcGloSjhvTGlE?= =?utf-8?B?NHFMTE1jcUJpQi8xMFZyQU14SFVJNWNsN0tvYlhBRStWREhmT2YySHZBczJP?= =?utf-8?B?cVVqWEpWVWN1N25MNy91RE9qU2FTemM1amROcEJ6T2ZQTDA3NGYzUmI0YlNB?= =?utf-8?B?Ly9iZEg5TnNHZnd5clJsKzVHbndnQTM0UEZiQXVXcFhpYTZZNiswc2Y1bTl0?= =?utf-8?B?RVh0Wi9Fd051RE15LzB4OHJRMTYrZ3FJVE9NZ09uSkdYbjlCYll5NWRmY09F?= =?utf-8?B?bXM2OW5JM1EzS0tnTjcydG1OSERVdzdxWk5Vb1ppWTlKeVFUZ0NtU2ZTR0Zy?= =?utf-8?B?NU9oamc5SkFrdWtKZXRJREZWeHVKbE1Yc0tKY1Jnck5qeU13UWpieDdJRmR2?= =?utf-8?B?L3Q1VzVZSkFUb3lzMHZCeWRhbEFZc01QY0N5OTdJdVp3QUJDNjBiV1EvbXdv?= =?utf-8?B?U24vaDFkMERDRExIUHhmS1BTaXhINlVDM09sb3BXRGhSTEtHRnRRbk9qRHlu?= =?utf-8?B?NUlTOHp1NGpQTmRQZUZmOURyRWVXSlJveTFCT2lIVUZKeWx2RkFnWWRjemY3?= =?utf-8?B?NWJ1aHlHSndrbWhCaVpVSnNCbmdkQmkzNk1BcVVPeGJJaXZtSmN0eHpyNVJL?= =?utf-8?B?UjJwaTRSVjBMZlo4TFpTeDhpUGtGZHZINDhPZERZVnlycHU0b2o5dE9Bd2Zo?= =?utf-8?B?YnNyQks2ejlHaFZWMzV2elVSbWlIMmcxdExXYjVVL3U1UmtpdUlEL2JDYTBn?= =?utf-8?B?Z2pzQ0hLeS9RRlcyaUZsOHNrcmdtZ2w5ZXZoaDFieUlyZ2d5OUlsbkRhOGhz?= =?utf-8?B?cENueWMwVGxDMThQN1h4eUJ2SHBQUEtuOXY0VDVxL2tpSVNReFI5aldFZ0ZO?= =?utf-8?B?bGtCK1BOUnBKNXA4RkZQTDNhWHZqUW8zUjJkVm1xaWZtR0VQb2g3L0pQRjFR?= =?utf-8?B?TDVFOG5USWpDaFBja2R0ZmlMblRMdFo2WjJWeHJsWkpuOFgwemVWS1BHVVRR?= =?utf-8?B?dlVoWko3Q1VyY1AvRStFTHFDVWd0dElkTWF3YnMraWRTckQvSTNqcVhaOHlV?= =?utf-8?B?YzNzWHhpY29WRVZVVXNGUkZ1L1QrcGFMVFp3VzBvZ2FsbGJXdjduMU4yWFlz?= =?utf-8?B?RXVwTkRZaHh4cld3ZXhZV25qcWNQTG9ES1VscXd0R2NNRTJSbVZ0OWdvTGRS?= =?utf-8?B?U29rZGtEVEtzUFg1cGwyWXJkaFNpanJIZGQ2ak5kaGlpY01pUS84K21DTFhD?= =?utf-8?B?OFBHaUc5QjVpTHZXeHBSVFZlOEV1K3d0UUQ3bURSclBoRjlxTjRzUDUyamJo?= =?utf-8?B?TzdodzU3UklGSG44TERabnZWdG1KdDJ5QUczM0tlKzVmVEFHYko5M0M2VjZ6?= =?utf-8?B?TGZ6S3VuS1hTTExCYm0wRmUwN3N6SEdOdTlWaUV4d1RlNTExZFR4REV3UlRS?= =?utf-8?B?TThmbDZsU29vTzFIUlRRd3lCTFlZdENYNVF0dVBYMHFjMlpCd1FZOWxyOFc3?= =?utf-8?B?M05FREhrb0JVWVJ5bHJibmlsSS92Q0k5MktxRXF6WHFQaHB1VUExaFVHckY1?= =?utf-8?B?Z1VBcFhXWUY4UTIzU29RSEZxSXRla3VOT2FlMHBZb0daQmtKaXJrTlpERzA0?= =?utf-8?B?ZmwvKzNYYzRBMEJjZkdKU2k2WHJhUUV3RTVoWmd0OVQzeXVPTTJuQ3BXQXhh?= =?utf-8?B?REIvZUlRVjR6K1AwNklrYnBrMVAwOWdQMUNTMzZQRE51b2E1ZnNxRUJJRTdC?= =?utf-8?B?RlFhWk10RU5tRUxWdFNTV2tLNDNOOFBWd0U2MVZlWDRpb3dmOTNsTCszTlVn?= =?utf-8?B?Ry9LT2Y5QzB4bDBwYUhENlM4ZDQ1akxBazlSNExWVzVLSk5yZlZsSkpEckd0?= =?utf-8?Q?HylS67px6oI=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 8c6353d3-6dd9-4a3c-172b-08da2c07f034 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 May 2022 06:49:43.2529 (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: CH0P223MB0124 Subject: Re: [FFmpeg-devel] [PATCH 1/3] avutils/hwcontext: add derive-device function which searches for existing devices in both directions 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: > -----Original Message----- > From: ffmpeg-devel On Behalf Of Mark > Thompson > Sent: Monday, May 2, 2022 12:01 AM > To: ffmpeg-devel@ffmpeg.org > Subject: Re: [FFmpeg-devel] [PATCH 1/3] avutils/hwcontext: add derive- > device function which searches for existing devices in both directions [..] > >> * Whenever you use derivation it creates a circular reference, so > the > >> instances can never be freed in the current implementation. > > > > It's been a while...I thought there wasn't, but looking at it now, > > it seems you are right. > > > > How would you solve it? > > Hmm. You do need both the source and derived device to be able to > keep the other alive with this form, so the strict reference-counting > structure isn't going to work. Given that, I guess it's got to do > something else but I've no idea what. Ok, before I come up with something that might find objection, I'd like to ask all around: Do we have some pattern for weak/shared referencing via AVBufferRef? Thanks softworkz _______________________________________________ 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".