diff --git a/source/Lib/CommonLib/InterPrediction.cpp b/source/Lib/CommonLib/InterPrediction.cpp index c5eab4b7e396f5235b058b373bd939bb707f8a50..28b7999aaf6c64a74fe4197c29f7bff54d0061f6 100644 --- a/source/Lib/CommonLib/InterPrediction.cpp +++ b/source/Lib/CommonLib/InterPrediction.cpp @@ -654,6 +654,7 @@ void InterPrediction::xPredInterBlk ( const ComponentID& compID, const Predictio if (isCPR) { xFrac = yFrac = 0; + JVET_J0090_SET_CACHE_ENABLE( false ); } #endif xFrac <<= VCEG_AZ07_MV_ADD_PRECISION_BIT_FOR_STORE - iAddPrecShift; @@ -726,8 +727,8 @@ void InterPrediction::xPredInterBlk ( const ComponentID& compID, const Predictio #else m_if.filterVer(compID, (Pel*) tmpBuf.buf + ((vFilterSize >> 1) - 1) * tmpBuf.stride, tmpBuf.stride, dstBuf.buf, dstBuf.stride, width, height, yFrac, false, rndRes, chFmt, clpRng); #endif - JVET_J0090_SET_CACHE_ENABLE( true ); } + JVET_J0090_SET_CACHE_ENABLE( true ); #if JVET_L0256_BIO if (bioApplied && compID == COMPONENT_Y) { @@ -1108,7 +1109,9 @@ void InterPrediction::bioSampleExtendBilinearFilter(Pel const* src, int srcStrid tmpBuf.stride = width; m_if.filterHor(COMPONENT_Y, pSrc - ((vFilterSize >> 1) - 1) * srcStride, srcStride, tmpBuf.buf, tmpBuf.stride, widthTmp, heightTmp + vFilterSize - 1, fracX, false, fmt, clpRng, 1); + JVET_J0090_SET_CACHE_ENABLE( false ); m_if.filterVer(COMPONENT_Y, tmpBuf.buf + ((vFilterSize >> 1) - 1) * tmpBuf.stride, tmpBuf.stride, pDst, dstStride, widthTmp, heightTmp, fracY, false, isLast, fmt, clpRng, 1); + JVET_J0090_SET_CACHE_ENABLE( true ); } } } diff --git a/source/Lib/CommonLib/InterPrediction.h b/source/Lib/CommonLib/InterPrediction.h index 4b149da55575f70727750ad165ce4d13f34e3e27..75e803d2eb6f3806df5e64852bb3fabf8bd8f6ea 100644 --- a/source/Lib/CommonLib/InterPrediction.h +++ b/source/Lib/CommonLib/InterPrediction.h @@ -154,6 +154,9 @@ protected: #if JVET_L0293_CPR void xChromaMC(PredictionUnit &pu, PelUnitBuf& pcYuvPred); #endif +#if JVET_J0090_MEMORY_BANDWITH_MEASURE + CacheModel *m_cacheModel; +#endif public: InterPrediction(); virtual ~InterPrediction();