Opened 5 years ago

Closed 5 years ago

#898 closed defect (fixed)

Mismatch with VTM for inference rule of slice_height_in_tiles_minus1

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

Description

Currently, the inference rule for slice_height_in_tiles_minus1 is the following:
"When slice_height_in_tiles_minus1[ i ] is not present, the following applies:
– If NumTileRows is equal to 1, or tile_idx_delta_present_flag is equal to 0 and tileIdx % NumTileColumns is greater than 0), the value of slice_height_in_tiles_minus1[ i ] is inferred to be equal to 0.
– Otherwise (NumTileRows is not equal to 1, and tile_idx_delta_present_flag is equal to 1 or tileIdx % NumTileColumns is equal to 0), when tile_idx_delta_present_flag is equal to 1 or tileIdx % NumTileColumns is equal to 0, the value of slice_height_in_tiles_minus1[ i ] is inferred to be equal to slice_height_in_tiles_minus1[ i − 1 ]."

However, this is strange because when the condition under the "otherwise" (NumTileRows is not equal to 1, and tile_idx_delta_present_flag is equal to 1 or tileIdx % NumTileColumns is equal to 0) is fulfilled, then this syntax element is signalled. The only case where it would not be signalled is if there is no slice to signal at all, which would make this syntax element irrelevant anyway.

In addition, there is a mismatch with the software where if tile_idx_delta_present_flag is equal to 0 and tileIdx % NumTileColumns is greater than 0, the inference for this syntax element is not 0, but slice_height_in_tiles_minus1[ i − 1 ] (i.e what is currently decribed under the "otherwise").

So I believe that the text should probably be the following:
"When slice_height_in_tiles_minus1[ i ] is not present, the following applies:
– If NumTileRows is equal to 1, the value of slice_height_in_tiles_minus1[ i ] is inferred to be equal to 0.
– Otherwise (NumTileRows is not equal to 1), when tile_idx_delta_present_flag is equal to 0 and tileIdx % NumTileColumns is greater than 0, the value of slice_height_in_tiles_minus1[ i ] is inferred to be equal to slice_height_in_tiles_minus1[ i − 1 ]."

Could an expert in slice signalling please check?

Change history (4)

comment:1 Changed 5 years ago by yk

I believe you are right, and your suggestion is a good fix for this issue.

comment:2 Changed 5 years ago by eeehey

It may be further simplified as following:

"When slice_height_in_tiles_minus1[ i ] is not present, the following applies:
– If NumTileRows is equal to 1, the value of slice_height_in_tiles_minus1[ i ] is inferred to be equal to 0.
– Otherwise (NumTileRows is not equal to 1), the value of slice_height_in_tiles_minus1[ i ] is inferred to be equal to slice_height_in_tiles_minus1[ i − 1 ]."

comment:3 Changed 5 years ago by yk

Smart 👍

comment:4 Changed 5 years ago by yk

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

Thanks! Will be fixed in Q2001-vD.

Note: See TracTickets for help on using tickets.