Changeset 1282 in 3DVCSoftware for branches/HTM-14.1-update-dev1/source


Ignore:
Timestamp:
18 Jul 2015, 09:07:20 (9 years ago)
Author:
tech
Message:

Fixed pruning.

Location:
branches/HTM-14.1-update-dev1/source/Lib
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/Debug.cpp

    r1200 r1282  
    154154
    155155#if DEBUG_STRING
    156 EnvVar DebugOptionList::DebugString_Structure ("DEBUG_STRUCTURE",   "0", "Produce output on chosen structure                        bit0=intra, bit1=inter");
    157 EnvVar DebugOptionList::DebugString_Pred      ("DEBUG_PRED",        "0", "Produce output on prediction data.                        bit0=intra, bit1=inter");
    158 EnvVar DebugOptionList::DebugString_Resi      ("DEBUG_RESI",        "0", "Produce output on residual data.                          bit0=intra, bit1=inter");
    159 EnvVar DebugOptionList::DebugString_Reco      ("DEBUG_RECO",        "0", "Produce output on reconstructed data.                     bit0=intra, bit1=inter");
     156EnvVar DebugOptionList::DebugString_Structure ("DEBUG_STRUCTURE",   "3", "Produce output on chosen structure                        bit0=intra, bit1=inter");
     157EnvVar DebugOptionList::DebugString_Pred      ("DEBUG_PRED",        "3", "Produce output on prediction data.                        bit0=intra, bit1=inter");
     158EnvVar DebugOptionList::DebugString_Resi      ("DEBUG_RESI",        "3", "Produce output on residual data.                          bit0=intra, bit1=inter");
     159EnvVar DebugOptionList::DebugString_Reco      ("DEBUG_RECO",        "3", "Produce output on reconstructed data.                     bit0=intra, bit1=inter");
    160160EnvVar DebugOptionList::DebugString_InvTran   ("DEBUG_INV_QT",      "0", "Produce output on inverse-quantiser and transform stages. bit0=intra, bit1=inter");
    161161#endif
  • branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/TComDataCU.cpp

    r1279 r1282  
    35653565          continue;
    35663566        }
     3567#if NH_3D_FIX_PRUNING
     3568        if  (   ivCandDir[0] == m_mergCands[MRG_A1+i].m_uDir                                &&
     3569            ( ( ivCandDir[0] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0]  ) &&
     3570            ( ( ivCandDir[0] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1]  )
     3571           )
     3572#else
    35673573        if (ivCandDir[0] == m_mergCands[MRG_A1+i].m_uDir && tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1])
     3574#endif
    35683575        {
    35693576          m_mergCands[MRG_A1+i].m_bAvailable = false;
     
    35743581    if (bIsDepth)
    35753582    {
     3583#if NH_3D_FIX_PRUNING
     3584      if  ( m_mergCands[MRG_T].m_bAvailable &&   ivCandDir[0] == m_mergCands[MRG_T].m_uDir  &&
     3585        ( ( ivCandDir[0] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_T].m_cMvField[0]  ) &&
     3586        ( ( ivCandDir[0] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_T].m_cMvField[1]  )
     3587        )
     3588#else
    35763589      if (m_mergCands[MRG_T].m_bAvailable && ivCandDir[0] == m_mergCands[MRG_T].m_uDir && tmpMV[0]==m_mergCands[MRG_T].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_T].m_cMvField[1])
     3590#endif
    35773591      {
    35783592        bRemoveSpa                      = true;
     
    36703684        continue;
    36713685      }
     3686#if NH_3D_FIX_PRUNING
     3687      if  ( ivCandDir[1] == m_mergCands[MRG_A1+i].m_uDir  &&
     3688        ( ( ivCandDir[1] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0]  ) &&
     3689        ( ( ivCandDir[1] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1]  )
     3690        )
     3691#else
    36723692      if (ivCandDir[1] == m_mergCands[MRG_A1+i].m_uDir && tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1])
     3693#endif
    36733694      {
    36743695        bRemoveSpa                      = true;
  • branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/TComRom.cpp

    r1279 r1282  
    537537const Bool g_bEncDecTraceEnable  = true;
    538538const Bool g_bEncDecTraceDisable = false;
    539 Bool   g_HLSTraceEnable = true;
     539Bool   g_HLSTraceEnable = false;
    540540Bool   g_bJustDoIt = false;
    541541UInt64 g_nSymbolCounter = 0;
     
    686686  }
    687687  Bool stopFlag = false;
    688   if ( g_stopAtPos && poc == 16 && layerId == 1 )
     688  if ( g_stopAtPos && poc == 6 && layerId == 2 )
    689689  {
    690690    Bool stopAtCU = true;
    691691    if ( stopAtCU )        // Stop at CU with specific size
    692692    {   
    693       stopFlag = ( cuPelX  == 0 ) && ( cuPelY  == 0 ) && ( cuWidth == 32 ) && ( cuHeight == 32 );
     693      stopFlag = ( cuPelX  == 128 ) && ( cuPelY  == 160 ) && ( cuWidth == 32 ) && ( cuHeight == 32 );
    694694    }
    695695    else
  • branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/TComRom.h

    r1279 r1282  
    196196 Void           writeToTraceFile( const Char* symbolName, Int val, Bool doIt );
    197197 Void           writeToTraceFile( const Char* symbolName, Bool doIt );
    198  incSymbolCounter incSymbolCounter();         
     198 UInt64        incSymbolCounter();         
    199199 Void           stopAtPos       ( Int poc, Int layerId, Int cuPelX, Int cuPelY, Int cuWidth, Int cuHeight );           
    200200#endif
  • branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/TypeDef.h

    r1279 r1282  
    9797#define NH_3D_NBDV_REF                    1
    9898#define NH_3D_MLC                         1
     99#define NH_3D_FIX_PRUNING                 1
    99100#define NH_3D_VSP                         1
    100101#define NH_3D_IV_MERGE                    1
  • branches/HTM-14.1-update-dev1/source/Lib/TLibEncoder/TEncCu.cpp

    r1279 r1282  
    716716            if( rpcTempCU->getSlice()->getDepthBasedBlkPartFlag() && rpcTempCU->getSlice()->getDefaultRefViewIdxAvailableFlag() )
    717717            {
    718               xCheckRDCostInterDBBP( rpcBestCU, rpcTempCU, false );
     718              xCheckRDCostInterDBBP( rpcBestCU, rpcTempCU DEBUG_STRING_PASS_INTO(sDebug), false );
    719719              rpcTempCU->initEstData( uiDepth, iQP, bIsLosslessMode  );
    720720#if NH_3D_VSP  || NH_3D_DBBP
     
    19161916  for( Int nARPW=nARPWMax; nARPW >= 0 ; nARPW-- )
    19171917  {
     1918#if NH_3D
     1919#if DEBUG_STRING
     1920    bestStr.clear();
     1921#endif
     1922#endif
    19181923#if NH_3D_IV_MERGE
    19191924    memset( mergeCandBuffer, 0, MRG_MAX_NUM_CANDS_MEM*sizeof(Int) );
     
    25102515
    25112516#if NH_3D_DBBP
    2512 Void TEncCu::xCheckRDCostInterDBBP( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, Bool bUseMRG )
     2517Void TEncCu::xCheckRDCostInterDBBP( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU  DEBUG_STRING_FN_DECLARE(sDebug), Bool bUseMRG )
    25132518{
     2519  DEBUG_STRING_NEW(sTest)
    25142520  AOF( !rpcTempCU->getSlice()->getIsDepth() );
    25152521 
     
    25822588    rpcTempCU->getDBBPTmpData()->eVirtualPartSize = eVirtualPartSize;
    25832589    rpcTempCU->getDBBPTmpData()->uiVirtualPartIndex = uiSegment;
    2584     m_pcPredSearch->predInterSearch( rpcTempCU, m_ppcOrigYuvDBBP[uhDepth], apPredYuv[uiSegment], m_ppcResiYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], false, bUseMRG );
     2590    m_pcPredSearch->predInterSearch( rpcTempCU, m_ppcOrigYuvDBBP[uhDepth], apPredYuv[uiSegment], m_ppcResiYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth] DEBUG_STRING_PASS_INTO(sTest), false, bUseMRG );
    25852591    m_pcRdCost->setUseMask(false);
    25862592   
     
    26412647  Int bitDepthY = rpcTempCU->getSlice()->getSPS()->getBitDepth(CHANNEL_TYPE_LUMA);
    26422648  m_pcPredSearch->combineSegmentsWithMask(apPredYuv, m_ppcPredYuvTemp[uhDepth], pMask, uiWidth, uiHeight, 0, eVirtualPartSize, bitDepthY);
    2643   m_pcPredSearch->encodeResAndCalcRdInterCU( rpcTempCU, m_ppcOrigYuv[uhDepth], m_ppcPredYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], m_ppcResiYuvBest[uhDepth], m_ppcRecoYuvTemp[uhDepth], false );
     2649  m_pcPredSearch->encodeResAndCalcRdInterCU( rpcTempCU, m_ppcOrigYuv[uhDepth], m_ppcPredYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], m_ppcResiYuvBest[uhDepth], m_ppcRecoYuvTemp[uhDepth], false DEBUG_STRING_PASS_INTO(sTest) );
    26442650 
    26452651  xCheckDQP( rpcTempCU );
    2646   xCheckBestMode(rpcBestCU, rpcTempCU, uhDepth);
     2652  xCheckBestMode(rpcBestCU, rpcTempCU, uhDepth  DEBUG_STRING_PASS_INTO(sDebug) DEBUG_STRING_PASS_INTO(sTest) );
    26472653}
    26482654#endif
     
    27152721
    27162722  xCheckDQP( rpcTempCU );
    2717   xCheckBestMode(rpcBestCU, rpcTempCU, uiDepth);
     2723  xCheckBestMode(rpcBestCU, rpcTempCU, uiDepth  DEBUG_STRING_PASS_INTO(sDebug) DEBUG_STRING_PASS_INTO(sTest) );
    27182724}
    27192725#endif
  • branches/HTM-14.1-update-dev1/source/Lib/TLibEncoder/TEncCu.h

    r1279 r1282  
    157157#if NH_3D_DBBP
    158158  Void  xInvalidateOriginalSegments( TComYuv* pOrigYuv, TComYuv* pOrigYuvTemp, Bool* pMask, UInt uiValidSegment );
    159   Void  xCheckRDCostInterDBBP( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, Bool bUseMRG = false );
     159  Void  xCheckRDCostInterDBBP( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU  DEBUG_STRING_FN_DECLARE(sDebug), Bool bUseMRG = false );
    160160#endif
    161161#if NH_3D_DIS
Note: See TracChangeset for help on using the changeset viewer.