Opened 4 years ago

Closed 2 years ago

#1017 closed defect (fixed)

Missing the check of maximum transform size when CtbSizeY is 32

Reported by: chiaming Owned by:
Priority: minor Milestone:
Component: VTM Version: VTM-8.0
Keywords: Cc: ksuehring, XiangLi, fbossen, jvet@…

Description

In VVC D8, it mentioned:

When CtbSizeY is less than 64, the value of sps_max_luma_transform_size_64_flag shall be equal to 0.

It should add checks accordingly to avoid the maximum transform size is set to 64 when CtbSizeY is 32.
Suggest patch is also included.

Attachments (1)

checkMaxTbSize.patch (1.9 KB) - added by chiaming 4 years ago.

Download all attachments as: .zip

Change history (4)

Changed 4 years ago by chiaming

comment:1 Changed 4 years ago by m.sarwer

There is a contribution (JVET-R0097) related to this topic.

comment:2 Changed 4 years ago by chiaming

Thanks to Mohammed's comment.

To replace the bitstream conformance constraint, another method is to move the sps_max_luma_transform_size_64_flag in front of the syntax of CTU size, and signal the size difference between CTU size and the maximum transform size instead. For example,

seq_parameter_set_rbsp( ) {

...
sps_max_luma_transform_size_64_flag
sps_log2_ctu_size_minus5_log2_max_transform_size
...
sps_max_luma_transform_size_64_flag
...

}

sps_max_luma_transform_size_64_flag equal to 1 specifies that the maximum transform size in luma samples is equal to 64. sps_max_luma_transform_size_64_flag equal to 0 specifies that the maximum transform size in luma samples is equal to 32.
When CtbSizeY is less than 64, the value of sps_max_luma_transform_size_64_flag shall be equal to 0.
The variables MinTbLog2SizeY, MaxTbLog2SizeY, MinTbSizeY, and MaxTbSizeY are derived as follows:

MinTbLog2SizeY = 2
MaxTbLog2SizeY = sps_max_luma_transform_size_64_flag ? 6 : 5
MinTbSizeY = 1 << MinTbLog2SizeY
MaxTbSizeY = 1 << MaxTbLog2SizeY

sps_log2_ctu_size_minus5_log2_max_transform_size plus 5 specifies the difference between the base 2 logarithm of luma coding tree block size of each CTU and the base 2 logarithm of maximum luma transform size. The value of sps_log2_ctu_size_minus5_log2_max_transform_size shall be in the range of 0 to (2 − sps_max_luma_transform_size_64_flag), inclusive. The value in the range of (3 − sps_max_luma_transform_size_64_flag) to 3 for sps_log2_ctu_size_minus5_log2_max_transform_size is are reserved for future use by ITU-T | ISO/IEC.
The variables CtbLog2SizeY and CtbSizeY are derived as follows:

CtbLog2SizeY = sps_log2_ctu_size_minus5_log2_max_transform_size + 5MaxTbLog2SizeY
CtbSizeY = 1 << CtbLog2SizeY

comment:3 Changed 2 years ago by fbossen

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