Changeset 481 in 3DVCSoftware for branches/HTM-DEV-0.3-dev2


Ignore:
Timestamp:
19 Jun 2013, 14:46:47 (11 years ago)
Author:
tech
Message:

Bug fixes related to not correctly initialized slice at encoder.

Location:
branches/HTM-DEV-0.3-dev2
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-DEV-0.3-dev2/cfg/3D-HEVC/baseCfg_3view.cfg

    r479 r481  
    160160
    161161#========== multiview coding tools ==========
    162 IvMvPred           : 1                                 # Inter-view motion prediction### DO NOT ADD ANYTHING BELOW THIS LINE ###
     162IvMvPred           : 1                                 # Inter-view motion prediction
     163### DO NOT ADD ANYTHING BELOW THIS LINE ###
    163164### DO NOT DELETE THE EMPTY LINE BELOW ###
  • branches/HTM-DEV-0.3-dev2/source/Lib/TLibCommon/TComDataCU.cpp

    r479 r481  
    25532553
    25542554  Int iPdmDir[2] = {0, 0};
    2555   getInterViewMergeCands(uiPUIdx, aiPdmRefIdx, acPdmMv, &cDisInfo, iPdmDir );
     2555 
     2556  if ( ivMvPredFlag )
     2557  {
     2558    getInterViewMergeCands(uiPUIdx, aiPdmRefIdx, acPdmMv, &cDisInfo, iPdmDir );
     2559  } 
     2560   
    25562561  Int iPdmInterDir;
    2557 
    25582562  if( iPdmDir[0] && ivMvPredFlag )
    25592563  {
  • branches/HTM-DEV-0.3-dev2/source/Lib/TLibEncoder/TEncCavlc.cpp

    r479 r481  
    741741    }
    742742  }
    743 #if H_3D_GEN
     743#if H_3D_GEN 
    744744  WRITE_FLAG( 1,                                             "vps_extension2_flag" );
    745745  for( Int layer = 0; layer <= pcVPS->getMaxLayers() - 1; layer++ )
     
    754754      }         
    755755    }       
    756   }
     756  } 
    757757#else
    758758  WRITE_FLAG( 0,                                             "vps_extension2_flag" );
  • branches/HTM-DEV-0.3-dev2/source/Lib/TLibEncoder/TEncGOP.cpp

    r479 r481  
    495495
    496496#if H_3D_GEN
    497     m_pcSliceEncoder->initEncSlice ( pcPic, iPOCLast, pocCurr, iNumPicRcvd, iGOPid, pcSlice, m_pcEncTop->getVPS(), m_pcEncTop->getSPS(), m_pcEncTop->getPPS() );     
     497    m_pcSliceEncoder->initEncSlice ( pcPic, iPOCLast, pocCurr, iNumPicRcvd, iGOPid, pcSlice, m_pcEncTop->getVPS(), m_pcEncTop->getSPS(), m_pcEncTop->getPPS(), getLayerId() );     
    498498#else
    499499    m_pcSliceEncoder->initEncSlice ( pcPic, iPOCLast, pocCurr, iNumPicRcvd, iGOPid, pcSlice, m_pcEncTop->getSPS(), m_pcEncTop->getPPS() );
     
    504504    pcPic  ->setLayerId     ( getLayerId()   );
    505505    pcPic  ->setViewId      ( getViewId()    );   
     506#if !H_3D_GEN   
    506507    pcSlice->setLayerId     ( getLayerId() );
    507508    pcSlice->setViewId      ( getViewId()  );   
    508 #if !H_3D_GEN
    509509    pcSlice->setVPS         ( m_pcEncTop->getVPS() );
    510510#endif
     
    512512    pcPic  ->setViewIndex   ( getViewIndex() );
    513513    pcPic  ->setIsDepth( getIsDepth() );
     514#if !H_3D_GEN
    514515    pcSlice->setViewIndex   ( getViewIndex()  );
    515516    pcSlice->setIsDepth( getIsDepth() );   
     517#endif
    516518    pcSlice->setCamparaSlice( pcPic->getCodedScale(), pcPic->getCodedOffset() );   
    517519#endif
  • branches/HTM-DEV-0.3-dev2/source/Lib/TLibEncoder/TEncSlice.cpp

    r479 r481  
    177177 */
    178178#if H_3D_GEN
    179 Void TEncSlice::initEncSlice( TComPic* pcPic, Int pocLast, Int pocCurr, Int iNumPicRcvd, Int iGOPid, TComSlice*& rpcSlice, TComVPS* pVPS, TComSPS* pSPS, TComPPS *pPPS )
     179Void TEncSlice::initEncSlice( TComPic* pcPic, Int pocLast, Int pocCurr, Int iNumPicRcvd, Int iGOPid, TComSlice*& rpcSlice, TComVPS* pVPS, TComSPS* pSPS, TComPPS *pPPS, Int layerId )
    180180#else
    181181Void TEncSlice::initEncSlice( TComPic* pcPic, Int pocLast, Int pocCurr, Int iNumPicRcvd, Int iGOPid, TComSlice*& rpcSlice, TComSPS* pSPS, TComPPS *pPPS )
     
    186186 
    187187  rpcSlice = pcPic->getSlice(0);
    188 #if H_3D_GEN
     188#if H_3D_GEN
     189  // GT: Should also be activated for MV-HEVC at some stage
    189190  rpcSlice->setVPS( pVPS );
     191  Int vpsLayerId = pVPS->getLayerIdInNuh( layerId );
     192
     193  rpcSlice->setLayerId     ( layerId );
     194  rpcSlice->setViewId      ( pVPS->getViewId      ( vpsLayerId ) );   
     195  rpcSlice->setViewIndex   ( pVPS->getViewIndex   ( vpsLayerId ) );
     196  rpcSlice->setIsDepth     ( pVPS->getDepthId     ( vpsLayerId ) != 0 );   
    190197#endif
    191198  rpcSlice->setSPS( pSPS );
  • branches/HTM-DEV-0.3-dev2/source/Lib/TLibEncoder/TEncSlice.h

    r479 r481  
    118118#if H_3D_GEN
    119119  Void    initEncSlice        ( TComPic* pcPic, Int pocLast, Int pocCurr, Int iNumPicRcvd,
    120                                 Int iGOPid, TComSlice*& rpcSlice, TComVPS* pVPS, TComSPS* pSPS, TComPPS *pPPS );
     120                                Int iGOPid, TComSlice*& rpcSlice, TComVPS* pVPS, TComSPS* pSPS, TComPPS *pPPS, Int layerId );
    121121#else
    122122  Void    initEncSlice        ( TComPic*  pcPic, Int pocLast, Int pocCurr, Int iNumPicRcvd,
Note: See TracChangeset for help on using the changeset viewer.