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 9E84E45D8F for ; Tue, 8 Aug 2023 11:00:15 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B10D568C7C2; Tue, 8 Aug 2023 13:59:32 +0300 (EEST) Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sgaapc01olkn2092.outbound.protection.outlook.com [40.92.53.92]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D405168C2BF for ; Tue, 8 Aug 2023 13:59:25 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iZZZhsHsX59c7//evDlozzSPOtZGgdMH00hLrVtHtRNJOjuxH6EKsk97CrQsbgJOrnbOAq+UPa+ck8j9IFoSTh+XlireKwMJeG4lTS9vEcmwUsReXZPM6ovoNHjeEnweVMktR5meS4o3aOJPyqN3eDuMgCGFtmkqRA1ip1mKIS60megh+WoFzdsgNcqqOClUgN3HNszVfup1Ya+g/TxttOnNQia5y8EU28qVG52q63o/GvwEj6cS9c92W3cdY430XBKcnap1+uKLqrD/GAGdbOOyTdCR2kJAqGxtpxUNDuq3IQagZilrZzeZxUAV0hKLkHrhmLIxFnwjyOrcFpkmTQ== 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=Vfn/cbZTXcVvR/Gl3KPirfhKv9plSEMPck6n5XvAoO8=; b=YqpJMBX0ccwOLliCCDCI3KyPSND4wJ/8kM6RzT0ysodih7lD8+WIllqoEDxg0NoBPbrrBVaEUBoqPU0vy0SkBR1TZlf7CBXAf8k/TMBOF++PrQUlm84YZsXPOri9J5j2EyCDsuRkNcmTm4cTlclWheYL+2sYpsbH9ETKSrN1rVnkmSnpCpP9Uthb2YKFy5rZorLdkpSJrLWYsZ0rNENURK518z74GhzZ75zIr2UZEHclVfQe0OIcs7OvdFh/FaT3K0EBWseZsNH3l6MC3PHOryGChQJrTJRqIjcUCbupgFjYInZg5+aCHP4bW6T9+RhXgmmJqNwSSZ+ssS1cyuKJGg== 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=Vfn/cbZTXcVvR/Gl3KPirfhKv9plSEMPck6n5XvAoO8=; b=KRvb5j93SfshaV59YDb8OWrP35cUQWdgvIeZgzjrPt+B/qflmUqRPsf1swA3GhgmRw7VFa0y4VnIX00i8msL3HkPDYGmFf3LOb2vXZ+4OpdF6aRB645vNlZgoXPuwb93f98sQt8CCUsCy6VLwWEZTi8IGUHCIgeuB3wY1zDoi2z3qqvwzntr5D7SX21Uo8jIDdiOc4A1U/Qo3f0fHY3Fz5BmvFbnIt3wyldR1fx6gvqucp8umW+yyLSe0U0zcGodhjj/XvNfIJYYUdXAglDEcPF97P0MBtTyuPecZODyaQsN4jVAczc+EkIg0WBWBDYygn3R1+ummmkzgZzEyR04rw== Received: from TYSPR06MB6433.apcprd06.prod.outlook.com (2603:1096:400:47a::6) by SEZPR06MB5692.apcprd06.prod.outlook.com (2603:1096:101:ae::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.26; Tue, 8 Aug 2023 10:59:09 +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.026; Tue, 8 Aug 2023 10:59:09 +0000 From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Aug 2023 18:59:02 +0800 Message-ID: X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230808105903.6667-1-nuomi2021@gmail.com> References: <20230808105903.6667-1-nuomi2021@gmail.com> X-TMN: [+Xkf9HSdYUPx9vV5eQRxx967+zo9I6aT] X-ClientProxiedBy: TYCPR01CA0046.jpnprd01.prod.outlook.com (2603:1096:405:1::34) To TYSPR06MB6433.apcprd06.prod.outlook.com (2603:1096:400:47a::6) X-Microsoft-Original-Message-ID: <20230808105903.6667-7-nuomi2021@gmail.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 2 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYSPR06MB6433:EE_|SEZPR06MB5692:EE_ X-MS-Office365-Filtering-Correlation-Id: ec27e52b-2e76-4858-71e7-08db97fe7d88 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FVNJ6ke+B8Q4Y6LFoCIkl9tNYH4ZdwJaQCUAqOLZVD9MuYTc5El18BcrK2CC6yosIElfcJz3pn7oU+/yR7KYxYhGDYmO7zCu7McMxgAJGUf/9qQ19ds+Cdl5nXZDmvOTPb/vUolTe+wOq4RGe5dYhp7J3ctFMyGFeWGADdq7XOPRyy3XUNCAHNmoe1mRjILk5iFj0LHMqR7S5jAg5zceyIkHu6iNpS7KKjxsiMP33giSKvImD/5P4nOEbKv7ayT7INn3IijQpRC6ldIQAb+cWFHQwrIIl7P+OAPgSutG2SwtMUPlmU1vZD/cwT1ueIENlm1L/EiNgINaLxxUlg+EoG6//ocMPtleUHzLLyfgp5HGHJJE+QksHuzLvRzenzQK11zh3JV8Jl6sf+uNcUfEzZBseV5ws84bG5zH/YJYgo1V06WQ1/2Sx1OD3Lg2y92jDk4mJ6epanFeTn5Fatzi/irbsXxoYUtx/9OB3NquKH1au7DIBSr2bbmUquu7oTGuQyVPo5G8/aSeYG3U8iPPC18PdldRyHTtIYV0LCm2hgxDdOQffDEiA6V7kpLCv+mot7Edn9QSsNLUeUlFEf5UyHkws/fv+YLEmitfru2EHcHA5syCpJNngGqhjKhmxplW X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?IhR0ADVra7BHwtOwwYqGWpYRTHCQDu0LN+vCx3JrsJnDA2bbCinl6fOTXmgN?= =?us-ascii?Q?pTkRjkzXYcPSrrCC9BhlB09Trp0SgfXXnap8ivmJsYTawFQabjbKGEF9j518?= =?us-ascii?Q?OKRvXuzF7UblKTj6EoHi7KndsS5IW/jAV4UCXF3499ixRYZk3YhmB+omKPEv?= =?us-ascii?Q?0bLelKIsKpCrggJoEuCP/LYJwuJ5lzwpTqZ1GGfrtrfCWLFcO6IllyDs/LXr?= =?us-ascii?Q?bVG9/PZIMqM8wm1D9n6L0xmwmCScbgQ7EYlvZiWWzxeTMHfByPNLYesr1nPr?= =?us-ascii?Q?46373Qy5nESgnGkxqHgBD+KQC7/VugkpIYtiCS3MfJz9815QpYtJ1raBe8pa?= =?us-ascii?Q?/AcnqpAj5tkMh0halLOnl2HeQuhHA3Cuo7wllJFJKivvRU3LCQJH9WgD/WZd?= =?us-ascii?Q?T3TDXrRCQD1c4rkKV8g4srcwQn1L7BUn6Ig9r+bzgwT76iSNZRgQ6lWsbR0d?= =?us-ascii?Q?aivLA3vd1iaRrA1dcNaNsOMK2eva6bdlnX5WM1BNd5gWeBgseaWpI9t5cbEN?= =?us-ascii?Q?aXKafB6e7syio1Rcg5PmnzOKWl1qbnh8dx4pv7wgYfeFvd+aWdzejroV65ZM?= =?us-ascii?Q?FumcjZ0GceFHYQdo4fZD9kAG8ut2BX2x3WSHd7Wnp+Y2fF2f4N1u/pdbxY4a?= =?us-ascii?Q?KOqmUXCN8J/XTdcUb+nL7OhuAW5wZlOWhnCmGES+O+4qzkzmZRk61pkih5dH?= =?us-ascii?Q?q8gsHC10UF3gLAf5S8YZ2c6rrjv4DZ7/eQvcdLs9nGYy/GajwOHXuM9q74Yd?= =?us-ascii?Q?qxyduFsJEFJd5xNghvxFjNupNpX18dFgdTTqEhoZtvCL1LtQnn7nbuhi1mZ0?= =?us-ascii?Q?LFs9SAXtP1ebxX/uQ6+ZRGMutwAZ63EdqE+TQ4yXj18ck70PPa96fqE1Thch?= =?us-ascii?Q?fgJehfzDXTc2voTc3s5X1hjiCa+hxvu2+qBRLIvqRn66VlOFSCxpoerMo8lw?= =?us-ascii?Q?JSfGkZUx8CweyYj69j0roDVN4Oq/uQ8faL98m21sLq9kI7yv+u4cDRm3OpnQ?= =?us-ascii?Q?9Cozyt7BRcvt6tKP1qzEYM/IR3yVbvAf4Jaec5QQWF40HIeIIZmymttBAtHV?= =?us-ascii?Q?svQHZ2kYywTv9y9BOEd/2EfjcleYBosBr9VJmBbqpenEUgeq7WaJy+OqMGNf?= =?us-ascii?Q?dfkNB71bdSUwKNx6jX6KqaarkiyS2cCiSLqGn4M3G/QEjMemwNdIFbpdt/ff?= =?us-ascii?Q?ml0jpB/KkzRJXcL8+jt6BEL2UULEQKdQIKrVnOjXIKTkauI4FQK0fkFt/6VW?= =?us-ascii?Q?3TmA3G97OVktZhwYYFfz?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ec27e52b-2e76-4858-71e7-08db97fe7d88 X-MS-Exchange-CrossTenant-AuthSource: TYSPR06MB6433.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Aug 2023 10:59:09.0637 (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: SEZPR06MB5692 Subject: [FFmpeg-devel] [PATCH v2 7/8] cbs_h266: H266RawSliceHeader, expose NumRefIdxActive[] 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 | 1 + libavcodec/cbs_h266_syntax_template.c | 41 +++++++++++++-------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/libavcodec/cbs_h266.h b/libavcodec/cbs_h266.h index 87a2d02cfd..3a6f6d96b5 100644 --- a/libavcodec/cbs_h266.h +++ b/libavcodec/cbs_h266.h @@ -833,6 +833,7 @@ typedef struct H266RawSliceHeader { // derived values uint32_t num_entry_points; ///< NumEntryPoints + uint8_t num_ref_idx_active[2]; ///< NumRefIdxActive[] } H266RawSliceHeader; diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 501c066faa..b26d7c1a72 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -3191,39 +3191,38 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, } else { infer(sh_num_ref_idx_active_override_flag, 1); } + + for (i = 0; i < 2; i++) { + if (current->sh_slice_type == VVC_SLICE_TYPE_B || + (current->sh_slice_type == VVC_SLICE_TYPE_P && i == 0)) { + if (current->sh_num_ref_idx_active_override_flag) { + current->num_ref_idx_active[i] = current->sh_num_ref_idx_active_minus1[i] + 1; + } else { + current->num_ref_idx_active[i] = + FFMIN(ref_pic_lists->rpl_ref_list[i].num_ref_entries, + pps->pps_num_ref_idx_default_active_minus1[i] + 1); + } + } else { + current->num_ref_idx_active[i] = 0; + } + } + if (current->sh_slice_type != VVC_SLICE_TYPE_I) { if (pps->pps_cabac_init_present_flag) flag(sh_cabac_init_flag); else infer(sh_cabac_init_flag, 0); if (ph->ph_temporal_mvp_enabled_flag && !pps->pps_rpl_info_in_ph_flag) { - uint8_t num_ref_idx_active[2]; - for (i = 0; i < 2; i++) { - if (current->sh_slice_type == VVC_SLICE_TYPE_B || - (current->sh_slice_type == VVC_SLICE_TYPE_P && i == 0)) { - if (current->sh_num_ref_idx_active_override_flag) { - num_ref_idx_active[i] = - current->sh_num_ref_idx_active_minus1[i] + 1; - } else { - num_ref_idx_active[i] = - FFMIN(ref_pic_lists->rpl_ref_list[i].num_ref_entries, - pps->pps_num_ref_idx_default_active_minus1[i] + 1); - } - } else { - num_ref_idx_active[i] = 0; - } - } - if (current->sh_slice_type == VVC_SLICE_TYPE_B) flag(sh_collocated_from_l0_flag); else infer(sh_collocated_from_l0_flag, 1); if ((current->sh_collocated_from_l0_flag && - num_ref_idx_active[0] > 1) || + current->num_ref_idx_active[0] > 1) || (!current->sh_collocated_from_l0_flag && - num_ref_idx_active[1] > 1)) { + current->num_ref_idx_active[1] > 1)) { unsigned int idx = current->sh_collocated_from_l0_flag ? 0 : 1; - ue(sh_collocated_ref_idx, 0, num_ref_idx_active[idx] - 1); + ue(sh_collocated_ref_idx, 0, current->num_ref_idx_active[idx] - 1); } else { infer(sh_collocated_ref_idx, 0); } @@ -3233,7 +3232,7 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, (pps->pps_weighted_bipred_flag && current->sh_slice_type == VVC_SLICE_TYPE_B))) { CHECK(FUNC(pred_weight_table) (ctx, rw, sps, pps, ref_pic_lists, - num_ref_idx_active, + current->num_ref_idx_active, ¤t->sh_pred_weight_table)); } } -- 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".