Opened 3 months ago

Last modified 6 weeks ago

#433 assigned defect

Mismatch between SW and Spec on chroma DM derivation

Reported by: LiZhang Owned by: LiZhang
Priority: minor Milestone:
Component: spec Version: VVC D6 vE
Keywords: Cc: vzakharc, yuwenhe, jvet@…

Description

8.4.3 Derivation process for chroma intra prediction mode
...
The corresponding luma intra prediction mode lumaIntraPredMode is derived as follows:
– If intra_mip_flag[ xCb ][ yCb ] is equal to 1, lumaIntraPredMode is set equal to INTRA_PLANAR.
– Otherwise, if CuPredMode[ 0 ][ xCb ][ yCb ] is equal to MODE_IBC or MODE_PLT, lumaIntraPredMode is set equal to INTRA_DC.
– Otherwise, lumaIntraPredMode is set equal to IntraPredModeY[ xCb + cbWidth / 2 ][ yCb + cbHeight / 2 ].

It could seen that when checking the luma prediction mode equal to MIP/IBC/Palette, the CU covering the corresponding luma sample of the top-left position of current chroma block (named top CU) is used. However, in the SW, CU covering the corresponding luma sample of the center position of current chroma block (named center CU) is checked.

In addition, if the decoder follows the spec, IntraPredModeY[ xCb + cbWidth / 2 ][ yCb + cbHeight / 2 ] may be used without being defined. For example, the center CU may be coded with IBC/Palette mode while the top CU is intra coded.

A possible solution is to check center CU's mode, and the spec changes could be like:
The corresponding luma intra prediction mode lumaIntraPredMode is derived as follows:
– If intra_mip_flag[ xCb + cbWidth / 2 ][ yCb + cbHeight / 2] is equal to 1, lumaIntraPredMode is set equal to INTRA_PLANAR.
– Otherwise, if CuPredMode[ 0 ][ xCb + cbWidth / 2][ yCb + cbHeight / 2] is equal to MODE_IBC or MODE_PLT, lumaIntraPredMode is set equal to INTRA_DC.
– Otherwise, lumaIntraPredMode is set equal to IntraPredModeY[ xCb + cbWidth / 2 ][ yCb + cbHeight / 2 ].

Change history (1)

comment:1 Changed 6 weeks ago by LiZhang

  • Component changed from 360Lib to spec
  • Owner set to LiZhang
  • Status changed from new to assigned
  • Version set to VVC D6 vE
Note: See TracTickets for help on using tickets.