Opened 6 years ago
Closed 6 years ago
#130 closed defect (fixed)
Incorrect scaling operation in triangle list derivation
Reported by: | rlliao | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | VTM-3.1 |
Component: | VTM | Version: | VTM-3.0 |
Keywords: | Cc: | ksuehring, XiangLi, fbossen, jvet@… |
Description
In UnitTool.cpp PU::getTriangleMergeCandidates, the scaling process in averaging L0 and L1 motion vectors of a bi-prediction candidate is incorrect. When the reference picture of L1 mv is the same as L0 motion vector, scaling is still applied to L1 mv. Specifically:
aveMv = aveMv.scaleMv( xGetDistScaleFactor( curPicPoc, refPicPocL0, curPicPoc, refPicPocL1 ) );
Should be:
int32_t distscale = xGetDistScaleFactor( curPicPoc, refPicPocL0,
curPicPoc, refPicPocL1 );
if( distscale != 4096 )
{
aveMv = aveMv.scaleMv( distscale );
}
Attachments (1)
Change history (2)
Changed 6 years ago by rlliao
comment:1 Changed 6 years ago by XiangLi
- Milestone set to VTM-3.1
- Resolution set to fixed
- Status changed from new to closed
Note: See TracTickets for help on using tickets.
Fixed in https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/merge_requests/130.