From patchwork Mon Aug 7 14:55:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nuo Mi X-Patchwork-Id: 43160 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:9329:b0:130:ccc6:6c4b with SMTP id r41csp1657008pzh; Mon, 7 Aug 2023 07:56:19 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG5+AG3S3844quxFRvAW3ea8g75L10+4NUsMZPvY6g19hH770P6sWmFkT1iSun24y6WihrE X-Received: by 2002:a05:6512:717:b0:4fe:df7:bcf5 with SMTP id b23-20020a056512071700b004fe0df7bcf5mr5758540lfs.8.1691420178955; Mon, 07 Aug 2023 07:56:18 -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 i19-20020a05640200d300b00523268929e6si4095831edu.346.2023.08.07.07.56.18; Mon, 07 Aug 2023 07:56:18 -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=oUghWFxj; 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 CB37168C60F; Mon, 7 Aug 2023 17:56:05 +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-sgaapc01olkn2074.outbound.protection.outlook.com [40.92.53.74]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DA66468C5F9 for ; Mon, 7 Aug 2023 17:55:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j3ppd1ZnIJSsBRxy9Jt0n480MXIrFDt+OyekFhcR1nlDK1YwJOVins7qlfzhikQFEXMr6lBq+wNDd4gAp3p4OmLt1FLFA4DYmiiBFUhvdQELqVmHj9ghKRlaett0Gm7MmIHP9BE2XJzCW+N4cPI6WlVcZ87ySeISd7EgZ1/qAQEgjDZlDnCBMvonw6hW/lboIl+TnUMDitxBh8kfCHCPhvXSaCXhKpFsvNUCw7/JnrgrMuezZQugtxFihr/Tet/PFfK5uDSjkicdp84iY7f/eB99Kgsv27fxNsNQo0RBAnCi1PMcKracb4rP+ABi+U/EHqD2zR7vN/QjUkWN9bR4Xg== 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=NCzptvLDVT+l4mKvvClh5ST88xCHaOjCLWHoE5mZ5fs=; b=TMVyP8aABOKCQDfkAs9BmqjL6dadmSC1nEn+9IrupZMiN/tgvbsEpfv+piAa3meVno1w60LHKTKudFR/9RL0KYFTj8aPTKFh6rEdhMloMLS0Fn8FdQv/35y1YtUF4BwDwEI6zsrdYGIqcZWeEdLv5Q0YI+HuwXgJjGmXe4ZIviqiicvXYjOpJHTnOuv3lCerplnUFmkVxpLmR2WrHNqaXwnKFee1eVFZFSJYNH8G1pdEkxDKqWQjwtSeX9yt1jFbw5iV9y2zEQIDjwLsnBcD+awXv9aVWZr+xlHEkzHRf2bSrmtsTngW+3w38h2zdBakNWMoVxZDNabiI42lxK/goQ== 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=NCzptvLDVT+l4mKvvClh5ST88xCHaOjCLWHoE5mZ5fs=; b=oUghWFxj7JY52BD/mAQ39zaKeC7oF+XfPrnDa5MYtz6+tScGuoSLWAfMjbhO1TNYwJNnxX3Y2QLbwwBUMoJuAddI5EMaZfZ0RT6fTvIxNA9l1LYlYyUDc2rmCo/BIVXufZlUMDjFLsPxk61R/MHbRdp2Gn9JZlePRZMCTS0QcGNb0N7nzJ0KupJmAYV8ar0CMUfAs8xEi4u977EroSq/F9UG9BK16qUH4PSd9hmhj2LNgmv/PC9O2ivF2hMUELwB+nyqpCh0ov1/Z5s/UzdgGWeY+dNA3m9ieVinHCK78PrkYagBSDPzDDJBm33vRxn4NwM3c48pjJF8q64SuLTfiw== 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:46 +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:46 +0000 From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Mon, 7 Aug 2023 22:55:28 +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: [uwD53WsIRWy2Vxqvep+ZBbjAISgb+Fg7] 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-3-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: 991c8c48-dc38-46c6-3b37-08db97566176 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: R1SIZkF0QA8hAwB/1hDglLnwhnMM+QuuGYYOX8PcZn6UoyUF73ouvwCF4wEwJ/W+CTY1L9fKsh6frdgW1fOT42sD+BY1VTM/MzZCehrN2WQOJwDIslQUhyMYj1QHDRNAUB048DgH3/7UU9p2K1Ds92l7ZifkwNUps3NtZfPhGa3pWZAb4g0FZ+A3N7neHzgZROf4MucdIJiRY7b3DLo6p1Gb5rO/5mtR0TrTUxK4P6WKUQcYJkL4fNBgPnmzNOCeO8xelkRAgG8zjanAHV2d9m3Pw/t+fW+6lEISieroIs58n2Xc8iBi12aDBMo/Yrn6MAXxHPHYHpWM6CrPVnwwf5I5YWQBb1p0/L2Po10bMARsu1TqtpS+QW4enrjaRBQU3O2oUDzgkw12kVP7kfUBfdkwe4/4ufbTv6bkfB4xgso/9mjddnsjk9JGOGI0TVnTmDeweK7P1LAnqkt0m/aUu3YNvfCcfHj34AAo1SqJGmOMt1XDV85PrVZnxzmCHL3Lfhyi6RQ4ojqRrWIXi5kH48xfxd4yJdMhQIKBA2hbS2+nq12TP+lnRaRkacOHIsWxG17g3bSgrUgAWvl0BBXkiDYlGw/PNMuwUIA7OS4Dok3d3rTWKG130pV56Ux5YxG5 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: aROaDJgK9AaUYEL6/yCDCQ0dB3MoziM4nfXAnqFrtgjJRj20yP1X0IQYVvix/7JMiLSXO2RgaUx+a8HcU9GR9cAvn9A+gOPDAmYZ+TCxae/JbsUH3obGs6Ua8x/VBdxq1nva23TVr15EQIDNFrXbXrZHn1CFDQeTsZ7LJ1YA35MCG1klJhDoBkGc60/E8CKiG+YwC6h85RVSfAl//gRlxvcrbtJNUqQTAQSRrCDdxvfY8m5r0vDttCI7V3MItup8yLGzTezY3KEWs4gE7NUvV6eUxvMLbquMwPzooEswQYRqullv4Snwb2DSxFrnev3QQ/9xd8vtwpTRCbydZpEBBpLlutkr0BHTyX2/19zpqlH+clclW0Ak5T7jiVNnFFNOkPq2VwY5LLUco7CISR2spl1Nsr175XlnyLsRF+AV85aQklnPECf3cX25xBOSGixhj6YDwznw8Tuq36Fnk98jH14nxMlrG9dqecUzcNodPGbIxMHY9dBmCx//xONBeIleldjNuKy/58dbDgw6PiOsoHwnKm1YoyBLbIyXgAPKm9gx6DwH60pENro4+otBpMEw7voSXKHyUSO/SLr6AVUIoHLZAq95VDuuZ8Y2KT+S5+wumDmS/nQfDYUTbs63U60yTi6fcZ6bOl6z9qwl4AV+h/SP7H2HWfL3wQNkWb9u1kdSNrvHKDDL2SoOBAVn+i0YF0186vy97CtRbR98OuDKVCAyOvERQRwcFQLZJfXvZWcvQqMPiR3+E5yOExIpqzPHTJgFg7ye0s6QriBFcQFe9qZm0iNQrtnGkHPm7XpRT5I8yLMf/GF77uRzs9tsEKt9Qt8FY1dOe0NloUcdjRch6oUetcgfpvx5HFjAG2crNIhbU/PLcZCFY1LmQpyNx8NuOF7StEUkvQrzQ+MWPWMNX6EmIg58tmBh4h4F+kMT5vSKUxopiXlNIzjtcAHkEH+0bJJ4WbjywE12qzuWbfBXJ5Ekjt5aPyaGMg1kPyJ1Pd41WWA8Ux6LWFThjCvKz7u6OWcwSWW6QtgQtr4bE2KdYhZWd2oXYmBFEuE04PrvmERcwHd2FHD9m+1yspZfJdc8ku8yxlhdMuWlc2VE51qu5POGAJZpzvDa2JxvL6fvF4/MRuhk+pxyqVC8GbJaElJHOwO6XxkM7DPNi/Z/Hv4tj+lViggDKzgRYEnOXgx0u2O/UjSJReBxj5oUcoMlAe8QavZo6pJEV4SJyI1M7c02wOYsv+1XEqQ48ipbz075BftZUw0T0s/pgyRARBj4xu0m X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 991c8c48-dc38-46c6-3b37-08db97566176 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:46.4146 (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 3/8] cbs_h266: fix inference for xh_deblocking_filter_disabled_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: 94YZYfwj5c/l if !ph_deblocking_params_present_flag is true, ph_deblocking_filter_disabled_flag infered from pps if !sh_deblocking_params_present_flag is true, sh_deblocking_filter_disabled_flag infered from ph --- libavcodec/cbs_h266_syntax_template.c | 76 ++++++++++----------------- 1 file changed, 28 insertions(+), 48 deletions(-) diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 801feedb4a..7277154c40 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -2938,20 +2938,14 @@ static int FUNC(picture_header) (CodedBitstreamContext *ctx, RWContext *rw, infer(ph_sao_chroma_enabled_flag, 0); } - if (pps->pps_dbf_info_in_ph_flag) { + if (pps->pps_dbf_info_in_ph_flag) flag(ph_deblocking_params_present_flag); - if (current->ph_deblocking_params_present_flag) { - if (!pps->pps_deblocking_filter_disabled_flag) { - flag(ph_deblocking_filter_disabled_flag); - } else { - if (pps->pps_deblocking_filter_disabled_flag && - current->ph_deblocking_params_present_flag) { - infer(ph_deblocking_filter_disabled_flag, 0); - } else { - infer(ph_deblocking_filter_disabled_flag, - pps->pps_deblocking_filter_disabled_flag); - } - } + else + infer(ph_deblocking_params_present_flag, 0); + + if (current->ph_deblocking_params_present_flag) { + if (!pps->pps_deblocking_filter_disabled_flag) { + flag(ph_deblocking_filter_disabled_flag); if (!current->ph_deblocking_filter_disabled_flag) { se(ph_luma_beta_offset_div2, -12, 12); se(ph_luma_tc_offset_div2, -12, 12); @@ -2970,25 +2964,19 @@ static int FUNC(picture_header) (CodedBitstreamContext *ctx, RWContext *rw, infer(ph_cr_tc_offset_div2, current->ph_luma_tc_offset_div2); } - } else { - infer(ph_luma_beta_offset_div2, pps->pps_luma_beta_offset_div2); - infer(ph_luma_tc_offset_div2, pps->pps_luma_tc_offset_div2); - if (pps->pps_chroma_tool_offsets_present_flag) { - infer(ph_cb_beta_offset_div2, pps->pps_cb_beta_offset_div2); - infer(ph_cb_tc_offset_div2, pps->pps_cb_tc_offset_div2); - infer(ph_cr_beta_offset_div2, pps->pps_cr_beta_offset_div2); - infer(ph_cr_tc_offset_div2, pps->pps_cr_tc_offset_div2); - } else { - infer(ph_cb_beta_offset_div2, - current->ph_luma_beta_offset_div2); - infer(ph_cb_tc_offset_div2, - current->ph_luma_tc_offset_div2); - infer(ph_cr_beta_offset_div2, - current->ph_luma_beta_offset_div2); - infer(ph_cr_tc_offset_div2, - current->ph_luma_tc_offset_div2); - } } + } else { + infer(ph_deblocking_filter_disabled_flag, 0); + } + } else { + infer(ph_deblocking_filter_disabled_flag, pps->pps_deblocking_filter_disabled_flag); + if (!current->ph_deblocking_filter_disabled_flag) { + infer(ph_luma_beta_offset_div2, pps->pps_luma_beta_offset_div2); + infer(ph_luma_tc_offset_div2, pps->pps_luma_tc_offset_div2); + infer(ph_cb_beta_offset_div2, pps->pps_cb_beta_offset_div2); + infer(ph_cb_tc_offset_div2, pps->pps_cb_tc_offset_div2); + infer(ph_cr_beta_offset_div2, pps->pps_cr_beta_offset_div2); + infer(ph_cr_tc_offset_div2, pps->pps_cr_tc_offset_div2); } } @@ -3321,9 +3309,7 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, if (!pps->pps_deblocking_filter_disabled_flag) flag(sh_deblocking_filter_disabled_flag); else - infer(sh_deblocking_filter_disabled_flag, - !(pps->pps_deblocking_filter_disabled_flag && - current->sh_deblocking_params_present_flag)); + infer(sh_deblocking_filter_disabled_flag, 0); if (!current->sh_deblocking_filter_disabled_flag) { se(sh_luma_beta_offset_div2, -12, 12); se(sh_luma_tc_offset_div2, -12, 12); @@ -3340,22 +3326,16 @@ static int FUNC(slice_header) (CodedBitstreamContext *ctx, RWContext *rw, current->sh_luma_beta_offset_div2); infer(sh_cr_tc_offset_div2, current->sh_luma_tc_offset_div2); } - } else { + } + } else { + infer(sh_deblocking_filter_disabled_flag, ph->ph_deblocking_filter_disabled_flag); + if (!current->sh_deblocking_filter_disabled_flag) { infer(sh_luma_beta_offset_div2, ph->ph_luma_beta_offset_div2); infer(sh_luma_tc_offset_div2, ph->ph_luma_tc_offset_div2); - if (pps->pps_chroma_tool_offsets_present_flag) { - infer(sh_cb_beta_offset_div2, ph->ph_cb_beta_offset_div2); - infer(sh_cb_tc_offset_div2, ph->ph_cb_tc_offset_div2); - infer(sh_cr_beta_offset_div2, ph->ph_cr_beta_offset_div2); - infer(sh_cr_tc_offset_div2, ph->ph_cr_beta_offset_div2); - } else { - infer(sh_cb_beta_offset_div2, - current->sh_luma_beta_offset_div2); - infer(sh_cb_tc_offset_div2, current->sh_luma_tc_offset_div2); - infer(sh_cr_beta_offset_div2, - current->sh_luma_beta_offset_div2); - infer(sh_cr_tc_offset_div2, current->sh_luma_tc_offset_div2); - } + infer(sh_cb_beta_offset_div2, ph->ph_cb_beta_offset_div2); + infer(sh_cb_tc_offset_div2, ph->ph_cb_tc_offset_div2); + infer(sh_cr_beta_offset_div2, ph->ph_cr_beta_offset_div2); + infer(sh_cr_tc_offset_div2, ph->ph_cr_tc_offset_div2); } }