Opened 6 years ago
Closed 5 years ago
#220 closed defect (fixed)
missing condition check for pruning process of IBC spatial merge candidates
Reported by: | axink | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | spec | Version: | VVC D5 v4 |
Keywords: | IBC | Cc: | ksuehring, bbross, XiangLi, fbossen, jvet@… |
Description
Filed by Xiaozhong Xu:
When deriving B2 position for IBC merge candidate, the existing number of candidates in the list should be smaller than 4. This is aligned with inter merge candidate derivation. VTM software has implemented this but the correponding text is missing in the spec.
Current spec reads in 8.6.2.3 as:
– The variables availableFlagB2 and mvB2 are derived as follows:
– If one or more of the following conditions are true, availableFlagB2 is set equal to 0 and both components of mvB2 are set equal to 0:
– availableB2 is equal to FALSE.
– availableA1 is equal to TRUE and the luma locations ( xNbA1, yNbA1 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– availableB1 is equal to TRUE and the luma locations ( xNbB1, yNbB1 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– availableB0 is equal to TRUE and the luma locations ( xNbB0, yNbB0 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– availableA0 is equal to TRUE and the luma locations ( xNbA0, yNbA0 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– Otherwise, availableFlagB2 is set equal to 1 and the following assignments are made:
mvB2 = MvL0[ xNbB2 ][ yNbB2 ] (8 983)
It should be:
– The variables availableFlagB2 and mvB2 are derived as follows:
– If one or more of the following conditions are true, availableFlagB2 is set equal to 0 and both components of mvB2 are set equal to 0:
– availableB2 is equal to FALSE.
– availableA1 is equal to TRUE and the luma locations ( xNbA1, yNbA1 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– availableB1 is equal to TRUE and the luma locations ( xNbB1, yNbB1 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– availableB0 is equal to TRUE and the luma locations ( xNbB0, yNbB0 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
– availableA0 is equal to TRUE and the luma locations ( xNbA0, yNbA0 ) and ( xNbB2, yNbB2 ) have the same motion vectors.
[added text here:]
– availableFlagA0 + availableFlagA1 + availableFlagB0 + availableFlagB1 is equal to 4.
– Otherwise, availableFlagB2 is set equal to 1 and the following assignments are made:
mvB2 = MvL0[ xNbB2 ][ yNbB2 ] (8 983)
Change history (4)
comment:1 Changed 6 years ago by bbross
- Version changed from VVC D4 v5 to VVC D4 v6
comment:2 Changed 6 years ago by bbross
- Version changed from VVC D4 v6 to VVC D4 v7
comment:3 Changed 5 years ago by bbross
- Version changed from VVC D4 v7 to VVC D5 v4
comment:4 Changed 5 years ago by bbross
- Resolution set to fixed
- Status changed from new to closed
Fixed in D5 v5