Opened 4 years ago

Closed 4 years ago

#663 closed defect (fixed)

Wrong condition scope for SBT in clause 7.3.9.5

Reported by: chiaming Owned by:
Priority: minor Milestone:
Component: spec Version: VVC D7 vB
Keywords: Cc: ksuehring, bbross, XiangLi, fbossen, jvet@…

Description

In addition to #661, the condition scope for SBT in clause 7.3.9.5 should be fixed

In the current D7 spec:
if( CuPredMode[ chType ][ x0 ][ y0 ] = = MODE_INTER && sps_sbt_enabled_flag
&& !ciip_flag[ x0 ][ y0 ] && ! MergeTriangleFlag[ x0 ][ y0 ] ) {

if( cbWidth <= MaxTbSizeY && cbHeight <= MaxTbSizeY ) {

allowSbtVerH = cbWidth >= 8
allowSbtVerQ = cbWidth >= 16
allowSbtHorH = cbHeight >= 8
allowSbtHorQ = cbHeight >= 16
if( allowSbtVerH | | allowSbtHorH | | allowSbtVerQ | | allowSbtHorQ )

cu_sbt_flag

}
if( cu_sbt_flag ) {

if( ( allowSbtVerH | | allowSbtHorH ) && ( allowSbtVerQ | | allowSbtHorQ ) )

cu_sbt_quad_flag

if( ( cu_sbt_quad_flag && allowSbtVerQ && allowSbtHorQ ) | | ( !cu_sbt_quad_flag && allowSbtVerH && allowSbtHorH ) )

cu_sbt_horizontal_flag
cu_sbt_pos_flag

}

}

It should be corrected to:
if( CuPredMode[ chType ][ x0 ][ y0 ] = = MODE_INTER && sps_sbt_enabled_flag
&& !ciip_flag[ x0 ][ y0 ] && ! MergeTriangleFlag[ x0 ][ y0 ]
&& ( cbWidth <= MaxTbSizeY && cbHeight <= MaxTbSizeY ) ) {

allowSbtVerH = cbWidth >= 8
allowSbtVerQ = cbWidth >= 16
allowSbtHorH = cbHeight >= 8
allowSbtHorQ = cbHeight >= 16
if( allowSbtVerH | | allowSbtHorH | | allowSbtVerQ | | allowSbtHorQ )
if( allowSbtVerH | | allowSbtHorH )

cu_sbt_flag

if( cu_sbt_flag ) {

if( ( allowSbtVerH | | allowSbtHorH ) && ( allowSbtVerQ | | allowSbtHorQ ) )

cu_sbt_quad_flag

if( ( cu_sbt_quad_flag && allowSbtVerQ && allowSbtHorQ ) | | ( !cu_sbt_quad_flag && allowSbtVerH && allowSbtHorH ) )

cu_sbt_horizontal_flag
cu_sbt_pos_flag

}

}

Change history (2)

comment:1 Changed 4 years ago by chiaming

  • Milestone VVC D7 vC deleted
  • Version set to VVC D7 vB

comment:2 Changed 4 years ago by bbross

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

This is purely editorial since when cu_sbt_flag is not parsed (condition on size is false), it is inferred to 0 and hence all the following SBT syntax is not parsed either.
However, I will integrate this editorial change in JVET-P2001-vC.

Note: See TracTickets for help on using tickets.