Opened 6 years ago
Closed 6 years ago
#213 closed defect (fixed)
M0277 FIX_PCM_DISABLEFILTER broken
Reported by: | bheng | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | VTM-4.1 |
Component: | VTM | Version: | VTM-4.0 |
Keywords: | Cc: | ksuehring, XiangLi, fbossen, jvet@… |
Description (last modified by ksuehring)
1.) The following code to skip over PCM pixels fails to move the destination pixel pointer pRec before continuing to the next block. Therefore, the destination pointer will be misaligned with the source and the rest of the row will be corrupted.
if( isPCMFilterDisabled && cl.classIdx == AdaptiveLoopFilter::m_ALF_UNUSED_CLASSIDX && transposeIdx == AdaptiveLoopFilter::m_ALF_UNUSED_TRANSPOSIDX ) { continue; }
2.) The code below used to determine if a chroma CU is PCM uses the wrong locations. The locations (i,j) are chroma pixel locations. The code below treats them as if they were luma pixel locations instead. So the CU lookup will be wrong.
Position pos(i, j); CodingUnit* cu = isDualTree ? cs.getCU(recalcPosition(nChromaFormat, CH_L, CH_C, pos), CH_C) : cs.getCU(pos, CH_L);
Change history (2)
comment:1 Changed 6 years ago by bheng
comment:2 Changed 6 years ago by ksuehring
- Description modified (diff)
- Milestone set to VTM-4.1
- Resolution set to fixed
- Status changed from new to closed
The fix was merged.
Note: See TracTickets for help on using tickets.
One potential fix can be found here:
https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/merge_requests/346