Opened 3 months ago

Closed 2 months ago

#461 closed defect (fixed)

fix qgOnY for chroma tree node in local dual tree

Reported by: zhaoyin Owned by:
Priority: minor Milestone:
Component: spec Version: VVC D6 vE
Keywords: QG Cc: ksuehring, bbross, XiangLi, fbossen, jvet@…

Description

In the spec, for the chroma node in a local dual tree, qgOnY is used in the input parameters of coding_tree() as follows.

if( modeTypeCur = = MODE_TYPE_ALL && modeType = = MODE_TYPE_INTRA ) {
    coding_tree( x0, y0, cbWidth, cbHeight,  qgOnY, qgOnC, cbSubdiv, 
cqtDepth, mttDepth, 0, 0, DUAL_TREE_CHROMA , modeType )

However, the qgOnY should be replaced by 0 in this place. Otherwise, the QG may be reset at the chroma CU when cu_qp_delta_subdiv is large (e.g., 6 at CTUSize 128), as follows.

	if( cu_qp_delta_enabled_flag  &&  qgOnY  &&  cbSubdiv  <=  cu_qp_delta_subdiv ) {
		IsCuQpDeltaCoded  =  0
		CuQpDeltaVal  =  0
		CuQgTopLeftX  =  x0
		CuQgTopLeftY  =  y0
	}

Acutally, in dual_tree_implicit_qt_split() syntax table, the qgOnY for chroma tree node is set as 0.

		coding_tree( x0, y0, cbSize, cbSize, 1, 0, cbSubdiv, cqtDepth, 0, 0, 0, 
							DUAL_TREE_LUMA, MODE_TYPE_ALL )
		coding_tree( x0, y0, cbSize, cbSize, 0, 1, cbSubdiv, cqtDepth, 0, 0, 0, 
							DUAL_TREE_CHROMA, MODE_TYPE_ALL )

Change history (1)

comment:1 Changed 2 months ago by bbross

  • Resolution set to fixed
  • Status changed from new to closed

Good catch! Thanks!
Fixed in a document we are preparing to be submitted as an editorial input
to the 16th JVET meeting.

Note: See TracTickets for help on using tickets.