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 9BCCD479A3 for ; Thu, 28 Sep 2023 15:48:11 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2CAF368CB78; Thu, 28 Sep 2023 18:48:09 +0300 (EEST) Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03olkn2034.outbound.protection.outlook.com [40.92.59.34]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8C37A68CB4F for ; Thu, 28 Sep 2023 18:48:02 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ngqX7BXecThenqesFMceNw1/P9kXamk0RKERnd7z0xqCzLGVyJGtlNO0IMiBgB18dVRL8uRirRPMAZFkPtjS+L5jrBcovQm4MP7yA1QH8F2K1G57tPmu6suoWwjYI6rEOtl3lxKHln8+rh+V80fFwsFerFKkml7OtJ4UqvrPSznfpyDw1eldBoqeTfAjPZcRXAgjUBJk6pkc6p+2EU4+7h5jZM8Fhnry34Sb46DulPszaAwQuZR9iNuAZAmCnKj86PPbBRKtUY950IpJX4LTxOq1mtUIhAAf6Vm9moocOGxDRXjUKOeYI1MFJx3kVihx9ZChUGonRAJrRozyHr8p6w== 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=4u6Npppt7zOnG7MxHyg1P4E7kTUfahooDYcv7t9IroU=; b=aU9uht7osMJ7UA5fJlQZH8vsTppFjQ10HTXyChxcovZzoxsl5KujhCAROGrIwCCy0BPxYLKUoaPvTEJWO81/1ioJCZl+vdffrEhPH9uuwLWLir4JQ4+O8zh+kg17vQBGBRM/xFN5Kgpu2AEK9RhM63tnrFaXcxzW+YbE4QMbQZ+IpgAPT+HWB5OvM6HA5eyTucM6n8iYplEvcJmDzJ59ABVtf6qxUzws16AEDpJuLxhUFj/HWPUDIYt3YwOrh7gy0+POSSsY4P4jTkCne+MqGcNL6x6uWYKQ9X0AFmh1DkLT/VYJAwQoDLXt4Cte2Yi5r+RY731LNTZq49p2XmahyQ== 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=4u6Npppt7zOnG7MxHyg1P4E7kTUfahooDYcv7t9IroU=; b=NRhvocGpPmSuIMrFQhPnfHCQw99JGGsj36HeGAhrSm8C7MdbqT4I1rSAlXUlZcA8UmDOB61JPeF5JZL8NS1ekJs8GlYTnUfcsctOj06IKtWuwEs5yN28lVSkeLnnr/6TJiezhVZZanIvs4L1djnCSnKFPERAlAIXppEGi4PZuKg/XQ1yrckijSHNw2YwkHk1+xTxNQZ8h8F043kS4PVC3m3lm9Z4civ7TF6ux+Abie+9RMT1AGcstgZ1YpGhBBLz7O8Srarm5hWppn4VVNPQ2LmSmb7kNDsF3WTyJ2sLC+aJuj8hN92U4ZHo04YWmQ8ySU0BmcRcg3SgW+CRSCIMEQ== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by PR3P250MB0212.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:17b::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 28 Sep 2023 15:48:00 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa%3]) with mapi id 15.20.6792.026; Thu, 28 Sep 2023 15:48:00 +0000 Message-ID: Date: Thu, 28 Sep 2023 17:49:15 +0200 Content-Language: en-US To: FFmpeg development discussions and patches References: <169590620019.6638.10581942324909893781@lain.khirnov.net> From: Andreas Rheinhardt In-Reply-To: <169590620019.6638.10581942324909893781@lain.khirnov.net> X-TMN: [r8cUyWinfFP31hWHrUxwnyFARownoQXw] X-ClientProxiedBy: ZR0P278CA0158.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:41::17) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <75b9a21b-b8dc-ffe0-6d16-ed9057aa417f@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|PR3P250MB0212:EE_ X-MS-Office365-Filtering-Correlation-Id: 497df58b-fbee-4764-db12-08dbc03a4ac3 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ex+8OhbfsEnKIaAlxaRtUrPrDsM391/qmJqQ/q8nQ74JfIuRyWOBvinrGLRBhTg87WsdC6XyzX0AD5MezABM75QQmjjODDfHNR1Acl6jb2NC+DmxMGV22OAf7aZAi7VF5RWo8HLkmgsUXd2XbdX2/JjqfHf2qQcWIsYHI6uSpNm2w5/6j9ZTh3DAEjW4yvDW09droMKQl1zE1jAbGJVQJ87GtkQHgNorKLjEdfOfVo6oNzgNroHB05l0rG2VoKBxUt447o6jz6chASXAIEBcTb16us43QEi7/0lHRktBXsxxirkB/eowCHLfofbTnrMOIviDZC0z3hqYP8tayaGBDrobv3Yqz1xLXZuiGoaZYzGVxg5ojsLFc3Bs6yY7d07wTDL5umYfWRrJO9caN43VuomuXooaLUjGFuJufW5C1dYI0b9WXkvK3obU12FyRxELkpiyslS74Bw3WFoJY/4W00fYRdk7tYFNi+lgxp+PGZ0DUBzSgaey8LDJB9+RoVJD+L6+8oF4xgREVEFevxXNScJrAAK67GJPjHHyiXW2bEkYreB899N+Xw4NMymzTy3q X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?K3ZMUzByWm81cWp3WUY4RDdsYTVoTnlYVk5xaGpKbnJmN0p2RzkzbHQ3TXND?= =?utf-8?B?UUhoMm5UZEFJUkYzMDRVYUUrbExlVllhZWxPYVNGdXlwTkhCV0puWEwzWG85?= =?utf-8?B?Z0cydXd4STBPT3J4eno3b2d0MGZpSkwydGpDTFBaMkhmaWs2OEUyUmNjZEto?= =?utf-8?B?K3F2VDFUbXFVZnlHWEJwdmNMTEZaMHg4S0VGdTNCekJ2cGg4NW5YaWZYR0tY?= =?utf-8?B?WkRSbE9aNU1FeHRMNkRob0U5MkUzUDFGbHlXaGp1L005eGVNbXpCTGhuMHhS?= =?utf-8?B?TkwrZTBUTlVwOExlWWE0a05MODY2dlZnRGdFby9sdmljK3FNRnpWMUxOcTVN?= =?utf-8?B?ajZJQzZ3Ty9rMWdJeFMzbnlUN3IxVDZrYUJiZE91aWM0TnRWeGgvekZ3UnR1?= =?utf-8?B?YTExQUZnT2oyWEtwVFVMWWJPVzFicW1KMHA1SFpTbGkwMGF6ellhdjhrVCt0?= =?utf-8?B?c1FESjV4ZUIyS25IZHdicTgyQ1FlR3M0MXRiWHphby9xS2RLSFhOMHNMek1Y?= =?utf-8?B?ZkJFUVkvcFVmU0JMZHl2eE9raGNGTGRDMTAzY0RxN0k2NFNWU3hJZ0dHbTRk?= =?utf-8?B?U2ZkVkxYMEUxM0tidUVBSTJuTTdneXhOSUc5U0VLOXhEcTl0Q25MMjdrdG1I?= =?utf-8?B?ZFByUmI4c1RkcGM0TXhyZGd2L3d5a1MrWndpdmVjMXhlTzNzZ0xpemNlZmpq?= =?utf-8?B?VXRlZ21US1FUbVhROHBJYStNOW91VFhabGJGdkFHZUhuV2RSV2U2c213MW9Z?= =?utf-8?B?K2ZiYW9YOWs5dEZFZDRzLytrQmw5a2IyL292YmJ5UDBYSFhhZkVEc21aL3dK?= =?utf-8?B?TG50dTRoWXFzak1EL3RWai93d05RbXprdEMxSVAybStHbGpQeEp6UmRPZ2tU?= =?utf-8?B?TUtDZWhyK0xwNG9yRnNzazEwMUFlU3hYbGJhSm5yQ3VIcFZYTmtxcStjbmVX?= =?utf-8?B?UHMxU05uR2E2T2w0Uk1HOWtyMThTTkVOWTVNNnFVOGswNDhsVGtUUnMzT0s0?= =?utf-8?B?THc0YnY4Zyt3Ris1WStYMFFHaTFaWU91emw3VUJmSUo1dVFvYmpmS0VaNFg2?= =?utf-8?B?SEJ6amhCZjhvZkQ1YXluM0hTZ2hQWlJpWlNHcnY5WUxhQUkwcTlrQ09Yaklp?= =?utf-8?B?bnZFV0taZ1Rmb1dxVzJSYkN3Q3hTU0YwN0FzV2VCQkFDQjFjNVBVM2txVS9D?= =?utf-8?B?cWRHZkkzcGU4TDBhY1RhV1lnajluOHd4TVBTcGpPR3VjZU1NL2lMM0VoSnpo?= =?utf-8?B?NUVPbWpxSUwzWjhwMWszZHNLRTR0dXBqMVhNeW15bVc1cDZmbGtkZExMSzYw?= =?utf-8?B?QTduSFdabTdXRFcwZ0xHVkU1Z1ZxR1pjZGR4M2E4NnJ2bjY2K2sxMkZlYjRn?= =?utf-8?B?TWFpZ1RGamFHUG5KN2NIdVhlSW1LK0xiMlcxTUd0bCt3WG9VR3NMaWVhdzcv?= =?utf-8?B?OHZJSW9tRVd3cmxxTlY2VCtHeXRNZkdtaE1aYkRyR1BmOXN0WXBQRjk3SkVD?= =?utf-8?B?VlZtcFJZWWZ6MTdtL3BvSVhlZ0ljTjNBVTFXMFNjMkRuOU44TDBJS3ZYcjdZ?= =?utf-8?B?bi9KTkpBN2FIRkYyLzlUZDRJS1NMdC9hY3dTSFNHUlJqU0I4MFhkcWJaZmxk?= =?utf-8?B?QTBPYTA0eHpiYTZaaUEzMURuNm5YVWtSMnZ0WC9DNWR3QUxFQ1lJeUFsSnMw?= =?utf-8?Q?ApcDru+FlVE2RX/nKlND?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 497df58b-fbee-4764-db12-08dbc03a4ac3 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 15:48:00.0868 (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: PR3P250MB0212 Subject: Re: [FFmpeg-devel] [PATCH 04/42] avcodec/h264_ps: Use RefStruct API for SPS/PPS 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: Anton Khirnov: > Quoting Andreas Rheinhardt (2023-09-19 21:56:56) >> diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c >> index 5657327f0c..632f5b23b2 100644 >> --- a/libavcodec/h264_slice.c >> +++ b/libavcodec/h264_slice.c >> @@ -363,25 +361,16 @@ int ff_h264_update_thread_context(AVCodecContext *dst, >> >> // SPS/PPS >> for (i = 0; i < FF_ARRAY_ELEMS(h->ps.sps_list); i++) { >> - ret = av_buffer_replace(&h->ps.sps_list[i], h1->ps.sps_list[i]); >> - if (ret < 0) >> - return ret; >> + ff_refstruct_replace(&h->ps.sps_list[i], h1->ps.sps_list[i]); >> } >> for (i = 0; i < FF_ARRAY_ELEMS(h->ps.pps_list); i++) { >> - ret = av_buffer_replace(&h->ps.pps_list[i], h1->ps.pps_list[i]); >> - if (ret < 0) >> - return ret; >> + ff_refstruct_replace(&h->ps.pps_list[i], h1->ps.pps_list[i]); >> } >> >> - ret = av_buffer_replace(&h->ps.pps_ref, h1->ps.pps_ref); >> - if (ret < 0) >> - return ret; >> - h->ps.pps = NULL; >> + ff_refstruct_replace(&h->ps.pps, h1->ps.pps); >> h->ps.sps = NULL; >> - if (h1->ps.pps_ref) { >> - h->ps.pps = (const PPS*)h->ps.pps_ref->data; >> + if (h1->ps.pps) >> h->ps.sps = h->ps.pps->sps; > > nit: this would look better as > h->ps.sps = h->ps.pps ? h->ps.pps->sps : NULL > Is there actually a reason not to just use h->ps.sps = h1->ps.sps? - 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".