From patchwork Tue Mar 19 06:05:17 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Dai, Jianhui J" X-Patchwork-Id: 47214 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:958e:b0:1a3:31a3:7958 with SMTP id iu14csp1467724pzb; Mon, 18 Mar 2024 23:05:35 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCU4FkxwUnchIBIuQIIYKA8gk8lr641oqGjouC69LhfZ8veZMIA9omSpTNtMuqQ6MPF/A5c18D5UVrYMCaBK6AmDDT98/e7Gg4l53g== X-Google-Smtp-Source: AGHT+IH+RryeGZ7DfK0mCvM5kgo4RFbyH0NJtj3DgB4YBmmo0T2WOlA8WBBqIKKhI4r3O0qu/kb4 X-Received: by 2002:a17:906:8410:b0:a46:d754:73a0 with SMTP id n16-20020a170906841000b00a46d75473a0mr863573ejx.33.1710828335064; Mon, 18 Mar 2024 23:05:35 -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 h12-20020a170906260c00b00a466b7421c9si4903346ejc.267.2024.03.18.23.05.33; Mon, 18 Mar 2024 23:05:35 -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=@intel.com header.s=Intel header.b=mQ24grFK; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4ECF368D128; Tue, 19 Mar 2024 08:05:30 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.17]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 111A468CD83 for ; Tue, 19 Mar 2024 08:05:22 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1710828328; x=1742364328; h=from:to:subject:date:message-id: content-transfer-encoding:mime-version; bh=W2K6NChPERaUjcqMEA/iIfJKr94C/3X/5oiMuwBP22o=; b=mQ24grFKAmpWBkSaRsFwZupho5S+d9rUMF1nx19SdIqm9kfWxV5ew5SE 221tdo28phpMRqta1o6/I1RjVG5UvBeZFFhUFojgO/of0V6VQBKs3VY2V YVGg3VMDxDVTktbLeAgpPtKQuCMUWq9JUqpSUlGRKfNUJ72Mi9XGm+kAy 1CY2kUvm+es7RBzhRKMGAB+69+z5fuTcSLb5huy1B2LHtGp2C1NyL5sIh PasYNcIlNLIGqarq0wQakJIrqI9u/y+/2RjcivQzqXbSupThF8BUAmIjl gzRQ5ApJwFf3kZDl3O4GoKsb+CP2XiJrt+4ZWbawh0X23ZJv9WhCl2Y3y w==; X-IronPort-AV: E=McAfee;i="6600,9927,11017"; a="5534682" X-IronPort-AV: E=Sophos;i="6.07,136,1708416000"; d="scan'208";a="5534682" Received: from orviesa010.jf.intel.com ([10.64.159.150]) by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Mar 2024 23:05:20 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,136,1708416000"; d="scan'208";a="13591644" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orviesa010.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 18 Mar 2024 23:05:20 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 18 Mar 2024 23:05:19 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 18 Mar 2024 23:05:19 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Mon, 18 Mar 2024 23:05:19 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.169) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Mon, 18 Mar 2024 23:05:18 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K/mayb8fm6guF1NelTeMVpaxPRJdGiRrSotyufPZbmfGcKFBAjZsQs4kxAaPq8bplxbKW3whj5UdvCmMaFxyJsQ8dv6Q3k8if3qf1DYg3U6a52RtnULa7JbIvLjfznUxV/Ocd6FZL0uoAW7D3DiobGWXS2DXsWVxBJXzqYaub18dSlsD/JDCGc/1dtWWz1Bfo4IwS3OrNL35miR4U0l9rEaS0i3+INQCyZwrSf+VZWt8yxRLwvLjtusfy6QbicaNhkORzuruRt3b99sw8rVYgGh1oPxrQcBni0FO95qvKIEDbkaPyFtseFoW7NdVjTk3hiJAfr93D9Ml+7arK3AO5g== 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=7RBWgO1WrrMpn0+m1kJKWZEvmU5FAxBHI215+OwwshU=; b=CkmgFSwW77e5jsW55EBZUmKZwVgnDHjlRZL405okuJfynZYNlSpiOWeihG00J1wPaNAaVmBqc+7mYoRBGUsXXsSEH7YdfQavuJNhyJycdMMELLhe4yyxW1o/94Ri7Gra6HHhOPC5u+GYVyoWIewU7RlS9iDRJ1570dhZMVMA3lu2Wqgc17zYCjUn9Y5QmLkKO5T50r/EvxBfPDUFSw6heaSXFchlK4rDEQaZg0iwnvA60AsoSbwdmWwR+w/MkNtagZHRjLN6Dbm7SR4OP4pQACQjgxTasggHySlXU+blzIKJfQ+3TCcar/s2rb132vjZqPxvOmXcOZx3HPpnKKexAA== 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 CH3PR11MB7937.namprd11.prod.outlook.com (2603:10b6:610:12c::15) by CH3PR11MB7764.namprd11.prod.outlook.com (2603:10b6:610:145::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.12; Tue, 19 Mar 2024 06:05:17 +0000 Received: from CH3PR11MB7937.namprd11.prod.outlook.com ([fe80::f1a:a315:bd44:113d]) by CH3PR11MB7937.namprd11.prod.outlook.com ([fe80::f1a:a315:bd44:113d%5]) with mapi id 15.20.7409.010; Tue, 19 Mar 2024 06:05:17 +0000 From: "Dai, Jianhui J" To: "ffmpeg-devel@ffmpeg.org" Thread-Topic: [PATCH v2] avcodec/cbs_vp8: Improve the bitstream position check Thread-Index: AdpPI2nmMhGA8pm0SOq70DRjXTacVQ== Date: Tue, 19 Mar 2024 06:05:17 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR11MB7937:EE_|CH3PR11MB7764:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: cR2VGwm4nYeS92xbZIDhBfsGhujD3W3zWO9IiGMQMrxPjow8/1iPhIuSCJARSfAVbIlJY2G2YkWNOuC1QTG8rsdf3dCiUu+2hTzRgu5iSgfYODsVUO7LlZRxoFtQqWXTkQ9gKgZjtzit8KabeVmgLWKxQlnybB55ZQlFWE8vUDv9t7wwBGKuiFI1or9Ai2V0luhuLkCLBSDeJSpujqFgiJ/BXuuYtyCjA8a2+7upqbR3vxYUXAWLkZ5FLA+e+4RRrWRsJUk+UFWKmgKPLzdVe/qkz2Fjx49j4VTTQbWri5sPLXCiGuXUJDmHqai3ZuhsXCFxL1q5Zz8hz+OnoC1l3/01XoB1HL92301UO/m3N2GDl//uDOp+9+ZWg1qpp8mqHhAVVxLQiwa6K6fQoDq7LXo7OkE0jdjh4kOgnEgOSCP3RfvBzOM3AqvvA6ZhcjtZ9YIKdpTmtaRBM1bL9ppXk45t83CDS8Scs2iOWXhWtUdzEEsXu/H1ZzCo7dJLEfED5sW9e1R0+VNkqt26COUclGcRjqzMi5kd8tUPnuOo2ngCHqyfO2mDhubQ6nLraQTDxYKWM1cS4kiMDjAwyT3DegGZv9rJf6seB40nGAO84ureXXfsLw56riw8ZN82KKxiFrSYnFMFxctiABh8Lp9PMkmc+c2hJQQnKkE+5EALZBM= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH3PR11MB7937.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(366007)(376005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: o5OCHw4lJKozdph6IiuLXvOHhM+Gn5Bfz6XEp+V6bXWPffdldDGreTH//769WXgCmfOkSp04nOLcZnrc1jvUcifWmaywwu19QuhHAgGyZLtR9lkee8PZm6BXk87mbi/tzjCy1fnNbwKZwgSrrKWHivyG2m6kpVR7VDNXnppKc/ubdXxoukT2/+LVmdQlr12PJNDYGg5U71OZXfv25PxIxRe3ZuFerPoxa82bY9BD0/2H2W4SM80bjuC7hR0wZP+gB7CgDzx621lIXixfcqd+wLNuvZ3ldJOBFiZv768MgLMrJtL+Xa7aoRnRS1sHJSUun9Y/KMf1lCsydNcdrDyMdvLdmlHcxYcDD8xEIvmlJ9eb0v3BUN/Wg7hkHTJf0bgSJxAclf0JQjbxqwbKS47cOl4maekz0+HHd57sdJss2YssebtOQlVq6qte0qWdsfwmbmEVz5rKz4729TeBI8rP1T/0bJmZYTJWzW45L3nrhG31Z/MFd4biGvLFklO8asoIw4GrNxZSA6DKT+5NmOk4VLnp4nkjvRpt1OnC5vcuNs0JrDBeXRYNvQYdYoAO7dVxcF1If6p4Nh+eftfZXjXUS5PDARZyTzg80eGxaAkIlshJla//dpt8pjfx3XYy34vSk+WXsi/63v9ghIf3x/lsyErVegMgq+St0vQSWnFKN88taZJT0paS7gJWRWkjcmL87u5fH45pWNQarUvlpi1ndGyNM+KFYoFPXqHOvEpUTTlO6YHVFfUZTLpWP4ceyN+XYdzl7Cb/y4ldtSCShWB3w1ZtB1g1Bz698mdkjpKM6kX7Rg00DPIZW/dvyx4BdtfUKjMzklNNWT/hG6E9WS6pxuhlSNaQ8ax0NRIe4my//vMschLLNKojsInNuEDzkf03Z9y3C9NlSX+fuffz84f4eB8C9aK6xBGAEMDUyBm/wg1wp4Oh/xubnVYyJwnBYXGKYPwJ/Bm3bezZSda1EwLjGWaFI2P6kFO8xIt6ahPBFjPVSYzjJH6sWaWs5+AACgCS8dTIMDVuXhwjgf531xVPyerW0lS3LjUqn6fOz13OD9cxFj/faW1ETJPzmkl7mOp45q3JFcvfBgVgy5EagxA5dt/w8lvdE2GEYZx2G5hb4E/P/WrijtgophYPe1JVkrRbh9AhNO3CQuRXXOxKvAN3XYMlZHrJ+0vlBfWazKVzqdR76LDJey3clYqhFb6f5yzNSaZOg2ERF3Ru6HTjy5Qd6mjD0sEJqSkGC7PY6Av2fnIyau9F20Bel88ZDRmr4Yb62utHez1nglLqJPMWciyjDHAUERXIEVld7KiaKeZFl2bBpUSxbsLD7XoVsaI52CPlfcZ8JbIdHnyTxK5aHT+uDa1GYBatjQbPid4Nm9PDgICkzgSzMvYtDgF9E+N0i9TFqiJSccxQE8BTysz04kTozB4JMPznuvpmkqBiKWvkNU+zj+tT3VXQpe9heOgt/JZNm6rH8B3qwA06LfRmew6akPCpGhes1rXrgQZW6atQxTjhHilKjaP0IQ86yDwvEsmFGpECIKm+E2WqryLs7FWXKqO+SYvUN2MjtVAE5MykJnE+UA/VrcFFgQJj8l84OiyU MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR11MB7937.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d40a2b5-c5cf-4ba8-c6dd-08dc47da8ce6 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Mar 2024 06:05:17.2061 (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: oGMNmN/rPk38n4B68wKRH6j+9YjXg/PZytR7S7gmiFpZdCVD3C/J2UuWSL73WS/xfbrGOUaUfr8uSLcH+N0Zpg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB7764 X-OriginatorOrg: intel.com Subject: [FFmpeg-devel] [PATCH v2] avcodec/cbs_vp8: Improve the bitstream position check 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: RD++aV1Ammjo The VP8 compressed header may not be byte-aligned due to boolean coding. Round up byte count for accurate data positioning. Signed-off-by: Jianhui Dai --- libavcodec/cbs_vp8.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/cbs_vp8.c b/libavcodec/cbs_vp8.c index 1f7e81cfe6..bb441b7187 100644 --- a/libavcodec/cbs_vp8.c +++ b/libavcodec/cbs_vp8.c @@ -328,7 +328,9 @@ static int cbs_vp8_read_unit(CodedBitstreamContext *ctx, return err; pos = get_bits_count(&gbc); - pos /= 8; + // Position may not be byte-aligned after compressed header; Round up byte + // count for accurate data positioning. + pos = (pos + 7) / 8; av_assert0(pos <= unit->data_size); frame->data_ref = av_buffer_ref(unit->data_ref);