Opened 5 years ago
Closed 5 years ago
#647 closed defect (fixed)
chroma LFNST index signalling
Reported by: | ZhipinDeng | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | spec | Version: | VVC D7 vB |
Keywords: | Cc: | ksuehring, XiangLi, fbossen, jvet@… |
Description
In the section 7.3.9.5 Coding unit syntax, the signaling of LFNST index is dependent on the MIP flag. However, MIP is used only for luma component. Therefore, from the current text, the signaling of chroma LFNST index is dependent on the luma MIP flag.
In the software, the signaling of chroma LFNST index checks intra_mip_flag for a chroma block which is always set to 0. Thus there is a discrepancy between spec and software.
Suggest to align spec to software.
Current Spec:
if( Min( lfnstWidth, lfnstHeight ) >= 4 && sps_lfnst_enabled_flag = = 1 && CuPredMode[ chType ][ x0 ][ y0 ] = = MODE_INTRA && ( !intra_mip_flag[ x0 ][ y0 ] | | Min( lfnstWidth, lfnstHeight ) >= 16 ) && Max( cbWidth, cbHeight ) <= MaxTbSizeY) {
if( ( IntraSubPartitionsSplitType != ISP_NO_SPLIT | | LfnstDcOnly = = 0 ) && LfnstZeroOutSigCoeffFlag = = 1 )
lfnst_idx
Suggested Spec:
if( Min( lfnstWidth, lfnstHeight ) >= 4 && sps_lfnst_enabled_flag = = 1 && CuPredMode[ chType ][ x0 ][ y0 ] = = MODE_INTRA && ( treeType = = DUAL_TREE_CHROMA | | !intra_mip_flag[ x0 ][ y0 ] | | Min( lfnstWidth, lfnstHeight ) >= 16 ) && Max( cbWidth, cbHeight ) <= MaxTbSizeY) {
if( ( IntraSubPartitionsSplitType != ISP_NO_SPLIT | | LfnstDcOnly = = 0 ) && LfnstZeroOutSigCoeffFlag = = 1 )
lfnst_idx
Change history (4)
comment:1 Changed 5 years ago by bbross
comment:2 Changed 5 years ago by ZhipinDeng
Thanks Ben.
A typo is corrected as below (brackets deleted by mistake in previous version).
Suggested Spec:
if( Min( lfnstWidth, lfnstHeight ) >= 4 && sps_lfnst_enabled_flag = = 1 && CuPredMode[ chType ][ x0 ][ y0 ] = = MODE_INTRA && ( treeType = = DUAL_TREE_CHROMA | | ( !intra_mip_flag[ x0 ][ y0 ] | | Min( lfnstWidth, lfnstHeight ) >= 16 ) ) && Max( cbWidth, cbHeight ) <= MaxTbSizeY) {
if( ( IntraSubPartitionsSplitType != ISP_NO_SPLIT | | LfnstDcOnly = = 0 ) && LfnstZeroOutSigCoeffFlag = = 1 )
lfnst_idx
comment:3 Changed 5 years ago by ksuehring
- Component changed from VTM to spec
comment:4 Changed 5 years ago by bbross
- Resolution set to fixed
- Status changed from new to closed
Great, thanks! This will be fixed JVET-P2001-vC.
I agree, and not gating the chroma lfnst idx on luma MIP flag in case of dual tree as done in VTM was intended.
In my reading of the spec, this would already be covered since in the chroma CU, mip_flag is not present in CU syntax and hence inferred to be equal to 0.
However, the suggested change makes it less ambiguous in the spec and it will be integrated in the next version.