From patchwork Tue Aug 8 10:58:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nuo Mi X-Patchwork-Id: 43171 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:9329:b0:130:ccc6:6c4b with SMTP id r41csp2186834pzh; Tue, 8 Aug 2023 03:59:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGZO8MuU8IL4VfwQCyvgQENGq2KBWV9SkspuhmgXHr4ghccr1V6jiNDGw7D1DZMH08EKRoT X-Received: by 2002:a17:907:2c42:b0:98e:2b01:ab97 with SMTP id hf2-20020a1709072c4200b0098e2b01ab97mr9082354ejc.68.1691492380350; Tue, 08 Aug 2023 03:59:40 -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 h8-20020a170906398800b00993690d17a2si7405186eje.5.2023.08.08.03.59.39; Tue, 08 Aug 2023 03:59:40 -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=@outlook.com header.s=selector1 header.b=Xzg7X6AN; 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 115FE68C7A4; Tue, 8 Aug 2023 13:59:22 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org 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 CFDDE68C778 for ; Tue, 8 Aug 2023 13:59:14 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UF+XFWHjHB6iOjoAmUKbk4SWwzNzhjBD/ywvuzoKUdFrIeQOG9cBwVqouMLA0pOE6JGs0lN/c3gU42ve/ADqqsHxs5yAF4v+R23dWlALPH9zzluN2hq85rRiQTYys9xQ3UKgDwwLjAsf/0l//aVtsBy9bJlFbpI3pKZIttg9D+foAPrLBa7VB7E7FESBkzI6U/iZgG4rupbt2fxSDc2q1v0uHTcwwemCiGwKORY/OiDy2ZBIzbhVgebM8sMHjZqHr7qPLBE310SwI4JaUPBt4TgFCIN90fo7UMa4Pzk7/aXM6L1ZO63CX8Xszj3FVIvqm/dSDTg54y9Q3RaAewG0Nw== 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=JL20fwawyHQU5BLkYlUj7UBCkj8wnwB4Gh4Vs1Qkn40=; b=Dre2xG7StBul/xLxvNg/aQuLNmrwhrBB3YXrsFM2KwB9qb616ePGrbENgukG/w1vvVdVAmALimW7aKLFA+aeejHp376nvcV9U8biXWNvIB1ORMI1Ufmchew615hyPptrwNcn36QpAj9JbiQqbnJbKuLKXvYT47d4Zg6qzzCFRmnSbpG70D9sXSeQICk7s4v5K4R/0ndDTz08yLzWPmYIrKeBkN3/szWcIk7gxu7boELdYLBYWNtgHUo5e+aOpie+R3b2pXRfWTILoX/ZY3YhRes+8YgM7nNFc2yWWknLctPECUfOF5yXgppWskOCJ2S9Y7/9mP9KsDYqVD5lJI5beg== 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=JL20fwawyHQU5BLkYlUj7UBCkj8wnwB4Gh4Vs1Qkn40=; b=Xzg7X6ANKAgjSWj89JCVE+c0ioV1sE5BZzHf9QdzY0OT/y0ZN5U4QJFY7Oj03pFdcRRcxEdCa7adrM6XLhmRdqlUYHjLAF44nThCYonRLae7dkSwX3T+gvpORJl4bmFZ3MY0zjK2Q3NGXzyKserUmvQ12OHQzRfs7dbpZQLRGEMFAaQOEgnb+RH+7pP2vnA2vOviu6diHlkloJt5OhtacshjMlh4jK/kYCbKi7qpIKjkPIMckUibqF/TlF6urg7lzhecrUueoVBXdK0JIBV+4/3B+t25F+R128ndbhEybGveLBgBVICkuPjGUFDKsFCrWjvC5/5VQm385NY9WY3IaA== 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:04 +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:04 +0000 From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Tue, 8 Aug 2023 18:58:57 +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: [30By9rg4OIiFRZV+yz1wyweqJafFpgvS] 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-2-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: ff06f20c-ba41-4ec6-7cf3-08db97fe7ade X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3+s4+qbIMf+4f5rwtOZg/0ko/upZj4t6gyqSumYUChIcY4qlZ2aFaKRCMfh6oJwq2ICbtGtZKLUD746gbEddYjaOq/+2hobnQua6FrDasRWX8P9eOjBIzpNAIpi0lm7wzKoQCJZjKeq6bdcYXFoWat5I5lZRKMCa+evjRjluwFtoksKXvMTp1QS/FPJkhlAyU+xZFwIeRCQOGFO+uy3JgFh18cczDwpZA3dZIx6uXwiDcn6/pWf1pQPs9QmQtd8OlUj7SjvaI0LthogARVN8I/1aPu+u4FQdojB+EemJ4s0OeDLS3QXpZ34K1kHM1vlhKvXyaOJNb9G49MIf6edlZGh6WNJEYXtWK85FALgu6fnVrxS/feWNPrJQq84Wo2J17Vi5YWhl4EYUfU84RmX2i2gTLS9TwBUDf2ur/Rq29EDXu7mBirAXSepz3kfR9tm/XN46f3uFtTTj7PcZGB6xOB/Bcs+HSjnV38+aqueTfooAvyokSFXME5DJHMNIUsJxDJ3/hgebgQ3e66yBExalfjfRBu49caMIgkd91R7xdYLSRUuMdx6kt6gGQMo+cxpFh0xwdPKN9dfDu/k23HICS8F+iAGqSmNFa9mHIFgFyaxXlBTY7ppV06L3YFeXNGKw X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 5RIql0ex/1RHAb/Ndvt6tFvWRM8ZsDqnzRTMGjnXHg53YGUKR0GwZPT6U021zUX+ZXJs9A6eRqO4//eCtT/RxYbgeVLB7EpPVKQaB/OTYkSYu/J0NdBKxZDv2lgEzIkd6oeG+IkhhLXMwULUbfW+awT9tSw85Lmw5D+KGqPsrBAD60lB4kv7Z2HIvFOkZ3lJO2McM/ghAewNYcDjyXxBXjJrXTu3UgvA/LR1Q6bH9phBNw55IS5agTmOKsxqESC0DO2VuXnSyAl2TkMF7dfg48gNPGrqbffVY6ymHVYuhGWQWMkTG8v1GisAf5gsNTGwzJ+E4cqp3mPCrmS0iaWvV/c12XaOzcHWDFTxSM2vf2y8cWde9d7OcmJUnS0ix9S46Ka5quyoH9udpCsdEcFziTpn1uOF2v8V1JmmKdSE81D4HqCP/Kyfpv26wwuArNWEaGmaDNSYzSyYN7ulAqGpU192CS+Ren4YtXMdAWHpRmKBQqAilRmR1Z31fFB/WyUh0i1GliUmV/x1TbfjfFAyqUsrLJNRUuClZK64YrPuL+PYogU9eZqs2vEcAA/smShUylbMVLQDO54ahSwAjs+fCQSEoY908wdqi/uRz0J11U8XcsX5ZApn9w5W1KJG4A5T4z/WKPtIyUFVINP3MkzfVJbthhStv2KGNjJ0i3KmADA17BwJE1sO7ksPWsiDyAEmtAzwQAkDf+E5pT13fbHLeamEJowTxaMvbf1jwny0ADea27aE8thg+mSTxtrVBc9APy+hrieRoDLU9LpVhYDfDAatFsuekUNJGaveTAgZRWArgJloBSc3E4+4YfnG0CUhQbY0H7rlwKhjjPds9berQXuq83pyuiPhSXTYqPpjh/bXxOIF0JW1iFxPDa8X1LiMtmX1hAwvqR0Lvvski9RIeq2OFpXNEtRFjJaOvQ0XXZsprJk8dlwL+FKv+0m650QTpArwq57Xa4DFVVWUkp2WfeWGA3R9ltM9PjJFLCI1h9XKsZiAzvRUylueORtJkz539NQ0rbanhMAhC0VK4EPtL4tvXHTFKkdPOzHP0Q9LzQUBQC86YNpIlDgP36p//0xbT7O+XReQ4v9NMyb2N2uGYLA6oYGAAeiBeLCP/VcycOdTeZrhoqlIDf6NOttQxzeRoFZmgV6o2+zaRlhpNtDKWMDaD2+LuKduKg8xVbn1jcZ2jOVi7f26llAPAxmX1IxSaBUVYf+u9Vkwl0M9Aa4hbYv9xNLBU63WBllMOj9I7UlB+6/6hju/tzFBgbb45MhL X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ff06f20c-ba41-4ec6-7cf3-08db97fe7ade 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:04.4902 (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 2/8] cbs_h266: fix inference for sh_alf_enabled_flag 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: B1JXB2LHia6E if pps_alf_info_in_ph_flag is true sh_alf_enabled_flag infered from ph Failed clip: LTRP_A_ERICSSON_3.bit --- libavcodec/cbs_h266_syntax_template.c | 81 ++++++++++++++++----------- 1 file changed, 47 insertions(+), 34 deletions(-) diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 857882655b..801feedb4a 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -3111,44 +3111,57 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, if (nal_unit_type == VVC_IDR_W_RADL || nal_unit_type == VVC_IDR_N_LP || nal_unit_type == VVC_CRA_NUT || nal_unit_type == VVC_GDR_NUT) flag(sh_no_output_of_prior_pics_flag); - if (sps->sps_alf_enabled_flag && !pps->pps_alf_info_in_ph_flag) { - flag(sh_alf_enabled_flag); - if (current->sh_alf_enabled_flag) { - ub(3, sh_num_alf_aps_ids_luma); - for (i = 0; i < current->sh_num_alf_aps_ids_luma; i++) - ubs(3, sh_alf_aps_id_luma[i], 1, i); - if (sps->sps_chroma_format_idc != 0) { - flag(sh_alf_cb_enabled_flag); - flag(sh_alf_cr_enabled_flag); - } else { + + if (sps->sps_alf_enabled_flag) { + if (!pps->pps_alf_info_in_ph_flag) { + flag(sh_alf_enabled_flag); + if (current->sh_alf_enabled_flag) { + ub(3, sh_num_alf_aps_ids_luma); + for (i = 0; i < current->sh_num_alf_aps_ids_luma; i++) + ubs(3, sh_alf_aps_id_luma[i], 1, i); + + if (sps->sps_chroma_format_idc != 0) { + flag(sh_alf_cb_enabled_flag); + flag(sh_alf_cr_enabled_flag); + } + if (current->sh_alf_cb_enabled_flag || + current->sh_alf_cr_enabled_flag) { + ub(3, sh_alf_aps_id_chroma); + } + + if (sps->sps_ccalf_enabled_flag) { + flag(sh_alf_cc_cb_enabled_flag); + if (current->sh_alf_cc_cb_enabled_flag) + ub(3, sh_alf_cc_cb_aps_id); + + flag(sh_alf_cc_cr_enabled_flag); + if (current->sh_alf_cc_cr_enabled_flag) + ub(3, sh_alf_cc_cr_aps_id); + } + } + } else { + infer(sh_alf_enabled_flag, ph->ph_alf_enabled_flag); + if (current->sh_alf_enabled_flag) { + infer(sh_num_alf_aps_ids_luma, ph->ph_num_alf_aps_ids_luma); + for (i = 0; i < current->sh_num_alf_aps_ids_luma; i++) + infer(sh_alf_aps_id_luma[i], ph->ph_alf_aps_id_luma[i]); + infer(sh_alf_cb_enabled_flag, ph->ph_alf_cb_enabled_flag); infer(sh_alf_cr_enabled_flag, ph->ph_alf_cr_enabled_flag); - } - if (current->sh_alf_cb_enabled_flag || - current->sh_alf_cr_enabled_flag) - ub(3, sh_alf_aps_id_chroma); - else - infer(sh_alf_aps_id_chroma, ph->ph_alf_aps_id_chroma); - if (sps->sps_ccalf_enabled_flag) { - flag(sh_alf_cc_cb_enabled_flag); - if (current->sh_alf_cc_cb_enabled_flag) - ub(3, sh_alf_cc_cb_aps_id); - else - infer(sh_alf_cc_cb_aps_id, ph->ph_alf_cc_cb_aps_id); - flag(sh_alf_cc_cr_enabled_flag); - if (current->sh_alf_cc_cr_enabled_flag) - ub(3, sh_alf_cc_cr_aps_id); - else - infer(sh_alf_cc_cr_aps_id, ph->ph_alf_cc_cr_aps_id); - } else { - infer(sh_alf_cc_cb_enabled_flag, ph->ph_alf_cc_cb_enabled_flag); - infer(sh_alf_cc_cr_enabled_flag, ph->ph_alf_cc_cr_enabled_flag); - infer(sh_alf_cc_cb_aps_id, ph->ph_alf_cc_cb_aps_id); - infer(sh_alf_cc_cr_aps_id, ph->ph_alf_cc_cr_aps_id); + if (current->sh_alf_cb_enabled_flag ||current->sh_alf_cr_enabled_flag) + infer(sh_alf_aps_id_chroma, ph->ph_alf_aps_id_chroma); + + if (sps->sps_ccalf_enabled_flag) { + infer(sh_alf_cc_cb_enabled_flag, ph->ph_alf_cc_cb_enabled_flag); + if (current->sh_alf_cc_cb_enabled_flag) + infer(sh_alf_cc_cb_aps_id, ph->ph_alf_cc_cb_aps_id); + + infer(sh_alf_cc_cr_enabled_flag, ph->ph_alf_cc_cr_enabled_flag); + if (current->sh_alf_cc_cr_enabled_flag) + infer(sh_alf_cc_cr_aps_id, ph->ph_alf_cc_cr_aps_id); + } } } - } else { - infer(sh_alf_enabled_flag, 0); } if (current->sh_picture_header_in_slice_header_flag) {