Changeset 647 in 3DVCSoftware


Ignore:
Timestamp:
19 Oct 2013, 17:30:33 (11 years ago)
Author:
tech
Message:

Macro removal part 2.

Location:
branches/HTM-8.2-dev0-Cleanup/source
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-8.2-dev0-Cleanup/source/App/TAppEncoder/TAppEncCfg.cpp

    r646 r647  
    13921392     xConfirmPara( allEqual , "Each layer shall have a different position in scalability space." );
    13931393
    1394 #if !H_3D_FCO_E0163
     1394#if !H_3D_FCO
    13951395     if ( numDiff  == 1 )
    13961396     {
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComDataCU.cpp

    r646 r647  
    26562656  // check prediction mode
    26572657  UInt uiLumaPredMode = getLumaIntraDir( uiAbsPartIdx ); 
    2658 #if LGE_SDC_REMOVE_DC_E0158
    26592658  if( uiLumaPredMode == PLANAR_IDX || ( getDimType( uiLumaPredMode ) == DMM1_IDX && !isDimDeltaDC( uiLumaPredMode ) ) )
    2660 #else
    2661   if( uiLumaPredMode == DC_IDX || uiLumaPredMode == PLANAR_IDX || ( getDimType( uiLumaPredMode ) == DMM1_IDX && !isDimDeltaDC( uiLumaPredMode ) ) )
    2662 #endif
    26632659    return true;
    26642660 
     
    35363532    UInt uiPartIdxCenter;
    35373533    xDeriveCenterIdx( uiPUIdx, uiPartIdxCenter );   
    3538 #if H_3D_FCO_E0163
     3534#if H_3D_FCO
    35393535    TComPic * pcTexturePic = m_pcSlice->getTexturePic();
    35403536    TComDataCU *pcTextureCU = 0;
     
    35453541#endif
    35463542 
    3547 #if H_3D_FCO_E0163
     3543#if H_3D_FCO
    35483544    if ( pcTextureCU && pcTexturePic->getReconMark() && !pcTextureCU->isIntra( uiPartIdxCenter ) )
    35493545#else
     
    54875483    xDeriveCenterIdx(uiPartIdx, uiPartIdxCenter );
    54885484
    5489     ///*** Derive bottom right neighbour position ***
    5490 #if !SEC_SIMPLIFIED_NBDV_E0142
    5491     Int iLCUIdxRBNb  = -1;   
    5492     Int iPartIdxRBNb = -1;
    5493     xDeriveRightBottomNbIdx(iLCUIdxRBNb, iPartIdxRBNb );
    5494 #endif
    5495 
    54965485    ///*** Search temporal candidate pictures for disparity vector ***
    54975486    const Int iNumCandPics = getPic()->getNumDdvCandPics();
     
    55115500      }
    55125501
    5513 #if !SEC_SIMPLIFIED_NBDV_E0142
    5514       // Check BR and Center       
    5515       for(Int curPosition = 0; curPosition < 2; curPosition++)
    5516       {
    5517 #endif
    5518         Bool bCheck = false;
    5519 #if !SEC_SIMPLIFIED_NBDV_E0142
    5520         if ( curPosition == 0 && iLCUIdxRBNb >= 0 )
    5521 #if MTK_NBDV_TN_FIX_E0172
    5522           bCheck = xGetColDisMV( curCandPic, eCurRefPicList, curCandPicRefIdx, iLCUIdxRBNb, iPartIdxRBNb,  cColMv, iTargetViewIdx, iTStartViewIdx);
     5502      Bool bCheck = xGetColDisMV( curCandPic, eCurRefPicList, curCandPicRefIdx, uiLCUIdx,   uiPartIdxCenter,  cColMv, iTargetViewIdx, iTStartViewIdx );
     5503
     5504      if( bCheck )
     5505      {
     5506        clipMv(cColMv);
     5507        pDInfo->m_acNBDV = cColMv;
     5508        pDInfo->m_aVIdxCan  = iTargetViewIdx;
     5509
     5510#if H_3D_NBDV_REF
     5511        TComPic* picDepth = NULL;   
     5512#if H_3D_FCO_VSP_DONBDV_E0163
     5513        picDepth  = getSlice()->getIvPic(true, getSlice()->getViewIndex() );
     5514        if ( picDepth->getPicYuvRec() != NULL  ) 
     5515        {
     5516          cColMv.setZero();
     5517        }
     5518        else // Go back with virtual depth
     5519        {
     5520          picDepth = getSlice()->getIvPic( true, iTargetViewIdx );
     5521        }
     5522
     5523        assert(picDepth != NULL);
    55235524#else
    5524           bCheck = xGetColDisMV( eCurRefPicList, curCandPicRefIdx, iLCUIdxRBNb, iPartIdxRBNb,  cColMv, iTargetViewIdx, iTStartViewIdx);
    5525 #endif
    5526 
    5527         if (curPosition == 1 )
    5528 #endif
    5529 #if MTK_NBDV_TN_FIX_E0172
    5530           bCheck = xGetColDisMV( curCandPic, eCurRefPicList, curCandPicRefIdx, uiLCUIdx,   uiPartIdxCenter,  cColMv, iTargetViewIdx, iTStartViewIdx );
    5531 #else
    5532           bCheck = xGetColDisMV( eCurRefPicList, curCandPicRefIdx, uiLCUIdx,   uiPartIdxCenter,  cColMv, iTargetViewIdx, iTStartViewIdx );
    5533 #endif
    5534 
    5535         if( bCheck )
    5536         {
    5537           clipMv(cColMv);
    5538           pDInfo->m_acNBDV = cColMv;
    5539           pDInfo->m_aVIdxCan  = iTargetViewIdx;
    5540 
    5541 #if H_3D_NBDV_REF
    5542           TComPic* picDepth = NULL;   
    5543 #if H_3D_FCO_VSP_DONBDV_E0163
    5544           picDepth  = getSlice()->getIvPic(true, getSlice()->getViewIndex() );
    5545           if ( picDepth->getPicYuvRec() != NULL  ) 
    5546           {
    5547             cColMv.setZero();
    5548           }
    5549           else // Go back with virtual depth
    5550           {
    5551             picDepth = getSlice()->getIvPic( true, iTargetViewIdx );
    5552           }
    5553 
    5554           assert(picDepth != NULL);
    5555 #else
    5556           picDepth = getSlice()->getIvPic( true, iTargetViewIdx );
    5557           assert(picDepth != NULL);
    5558 #endif
    5559           if (picDepth && bDepthRefine)
    5560             estimateDVFromDM(iTargetViewIdx, uiPartIdx, picDepth, uiPartAddr, &cColMv );
    5561 
    5562           pDInfo->m_acDoNBDV  = cColMv;
     5525        picDepth = getSlice()->getIvPic( true, iTargetViewIdx );
     5526        assert(picDepth != NULL);
     5527#endif
     5528        if (picDepth && bDepthRefine)
     5529          estimateDVFromDM(iTargetViewIdx, uiPartIdx, picDepth, uiPartAddr, &cColMv );
     5530
     5531        pDInfo->m_acDoNBDV  = cColMv;
    55635532#endif //H_3D_NBDV_REF
    5564           return true;
    5565         }
    5566 #if !SEC_SIMPLIFIED_NBDV_E0142
    5567       }
    5568 #endif
     5533        return true;
     5534      }
    55695535    }
    55705536  }
     
    55795545  if ( xCheckSpatialNBDV( pcTmpCU, uiIdx, pDInfo, bCheckMcpDv, &cIDVInfo, DVFROM_LEFT
    55805546#if H_3D_NBDV_REF
    5581   , bDepthRefine
     5547    , bDepthRefine
    55825548#endif
    55835549    ) )
     
    55915557    if ( xCheckSpatialNBDV( pcTmpCU, uiIdx, pDInfo, bCheckMcpDv, &cIDVInfo, DVFROM_ABOVE
    55925558#if H_3D_NBDV_REF
    5593   , bDepthRefine
    5594 #endif
    5595     ) )
     5559      , bDepthRefine
     5560#endif
     5561      ) )
    55965562      return true;
    55975563  }
    5598 
    5599 #if !SEC_SIMPLIFIED_NBDV_E0142
    5600   //// ******* Get disparity from above right block ******* /////
    5601   pcTmpCU = getPUAboveRight(uiIdx, uiPartIdxRT, true);
    5602   if(pcTmpCU != NULL )
    5603   {
    5604     bCheckMcpDv = ( ( getAddr() - pcTmpCU->getAddr() ) == 0);
    5605     if ( xCheckSpatialNBDV( pcTmpCU, uiIdx, pDInfo, bCheckMcpDv, &cIDVInfo, DVFROM_ABOVERIGHT
    5606 #if H_3D_NBDV_REF
    5607   , bDepthRefine
    5608 #endif
    5609     ) )
    5610       return true;
    5611   }
    5612 
    5613   //// ******* Get disparity from below left block ******* /////
    5614   pcTmpCU = getPUBelowLeft(uiIdx, uiPartIdxLB, true);
    5615   if( pcTmpCU != NULL )
    5616   {
    5617     bCheckMcpDv = true;
    5618     if ( xCheckSpatialNBDV( pcTmpCU, uiIdx, pDInfo, bCheckMcpDv, &cIDVInfo, DVFROM_LEFTBELOW
    5619 #if H_3D_NBDV_REF
    5620   , bDepthRefine
    5621 #endif
    5622     ) )
    5623       return true;
    5624   }
    5625 
    5626   //// ******* Get disparity from above left block ******* /////
    5627   pcTmpCU = getPUAboveLeft(uiIdx, (m_uiAbsIdxInLCU + uiPartAddr), true);
    5628   assert(uiPartIdxLT == (m_uiAbsIdxInLCU + uiPartAddr));
    5629 
    5630   if( pcTmpCU != NULL )
    5631   {
    5632     bCheckMcpDv = (( getAddr() - pcTmpCU->getAddr() ) <= 1);
    5633     if ( xCheckSpatialNBDV( pcTmpCU, uiIdx, pDInfo, bCheckMcpDv, &cIDVInfo, DVFROM_ABOVELEFT
    5634 #if H_3D_NBDV_REF
    5635   , bDepthRefine
    5636 #endif
    5637     ) )
    5638       return true;
    5639   }
    5640 #endif
    56415564
    56425565  //// ******* Search MCP blocks ******* /////
     
    57475670  Int iPictureHeight = pcBaseViewDepthPicYuv->getHeight();
    57485671 
    5749 #if NTT_DoNBDV_VECTOR_CLIP_E0141
    57505672  Int depthStartPosX = Clip3(0,   iPictureWidth - 1,  iBlkX + ((mv->getHor()+2)>>2));
    57515673  Int depthStartPosY = Clip3(0,   iPictureHeight - 1, iBlkY + ((mv->getVer()+2)>>2));
    57525674  Int depthEndPosX   = Clip3(0,   iPictureWidth - 1,  iBlkX + iBlkWidth - 1 + ((mv->getHor()+2)>>2));
    57535675  Int depthEndPosY   = Clip3(0,   iPictureHeight - 1, iBlkY + iBlkHeight - 1 + ((mv->getVer()+2)>>2));
    5754 #else
    5755   Int depthStartPosX = Clip3(0,   iPictureWidth - iBlkWidth,  iBlkX + ((mv->getHor()+2)>>2));
    5756   Int depthStartPosY = Clip3(0,   iPictureHeight- iBlkHeight,  iBlkY + ((mv->getVer()+2)>>2));
    5757   Int depthEndPosX   = Clip3(0,   iPictureWidth - 1,  iBlkX + iBlkWidth - 1 + ((mv->getHor()+2)>>2));
    5758   Int depthEndPosY   = Clip3(0,   iPictureHeight - 1,  iBlkY + iBlkHeight - 1 + ((mv->getVer()+2)>>2));
    5759 #endif
    57605676
    57615677  Pel* depthTL  = pcBaseViewDepthPicYuv->getLumaAddr();
     
    58485764          assert( uiMvpDvPos < IDV_CANDS );
    58495765          paIDVInfo->m_acMvCand[iList][ uiMvpDvPos ] = TComMv( cMvPred.getIDVHor(), cMvPred.getIDVVer() );
    5850           //Notes from QC: DvMCP is implemented in a way that doesnE½t carry the reference view identifier as NBDV. It only works for CTC and needs to be fixed to be aligned with other part of the NBDV design.
     5766          //Notes from QC: DvMCP is implemented in a way that doesnot carry the reference view identifier as NBDV. It only works for CTC and needs to be fixed to be aligned with other part of the NBDV design.
    58515767          paIDVInfo->m_aVIdxCan[iList][ uiMvpDvPos ] = cMvPred.getIDVVId();
    58525768          paIDVInfo->m_bAvailab[iList][ uiMvpDvPos ] = true;
     
    59205836}
    59215837#endif
    5922 #if MTK_NBDV_TN_FIX_E0172
     5838
    59235839Bool TComDataCU::xGetColDisMV( Int currCandPic, RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv , Int & iTargetViewIdx, Int & iStartViewIdx )
    5924 #else
    5925 Bool TComDataCU::xGetColDisMV( RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv , Int & iTargetViewIdx, Int & iStartViewIdx )
    5926 #endif
    59275840{
    59285841
     
    59405853    if(pColCU->getSlice()->isInterB())
    59415854    {
    5942         eColRefPicList = RefPicList(ilist);
     5855      eColRefPicList = RefPicList(ilist);
    59435856    }
    59445857
     
    59585871    else
    59595872    {
    5960 #if MTK_NBDV_TN_FIX_E0172
    59615873      if(getPic()->isTempIVRefValid(currCandPic, ilist,  iColRefIdx))
    59625874      {
    5963 #endif
    5964       rcMv = pColCU->getCUMvField(eColRefPicList)->getMv(uiPartUnitIdx);
    5965       rcMv.setIDVFlag(0);
    5966       iTargetViewIdx  = iColRefViewIdx ;
    5967       iStartViewIdx   = iColViewIdx   ;
    5968       return true;   
    5969 #if MTK_NBDV_TN_FIX_E0172
    5970       }
    5971 #endif
     5875        rcMv = pColCU->getCUMvField(eColRefPicList)->getMv(uiPartUnitIdx);
     5876        rcMv.setIDVFlag(0);
     5877        iTargetViewIdx  = iColRefViewIdx ;
     5878        iStartViewIdx   = iColViewIdx   ;
     5879        return true;   
     5880      }
    59725881    }
    59735882  }
     
    59765885}
    59775886#endif
    5978 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     5887#if  H_3D_FAST_TEXTURE_ENCODIN
    59795888Void
    59805889TComDataCU::getIVNStatus       ( UInt uiPartIdx,  DisInfo* pDInfo, Bool& bIVFMerge, Int& iIVFMaxD)
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComDataCU.h

    r646 r647  
    486486#endif
    487487  );
    488 #if MTK_NBDV_TN_FIX_E0172
    489488  Bool          xGetColDisMV      ( Int currCandPic, RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv, Int & iTargetViewIdx, Int & iStartViewIdx );
    490 #else
    491   Bool          xGetColDisMV      ( RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv, Int & iTargetViewIdx, Int & iStartViewIdx );
    492 #endif
    493489  Bool          getDisMvpCandNBDV ( DisInfo* pDInfo
    494490#if H_3D_NBDV_REF
     
    502498#endif //H_3D_NBDV_REF
    503499#endif
    504 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     500#if  H_3D_FAST_TEXTURE_ENCODIN
    505501  Void          getIVNStatus       ( UInt uiPartIdx,  DisInfo* pDInfo, Bool& bIVFMerge,  Int& iIVFMaxD);
    506502#endif
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComPic.cpp

    r646 r647  
    119119
    120120  /* initialize the texture to depth reference status */
    121 #if H_3D_FCO_E0163
     121#if H_3D_FCO
    122122  for (int j=0; j<2; j++)
    123123  {
     
    672672  return numDdvCandPics;
    673673}
    674 #endif
    675 #if MTK_NBDV_TN_FIX_E0172
     674
    676675Void TComPic::checkTemporalIVRef()
    677676{
     
    727726  return m_abTIVRINCurrRL[currCandPic][iColRefDir][iColRefIdx];
    728727}
    729 #endif
    730 #if MTK_TEXTURE_MRGCAND_BUGFIX_E0182
     728
    731729Void TComPic::checkTextureRef(  )
    732730{
    733731  TComSlice* pcCurrSlice = getSlice(getCurrSliceIdx());
    734732  TComPic* pcTextPic = pcCurrSlice->getTexturePic();
    735 #if H_3D_FCO_E0163
     733#if H_3D_FCO
    736734  if ( pcTextPic )
    737735  {
     
    759757
    760758  }
    761 #if H_3D_FCO_E0163
     759#if H_3D_FCO
    762760  }
    763761#endif
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComPic.h

    r646 r647  
    104104  RefPicList  m_eRapRefList;
    105105  Int         m_iNumDdvCandPics;
    106 #endif
    107 #if MTK_NBDV_TN_FIX_E0172
    108106  Bool        m_abTIVRINCurrRL  [2][2][MAX_NUM_REF]; //whether an inter-view reference picture with the same view index of the inter-view reference picture of temporal reference picture of current picture exists in current reference picture lists
    109 #endif
    110 #if MTK_TEXTURE_MRGCAND_BUGFIX_E0182 
    111107  Int         m_aiTexToDepRef  [2][MAX_NUM_REF];
    112108#endif
     
    224220  UInt          getRapRefIdx()                         {return m_uiRapRefIdx;       }
    225221  RefPicList    getRapRefList()                        {return m_eRapRefList;       }
    226 #endif
    227 #if MTK_NBDV_TN_FIX_E0172
    228   Void      checkTemporalIVRef();
    229   Bool      isTempIVRefValid(Int currCandPic, Int iTempRefDir, Int iTempRefIdx);
    230 #endif
    231 #if MTK_TEXTURE_MRGCAND_BUGFIX_E0182
    232   Void      checkTextureRef(  );
    233   Int       isTextRefValid(Int iTextRefDir, Int iTextRefIdx);
     222  Void          checkTemporalIVRef();
     223  Bool          isTempIVRefValid(Int currCandPic, Int iTempRefDir, Int iTempRefIdx);
     224  Void          checkTextureRef(  );
     225  Int           isTextRefValid(Int iTextRefDir, Int iTextRefIdx);
    234226#endif
    235227  /** transfer ownership of seis to this picture */
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComPrediction.cpp

    r646 r647  
    19761976  Int           uiColTexIntraDir = pcColTexCU->isIntra( uiTexPartIdx ) ? pcColTexCU->getLumaIntraDir( uiTexPartIdx ) : 255;
    19771977
    1978 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    19791978  assert( uiColTexIntraDir > DC_IDX && uiColTexIntraDir < 35 );
    19801979  return g_aauiWdgLstM3[g_aucConvertToBit[uiWidth]][uiColTexIntraDir-2].at(intraTabIdx);
    1981 #else
    1982   if( uiColTexIntraDir > DC_IDX && uiColTexIntraDir < 35 ) { return g_aauiWdgLstM3[g_aucConvertToBit[uiWidth]][uiColTexIntraDir-2].at(intraTabIdx); }
    1983   else                                                     { return g_dmmWedgeNodeLists[(g_aucConvertToBit[uiWidth])].at(intraTabIdx).getPatternIdx(); }
    1984 #endif
    19851980}
    19861981
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComRdCost.cpp

    r646 r647  
    484484}
    485485
    486 #if SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX
     486#if H_3D_FAST_DEPTH_INTRA
    487487
    488488UInt TComRdCost::calcVAR (Pel* pi0, Int stride, Int width, Int height, Int cuDepth)
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComRdCost.h

    r646 r647  
    235235  UInt    calcHAD(Int bitDepth, Pel* pi0, Int iStride0, Pel* pi1, Int iStride1, Int iWidth, Int iHeight );
    236236 
    237 #if SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX
     237#if H_3D_FAST_DEPTH_INTRA
    238238  UInt    calcVAR(Pel* pi0, Int stride, Int width, Int height, Int cuDepth);
    239239#endif 
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComRom.cpp

    r622 r647  
    347347{ //2x2   4x4   8x8 16x16 32x32 64x64
    348348     0,    7,   10,   11,   11,   13 };
    349 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
     349
    350350const UChar g_dmm3IntraTabIdxBits[6] =
    351351{ //2x2   4x4   8x8 16x16 32x32 64x64
    352352     0,    4,    7,    8,    8,    0 };
    353 #else
    354 const UChar g_dmm3IntraTabIdxBits[6] =
    355 { //2x2   4x4   8x8 16x16 32x32 64x64
    356      0,    6,    9,    9,    9,    0 };
    357 #endif
    358353
    359354extern std::vector< std::vector<TComWedgelet> >   g_dmmWedgeLists;
     
    614609std::vector< std::vector< std::vector<UInt> > > g_aauiWdgLstM3;
    615610
    616 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    617611Void initWedgeLists( Bool initNodeList )
    618 #else
    619 Void initWedgeLists( Bool initRefinements )
    620 #endif
    621612{
    622613  if( !g_dmmWedgeLists.empty() ) return;
     
    631622    g_dmmWedgeRefLists.push_back( acWedgeRefList );
    632623
    633 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    634624    if( initNodeList )
    635625    {
    636 #endif
    637     // create WedgeNodeList
    638     std::vector<TComWedgeNode> acWedgeNodeList;
    639     for( UInt uiPos = 0; uiPos < acWedgeList.size(); uiPos++ )
    640     {
    641       if( acWedgeList[uiPos].getIsCoarse() )
    642       {
    643         TComWedgeNode cWedgeNode;
    644         cWedgeNode.setPatternIdx( uiPos );
    645 
    646 #if !LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    647         if( initRefinements )
     626      // create WedgeNodeList
     627      std::vector<TComWedgeNode> acWedgeNodeList;
     628      for( UInt uiPos = 0; uiPos < acWedgeList.size(); uiPos++ )
     629      {
     630        if( acWedgeList[uiPos].getIsCoarse() )
    648631        {
    649 #endif
     632          TComWedgeNode cWedgeNode;
     633          cWedgeNode.setPatternIdx( uiPos );
     634
    650635          UInt uiRefPos = 0;
    651636          for( Int iOffS = -1; iOffS <= 1; iOffS++ )
     
    674659              {
    675660                if( iSx == (Int)acWedgeRefList[k].getStartX() &&
    676                     iSy == (Int)acWedgeRefList[k].getStartY() &&
    677                     iEx == (Int)acWedgeRefList[k].getEndX()   &&
    678                     iEy == (Int)acWedgeRefList[k].getEndY()      )
     661                  iSy == (Int)acWedgeRefList[k].getStartY() &&
     662                  iEx == (Int)acWedgeRefList[k].getEndX()   &&
     663                  iEy == (Int)acWedgeRefList[k].getEndY()      )
    679664                {
    680665                  if( acWedgeRefList[k].getRefIdx() != cWedgeNode.getPatternIdx() )
     
    694679            }
    695680          }
    696 #if !LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
     681          acWedgeNodeList.push_back( cWedgeNode );
    697682        }
    698 #endif
    699         acWedgeNodeList.push_back( cWedgeNode );
    700       }
    701     }
    702     g_dmmWedgeNodeLists.push_back( acWedgeNodeList );
    703 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    704   }
    705 #endif
    706   }
    707   return;
     683      }
     684      g_dmmWedgeNodeLists.push_back( acWedgeNodeList );
     685    }
     686  }
    708687}
    709688
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TComRom.h

    r622 r647  
    174174extern       std::vector< std::vector< std::vector<UInt> > > g_aauiWdgLstM3;
    175175
    176 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    177176Void initWedgeLists( Bool initNodeList = false );
    178 #else
    179 Void initWedgeLists( Bool initRefinements = false );
    180 #endif
    181177Void createWedgeList( UInt uiWidth, UInt uiHeight, std::vector<TComWedgelet> &racWedgeList, std::vector<TComWedgeRef> &racWedgeRefList, WedgeResolution eWedgeRes );
    182178Void addWedgeletToList( TComWedgelet cWedgelet, std::vector<TComWedgelet> &racWedgeList, std::vector<TComWedgeRef> &racWedgeRefList );
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibCommon/TypeDef.h

    r646 r647  
    9292                                              // QC_CU_NBDV_D0181
    9393                                              // SEC_DEFAULT_DV_D0112
    94                                               // MTK_DVMCP_FIX_E0172               1 // fix the mismatch between software and WD for DV derivation from DVMCP blocks, issue 2 in JCT3V-E0172
     94                                              // MTK_DVMCP_FIX_E0172       fix the mismatch between software and WD for DV derivation from DVMCP blocks, issue 2 in JCT3V-E0172
     95                                              // SEC_SIMPLIFIED_NBDV_E0142 Simplified NBDV, JCT3V-E0142 and JCT3V-E0190
     96                                              // MTK_NBDV_TN_FIX_E0172     fix the issue of DV derivation from the temporal neighboring blocks, issue 7 in JCT3V-E0172
     97                                              // MTK_TEXTURE_MRGCAND_BUGFIX_E0182  Bug fix for TEXTURE MERGING CANDIDATE     , JCT3V-E0182
    9598#define H_3D_ARP                          1   // Advanced residual prediction (ARP), JCT3V-D0177
    9699#define H_3D_IC                           1   // Illumination Compensation, JCT3V-B0045, JCT3V-C0046, JCT3V-D0060
     
    106109                                              // MERL_C0152: Basic VSP
    107110                                              // NBDV_DEFAULT_VIEWIDX_BUGFIX Bug fix for invalid default view index for NBDV
     111                                              // NTT_DoNBDV_VECTOR_CLIP_E0141 disparity vector clipping in DoNBDV, JCT3V-E0141 and JCT3V-E0209
     112
    108113#endif
    109114
     
    149154                                              // KWU_SDC_SIMPLE_DC_E0117 Simplified DC calculation for SDC
    150155                                              // SCU_HS_DMM4_REMOVE_DIV_E0242 DMM4 Division Removal
     156                                              // LGE_SDC_REMOVE_DC_E0158 Removal of DC mode from SDC
     157                                              // LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX 1   Removal of overlap between DMM3 and DMM1
     158
    151159#define H_3D_INTER_SDC                    1   // INTER SDC, Inter simplified depth coding
    152160                                              // LGE_INTER_SDC_E0156  Enable inter SDC for depth coding
    153 #define H_3D_FCO_E0163                          0   // Flexible coding order for 3D
     161#define H_3D_FCO                          0   // Flexible coding order for 3D
    154162
    155163
     
    157165// OTHERS
    158166                                              // MTK_SONY_PROGRESSIVE_MV_COMPRESSION_E0170 // Progressive MV Compression, JCT3V-E0170
    159 
    160 #define H_3D_REN_MAX_DEV_OUT              0  // Output maximal possible shift deviation
    161 
    162 /////////////////////////////////////////////////////////////////////////////////////////
    163 ///////////////////////////////////   HTM-8.0 INTEGRATIONS //////////////////////////////
    164 /////////////////////////////////////////////////////////////////////////////////////////
    165 
    166 #define MTK_FAST_TEXTURE_ENCODING_E0173   1   // Fast merge mode decision and early CU determination for texture component of dependent view, JCT3V-E0173
    167 
    168 
    169 #if H_3D_NBDV
    170 #define MTK_RVS_BUGFIX_E0172              1  // Bug fix for issues caused by reference view selection, JCT3V-E0172
    171 #define MTK_TEXTURE_MRGCAND_BUGFIX_E0182  1  // Bug fix for TEXTURE MERGING CANDIDATE     , JCT3V-E0182
    172 
    173 #if MTK_RVS_BUGFIX_E0172
    174 #define MTK_DIVMC_FIX_E0172               1 // fix the issue of derivation of disparity inter-view merge candidate, issue 5 in JCT3V-E0172
    175 #define MTK_NBDV_TN_FIX_E0172             1 // fix the issue of DV derivation from the temporal neighboring blocks, issue 7 in JCT3V-E0172
    176 #endif // MTK_RVS_BUGFIX_E0172
    177 
    178 #if H_3D_NBDV_REF
    179 #define NTT_DoNBDV_VECTOR_CLIP_E0141      1   // disparity vector clipping in DoNBDV, JCT3V-E0141 and JCT3V-E0209
    180 #define SEC_SIMPLIFIED_NBDV_E0142         1   // Simplified NBDV, JCT3V-E0142 and JCT3V-E0190
    181 #endif
    182 #endif // H_3D_NBDV
    183 
     167#define H_3D_REN_MAX_DEV_OUT              0   // Output maximal possible shift deviation
     168#define H_3D_FAST_TEXTURE_ENCODING        1   // Fast merge mode decision and early CU determination for texture component of dependent view, JCT3V-E0173
     169                                              // MTK_FAST_TEXTURE_ENCODING_E0173
    184170#if H_3D_DIM
    185 #define SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX     1   // Fast DMM and RBC Mode Selection
    186 #endif
    187 
    188 #if H_3D_FCO_E0163
    189 #define H_3D_FCO_VSP_DONBDV_E0163               1   // Adaptive depth reference for flexible coding order
    190 #else
    191 #define H_3D_FCO_VSP_DONBDV_E0163               0   // Adaptive depth reference for flexible coding order
    192 #endif
     171#define H_3D_FAST_DEPTH_INTRA             1   // Fast DMM and RBC Mode Selection
     172                                              // SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX
     173#endif
     174
    193175#endif // H_3D
    194176
    195177
    196 /////////////////////////////////////////////////////////////////////////////////////////
    197 ///////////////////////////////////   HTM-8.1 INTEGRATIONS //////////////////////////////
    198 /////////////////////////////////////////////////////////////////////////////////////////
    199 
    200 // Please put HTM-8.1 Integration defines here, when possible
     178// Rate Control
     179#define KWU_FIX_URQ                       1
     180#define KWU_RC_VIEWRC_E0227               0  ///< JCT3V-E0227, view-wise target bitrate allocation
     181#define KWU_RC_MADPRED_E0227              0  ///< JCT3V-E0227, inter-view MAD prediction
    201182
    202183
    203184/// FIXES
    204185#if H_MV
    205 #define H_MV_FIX_LID_PIC_HASH_SEI_T40                      1   // Fix wrong layer_id in decoded picture hash SEI
    206 #define H_MV5                                              1   // Update to MV-HEVC 5 HLS
     186#define H_MV5                             1   // Update to MV-HEVC 5 HLS
    207187#endif
    208188/////////////////////////////////////////////////////////////////////////////////////////
     
    217197#define H_3D_VSO_RM_ASSERTIONS            0   // Output VSO assertions
    218198#define H_3D_VSO_SYNTH_DIST_OUT           0   // Output of synthesized view distortion instead of depth distortion in encoder output
    219 
    220199#define H_3D_VSO_FIX                      0   // This fix should be enabled after verification
    221 
    222 #endif
    223 ////   ****** Neighbouring block-based Disparity Vector  *********
     200#endif
     201
     202////   ****** neighbouring block-based disparity vector  *********
    224203#if H_3D_NBDV
    225 #if SEC_SIMPLIFIED_NBDV_E0142
    226204#define DVFROM_LEFT                       0
    227205#define DVFROM_ABOVE                      1
    228206#define IDV_CANDS                         2
    229 #else
    230 #define DVFROM_LEFTBELOW                  0
    231 #define DVFROM_LEFT                       1
    232 #define DVFROM_ABOVERIGHT                 2
    233 #define DVFROM_ABOVE                      3
    234 #define DVFROM_ABOVELEFT                  4
    235 #define IDV_CANDS                         5
    236 #endif
    237207#endif
    238208
     
    241211#define H_3D_ARP_WFNR                     3
    242212#endif
     213
    243214///// ***** DEPTH INTRA MODES *********
    244215#if H_3D_DIM
     
    250221                                              // HHI_DEPTH_INTRA_SEARCH_RAU_C0160
    251222                                              // LG_ZEROINTRADEPTHRESI_A0087
    252 #if H_3D_DIM_SDC
    253 #define LGE_SDC_REMOVE_DC_E0158           1   // Removal of DC mode from SDC
    254 #endif
    255 #if H_3D_DIM_DMM
    256 #define LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX 1   // Removal of overlap between DMM3 and DMM1
    257 #endif
    258 #endif
    259 
     223#endif
    260224///// ***** VIEW SYNTHESIS PREDICTION *********
    261225#if H_3D_VSP
     
    270234
    271235///// ***** ILLUMATION COMPENSATION *********
    272 
    273 
    274236#if H_3D_IC
    275 #define IC_REG_COST_SHIFT 7
    276 #define IC_CONST_SHIFT 5
    277 #define IC_SHIFT_DIFF 12
     237#define IC_REG_COST_SHIFT                 7
     238#define IC_CONST_SHIFT                    5
     239#define IC_SHIFT_DIFF                     12
     240#endif
     241
     242///// ***** FCO *********
     243#if H_3D_FCO
     244#define H_3D_FCO_VSP_DONBDV_E0163               1   // Adaptive depth reference for flexible coding order
     245#else
     246#define H_3D_FCO_VSP_DONBDV_E0163               0   // Adaptive depth reference for flexible coding order
    278247#endif
    279248
     
    302271#define M0036_RC_IMPROVEMENT                        1  ///< JCTVC-M0036, improvement for R-lambda model based rate control
    303272#define TICKET_1090_FIX                             1
    304 #define KWU_FIX_URQ                                 1
    305273
    306274#if KWU_FIX_URQ
    307 
    308275#if RATE_CONTROL_LAMBDA_DOMAIN
    309276#define RC_FIX                                      1  /// suggested fix for M0036
    310277#define RATE_CONTROL_INTRA                          1  ///< JCTVC-M0257, rate control for intra
    311278#endif
    312 
    313 #else
    314 
     279#else
    315280#define RC_FIX                                      1  /// suggested fix for M0036
    316281#define RATE_CONTROL_INTRA                          1  ///< JCTVC-M0257, rate control for intra
    317 
    318 #endif
    319 
    320 #define KWU_RC_VIEWRC_E0227                         0  ///< JCT3V-E0227, view-wise target bitrate allocation
    321 #define KWU_RC_MADPRED_E0227                        0  ///< JCT3V-E0227, inter-view MAD prediction
     282#endif
     283
    322284
    323285#define MAX_CPB_CNT                     32  ///< Upper bound of (cpb_cnt_minus1 + 1)
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibDecoder/TDecGop.cpp

    r646 r647  
    158158    rpcPic->setNumDdvCandPics(rpcPic->getDisCandRefPictures(iColPoc));
    159159  }
    160 #endif
    161 #if MTK_NBDV_TN_FIX_E0172
     160
    162161  if(pcSlice->getViewIndex() && !pcSlice->getIsDepth() && !pcSlice->isIntra()) //Notes from QC: this condition shall be changed once the configuration is completed, e.g. in pcSlice->getSPS()->getMultiviewMvPredMode() || ARP in prev. HTM. Remove this comment once it is done.
    163162  {
    164163    rpcPic->checkTemporalIVRef();
    165164  }
    166 #endif
    167 #if MTK_TEXTURE_MRGCAND_BUGFIX_E0182
     165
    168166  if(pcSlice->getIsDepth())
    169167  {
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibDecoder/TDecSbac.cpp

    r646 r647  
    12071207  if( puIdx == 2 )
    12081208  {
    1209 #if !LGE_SDC_REMOVE_DC_E0158
    1210     while( binNum < 2 && symbol )
    1211 #endif
    12121209    {
    12131210      ctxDepthMode = puIdx*3 + binNum;
     
    12171214    }
    12181215         if( modeCode == 0 ) { dir = PLANAR_IDX; sdcFlag = 1;}
    1219 #if LGE_SDC_REMOVE_DC_E0158
    12201216    else if( modeCode == 1 ) { dir = 0;          sdcFlag = 0;}
    1221 #else
    1222     else if( modeCode == 2 ) { dir = 0;          sdcFlag = 0;}
    1223     else if( modeCode == 3 ) { dir =     DC_IDX; sdcFlag = 1;}
    1224 #endif
    12251217  }
    12261218  else if( puIdx == 0 )
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibDecoder/TDecTop.cpp

    r630 r647  
    979979    pcSlice->setIvPicLists( m_ivPicLists );         
    980980#if H_3D_IV_MERGE
    981 #if H_3D_FCO_E0163
     981#if H_3D_FCO
    982982    //assert( !getIsDepth() );
    983983#else
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibEncoder/TEncCu.cpp

    r646 r647  
    517517  if(!bSliceEnd && !bSliceStart && bInsidePicture )
    518518  {
    519 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     519#if  H_3D_FAST_TEXTURE_ENCODIN
    520520    Bool bIVFMerge = false;
    521521    Int  iIVFMaxD = 0;
     
    588588        }
    589589      }
    590 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     590#if  H_3D_FAST_TEXTURE_ENCODIN
    591591      if(rpcTempCU->getSlice()->getViewIndex() && !rpcTempCU->getSlice()->getIsDepth())
    592592      {
     
    612612          rpcTempCU->setICFlagSubParts(bICFlag, 0, 0, uiDepth);
    613613#endif
    614 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     614#if  H_3D_FAST_TEXTURE_ENCODIN
    615615          xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_2Nx2N, bFMD );  rpcTempCU->initEstData( uiDepth, iQP );//by Competition for inter_2Nx2N
    616616#else
     
    626626#endif
    627627        xCheckRDCostMerge2Nx2N( rpcBestCU, rpcTempCU, &earlyDetectionSkipMode );//by Merge for inter_2Nx2N
    628 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     628#if  H_3D_FAST_TEXTURE_ENCODIN
    629629        bFMD = bIVFMerge && rpcBestCU->isSkipped(0);
    630630#endif
     
    652652            rpcTempCU->setICFlagSubParts(bICFlag, 0, 0, uiDepth);
    653653#endif
    654 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     654#if  H_3D_FAST_TEXTURE_ENCODIN
    655655            xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_2Nx2N, bFMD );  rpcTempCU->initEstData( uiDepth, iQP );
    656656#else
     
    760760                )
    761761              {
    762 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     762#if  H_3D_FAST_TEXTURE_ENCODIN
    763763                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_NxN, bFMD  );
    764764#else
     
    780780            )
    781781          {
    782 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     782#if  H_3D_FAST_TEXTURE_ENCODIN
    783783            xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_Nx2N, bFMD  );
    784784#else
     
    800800            )
    801801          {
    802 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     802#if  H_3D_FAST_TEXTURE_ENCODIN
    803803            xCheckRDCostInter      ( rpcBestCU, rpcTempCU, SIZE_2NxN, bFMD  );
    804804#else
     
    839839                )
    840840              {
    841 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     841#if  H_3D_FAST_TEXTURE_ENCODIN
    842842                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_2NxnU, bFMD );
    843843#else
     
    859859                )
    860860              {
    861 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     861#if  H_3D_FAST_TEXTURE_ENCODIN
    862862                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_2NxnD, bFMD );
    863863#else
     
    883883                )
    884884              {
    885 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     885#if  H_3D_FAST_TEXTURE_ENCODIN
    886886                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_2NxnU, bFMD, true );
    887887#else
     
    903903                )
    904904              {
    905 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     905#if  H_3D_FAST_TEXTURE_ENCODIN
    906906                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_2NxnD, bFMD, true );
    907907#else
     
    929929                )
    930930              {
    931 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     931#if  H_3D_FAST_TEXTURE_ENCODIN
    932932                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_nLx2N, bFMD );
    933933#else
     
    949949                )
    950950              {
    951 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     951#if  H_3D_FAST_TEXTURE_ENCODIN
    952952                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_nRx2N, bFMD );
    953953#else
     
    969969                )
    970970              {
    971 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     971#if  H_3D_FAST_TEXTURE_ENCODIN
    972972                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_nLx2N, bFMD, true );
    973973#else
     
    989989                )
    990990              {
    991 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     991#if  H_3D_FAST_TEXTURE_ENCODIN
    992992                xCheckRDCostInter( rpcBestCU, rpcTempCU, SIZE_nRx2N, bFMD, true );
    993993#else
     
    10401040#endif
    10411041        }
    1042 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     1042#if  H_3D_FAST_TEXTURE_ENCODIN
    10431043        if(!bFMD)
    10441044        {
     
    11221122          }
    11231123        }
    1124 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     1124#if  H_3D_FAST_TEXTURE_ENCODIN
    11251125        }
    11261126#endif
     
    11671167      bSubBranch = true;
    11681168    }
    1169 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     1169#if  H_3D_FAST_TEXTURE_ENCODIN
    11701170    if(rpcBestCU->getSlice()->getViewIndex() && !rpcBestCU->getSlice()->getIsDepth() && (uiDepth >=iIVFMaxD) && rpcBestCU->isSkipped(0))
    11711171    {
     
    20442044
    20452045#if AMP_MRG
    2046 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     2046#if  H_3D_FAST_TEXTURE_ENCODIN
    20472047Void TEncCu::xCheckRDCostInter( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, PartSize ePartSize, Bool bFMD, Bool bUseMRG)
    20482048#else
     
    20532053#endif
    20542054{
    2055 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     2055#if  H_3D_FAST_TEXTURE_ENCODIN
    20562056  if(!(bFMD && (ePartSize == SIZE_2Nx2N)))  //have  motion estimation or merge check
    20572057  {
     
    21302130#if AMP_MRG
    21312131  rpcTempCU->setMergeAMP (true);
    2132 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     2132#if  H_3D_FAST_TEXTURE_ENCODIN
    21332133  m_pcPredSearch->predInterSearch ( rpcTempCU, m_ppcOrigYuv[uhDepth], m_ppcPredYuvTemp[uhDepth], m_ppcResiYuvTemp[uhDepth], m_ppcRecoYuvTemp[uhDepth], bFMD, false, bUseMRG );
    21342134#else
     
    22452245  }
    22462246#endif
    2247 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     2247#if  H_3D_FAST_TEXTURE_ENCODIN
    22482248  }
    22492249#endif
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibEncoder/TEncCu.h

    r639 r647  
    160160
    161161#if AMP_MRG
    162 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     162#if  H_3D_FAST_TEXTURE_ENCODIN
    163163  Void  xCheckRDCostInter   ( TComDataCU*& rpcBestCU, TComDataCU*& rpcTempCU, PartSize ePartSize,  Bool bFMD, Bool bUseMRG = false  ) ;
    164164#else
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibEncoder/TEncGOP.cpp

    r646 r647  
    917917
    918918    // SAIT_VSO_EST_A0033
    919 #if H_3D_FCO_E0163
     919#if H_3D_FCO
    920920    Bool flagRec;
    921921    flagRec =  ((m_pcEncTop->getIvPicLists()->getPicYuv( pcSlice->getViewIndex(), false, pcSlice->getPOC(), true) == NULL) ? false: true);
     
    11871187        pcPic->setNumDdvCandPics(pcPic->getDisCandRefPictures(iColPoc));
    11881188      }
     1189#endif
    11891190#if H_3D
    11901191      pcSlice->setDepthToDisparityLUTs();
    11911192
    11921193#endif
    1193 #endif
    1194 #if MTK_NBDV_TN_FIX_E0172
     1194
     1195#if H_3D_NBDV
    11951196      if(pcSlice->getViewIndex() && !pcSlice->getIsDepth() && !pcSlice->isIntra()) //Notes from QC: this condition shall be changed once the configuration is completed, e.g. in pcSlice->getSPS()->getMultiviewMvPredMode() || ARP in prev. HTM. Remove this comment once it is done.
    11961197      {
    11971198        pcPic->checkTemporalIVRef();
    11981199      }
    1199 #endif
    1200 #if MTK_TEXTURE_MRGCAND_BUGFIX_E0182
     1200
    12011201      if(pcSlice->getIsDepth())
    12021202      {
     
    19301930          digestStr = digestToString(sei_recon_picture_digest.digest, 4);
    19311931        }
    1932 #if H_MV_FIX_LID_PIC_HASH_SEI_T40
     1932#if H_MV
    19331933        OutputNALUnit nalu(NAL_UNIT_SUFFIX_SEI, pcSlice->getTLayer(), getLayerId() );
    19341934#else
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibEncoder/TEncSbac.cpp

    r646 r647  
    12741274    case DMM4_IDX: codeIdx = 4; break;
    12751275    case DMM3_IDX: codeIdx = 5; break;
    1276 #if LGE_SDC_REMOVE_DC_E0158
    12771276    case  RBC_IDX: codeIdx = 6; break;
    1278 #else
    1279     case  RBC_IDX: codeIdx = 7; break;
    1280 #endif
    12811277    default:                    break;
    12821278    }
     
    12891285    {
    12901286      case PLANAR_IDX:  codeIdx = 0; break;
    1291 #if !LGE_SDC_REMOVE_DC_E0158
    1292       case DC_IDX:      codeIdx = 6; break;
    1293 #endif
    12941287      default:          codeIdx = 2; break;
    12951288    }
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibEncoder/TEncSearch.cpp

    r646 r647  
    28432843    {
    28442844
    2845 #if SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX
     2845#if H_3D_FAST_DEPTH_INTRA
    28462846      Int  threshold    = max(((pcCU->getQP(0))>>3)-1,3);
    28472847      Int  varThreshold = (Int)( threshold * threshold - 8 );
     
    28512851#if H_3D_DIM_DMM
    28522852      if( m_pcEncCfg->getUseDMM()
    2853 #if SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX
     2853#if H_3D_FAST_DEPTH_INTRA
    28542854         && (uiRdModeList[0] != PLANAR_IDX || varCU >= varThreshold)
    28552855#endif
     
    28582858        for( UInt dmmType = 0; dmmType < DMM_NUM_TYPE; dmmType++ )
    28592859        {
    2860 #if H_3D_FCO_E0163
     2860#if H_3D_FCO
    28612861            TComPic* picTexture  = pcCU->getSlice()->getIvPic(false, pcCU->getSlice()->getViewIndex() );
    28622862            if ( !picTexture->getReconMark() && (DMM3_IDX == dmmType || DMM4_IDX == dmmType ) )
     
    28782878          case( DMM3_IDX ):
    28792879            {
    2880 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
     2880
    28812881              TComPic*      pcPicTex = pcCU->getSlice()->getTexturePic();
    28822882              TComDataCU* pcColTexCU = pcPicTex->getCU( pcCU->getAddr() );
     
    28862886              if( uiColTexIntraDir > DC_IDX && uiColTexIntraDir < 35 )
    28872887              {
    2888 #endif
    2889               UInt uiIntraTabIdx = 0;
    2890 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
     2888             UInt uiIntraTabIdx = 0;
    28912889              xSearchDmm3Wedge( pcCU, uiPartOffset, piOrg, uiStride, uiWidth, uiHeight, uiTabIdx, uiIntraTabIdx, uiColTexIntraDir );
    2892 #else
    2893               xSearchDmm3Wedge( pcCU, uiPartOffset, piOrg, uiStride, uiWidth, uiHeight, uiTabIdx, uiIntraTabIdx );
    2894 #endif
    28952890              pcCU->setDmmWedgeTabIdxSubParts( uiTabIdx, dmmType, uiPartOffset, uiDepth + uiInitTrDepth );
    28962891              pcCU->setDmm3IntraTabIdxSubParts( uiIntraTabIdx, uiPartOffset, uiDepth + uiInitTrDepth );
    28972892              biSegmentation = &(g_dmmWedgeLists[(g_aucConvertToBit[uiWidth])][uiTabIdx]);
    2898 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    28992893              }
    2900 #endif
    29012894            } break;
    29022895          case( DMM4_IDX ):
     
    29272920#if H_3D_DIM_RBC
    29282921      if( m_pcEncCfg->getUseRBC()
    2929 #if SCU_HS_FAST_DEPTH_INTRA_E0238_HHIFIX
     2922#if H_3D_FAST_DEPTH_INTRA
    29302923          && (uiRdModeList[0] != PLANAR_IDX || varCU >= varThreshold)
    29312924#endif
     
    37103703 */
    37113704#if AMP_MRG
    3712 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     3705#if  H_3D_FAST_TEXTURE_ENCODIN
    37133706Void TEncSearch::predInterSearch( TComDataCU* pcCU, TComYuv* pcOrgYuv, TComYuv*& rpcPredYuv, TComYuv*& rpcResiYuv, TComYuv*& rpcRecoYuv, Bool bFMD, Bool bUseRes, Bool bUseMRG )
    37143707#else
     
    38223815#if AMP_MRG
    38233816    Bool bTestNormalMC = true;
    3824 #if  MTK_FAST_TEXTURE_ENCODING_E0173
     3817#if  H_3D_FAST_TEXTURE_ENCODIN
    38253818    if (bFMD||( bUseMRG && pcCU->getWidth( 0 ) > 8 && iNumPart == 2 ))
    38263819#else           
     
    73077300}
    73087301
    7309 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    73107302Void TEncSearch::xSearchDmm3Wedge( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piRef, UInt uiRefStride, UInt uiWidth, UInt uiHeight, UInt& ruiTabIdx, UInt& ruiIntraTabIdx, UInt colTexIntraDir )
    73117303{
     
    73447336  cPredYuv.destroy();
    73457337}
    7346 #else
    7347 Void TEncSearch::xSearchDmm3Wedge( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piRef, UInt uiRefStride, UInt uiWidth, UInt uiHeight, UInt& ruiTabIdx, UInt& ruiIntraTabIdx )
    7348 {
    7349   ruiTabIdx       = 0;
    7350   ruiIntraTabIdx  = 0;
    7351 
    7352   // local pred buffer
    7353   TComYuv cPredYuv;
    7354   cPredYuv.create( uiWidth, uiHeight );
    7355   cPredYuv.clear();
    7356   Pel* piPred = cPredYuv.getLumaAddr();
    7357   UInt uiPredStride = cPredYuv.getStride();
    7358 
    7359   // wedge search
    7360   UInt uiBestDist = MAX_UINT;
    7361   WedgeList* pacWedgeList = &g_dmmWedgeLists[(g_aucConvertToBit[uiWidth])];
    7362   Pel refDC1 = 0; Pel refDC2 = 0;
    7363 
    7364   TComPic*      pcPicTex = pcCU->getSlice()->getTexturePic();
    7365   assert( pcPicTex != NULL );
    7366   TComDataCU* pcColTexCU = pcPicTex->getCU(pcCU->getAddr());
    7367   UInt      uiTexPartIdx = pcCU->getZorderIdxInCU() + uiAbsPtIdx;
    7368   Int   uiColTexIntraDir = pcColTexCU->isIntra( uiTexPartIdx ) ? pcColTexCU->getLumaIntraDir( uiTexPartIdx ) : 255;
    7369 
    7370   std::vector< std::vector<UInt> > pauiWdgLstSz = g_aauiWdgLstM3[g_aucConvertToBit[uiWidth]];
    7371   if( uiColTexIntraDir > DC_IDX && uiColTexIntraDir < 35 )
    7372   {
    7373     std::vector<UInt>* pauiWdgLst = &pauiWdgLstSz[uiColTexIntraDir-2];
    7374     for( UInt uiIdxW = 0; uiIdxW < pauiWdgLst->size(); uiIdxW++ )
    7375     {
    7376       UInt uiIdx     =   pauiWdgLst->at(uiIdxW);
    7377       TComWedgelet* pcWedgelet = &(pacWedgeList->at(uiIdx));
    7378       xCalcBiSegDCs  ( piRef,  uiRefStride,  pcWedgelet->getPattern(), pcWedgelet->getStride(), refDC1, refDC2 );
    7379       xAssignBiSegDCs( piPred, uiPredStride, pcWedgelet->getPattern(), pcWedgelet->getStride(), refDC1, refDC2 );
    7380 
    7381       UInt uiActDist = m_pcRdCost->getDistPart( g_bitDepthY, piPred, uiPredStride, piRef, uiRefStride, uiWidth, uiHeight, TEXT_LUMA, DF_SAD );
    7382       if( uiActDist < uiBestDist || uiBestDist == MAX_UINT )
    7383       {
    7384         uiBestDist     = uiActDist;
    7385         ruiTabIdx      = uiIdx;
    7386         ruiIntraTabIdx = uiIdxW;
    7387       }
    7388     }
    7389   }
    7390   else
    7391   {
    7392     WedgeNodeList* pacWedgeNodeList = &g_dmmWedgeNodeLists[(g_aucConvertToBit[uiWidth])];
    7393     UInt uiBestNodeDist = MAX_UINT;
    7394     UInt uiBestNodeId   = 0;
    7395     for( UInt uiNodeId = 0; uiNodeId < pacWedgeNodeList->size(); uiNodeId++ )
    7396     {
    7397       TComWedgelet* pcWedgelet = &(pacWedgeList->at(pacWedgeNodeList->at(uiNodeId).getPatternIdx()));
    7398       xCalcBiSegDCs  ( piRef,  uiRefStride,  pcWedgelet->getPattern(), pcWedgelet->getStride(), refDC1, refDC2 );
    7399       xAssignBiSegDCs( piPred, uiPredStride, pcWedgelet->getPattern(), pcWedgelet->getStride(), refDC1, refDC2 );
    7400 
    7401       UInt uiActDist = m_pcRdCost->getDistPart( g_bitDepthY, piPred, uiPredStride, piRef, uiRefStride, uiWidth, uiHeight, TEXT_LUMA, DF_SAD );
    7402       if( uiActDist < uiBestNodeDist || uiBestNodeDist == MAX_UINT )
    7403       {
    7404         uiBestNodeDist = uiActDist;
    7405         uiBestNodeId   = uiNodeId;
    7406         ruiIntraTabIdx = uiNodeId;
    7407       }
    7408     }
    7409     ruiTabIdx = pacWedgeNodeList->at(uiBestNodeId).getPatternIdx();
    7410   }
    7411 
    7412   cPredYuv.destroy();
    7413 }
    7414 #endif
     7338
    74157339#endif
    74167340#if H_3D_DIM_RBC
  • branches/HTM-8.2-dev0-Cleanup/source/Lib/TLibEncoder/TEncSearch.h

    r646 r647  
    196196                                  TComYuv*&   rpcResiYuv,
    197197                                  TComYuv*&   rpcRecoYuv,
    198 #if MTK_FAST_TEXTURE_ENCODING_E0173
     198#if H_3D_FAST_TEXTURE_ENCODIN
    199199                                  Bool        bFMD,
    200200#endif
     
    352352  Void xSearchDmmDeltaDCs         ( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piOrig, Pel* piPredic, UInt uiStride, Bool* biSegPattern, Int patternStride, UInt uiWidth, UInt uiHeight, Pel& rDeltaDC1, Pel& rDeltaDC2 );
    353353  Void xSearchDmm1Wedge           ( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piRef, UInt uiRefStride, UInt uiWidth, UInt uiHeight, UInt& ruiTabIdx );
    354 #if LGE_PKU_DMM3_OVERLAP_E0159_HHIFIX
    355354  Void xSearchDmm3Wedge           ( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piRef, UInt uiRefStride, UInt uiWidth, UInt uiHeight, UInt& ruiTabIdx, UInt& ruiIntraTabIdx, UInt colTexIntraDir );
    356 #else
    357   Void xSearchDmm3Wedge           ( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piRef, UInt uiRefStride, UInt uiWidth, UInt uiHeight, UInt& ruiTabIdx, UInt& ruiIntraTabIdx );
    358 #endif
    359355#endif
    360356#if H_3D_DIM_RBC
Note: See TracChangeset for help on using the changeset viewer.