Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#750 closed defect (invalid)

Mismatch with spec regarding delta QP signaling

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


The VVC draft spec defines quantization groups by checking the following condition: cbSubdiv <= cu_qp_delta_subdiv

When this condition is true, cu_qp_delta_abs and potentially cu_qp_delta_sign_flag are read from the bitstream (of course, if the CU is a luma CU and if it has coefficients...)

When splitting a CU in TT, the spec indicates the following increments for cbSubDiv: +2, +1, +2 respectively for the three partitions that form the TT. However, in VTM, the function splitCurrArea() increments cbSubDiv by 2, and disables qgEnable when the cbSubDiv gets higher than cu_qp_delta_subdiv. All three partitions share qgEnable, and thus, the middle partition is rendered unable to hold a quantization group, while according to the spec it could have because the value of cbSubDiv on it could be <= cu_qp_delta_subdiv

Change history (3)

comment:1 Changed 5 years ago by delagrangep

That feature is by design (see explanation in JVET-M0113). qgEnable is "qgOn" in the spec (see coding_tree in §
By "mismatch with spec" what do you mean ?

comment:2 Changed 5 years ago by emora

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

Right. I guess another solution would be to increment subdiv by 2 in center partition of TT, and remove "qgOn" concept as subdiv does not seem to be used for anything else in the spec. But that is debatable as subdiv allows to easily compute the surface of a block. Anyways, I am closing this ticket and marking it as invalid. Thanks.

comment:3 Changed 5 years ago by delagrangep

FYI: it could not, since the center partition can be ok (qgOn still true), and further splits (e.g. binary in the other direction) must get the right subdiv value.

Note: See TracTickets for help on using tickets.