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 4B3FB46C34 for ; Mon, 7 Aug 2023 14:56:34 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A3C4368C5F9; Mon, 7 Aug 2023 17:56:12 +0300 (EEST) Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sgaapc01olkn2074.outbound.protection.outlook.com [40.92.53.74]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0128D68C5F9 for ; Mon, 7 Aug 2023 17:56:10 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y5/KRNKw1Ye9mcH6837Wp8B8zojzAoZwxZRrnww3OzJ3lDtsqgs6/MilxrOmB7TPwr/B8gKfEXxSVa2pal1Dy6ISQrB4Wr5oWApIeH/jSGiQ2J4jOg1fkXONp9zP0vQUPzOZhNZr8ZbuinxmFYJlV8ULnIz6kaMHWy3H6xURV6W8g/4ioX2RfLJAl+hUTI7gGFNd7Ih2yuX1KSrFT78WBSYwpOjwS5KY9/Nk1fPj2bIkgv9Rr6QIm2wfB/yN9c5VayKmOkEQpdKe4w8lqspYjxyJLdfnncUbFkblpjc2YBWIdg4k4G0aybymS+lV+6tK+m//UhUcRDDnnRP6bclEWg== 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=dy1K5iYIF1t8AJinjUjqk+dGhen5tg+ld/s/YRj4PdI=; b=dgKHdC5WPKT2ImLu3njr3/xSDkNR9pkpT/YbH+kWiIqN+awI8i+gk3Sq8+4lnU5ieHpLiUT0Blr84fe/gYaLxuY3qxFPNTHJWDGYuCX0WraBMmn8NtmXsz45vsE3Mz1ZSk6Yx2whr2Fy4WeBdWZtVCO1d2Gb1Qwa/AkN6L0OKEaj+vE28Q3qPWud+Aim7y7g5TwsrPikGPuCI3LKHtO158NQzrknq1kJ7COk9pYma3KOAKXIukj5fqoIjEMpEGtAjhgpy0ROsKpvqr9YuCXyLoaTvSWvFwpAnMg+6VovnrsF5KwoB+qkmt13NhbPmgkLck0Drx9v7ReN1n78lolFBQ== 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=dy1K5iYIF1t8AJinjUjqk+dGhen5tg+ld/s/YRj4PdI=; b=NsgoyvCe3t7e1N1qflJ7bY7gMeiqJLqzPMJ5LlN/4Jdi5nGz2YFb3uSfpoz+vaqJUTsw910haWIdabFah6sRBMukstRxbzyCCxorf3JLyqRcA9ZY4rYhC3SS+mS7n42ctiQPutn2s5EkPbxiZH7qKO6w3gEv4F9GFDUzuQj4QYRqEe/VMK5nF0fr9Vtbz5EMfUfLpXV0LabTu8n//YqIMqkNkw/rh9XQvR2qlWo7hmpNNuhXkc1zNfVCNmtF1qMjf/V/STmW2YdMEhxn5uZVS3Sr1GgCyLVAjpLRpj60ThM11jBhSQ1pLfN6t1M0OAmsG8jrqr4prIdygPQTUu7B9g== Received: from TYSPR06MB6433.apcprd06.prod.outlook.com (2603:1096:400:47a::6) by SEZPR06MB5296.apcprd06.prod.outlook.com (2603:1096:101:7c::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.26; Mon, 7 Aug 2023 14:55:48 +0000 Received: from TYSPR06MB6433.apcprd06.prod.outlook.com ([fe80::f1a4:bbff:7592:ee31]) by TYSPR06MB6433.apcprd06.prod.outlook.com ([fe80::f1a4:bbff:7592:ee31%5]) with mapi id 15.20.6652.025; Mon, 7 Aug 2023 14:55:48 +0000 From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Mon, 7 Aug 2023 22:55:30 +0800 Message-ID: X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230807145533.17949-1-nuomi2021@gmail.com> References: <20230807145533.17949-1-nuomi2021@gmail.com> X-TMN: [Ex2nTTEEG1tnn/Qg4SuNw4HJEaToSzEx] X-ClientProxiedBy: TY2PR02CA0065.apcprd02.prod.outlook.com (2603:1096:404:e2::29) To TYSPR06MB6433.apcprd06.prod.outlook.com (2603:1096:400:47a::6) X-Microsoft-Original-Message-ID: <20230807145533.17949-5-nuomi2021@gmail.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 2 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYSPR06MB6433:EE_|SEZPR06MB5296:EE_ X-MS-Office365-Filtering-Correlation-Id: fcd74bde-a3a1-4301-5ea6-08db97566275 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CdEF8lOsR/07/h0Q3HbdmVH8B4LDKFZOLSZMzZMnXiB+rVU5luTCAx/ZF71ywfJen5ZZnLaaP5z583mImtZzbPt4PgNfn4kXJtT9XiHiR/Yvm7cyyScPHaxbHkGrNxAZWYIGpFJs0hoXbSFDVJwj59zRA5kY3+Vks620Jf+YpD2zVFnPsxHbxCSyEgp1NQTPYbCZSAM/GL2+aZtmR+zNJ6aqLUmFyPUYzvRToYyKCQ/iz7rFVbEPhfvmtjpsMC+2nBCzpGx8IJNnhRWrZH6HFzBvxY5OBTEkUVxsqpq9hUfmogbUg0kagdwd4MlfCwCWTrGjYTWX1AeJI8tbrbeyfeg2eAbSYniAPdTQrQ7AzE/V9fLwQfhTtr7BaLfA8tZUtCPALee9/wRbUT3Bz7+MMFBcWfz6H7RmyYIcuaiPCKj/jlDMED2s4HT6/lA38MNlT624HcvMZKDW9I2ej1rQwsZ4n/Y3QO0d2XwW+0xBb0whuuEB++/RnSrZ1f7wUYpDvWKvddURkWb2TGf1sGXIBQ4AeVYRgRV55jFJN0uim6hMrBmvskfNxr39QedAM16DEIx/EzSZG4Th/6/f4GS6XHJUKP71TpGxoTgMM04Sduwjste3FwYq0U+a/nzVOPGi X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?82mXSBwDicWAwP9DzITRP7FlaD4K6HRCq+qxYecefHgEu8ZW/0wWW8JVRESo?= =?us-ascii?Q?95kv+DPem0oraA3fvKqgv3+cQTuFmQi8FGHql2xgZKAQEpL+14jbdOkvu+XS?= =?us-ascii?Q?H5RFcl1Rglz6zLtQN2uXzKWwiLbJzcWl1654khKKfBfjJN1KPfpAWyHgP9QE?= =?us-ascii?Q?RuVfCdDGJIH72ekoe8moPngld7azvcrX0rF9EjsSL68HJqzyN1aR9A4cQgvF?= =?us-ascii?Q?oIqDk3eXRNX+ScYE/xBImjCTpp5ZYO2IQE2FEDIrOsK14qn919X2OKU0urGv?= =?us-ascii?Q?No25bhWtFlsLXW5GNbwdz0TkxIgq7fLdUWVnbOn4WpfLP+eZ4TkGcz5wETiS?= =?us-ascii?Q?8a3S4tEZvbXWzYRdmGcoprgmgbT03M0seZHt9JdxD8WYQmg0oEagh4DWG2TV?= =?us-ascii?Q?uZdNJ4lSmEifgkMNKco+18gTpAo+joRKVwN9VYk11wVSgKXAk0rSoivLcWVA?= =?us-ascii?Q?4EdQF8d+H4bpgV0ZK4i+fVcxJTjeNE5ChoMVC/jFLW5nUKgPq9j1r2HFaBQ0?= =?us-ascii?Q?8cd7x9z46YW992XsrAHLzLIO77UiW6eZidJdcNP2M9t8qmOUcuXvtB9pATQJ?= =?us-ascii?Q?ffgZ3WYaENKT8BED30dSCoFB8nyuZ3lhwLk8vidj4r4GrgZ7TnmtAfX6y58q?= =?us-ascii?Q?h8yeyDIffcDrcmOdZ0fFRJl9IpU+zAp1hEQ6XTPaYjrpXoI2/bdSDXWfpkMD?= =?us-ascii?Q?sdMuOwiDKQA6o/18ePG6QA3GFGIhajkJGKA3sk+pbGiBogvTqHGKLe2mgpop?= =?us-ascii?Q?qn1O2FIOfdiQvswNlQdrnEVWn+trxYJ048rZaZgXvhItUy0fiGbrsrH6qhCZ?= =?us-ascii?Q?uc3HZ50khxVnoB/gvVFftB/y+bNS2NeOamCi2g7XKqGP2fxgAh579UtOXaJD?= =?us-ascii?Q?g9zt4om6uupmEYfASnuPFpLMN8qwhbiQRmZmzFnIcmflw6pjLwFOFN//jVEd?= =?us-ascii?Q?7TImUUlE7TwTeT2nxwXBr/t8HKDyLPXeLw5uL2k2zlFs7lmAqMwlZN0GoaBS?= =?us-ascii?Q?SoVLeRT7PmHFWPLEUH4DKt8beVoj85mEOZE/9ZFA509YEW9ZmIXYbtmHoCtU?= =?us-ascii?Q?tJa8bh63DH+4plwJP2DG9FxrBLRGjkgx5S400McnQCpsPiyd83FK4Yc44Bwz?= =?us-ascii?Q?jqTqkeyFiYb/6kRnU8YpY/CUmNlbwSfqsKJ3g3nsgC2cz68Z5MnWXJF5HpUU?= =?us-ascii?Q?S+428Qgqd3H9P5wSir2X0n6oKHEQNp8CLhNuG1gEqW0FsBsJqc0vhVG0XY+k?= =?us-ascii?Q?v+EVM+xvLILM5lWEJjvF?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fcd74bde-a3a1-4301-5ea6-08db97566275 X-MS-Exchange-CrossTenant-AuthSource: TYSPR06MB6433.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Aug 2023 14:55:48.1098 (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: SEZPR06MB5296 Subject: [FFmpeg-devel] [PATCH 5/8] cbs_h266: H266RawSliceHeader, expose NumEntryPoints 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 Cc: Nuo Mi 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: --- libavcodec/cbs_h266.h | 3 +++ libavcodec/cbs_h266_syntax_template.c | 17 +++++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/libavcodec/cbs_h266.h b/libavcodec/cbs_h266.h index 0196f46bc0..1d80c74feb 100644 --- a/libavcodec/cbs_h266.h +++ b/libavcodec/cbs_h266.h @@ -828,6 +828,9 @@ typedef struct H266RawSliceHeader { uint8_t sh_entry_offset_len_minus1; uint32_t sh_entry_point_offset_minus1[VVC_MAX_ENTRY_POINTS]; + // derived values + uint32_t num_entry_points; ///< NumEntryPoints + } H266RawSliceHeader; typedef struct H266RawSlice { diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 43b3346359..d0d1ccadd2 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -3374,8 +3374,9 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, for (i = 0; i < current->sh_slice_header_extension_length; i++) us(8, sh_slice_header_extension_data_byte[i], 0x00, 0xff, 1, i); } + + current->num_entry_points = 0; if (sps->sps_entry_point_offsets_present_flag) { - int num_entry_points = 0; uint8_t entropy_sync = sps->sps_entropy_coding_sync_enabled_flag; int height; if (pps->pps_rect_slice_flag) { @@ -3392,7 +3393,7 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, else height = pps->pps_slice_height_in_tiles_minus1[slice_idx] + 1; - num_entry_points = width_in_tiles * height; + current->num_entry_points = width_in_tiles * height; } else { int tile_idx; int tile_y; @@ -3402,18 +3403,18 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, current->sh_num_tiles_in_slice_minus1; tile_idx++) { tile_y = tile_idx / pps->num_tile_rows; height = pps->row_height_val[tile_y]; - num_entry_points += (entropy_sync ? height : 1); + current->num_entry_points += (entropy_sync ? height : 1); } } - num_entry_points--; - if (num_entry_points > VVC_MAX_ENTRY_POINTS) { + current->num_entry_points--; + if (current->num_entry_points > VVC_MAX_ENTRY_POINTS) { av_log(ctx->log_ctx, AV_LOG_ERROR, "Too many entry points: " - "%" PRIu16 ".\n", num_entry_points); + "%" PRIu16 ".\n", current->num_entry_points); return AVERROR_PATCHWELCOME; } - if (num_entry_points > 0) { + if (current->num_entry_points > 0) { ue(sh_entry_offset_len_minus1, 0, 31); - for (i = 0; i < num_entry_points; i++) { + for (i = 0; i < current->num_entry_points; i++) { ubs(current->sh_entry_offset_len_minus1 + 1, sh_entry_point_offset_minus1[i], 1, i); } -- 2.25.1 _______________________________________________ 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".