Opened 13 years ago Closed 12 years ago #484 closed defect (fixed)Text bug on reference index derivation for temporal merging candidate
Description
In "8.5.2.1.1 Derivation process for luma motion vectors for merge mode", the reference index for temporal merging candidate is derived as follows: If the following conditions are true, refIdxLX is set equal to refIdxLX[ xP − 1, yP + nPSH − 1 ]. – the prediction unit covering luma location ( xP − 1, yP + nPSH − 1 ) is available – the PartIdx is equal to 0 – PredMode is not MODE_INTRA – (xP >> (log2_parallel_merge_level_minus2 + 2)) ! = ((xP − 1) >> (log2_parallel_merge_level_minus2 + 2)) | | (yP >> (log2_parallel_merge_level_minus2 + 2)) ! = ((yP + nPSH − 1) >> (log2_parallel_merge_level_minus2 + 2) Otherwise, refIdxLX is set equal to 0.
When the singleMCLFlag is equal to 1, however, this may leads to the second PU of a 8x8 CU use a different reference index than the first PU of the same CU, which is incorrect.
The suggested fix is to modify the second condition of the first "If" statement as: – the PartIdx is equal to 0 or the singleMCLFlag is equal to 1
Note that the HM6.1 software already operates as suggested. Thus we don’t need to modify the software. For more detail, please check the getInterMergeCandidates() function, which is called with uiPUIdx==0 whenever the singleMCLFlag condition is true. Change History (4)comment:1 Changed 13 years ago by DefaultCC Plugin
comment:2 in reply to: ↑ description Changed 13 years ago by huiyongcomment:3 Changed 12 years ago by bbross
comment:4 Changed 12 years ago by bbross
Fixed in JCTVC-I1003_d6. Note: See
TracTickets for help on using
tickets. | This list contains all users that will be notified about changes made to this ticket. These roles will be notified: Reporter, Owner, Subscriber, Participant
|
Replying to huiyong:
Issue resolved. The reported mismatch will no more exist due to the adoption of JCTVC-I0116, which fixes TMVP refIdx = 0 and hence removes the condition itself where the mismatch occured.