From patchwork Wed Sep 18 07:10:26 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wang, Fei W" X-Patchwork-Id: 51640 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:d32e:0:b0:48e:c0f8:d0de with SMTP id cf14csp727872vqb; Wed, 18 Sep 2024 00:08:40 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUloNVSaIzMTWDDo7NiALAaMPNzv9Em4zx9Mq3eL8f8yw+pi7tGd0sTXXQROxaqzpyzasWukenwVz9N5WWYu7Zz@gmail.com X-Google-Smtp-Source: AGHT+IE2toRPPJ8emy83dZj7QLGYRyXeGv+HV7pqlQJ/mipBewjOE73w4kB121QtB1zzkhQy9Cii X-Received: by 2002:a17:906:c151:b0:a86:88f7:679c with SMTP id a640c23a62f3a-a90296182d3mr2330399066b.41.1726643320154; Wed, 18 Sep 2024 00:08:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1726643320; cv=none; d=google.com; s=arc-20240605; b=kEdRUj/mW6ome8nWnNcD25A6yO831qLBof2OBZBtV20Ajbbt60w6nCqk7hsoztvqJ9 DZCzBTFOkzfMEiq6xaviJGzLOVLkm1cshmy4ObiPKk+XpcPMma2mjaZPREp2TKj/C77w c0WQkpjszb6VcxO3zk8+KWuzcpGr/YoNDccAiw/UNyM0INOVs2uvohlX6wWXTYkytNkJ NyR/QLi+yTvetFCyIsUaf8PweLVzFZFfridaujpkOvcTdV7wRwg1Yn5RS5PDdnKqvrLV YUGhZiuBbvAEC+5/QlbYmHz+7cvcEcTdchrbtYcscMiOZ7pavI2Q4gDOVd3ayp3b6ttQ acKg== 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=a0jPI3rDfP9dZIFcsQqsLfu4jhrERDLI+dsb5OyyhJM=; fh=i4ESP4ZRFDcfYfwXKWpOXjc2YhmIGuOsCfZUnwNO0gc=; b=LDNW9ilMfSahd+nJ97UHHvA3aw1VWErqPLUtLLaWzHGy06KENw10I0B254Fczln7Ln V/rX5GBpFNp8thXXmDiL2xyfX6RSh/+6ZeUkk4cp9hg70LCfrPzoISgA4L1tW7WybGLf ocaO4opjl7qBUD0cMOJVvtB8AgmaRLU39l1jFgBg742Nl4gR+qmisiqcdEt7BbYx2Np6 Rc29F7/WE380RyceP5RDZVnCsn6614T/QGud/YzTdblr9K5EtEr34vEHtJrXig6TOTcS L4DzCHZkoyqZsecsyMXZhYlZqN7obA6vBcxfJQ4AMETrbnRXzc7ZVJpKdmf+QQH5Y58e SUJw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@intel.com header.s=Intel header.b=EsuE6ttw; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a640c23a62f3a-a90612efc0dsi637804766b.573.2024.09.18.00.08.39; Wed, 18 Sep 2024 00:08: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=@intel.com header.s=Intel header.b=EsuE6ttw; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id F239268DCC3; Wed, 18 Sep 2024 10:08:18 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2A3CA68D72C for ; Wed, 18 Sep 2024 10:08:11 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1726643298; x=1758179298; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=983Vj2YaUC9uNdQJxVsMvXy7MY8xNrifbPBKUGMJvNc=; b=EsuE6ttwjBlr/9fOMJfV7vAyxgklic5EX98Amd1isQsGFpH0B3CJQPH6 Cd00iwBxRfrMTs0zkRCZYSawQhuM4Mx+v0L84FN4BAU9oMFJQrH5+lwUY BbNZTpKwT4kQdOu5fqZoyd6xEB2v397Xqe5lH87yMpg0xRBa4MDAQOlUm 8CAjdgVWONCcb/VM9a4vhS0k9wBzd26Q3gueWuEAgqQSQ+XadINWagwQU CS0+aUf7oelmEfZf1KKV9wupUkuBM+har5nYWxnczHazM0+g6TnwPs75I LTJ+sVDJrbikIT6nAoO1tHiKFlY7eRvYsjRo4hkNRhxERmqeBLqgKqv28 Q==; X-CSE-ConnectionGUID: CQiCLSafR72/AtKvXTa4Bg== X-CSE-MsgGUID: 8nO6Yw5CSAeX2kML4z/Rtw== X-IronPort-AV: E=McAfee;i="6700,10204,11198"; a="25695717" X-IronPort-AV: E=Sophos;i="6.10,238,1719903600"; d="scan'208";a="25695717" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Sep 2024 00:08:08 -0700 X-CSE-ConnectionGUID: dK8Sf20JQJK0Us7YJioMIw== X-CSE-MsgGUID: ar3kMjwTTGaxNY1F4bhERQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,238,1719903600"; d="scan'208";a="69452247" Received: from feiwan1-desk3.sh.intel.com ([10.238.208.39]) by orviesa009.jf.intel.com with ESMTP; 18 Sep 2024 00:08:07 -0700 From: fei.w.wang-at-intel.com@ffmpeg.org To: ffmpeg-devel@ffmpeg.org Date: Wed, 18 Sep 2024 15:10:26 +0800 Message-Id: <20240918071031.1377336-3-fei.w.wang@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240918071031.1377336-1-fei.w.wang@intel.com> References: <20240918071031.1377336-1-fei.w.wang@intel.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 3/8] lavc/cbs_h266: Add SliceTopLeftTileIdx to H266RawPPS 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: fei.w.wang@intel.com Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: ol+EHQNzYfcR From: Fei Wang Signed-off-by: Fei Wang --- libavcodec/cbs_h266.h | 1 + libavcodec/cbs_h266_syntax_template.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/libavcodec/cbs_h266.h b/libavcodec/cbs_h266.h index d24a8e9313..7f0e537b31 100644 --- a/libavcodec/cbs_h266.h +++ b/libavcodec/cbs_h266.h @@ -593,6 +593,7 @@ typedef struct H266RawPPS { uint16_t sub_pic_id_val[VVC_MAX_SLICES]; ///< SubpicIdVal uint16_t col_width_val[VVC_MAX_TILE_COLUMNS]; ///< ColWidthVal uint16_t row_height_val[VVC_MAX_TILE_ROWS]; ///< RowHeightVal + uint16_t slice_top_left_tile_idx[VVC_MAX_SLICES]; } H266RawPPS; typedef struct H266RawAPS { diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index a8f5af04d0..2e20119cc6 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -1974,6 +1974,7 @@ static int FUNC(pps) (CodedBitstreamContext *ctx, RWContext *rw, else infer(pps_tile_idx_delta_present_flag, 0); for (i = 0; i < current->pps_num_slices_in_pic_minus1; i++) { + current->slice_top_left_tile_idx[i] = tile_idx; tile_x = tile_idx % current->num_tile_columns; tile_y = tile_idx / current->num_tile_columns; if (tile_x != current->num_tile_columns - 1) { @@ -2056,6 +2057,8 @@ static int FUNC(pps) (CodedBitstreamContext *ctx, RWContext *rw, } num_slices_in_tile = j; } + for (int k = 0; k < num_slices_in_tile; k++) + current->slice_top_left_tile_idx[i + k] = tile_idx; i += num_slices_in_tile - 1; } else { uint16_t height = 0; @@ -2099,6 +2102,7 @@ static int FUNC(pps) (CodedBitstreamContext *ctx, RWContext *rw, if (i == current->pps_num_slices_in_pic_minus1) { uint16_t height = 0; + current->slice_top_left_tile_idx[i] = tile_idx; tile_x = tile_idx % current->num_tile_columns; tile_y = tile_idx / current->num_tile_columns; if (tile_y >= current->num_tile_rows)