Commit afd7ed42 authored by Frank Bossen's avatar Frank Bossen
Browse files

Merge branch 'ibc_mode_fix' into 'master'

fix IBC indication in reshaper and hash ME

See merge request jvet/VVCSoftware_VTM!262
parents c3dc1a8d 07fa9ff0
......@@ -1920,8 +1920,10 @@ SPSNext::SPSNext( SPS& sps )
, m_ImvMode ( IMV_OFF )
, m_MTTMode ( 0 )
, m_compositeRefEnabled ( false )
#if !JVET_M0483_IBC
, m_IBCMode ( 0 )
// ADD_NEW_TOOL : (sps extension) add tool enabling flags here (with "false" as default values)
#endif
// ADD_NEW_TOOL : (sps extension) add tool enabling flags here (with "false" as default values)
{
}
......
......@@ -877,7 +877,9 @@ private:
unsigned m_MTTMode;
bool m_compositeRefEnabled; //composite longterm reference
#if !JVET_M0483_IBC
unsigned m_IBCMode;
#endif
public:
SPSNext( SPS& sps );
......@@ -958,8 +960,10 @@ public:
bool getUseMHIntra () const { return m_MHIntra; }
void setUseTriangle ( bool b ) { m_Triangle = b; }
bool getUseTriangle () const { return m_Triangle; }
#if !JVET_M0483_IBC
void setIBCMode (unsigned IBCMode) { m_IBCMode = IBCMode; }
unsigned getIBCMode () const { return m_IBCMode; }
#endif
};
......
......@@ -1502,12 +1502,20 @@ void EncSlice::encodeCtus( Picture* pcPic, const bool bCompressEntireSlice, cons
#endif
{
#if JVET_M0427_INLOOP_RESHAPER
#if !JVET_M0483_IBC
if (pcSlice->getSPS()->getUseReshaper() && m_pcLib->getReshaper()->getCTUFlag() && pcSlice->getSPS()->getSpsNext().getIBCMode())
#else
if (pcSlice->getSPS()->getUseReshaper() && m_pcLib->getReshaper()->getCTUFlag() && pcSlice->getSPS()->getIBCFlag())
#endif
cs.picture->getOrigBuf(COMPONENT_Y).rspSignal(m_pcLib->getReshaper()->getFwdLUT());
#endif
m_pcCuEncoder->getIbcHashMap().rebuildPicHashMap( cs.picture->getOrigBuf() );
#if JVET_M0427_INLOOP_RESHAPER
#if !JVET_M0483_IBC
if (pcSlice->getSPS()->getUseReshaper() && m_pcLib->getReshaper()->getCTUFlag() && pcSlice->getSPS()->getSpsNext().getIBCMode())
#else
if (pcSlice->getSPS()->getUseReshaper() && m_pcLib->getReshaper()->getCTUFlag() && pcSlice->getSPS()->getIBCFlag())
#endif
cs.picture->getOrigBuf().copyFrom(cs.picture->getTrueOrigBuf());
#endif
}
......
......@@ -1716,7 +1716,11 @@ bool InterSearch::xHashInterEstimation(PredictionUnit& pu, RefPicList& bestRefPi
RefPicList eRefPicList = (refList == 0) ? REF_PIC_LIST_0 : REF_PIC_LIST_1;
int refPicNumber = pu.cu->slice->getNumRefIdx(eRefPicList);
#if !JVET_M0483_IBC
if (pu.cs->slice->getSPS()->getSpsNext().getIBCMode() && eRefPicList == REF_PIC_LIST_0)
#else
if (pu.cs->slice->getSPS()->getIBCFlag() && eRefPicList == REF_PIC_LIST_0)
#endif
{
refPicNumber--;
}
......@@ -7464,4 +7468,4 @@ void InterSearch::symmvdCheckBestMvp(
}
}
}
#endif
\ No newline at end of file
#endif
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment