Changeset 139 in 3DVCSoftware for branches/HTM-4.0-Nokia/source/Lib/TLibEncoder


Ignore:
Timestamp:
24 Sep 2012, 14:08:01 (13 years ago)
Author:
nokia
Message:

3DV-HTM v4.0: FCO

Location:
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncCfg.h

    r100 r139  
    312312#endif
    313313
     314#if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER
     315  Bool m_bUseDMM34;
     316#endif
     317
    314318  Int      m_iViewOrderIdx;
    315319
     
    799803#endif
    800804
     805#if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER
     806  Void setUseDMM34( Bool b) { m_bUseDMM34 = b;    }
     807  Bool getUseDMM34()        { return m_bUseDMM34; }
     808#endif
     809
    801810  Void      setViewOrderIdx       ( Int   i )      { m_iViewOrderIdx          = i; }
    802811  Void      setCamParPrecision              ( UInt  u )      { m_uiCamParPrecision      = u; }
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncGOP.cpp

    r102 r139  
    167167  TEncSbac* pcSbacCoders = NULL;
    168168  TComOutputBitstream* pcSubstreamsOut = NULL;
     169  int is_Depth;
    169170
    170171  {
     
    255256      pcSlice->setViewId( m_pcEncTop->getViewId() );
    256257      pcSlice->setIsDepth( m_pcEncTop->getIsDepth() );
    257 
     258      is_Depth = m_pcEncTop->getIsDepth();
    258259      m_pcEncTop->getSPS()->setDisInter4x4(m_pcEncTop->getDisInter4x4());
    259260      pcSlice->setScalingList ( m_pcEncTop->getScalingList()  );
     
    461462
    462463#if SAIT_VSO_EST_A0033
    463     m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true ) );
     464   
     465{
     466Bool flag_rec;
     467
     468    flag_rec =  ((m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true) == NULL) ? false: true);
     469    m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, flag_rec ) );
    464470    m_pcRdCost->setDepthPicYuv   ( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), true, false ) );
    465 #endif
    466 
    467 
     471}
     472#endif
    468473  }
    469474#endif
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSbac.cpp

    r101 r139  
    964964#endif
    965965#if HHI_DMM_PRED_TEX
     966
     967#if FLEX_CODING_ORDER
     968    if ( !pcCU->getSlice()->getSPS()->getUseDMM34() )
     969    {
     970      assert( uiDir != DMM_WEDGE_PREDTEX_D_IDX );
     971      assert( uiDir != DMM_CONTOUR_PREDTEX_D_IDX );
     972    }
     973#endif
     974
    966975    if( uiDir == DMM_WEDGE_PREDTEX_D_IDX )     { xCodeWedgePredTexDeltaInfo  ( pcCU, uiAbsPartIdx ); }
    967976    if( uiDir == DMM_CONTOUR_PREDTEX_D_IDX )   { xCodeContourPredTexDeltaInfo( pcCU, uiAbsPartIdx ); }
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSearch.cpp

    r100 r139  
    20252025#endif
    20262026#if HHI_DMM_PRED_TEX
     2027
     2028#if FLEX_CODING_ORDER
     2029      if ( pcCU->getSlice()->getSPS()->getUseDMM34() )
     2030      {
     2031#endif
    20272032      UInt uiTexTabIdx  = 0;
    20282033      Int  iTexDeltaDC1 = 0;
     
    20482053        uiRdModeList[ numModesForFullRD++ ] = DMM_CONTOUR_PREDTEX_D_IDX;
    20492054      }
     2055#if FLEX_CODING_ORDER
     2056      }
     2057#endif
    20502058#endif
    20512059    }
     
    20832091
    20842092#if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX
     2093#if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER
     2094      if( m_pcEncCfg->getIsDepth() && !predIntraLumaDMMAvailable( uiOrgMode, uiWidth, uiHeight, pcCU->getSlice()->getSPS()->getUseDMM34() )
     2095#if LGE_EDGE_INTRA
     2096        && uiOrgMode < EDGE_INTRA_IDX
     2097#endif
     2098        )
     2099
     2100#else
     2101
    20852102      if( m_pcEncCfg->getIsDepth() && !predIntraLumaDMMAvailable( uiOrgMode, uiWidth, uiHeight )
    20862103#if LGE_EDGE_INTRA
     
    20882105#endif
    20892106        )
     2107#endif
    20902108      {
    20912109        continue;
     
    60146032}
    60156033
    6016 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX
     6034#if ((HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX)&&FLEX_CODING_ORDER)
     6035Bool TEncSearch::predIntraLumaDMMAvailable( UInt uiMode, UInt uiWidth, UInt uiHeight, Bool bDMMAvailable34 )
     6036#else
    60176037Bool TEncSearch::predIntraLumaDMMAvailable( UInt uiMode, UInt uiWidth, UInt uiHeight )
     6038#endif
    60186039{
    60196040  if( uiMode < NUM_INTRA_MODE ) return true;
     
    60236044#if HHI_DMM_WEDGE_INTRA
    60246045  if( uiMode == DMM_WEDGE_FULL_IDX        ||
    6025       uiMode == DMM_WEDGE_FULL_D_IDX      ||
    6026       uiMode == DMM_WEDGE_PREDDIR_IDX     ||
    6027       uiMode == DMM_WEDGE_PREDDIR_D_IDX )
     6046    uiMode == DMM_WEDGE_FULL_D_IDX      ||
     6047    uiMode == DMM_WEDGE_PREDDIR_IDX     ||
     6048    uiMode == DMM_WEDGE_PREDDIR_D_IDX )
    60286049  {
    60296050    if( (uiWidth != uiHeight) || (uiWidth < DMM_WEDGEMODEL_MIN_SIZE) || (uiWidth > DMM_WEDGEMODEL_MAX_SIZE) || ( ( uiMode == DMM_WEDGE_PREDDIR_IDX || uiMode == DMM_WEDGE_PREDDIR_D_IDX ) && uiWidth == 4 ) )
     
    60356056#if HHI_DMM_PRED_TEX
    60366057  if( uiMode == DMM_WEDGE_PREDTEX_IDX     ||
    6037       uiMode == DMM_WEDGE_PREDTEX_D_IDX   ||
    6038       uiMode == DMM_CONTOUR_PREDTEX_IDX   ||
    6039       uiMode == DMM_CONTOUR_PREDTEX_D_IDX )
     6058    uiMode == DMM_WEDGE_PREDTEX_D_IDX   ||
     6059    uiMode == DMM_CONTOUR_PREDTEX_IDX   ||
     6060    uiMode == DMM_CONTOUR_PREDTEX_D_IDX )
    60406061  {
    60416062    if( (uiWidth != uiHeight) || (uiWidth < DMM_WEDGEMODEL_MIN_SIZE) || (uiWidth > DMM_WEDGEMODEL_MAX_SIZE) || ( ( uiMode == DMM_CONTOUR_PREDTEX_IDX || uiMode == DMM_CONTOUR_PREDTEX_D_IDX ) && uiWidth == 4 ) )
     
    60436064      bDMMAvailable = false;
    60446065    }
     6066
     6067#if FLEX_CODING_ORDER
     6068    if ( !bDMMAvailable34 )
     6069    {
     6070      bDMMAvailable = false;
     6071    }
     6072#endif
     6073
    60456074  }
    60466075#endif
     
    61486177  xDeltaDCQuantScaleDown( pcCU, riDeltaDC2 );
    61496178}
    6150 #endif
    6151 #if HHI_DMM_WEDGE_INTRA
     6179//#endif
     6180#if HHI_DMM_WEDGE_INTRA 
    61526181Void TEncSearch::findWedgeFullMinDist( TComDataCU*  pcCU,
    61536182                                       UInt         uiAbsPtIdx,
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSearch.h

    r100 r139  
    315315  Bool predIntraLumaDMMAvailable  ( UInt           uiMode,
    316316                                    UInt           uiWidth,
    317                                     UInt           uiHeight );
     317#if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER
     318                                    UInt         uiHeight,
     319                                    Bool         bDMMAvailable34 );
     320#else
     321                                    UInt         uiHeight );
     322#endif
     323
    318324  Void xGetWedgeDeltaDCsMinDist   ( TComWedgelet*  pcWedgelet,
    319325                                    TComDataCU*    pcCU,
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSlice.cpp

    r102 r139  
    729729 {
    730730
    731    Int frameWidth = m_pcCfg->getSourceWidth();
     731 
     732#if 0
     733  Int frameWidth = m_pcCfg->getSourceWidth();
    732734   Pel* pVideoRec = m_pcRdCost->getVideoRecPicYuv()->getLumaAddr();
    733735   Int iVideoRecStride = m_pcRdCost->getVideoRecPicYuv()->getStride();
     
    746748     pDepthOrg += iDepthOrgStride;
    747749   }
     750#endif
    748751 }
    749752#endif
  • branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncTop.cpp

    r105 r139  
    768768  m_cSPS.setUseDMM( m_bUseDMM );
    769769#endif
     770
     771#if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER
     772  m_cSPS.setUseDMM34( m_bUseDMM34 );
     773#endif
     774
     775
    770776#if HHI_MPI
    771777  m_cSPS.setUseMVI( m_bUseMVI );
Note: See TracChangeset for help on using the changeset viewer.