Ticket #34: obmcfix-patch.patch

File obmcfix-patch.patch, 1.6 KB (added by gordon, 9 years ago)
  • source/Lib/TLibCommon/TypeDef.h

    diff --git a/source/Lib/TLibCommon/TypeDef.h b/source/Lib/TLibCommon/TypeDef.h
    index a66908c..cfb1406 100644
    a b  
    4242#error Include CommonDef.h not TypeDef.h
    4343#endif
    4444
     45#define OBMC_FIX_TEST 1 // saving the correct pred.
     46
    4547#include <vector>
    4648
    4749//! \ingroup TLibCommon
  • source/Lib/TLibEncoder/TEncCu.cpp

    diff --git a/source/Lib/TLibEncoder/TEncCu.cpp b/source/Lib/TLibEncoder/TEncCu.cpp
    index 5a143e6..eb9e0c2 100644
    a b Void TEncCu::xCheckRDCostInter( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, 
    42664266    }
    42674267#if JVET_C0024_QTBT
    42684268    rpcTempCU->copyPartFrom( m_pppcTempCUWoOBMC[uiWIdx][uiHIdx], 0, uhDepth, rpcTempCU->getWidth(0), rpcTempCU->getHeight(0) );
     4269#if OBMC_FIX_TEST
     4270    if (nOBMC == 0)
     4271    m_pppcPredYuvWoOBMC[uiWIdx][uiHIdx]->copyToPartYuv(m_pppcPredYuvTemp[uiWIdx][uiHIdx], 0);
     4272#endif
    42694273#else
    42704274    rpcTempCU->copyPartFrom( m_ppcTempCUWoOBMC[uhDepth], 0, uhDepth );
    42714275#endif
    Void TEncCu::xCheckRDCostInter( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, 
    42764280#endif
    42774281#if JVET_C0024_QTBT
    42784282    m_pcPredSearch->encodeResAndCalcRdInterCU( rpcTempCU, m_pppcOrigYuv[uiWIdx][uiHIdx],
     4283#if OBMC_FIX_TEST
     4284        // no special treatment now
     4285#else
    42794286#if COM16_C806_OBMC
    42804287    nOBMC == 0 ? m_pppcPredYuvWoOBMC[uiWIdx][uiHIdx] :
    42814288#endif
     4289#endif
    42824290    m_pppcPredYuvTemp[uiWIdx][uiHIdx], m_pppcResiYuvTemp[uiWIdx][uiHIdx], m_pppcResiYuvBest[uiWIdx][uiHIdx], m_pppcRecoYuvTemp[uiWIdx][uiHIdx], false
    42834291#else
    42844292  m_pcPredSearch->encodeResAndCalcRdInterCU( rpcTempCU, m_ppcOrigYuv[uhDepth],