Opened 4 years ago
Closed 4 years ago
#850 closed defect (fixed)
issue in the definition of max_num_merge_cand_minus_max_num_gpm_cand
Reported by: | lenchik | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | spec | Version: | |
Keywords: | Cc: | semih.esenlik@…, ksuehring, bbross, XiangLi, fbossen, jvet@… |
Description
The constraint related to MaxNumGeoMergeCand below is conflicting with the derivation rule. Futhermore there are typos in the name, MaxNumGeoMergeCand should be MaxNumGpmMergeCand.
max_num_merge_cand_minus_max_num_gpm_cand specifies the maximum number of geometric partitioning merge mode candidates supported in the SPS subtracted from MaxNumMergeCand.
If sps_gpm_enabled_flag is equal to 1 and MaxNumMergeCand is greater than or equal to 3, the maximum number of geometric partitioning merge mode candidates, MaxNumGeoMergeCand, is derived as follows:
if( sps_gpm_enabled_flag && MaxNumMergeCand >= 3 )
MaxNumGpmMergeCand = MaxNumMergeCand −
max_num_merge_cand_minus_max_num_gpm_cand (66)
else if( sps_gpm_enabled_flag && MaxNumMergeCand = = 2 )
MaxNumMergeCand = 2
else
MaxNumGeoMergeCand = 0
The value of MaxNumGeoMergeCand shall be in the range of 2 to MaxNumMergeCand, inclusive.
Suggested fix:
max_num_merge_cand_minus_max_num_gpm_cand specifies the maximum number of geometric partitioning merge mode candidates supported in the SPS subtracted from MaxNumMergeCand.
The maximum number of geometric partitioning merge mode candidates, MaxNumGpmMergeCand, is derived as follows:
if( sps_gpm_enabled_flag && MaxNumMergeCand >= 3 )
MaxNumGpmMergeCand = MaxNumMergeCand −
max_num_merge_cand_minus_max_num_gpm_cand (66)
else
MaxNumGpmMergeCand = 2
The value of MaxNumGpmMergeCand shall be in the range of 2 to MaxNumMergeCand, inclusive.
Change history (3)
comment:1 Changed 4 years ago by yjchang
comment:2 Changed 4 years ago by lingli0
Thank you for pointing out the typo.
It should be
if( sps_gpm_enabled_flag && MaxNumMergeCand >= 3 )
MaxNumGpmMergeCand = MaxNumMergeCand − max_num_merge_cand_minus_max_num_gpm_cand (66)
else if( sps_gpm_enabled_flag && MaxNumMergeCand = = 2 )
MaxNumGpmMergeCand = 2
else
MaxNumGpmMergeCand = 0
The value of MaxNumGpmMergeCand shall be in the range of 2 to MaxNumMergeCand, inclusive.
I believe that MaxNumGpmMergeCand = 0 is still needed to make it more clearer. Because it is strange to have MaxNumGpmMergeCand =2 when sps_gpm_enabled_flag is false. That is the intention to have it as value 0.
comment:3 Changed 4 years ago by yk
- Resolution set to fixed
- Status changed from new to closed
Thanks for the good catch! Will be fixed in JVET-Q2001-vC, by replacing "If sps_gpm_enabled_flag is equal to 1 and MaxNumMergeCand is greater than or equal to 3, the ..." with "The ..." and changing the three instances of "MaxNumGeoMergeCand" to "MaxNumGpmMergeCand".
Thanks for cleaning up the name.
0 value for MaxNumGpmMergeCand is redundant here because sps_gpm_enabled_flag already can control geometric partitioning merge mode on/off. Therefore, the fix you are suggesting also looks cleaner to me.