Opened 3 months ago

Closed 3 months ago

#1297 closed enhancement (duplicate)

Last rectangular slice in frame is not always locate in bottom right corner

Reported by: kerzhy Owned by:
Priority: minor Milestone:
Component: VTM Version: VTM-9.3
Keywords: slice patrtition Cc: ksuehring, XiangLi, fbossen, jvet@…, jvet@…

Description

Due to spec, the last slice is not signalled, assuming it is located in the bottom right corner.

It is supposed to be located in bottom right corner due to this condition from spec:

tileX = tileIdx % NumTileColumns
tileY = tileIdx / NumTileColumns
if( i < pps_num_slices_in_pic_minus1 ) {
    sliceWidthInTiles[ i ] = pps_slice_width_in_tiles_minus1[ i ] + 1
    sliceHeightInTiles[ i ] = pps_slice_height_in_tiles_minus1[ i ] + 1
} else {
      sliceWidthInTiles[ i ] = NumTileColumns − tileX
      sliceHeightInTiles[ i ] = NumTileRows − tileY
      NumSlicesInTile[ i ] = 1
}

However, if we use tile_delta_idx values and multiple slices in tile we can get situation where last slice will not be located in the bottom right corner.

Example:

  • Red lines – slice boundaries
  • Green lines – tile boundaries

https://drive.google.com/file/d/1lhMEdViqxiu37JRIv007JSoLNwXgGUu2/view

Here we can see, that num_slices_in_pic_minus1 = 3, and current slice (slice with purple square) has index = 3 (so it is the last).

And bottom right slice has index 1:

https://drive.google.com/file/d/1oK1z0QNJlKPjYuNZ4RHDQuH1bRxgMhvw/view

So is it a bug or a feature that last slice supposed to be in the right bottom corner (by spec) but this condition can be violated and overcome in some cases?

Stream is here: https://drive.google.com/file/d/1FC8-8o0pXVXTvDtltHCG7ei8HHb5aEs1/view?usp=sharing

Change history (1)

comment:1 Changed 3 months ago by kerzhy

  • Resolution set to duplicate
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.