Opened 2 years ago

Closed 2 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:2 Changed 2 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.