Opened 5 years ago

Closed 5 years ago

#718 closed defect (duplicate)

Checking BdpcmFlag when enabling PDPC

Reported by: wzeng Owned by:
Priority: minor Milestone:
Component: spec Version: VVC D7 vE
Keywords: Cc: ksuehring, bbross, XiangLi, fbossen, jvet@…


In spec text, when determining the enable flag of PDPC, one of the condition is:
– BdpcmFlag[ xTbCmp ][ yTbCmp ][ cIdx ] is equal to 0

But in VTM7.0, there is no such condition check.
Not sure what the design intention here. Suggest to align text and SW in this aspect.

Change history (4)

comment:1 Changed 5 years ago by chiaming

In VTM7.0, BDPCM modes will call predIntraAng(...), then call xPredIntraBDPCM(...). And inside xPredIntraBDPCM(...), no PDPC process is applied to BDPCM modes.

comment:2 Changed 5 years ago by wzeng

PDPC process is applied after xPredIntraBDPCM(). The gating flag is m_ipaParam.applyPDPC which does not consider BdpcmFlag.

switch (uiDirMode)

case(PLANAR_IDX): xPredIntraPlanar(srcBuf, piPred); break;
case(DC_IDX): xPredIntraDc(srcBuf, piPred, channelType, false); break;


case(BDPCM_IDX): xPredIntraBDPCM(srcBuf, piPred, isLuma(compID) ?>bdpcmMode :>bdpcmModeChroma, clpRng); break;


case(BDPCM_IDX): xPredIntraBDPCM(srcBuf, piPred,>bdpcmMode, clpRng); break;


default: xPredIntraAng(srcBuf, piPred, channelType, clpRng); break;


if (m_ipaParam.applyPDPC)



comment:3 Changed 5 years ago by chiaming

The mentioned "if (m_ipaParam.applyPDPC)" condition is used for applying PDPC process to PLANAR and DC modes.

if (m_ipaParam.applyPDPC)

if (uiDirMode == PLANAR_IDX | | uiDirMode == DC_IDX)


comment:4 Changed 5 years ago by wzeng

  • Resolution set to duplicate
  • Status changed from new to closed

Thanks for pointing it out. I misunderstood it here, will close the ticket.

Note: See TracTickets for help on using tickets.