Opened 5 years ago

Closed 4 years ago

#985 closed defect (fixed)

Typo in palette coding syntax (7.3.10.6)

Reported by: sunmi.yoo Owned by:
Priority: minor Milestone:
Component: spec Version: VVC D8 vB
Keywords: Cc: ksuehring, bbross, XiangLi, fbossen, jvet@…

Description

Currently, the condition for palette_escape_val in palette coding syntax (7.3.10.6) has a bug for the chroma escape values with the 4:2:0 format. Also, there are some missing parenthesis. It should be changed from

if( palette_escape_val_present_flag )
  for( cIdx = startComp; cIdx < ( startComp + numComps ); cIdx++ )
    for( sPos = minSubPos; sPos < maxSubPos; sPos++ ) {
      xC = x0 + TraverseScanOrder[ log2CbWidth][ log2CbHeight ][ sPos ][ 0 ]
      yC = y0 + TraverseScanOrder[ log2CbWidth][ log2CbHeight ][ sPos ][ 1 ]
      if( !( treeType = = SINGLE_TREE  &&  cIdx  !=  0  &&  
          xC % SubWidthC  !=  0  &&  yC % SubHeightC  !=  0 ) ) {
        if( PaletteIndexMap[ cIdx ][ xC ][ yC ]  = =  MaxPaletteIndex ) {
          palette_escape_val
          PaletteEscapeVal[ cIdx ][ xC ][ yC ] = palette_escape_val
        }
      }
    }

to

if( palette_escape_val_present_flag ) {
  for( cIdx = startComp; cIdx < ( startComp + numComps ); cIdx++ ) {
    for( sPos = minSubPos; sPos < maxSubPos; sPos++ ) {
      xC = x0 + TraverseScanOrder[ log2CbWidth][ log2CbHeight ][ sPos ][ 0 ]
      yC = y0 + TraverseScanOrder[ log2CbWidth][ log2CbHeight ][ sPos ][ 1 ]
      if( !( treeType = = SINGLE_TREE  &&  cIdx  !=  0  &&  
          ( xC % SubWidthC  !=  0  ||  yC % SubHeightC  !=  0 ) )  ) {
        if( PaletteIndexMap[ cIdx ][ xC ][ yC ]  = =  MaxPaletteIndex ) {
          palette_escape_val
          PaletteEscapeVal[ cIdx ][ xC ][ yC ] = palette_escape_val
        }
      }
    }
  }
}

Change history (1)

comment:1 Changed 4 years ago by bbross

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

Good catch, thanks!

This will be fixed in first verison of D10.

Note: See TracTickets for help on using tickets.