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 1CB274A545 for ; Fri, 29 Mar 2024 15:33:55 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3228968D72B; Fri, 29 Mar 2024 17:33:54 +0200 (EET) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1DE4968D538 for ; Fri, 29 Mar 2024 17:33:46 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1711726433; x=1743262433; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=2o6eVRrBsQvVpNw4Oy1nOp7ss5UGwMc/OJ+HepcZZq4=; b=cUon1xjEL7ClE89tHc7QLQWCWU772PG+Wb+baiNGGQyW2WDgagEHyfL/ jMqGwMWPAI2sgb2HfVV4DwRRyfIE2lxXONJhIhyOvdDBEARjKRJLnXtq9 vhCwIpTo/fRducDQT0BBzSei+wcuR4mo8WQMPIodU2D0dxjEWY/guRbp2 BMzHZsmf+7/ACfFf2meTvEF54aNh0XeqHipmJNzDJUUA8eT0p7M3bVoqV txRoUoNsSh4mN4VKu/RPpSKgDELPzH5rUNw9Kb5htAK3gxLW8uEVJGOkg uudHnC6KogOt+TzzhjiPDk0XhM2plLYAowISENehsEzfz0iUDRuZwsRq/ w==; X-CSE-ConnectionGUID: /79nZoonSWqSr+o2k1rxyA== X-CSE-MsgGUID: bHzLB1J3SVqtfjjLUARIAQ== X-IronPort-AV: E=McAfee;i="6600,9927,11028"; a="10730459" X-IronPort-AV: E=Sophos;i="6.07,165,1708416000"; d="scan'208";a="10730459" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Mar 2024 08:33:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,165,1708416000"; d="scan'208";a="17058090" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmviesa009.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 29 Mar 2024 08:33:45 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Fri, 29 Mar 2024 08:33:44 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Fri, 29 Mar 2024 08:33:44 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Fri, 29 Mar 2024 08:33:43 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hbDSXI7CSaUReBvjhpOSayH4ftHkwSwiuUoFGRMfyueN6z5pwBkIoysk7hsbM0QuzcJzSOUmfy2jhu5kJE7hwxR+AfuBtjMGDmDLoyXgeVsk8K8covsRKuPYfHU6bTN4KOyENbRnUYehK1tiS3MKD0Em6sTWEZcm1W8CC1AEJLiuxqeDEWiXyRqKEN4wHnDQHB7ow3XDNUPD2KiTVAoSdtenn3KG0CJCfjdOC/gky6C1kNweLGOPVuC0xDJMI1riOkmOEPH6NitGcyUMw/Cz8tOYCUg12JrVLdL5xzZ4ncJ4dga903vth6kUqCEUE3vNDRRAtSzcnVABy927/Pe0Sg== 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=j3yBOO5hwGWmk18KHzuLcWa226bpkpdhnB62AfsohSg=; b=Mm0MWZnozJ4djUL9Nt0bZUqZrUyOnDZIZ5H5ulZkHfrnKKeGOHZl8pKGGQzrhtZBCxTJMu1w/FzjkkyGA9hBKr+nHcFJ3iw6ta4nDYlnQ6htIR0yEzUkQTmXCaKWjQ/dSVULgGLAFEKkQFKT5yYEUSYAHuqX2AcK2c/gWsjbFricuyOQ318P63xTEddl0JKjXQyc2Xha4/Rg/ZwRrzwC7qpK5pumTitTjnsCEmM+FLD4oegA0sQ6qbFEpcj9vXsjojVZ170OZXuPymC4AJ8yFA0V7I5yc+za/eAxim/wrR6FaJyHx2xTMHAyiUARFbNndy2qyFg3v+/ytK8IpstjuQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from CH3PR11MB8659.namprd11.prod.outlook.com (2603:10b6:610:1cf::5) by IA1PR11MB6370.namprd11.prod.outlook.com (2603:10b6:208:3ae::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.31; Fri, 29 Mar 2024 15:33:41 +0000 Received: from CH3PR11MB8659.namprd11.prod.outlook.com ([fe80::4c7a:ec78:f0:ac0a]) by CH3PR11MB8659.namprd11.prod.outlook.com ([fe80::4c7a:ec78:f0:ac0a%3]) with mapi id 15.20.7409.031; Fri, 29 Mar 2024 15:33:41 +0000 From: "Wu, Tong1" To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v2] avcodec/hevc_ps: fix the problem of memcmp losing effectiveness Thread-Index: AQHagexfiwRNV8P9p020aIzQYGzaO7FO2QJA Date: Fri, 29 Mar 2024 15:33:41 +0000 Message-ID: References: <20240329151307.659-1-tong1.wu@intel.com> <70fe9f52-183e-4dc2-9184-ea970e7986a1@gmail.com> In-Reply-To: <70fe9f52-183e-4dc2-9184-ea970e7986a1@gmail.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR11MB8659:EE_|IA1PR11MB6370:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xuhFqJZnblqgL9f6uBfbYfshEQ8gTZW21ymwnO6wBwTSaYahx/T6CNj5Cmb0mgXYM9WlL78LTNWxW/2KBq6FK6pN7s9QxxVwqM3808G7ARATcr7UCi3F4vN4IYGcMKHpsGnV2ZBJV3/nxnpCe6kWNkRUjRYv8cd0MTur/UG8ZU07zNuzE58PUq5TCfHfDjjUoPJwbscu3yRP2cInivBkv0ZPUm/KAIb/RM8yDxDDhYqKrlwvRkkjxYi/OtR5StTCXoWEXyUeqjYapgw50kGi4KbQUWY101uG7n2ExVp8WaCEI9fgjpn0trY5Q5pMl1d7DgioogVSvcjmmc3bZwM2NM/HeQU3AzQBWS6wgDh1hyrOmiDopwpH1CIn+l4wSAfIuz6NKlV6GgbZd4zi/XohEKZc+/G5ZVFasjW3pRUrbDS3kR30IeVKpd6QgnFAF/gY3W3M3kMyhK8qFeqhY0ZExlWqExjLFowsDoj8Q8NXoHeWAM4btLl0J2idymjgM5sPVTUffOcPwz3T/emb49KdG/NJAEjQs7s2ke/JCpbN4MqYg5R+J/wIBOmbndQsG55ZO/0eD9pBYK5mVawKDms/dHEWozdxrQFfqqtfNEudlw4= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH3PR11MB8659.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(366007)(376005)(1800799015); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?nMt0wDbID4o4PtgSlBwVwl+T1b0GIxajjvSVc2Ob5aaXr1v+/ZXvPEjfbe82?= =?us-ascii?Q?rDlCA30lpZ/QrIBzahYoPg7dLRYdLeJpls+1WG3XXzx4KuPfR/OlzB5XAQQE?= =?us-ascii?Q?ho+kowAkTOxsOi6OAbQauGVb5T9y3krJUmyAT56LLSHURn5D6FxDP2jP1/iB?= =?us-ascii?Q?g4JYuRPwmSsLCbQu1iuxtFwX8gH+6ZD7eiUzo0Bqa3VaugDcUGL8Oqw2xwqg?= =?us-ascii?Q?TDGjadx+Xq70f6twdNvy5oUkOkeBk/zzUQgNUaXP/UEynkxIxcxPVLrtwoYQ?= =?us-ascii?Q?FRpYYK+P5ZBEv/uKr4NUOrv1WNaC4mqJZJx6U6m3OjN07GoqaJlgMmrLb0RI?= =?us-ascii?Q?T6ixpKJ7Nx3JeibfSOIiVID0FNrZmirmqvY8n16LV5+JxXKGfAt73Qp7fOGb?= =?us-ascii?Q?zZ963W91VldGbjRBEDm3CfGDm6Y0wDFUrqBUhRP97FARaFq1FmB42AHrB3rQ?= =?us-ascii?Q?SRGJLRukK8D2l775wRkkZGP/y0SZwUUjkbWasfMZadbHpwtGcVw9slA3PpVu?= =?us-ascii?Q?wjNVhRkWDtcKyhIwY7+PjVB+SwxKKvEYaPLov9Te2o5ZB+MhyG6CB307Cs0e?= =?us-ascii?Q?EyL9u1tvc9QprnLEbrMRg8KYHtSA/jrawN1tGWdrDf0V5AUgP+qXE8Ee0zv3?= =?us-ascii?Q?1A77VX9s23gX44QaPObu0wY9q71J6F1DesWSma2VP4lFB/An2sxexjEgkzw7?= =?us-ascii?Q?DxzbL3u+A5H8qF5ed2hn0TadUBjgzYQk+xwrINJEyl9S0FGkiFCBMNDCNI0T?= =?us-ascii?Q?sDKB0KtOgyTdHuDsW+i7secWvQ/7GXp7f21BaJB76MWaDFaRO0Kwjm48xVlL?= =?us-ascii?Q?+EtzCA2/PyDywuqB6IOe9R8Tp4QZOEZYUKKneyVOsiflk1PmMD09VHrwr7Gz?= =?us-ascii?Q?6IWrBuYl9YE0t6+6cXJxpqRUNGKeoaLADjy5ZDRb2uTHZcSo92r31kcXiORn?= =?us-ascii?Q?Jd89yEmCiUzJkNcX4GVzmUsmJ2N2ZA9PQcHcD3rR4gEbhkrMntAB7h/NPlN+?= =?us-ascii?Q?hI2Yjek+x37NmYlyo4Br+oxszWEs964CtS0C1OGwOC3ShPOlvqsJBpz14xjB?= =?us-ascii?Q?A4i70oTy35p2DvsXszh+NyD89fswxNPxR8bAgig1T6glDQOB1RuGWP02YTC5?= =?us-ascii?Q?kLCTj+odz85vMGgUNLDrlJek2vyJaLjmBXJHeHsFKnTI1jLvljZt09ANnP5j?= =?us-ascii?Q?xDrm2ta8ml7g/TSRHK6jlhX7lz73gTCSnH4WMBPfi1gKNwVJRkKWrjIJ7Q/p?= =?us-ascii?Q?wjvQ390AIknQFMwLraaXYWt7hsvUzNfXBDYpUxD0Vqc0hBZYal2mAjySgMRw?= =?us-ascii?Q?Nn8DU0lBLakJshTI55QxN96edX4xDMOP90o43cGWp8dfRavBDRrmGtqFgYhq?= =?us-ascii?Q?+WFXiK6OoZi4NvzT1T9uQzglXD53P82f2Pe3LCYO/G8TPzHQ+Dq8UNeQNijI?= =?us-ascii?Q?EDaur5A648c9+uqPvDtY9bKHtHdLiiFjXoCKTWg4DHlgoYllNNk10OLC57tO?= =?us-ascii?Q?fIzkaX23EuNwtNMTGk9tRAq7z3sqylEGzecQuVbZkP2hm68QhQ6lD1UzHDDM?= =?us-ascii?Q?OlV8p0vC9PzUXgXPwSU=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR11MB8659.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6d936773-5cde-4ef1-7f27-08dc50059cb3 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Mar 2024 15:33:41.3389 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: i44+DHXSNVsLXloqCF6OuKk8V4z60Oqn0wOXV2jQEjYYvLi90EtFA2Xfd7O78ZSmi4f424upj6vJFyJWuQv9xA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB6370 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH v2] avcodec/hevc_ps: fix the problem of memcmp losing effectiveness 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: >From: ffmpeg-devel On Behalf Of James >Almer >Sent: Friday, March 29, 2024 11:18 PM >To: ffmpeg-devel@ffmpeg.org >Subject: Re: [FFmpeg-devel] [PATCH v2] avcodec/hevc_ps: fix the problem of >memcmp losing effectiveness > >On 3/29/2024 12:13 PM, tong1.wu-at-intel.com@ffmpeg.org wrote: >> From: Tong Wu >> >> HEVCHdrParams* receives a pointer which points to a dynamically >> allocated memory block. It causes the memcmp always returning 1. >> Add a function to do the comparision. A condition is also added to >> avoid malloc(0). >> >> Signed-off-by: Tong Wu >> --- >> libavcodec/hevc_ps.c | 22 ++++++++++++++++++---- >> libavcodec/hevc_ps.h | 4 +++- >> 2 files changed, 21 insertions(+), 5 deletions(-) >> >> diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c >> index cbef3ef4cd..d3c589ec24 100644 >> --- a/libavcodec/hevc_ps.c >> +++ b/libavcodec/hevc_ps.c >> @@ -449,6 +449,18 @@ static void uninit_vps(FFRefStructOpaque opaque, >void *obj) >> av_freep(&vps->hdr); >> } >> >> +static int compare_vps(const HEVCVPS *vps1, const HEVCVPS *vps2) >> +{ >> + if (!vps1->hdr && !vps2->hdr && !memcmp(vps1, vps2, offsetof(HEVCVPS, >hdr))) >> + return 1; >> + >> + if (vps1->hdr && vps2->hdr && !memcmp(vps1, vps2, offsetof(HEVCVPS, >hdr)) && >> + !memcmp(vps1->hdr, vps2->hdr, vps1->vps_num_hrd_parameters * >sizeof(*vps1->hdr))) >> + return 1; >> + >> + return 0; >> +} > >Something like this should be simpler > >> +static int compare_vps(const HEVCVPS *vps1, const HEVCVPS *vps2) >> +{ >> + if (!memcmp(vps1, vps2, offsetof(HEVCVPS, hdr))) >> + return !vps1->vps_num_hrd_parameters || >> + !memcmp(vps1->hdr, vps2->hdr, vps1->vps_num_hrd_parameters * >sizeof(*vps1->hdr)); >> + >> + return 0; >> +} > >If vps1 is equal to vps2 up to hdr, then vps_num_hrd_parameters will be >the same in both and you can safely just go ahead with the memcmp for hdr. That makes sense. Thank you. >_______________________________________________ >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". _______________________________________________ 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".