Ignore:
Timestamp:
13 Jul 2015, 04:10:34 (9 years ago)
Author:
mediatek-htm
Message:

Reactive integer MV for depth coding with the MACRO "NH_3D_INTEGER_MV_DEPTH".

by Yi-Wen Chen (yiwen.chen@…)

Location:
branches/HTM-14.1-update-dev3-MediaTek2/source/Lib
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-14.1-update-dev3-MediaTek2/source/Lib/TLibCommon/TComDataCU.cpp

    r1261 r1267  
    44894489  const TComSPS &sps=*(m_pcSlice->getSPS());
    44904490  Int  iMvShift = 2;
    4491 #if H_3D_IC
     4491#if NH_3D_INTEGER_MV_DEPTH
    44924492  if( getSlice()->getIsDepth() )
    44934493    iMvShift = 0;
  • branches/HTM-14.1-update-dev3-MediaTek2/source/Lib/TLibCommon/TComPrediction.cpp

    r1259 r1267  
    19201920  Int     yFrac  = mv->getVer() & ((1<<shiftVer)-1);
    19211921
    1922 #if H_3D_IC
     1922#if NH_3D_INTEGER_MV_DEPTH
    19231923  if( cu->getSlice()->getIsDepth() )
    19241924  {
    19251925    refOffset = mv->getHor() + mv->getVer() * refStride;
    1926     ref       = refPic->getLumaAddr( cu->getAddr(), cu->getZorderIdxInCU() + partAddr ) + refOffset;
     1926    ref       = refPic->getAddr(compID, cu->getCtuRsAddr(), cu->getZorderIdxInCtu() + partAddr ) + refOffset;
    19271927    xFrac     = 0;
    19281928    yFrac     = 0;
  • branches/HTM-14.1-update-dev3-MediaTek2/source/Lib/TLibCommon/TypeDef.h

    r1259 r1267  
    7575#define NH_3D_IV_MERGE                    1
    7676#define NH_3D_SPIVMP                      1
     77#define NH_3D_INTEGER_MV_DEPTH            1
    7778#endif
    7879
  • branches/HTM-14.1-update-dev3-MediaTek2/source/Lib/TLibEncoder/TEncSearch.cpp

    r1259 r1267  
    51095109
    51105110  m_pcRdCost->setPredictor  ( *pcMvPred );
    5111 #if H_3D_IC
     5111#if NH_3D_INTEGER_MV_DEPTH
    51125112  if( pcCU->getSlice()->getIsDepth() )
    51135113  {
     
    51185118#endif
    51195119    m_pcRdCost->setCostScale  ( 2 );   
    5120 #if H_3D_IC
     5120#if NH_3D_INTEGER_MV_DEPTH
    51215121  }
    51225122#endif
     
    51455145
    51465146  m_pcRdCost->getMotionCost( true, 0, pcCU->getCUTransquantBypass(uiPartAddr) );
    5147 #if H_3D_IC
     5147#if NH_3D_INTEGER_MV_DEPTH
    51485148  if( ! pcCU->getSlice()->getIsDepth() )
    51495149  {
     
    51585158  rcMv += (cMvHalf <<= 1);
    51595159  rcMv +=  cMvQter;
    5160 #if H_3D_IC
     5160#if NH_3D_INTEGER_MV_DEPTH
    51615161  }
    51625162#endif
    51635163
    51645164  UInt uiMvBits = m_pcRdCost->getBits( rcMv.getHor(), rcMv.getVer() );
    5165 #if H_3D_IC
     5165#if NH_3D_INTEGER_MV_DEPTH
    51665166  if( pcCU->getSlice()->getIsDepth() )
    51675167  {
     
    51775177{
    51785178  Int  iMvShift = 2;
    5179 #if H_3D_IC
     5179#if NH_3D_INTEGER_MV_DEPTH
    51805180  if( pcCU->getSlice()->getIsDepth() )
    51815181  {
     
    53355335  UInt uiSearchRange = m_iSearchRange;
    53365336  pcCU->clipMv( rcMv );
    5337 #if H_3D_IC
     5337#if NH_3D_INTEGER_MV_DEPTH
    53385338  if( ! pcCU->getSlice()->getIsDepth() )
    53395339#endif
     
    53555355      TComMv cMv = m_acMvPredictors[index];
    53565356      pcCU->clipMv( cMv );
    5357 #if H_3D_IC
     5357#if NH_3D_INTEGER_MV_DEPTH
    53585358      if( ! pcCU->getSlice()->getIsDepth() )
    53595359      {     
    53605360#endif
    53615361        cMv >>= 2;
    5362 #if H_3D_IC
     5362#if NH_3D_INTEGER_MV_DEPTH
    53635363      }
    53645364#endif
Note: See TracChangeset for help on using the changeset viewer.