Opened 4 years ago

Closed 4 years ago

#785 closed defect (fixed)

JVET-O1168 - Mismatch when enabling CU-level chroma QP offsets

Reported by: bheng Owned by:
Priority: minor Milestone:
Component: VTM Version: VTM-7.0
Keywords: Cc: ksuehring, XiangLi, fbossen, jvet@…


Enabling the CU-level chroma QP offset feature causes encoder / decoder mismatches.

The VTM encoder uses the following arbitrary decision process to select chroma QP offsets for each CU:

m_cuChromaQpOffsetIdxPlus1 = ( ( uiLPelX >> lgMinCuSize ) + ( uiTPelY >> lgMinCuSize ) ) % ( pps.getChromaQpOffsetListLen() + 1 );

Basically, it cycles through all available entries in the offset list in a round-robin fashion based on spatial position within the picture (uiLPelX and uiTPelY).

First, the above arbitrary decision process assumes square shaped chroma quantization groups. This was never updated to support the rectangular quantization group sizes in VVC. So, this causes mismatches because the encoder and encoder are using different chroma quantization group sizes.

Second, the proponents of the CU chroma QP offset feature failed to provide any real algorithm to use this feature in a meaningful way. The arbitrary round-robin offset selection implemented here is not particularly convincing evidence of why this feature is necessary.

Change history (1)

comment:1 Changed 4 years ago by bheng

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

Mismatches were resolved in merge request !1229.

Note: See TracTickets for help on using tickets.