From patchwork Fri Oct 4 14:31:15 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nuo Mi X-Patchwork-Id: 52052 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:938f:0:b0:48e:c0f8:d0de with SMTP id z15csp654018vqg; Fri, 4 Oct 2024 13:29:05 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUy6g7kp6j9wqEkDrRh1rf0kKmyNDLR4boDFQjmP8bwHah7aSXk8L5fbelYlfKDEimjw9zYb2fe3wcFfBBZA0W8@gmail.com X-Google-Smtp-Source: AGHT+IHb4n1niSQLxKAYtYTqv43Q1zYmBvxjZYSbYz1oAaDWHgNhPCaVj7Nge5rbimZWqq9vFX7D X-Received: by 2002:a2e:6111:0:b0:2fa:c528:1ce5 with SMTP id 38308e7fff4ca-2faf3d706aamr27618611fa.35.1728073745029; Fri, 04 Oct 2024 13:29:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1728073744; cv=none; d=google.com; s=arc-20240605; b=ff0ljBSMZ1YOHmLfIYEKPQlxmnfg7R39sQIxPPs9LkGyUfxfdGuycvaLyYoRCDI3zL nMyT3pACXibneeMSQ6D+y8xkiqADZqPg4+6tz6lBc6XsOfsbuWc5Lm3/rK5M2wAyj6Cm 0JwOLyRxOzVKwhin1btWiVJH2ob3z7Iavjjitlz6TTepsSvWaHoOz56ZpU6sTf5pxNOU ZjyLODF0ESKfPj9e5TBuzUJvK4aVkcbVw+7Rlo4NBtctzXEmRhtDkQ4NBhJc+3FbZqzp 9f0kycodzh60JlcCULHh4/sbb0MgJA3WRftylP7bCQ0SLN+EU0R0UefTHSLn5zdxU2lh mFZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:delivered-to; bh=c9qN0For+IWUpJsBmjRmsG1npBdWwQudk31Dx5dwrLY=; fh=mZk9AfRmPBMGW9h158yccPeJgZmEjzU2tMQtLZcF184=; b=joPDl4kThYUpqyUEAauUlvGG5qK2bd5pa60hklYfI+OR726Nxr/IzEjBig7sb3gcw6 XpXAqZUH9ql2nUFegGBlcRkRjxeHlLfUX2n5d9TO4+lAgkGR1FfQc6PRYyeiGmBJmO6j mz0ecm9XOwFChD/YR7AdNpq2UY9j3dwolDi9V+u4Fp1Il1/tj2jZhc5QPBO1ZnfQg/9U BS+T7QONXfVVrOkpYO7z14xcxo4CTjXJWaP/23YSW5KVvfiqn4tI676v2hB0OQdNiMiP B/Oj/dhN0O1C0Lpl2IPM63oYoFoBvWsFlMV3klLklcAa7lRJsYeCmYSceSPyoWcDTJzd bomw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=YGeFD9Lu; 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; dara=fail header.i=@gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-5c8e05eff56si304759a12.350.2024.10.04.13.29.03; Fri, 04 Oct 2024 13:29:04 -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=@gmail.com header.s=20230601 header.b=YGeFD9Lu; 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; dara=fail header.i=@gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 309C268DAEC; Fri, 4 Oct 2024 17:31:48 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2483468DAF0 for ; Fri, 4 Oct 2024 17:31:42 +0300 (EEST) Received: by mail-pj1-f49.google.com with SMTP id 98e67ed59e1d1-2e053f42932so1638326a91.0 for ; Fri, 04 Oct 2024 07:31:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728052300; x=1728657100; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yIOCY6GzLu4GsW/KM2zcCkt02keBpevgorLHbZPHBfk=; b=YGeFD9Lu1P9vFHG7qtXEseTLTypfqEWfxsdY3dxRMJicYVJVNYkRanUA5QyxQYHSir gO/FFwFELlI+2YmCs9Mo2p42BRXVKkXiDMWVbT8zTPiaRlCmNjbOfqEk5Bl68IvbqiH1 nQ604UaaDJOO2ru9ZIuQrL7idFMB2aVW3DVOOAcQi0ZRxSyuR0LidiTJs3wbrxMDgT+j Po0JFGq77PJa+zfNWMrwHmh4miZoKSOBraETfgmuGkODsGdtYRSSjek9coXAESEmMvpm cLKMabfqAQ7HyqWnWS0IVkLT1uJ4pDRDI8S0AptyjpsFHfcNQGQn+WTs2y51XU4n87KR 6OlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728052300; x=1728657100; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yIOCY6GzLu4GsW/KM2zcCkt02keBpevgorLHbZPHBfk=; b=QOaHi+VcYkE+uLN1ufXE1ya/mo+nhYyqLtr+cxp9Sok4AEUfb7dQXi7Ltijd/J8CMK qtyjnDM/109CXRxKQAMdIU4DwR7WX6lJsXimmnQQiRlJDYvyzarAYaZI10YfDJXqGi6y QiOwIF/L3UJxJQ00QVU3VyVrT9MR9vE8k9+p+MjzIcQHnOb7d06nZ4eZ1njTKSgWYkrV yyx8AOjRNFAwzP2Q1J8otftI6hJN954ESUhp3I7dyU7QfMYly1ZRm8s2d+go1CbqRLeO 99Wbcuc54ogzldEM+HPYwMHwZJr6dV+BDQsjLSyO8k9VfktxrwVEN+wNm3qrVWHyTnK7 DgPA== X-Gm-Message-State: AOJu0Yw07bqakr2V2DZ0uxZssQxShn1ZPuhj6Bjh8iCLxwD6X6H3taJn K8jhvqXIs91uQSQlOXVWHV2O974i+oygKS0QlBq+97vNGtzWSKombzc3P5+D X-Received: by 2002:a17:90b:1185:b0:2d3:d066:f58b with SMTP id 98e67ed59e1d1-2e1e62259c0mr3560032a91.12.1728052300066; Fri, 04 Oct 2024 07:31:40 -0700 (PDT) Received: from localhost ([112.64.8.17]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2e1e85da490sm1670313a91.32.2024.10.04.07.31.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Oct 2024 07:31:39 -0700 (PDT) From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Fri, 4 Oct 2024 22:31:15 +0800 Message-Id: <20241004143115.382070-4-nuomi2021@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241004143115.382070-1-nuomi2021@gmail.com> References: <20241004143115.382070-1-nuomi2021@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/4] avcodec/vvcdec: remove unused tb_pos_x0 and tb_pos_y0 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: sJAylkZMMciv This change will save approximately 531 MB for an 8K clip when processed with 16 threads. The calculation is as follows: 7680 * 4320 * sizeof(int) * 2 * 2 * 16 / (4 * 4). --- libavcodec/vvc/ctu.c | 10 +++------- libavcodec/vvc/dec.c | 2 -- libavcodec/vvc/dec.h | 2 -- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/libavcodec/vvc/ctu.c b/libavcodec/vvc/ctu.c index e49976c66b..1e06119cfd 100644 --- a/libavcodec/vvc/ctu.c +++ b/libavcodec/vvc/ctu.c @@ -38,7 +38,7 @@ typedef enum VVCModeType { MODE_TYPE_INTRA, } VVCModeType; -static void set_tb_pos(const VVCFrameContext *fc, const TransformBlock *tb) +static void set_tb_size(const VVCFrameContext *fc, const TransformBlock *tb) { const int x_tb = tb->x0 >> MIN_TU_LOG2; const int y_tb = tb->y0 >> MIN_TU_LOG2; @@ -50,10 +50,6 @@ static void set_tb_pos(const VVCFrameContext *fc, const TransformBlock *tb) for (int y = y_tb; y < end; y++) { const int off = y * fc->ps.pps->min_tu_width + x_tb; - for (int i = 0; i < width; i++) { - fc->tab.tb_pos_x0[is_chroma][off + i] = tb->x0; - fc->tab.tb_pos_y0[is_chroma][off + i] = tb->y0; - } memset(fc->tab.tb_width [is_chroma] + off, tb->tb_width, width); memset(fc->tab.tb_height[is_chroma] + off, tb->tb_height, width); } @@ -397,7 +393,7 @@ static int hls_transform_unit(VVCLocalContext *lc, int x0, int y0,int tu_width, set_tb_tab(fc->tab.tu_coded_flag[tb->c_idx], tu->coded_flag[tb->c_idx], fc, tb); } if (tb->c_idx != CR) - set_tb_pos(fc, tb); + set_tb_size(fc, tb); if (tb->c_idx == CB) set_tb_tab(fc->tab.tu_joint_cbcr_residual_flag, tu->joint_cbcr_residual_flag, fc, tb); } @@ -514,7 +510,7 @@ static int skipped_transform_tree(VVCLocalContext *lc, int x0, int y0,int tu_wid for (int i = c_start; i < c_end; i++) { TransformBlock *tb = add_tb(tu, lc, x0, y0, tu_width >> sps->hshift[i], tu_height >> sps->vshift[i], i); if (i != CR) - set_tb_pos(fc, tb); + set_tb_size(fc, tb); } } diff --git a/libavcodec/vvc/dec.c b/libavcodec/vvc/dec.c index 13ca752eec..9b7afe4c38 100644 --- a/libavcodec/vvc/dec.c +++ b/libavcodec/vvc/dec.c @@ -207,8 +207,6 @@ static void min_tu_nz_tl_init(TabList *l, VVCFrameContext *fc) tl_init(l, 0, changed); for (int i = LUMA; i <= CHROMA; i++) { - TL_ADD(tb_pos_x0[i], pic_size_in_min_tu); - TL_ADD(tb_pos_y0[i], pic_size_in_min_tu); TL_ADD(tb_width[i], pic_size_in_min_tu); TL_ADD(tb_height[i], pic_size_in_min_tu); } diff --git a/libavcodec/vvc/dec.h b/libavcodec/vvc/dec.h index 159c60942b..7254b515fd 100644 --- a/libavcodec/vvc/dec.h +++ b/libavcodec/vvc/dec.h @@ -172,8 +172,6 @@ typedef struct VVCFrameContext { uint8_t *tu_coded_flag[VVC_MAX_SAMPLE_ARRAYS]; ///< tu_y_coded_flag[][], tu_cb_coded_flag[][], tu_cr_coded_flag[][] uint8_t *tu_joint_cbcr_residual_flag; ///< tu_joint_cbcr_residual_flag[][] - int *tb_pos_x0[2]; - int *tb_pos_y0[2]; uint8_t *tb_width[2]; uint8_t *tb_height[2]; uint8_t *pcmf[2];