Changeset 188 in 3DVCSoftware for branches


Ignore:
Timestamp:
15 Nov 2012, 21:36:12 (12 years ago)
Author:
tech
Message:

Removed old macro switches.

Location:
branches/HTM-4.1-dev0/source
Files:
26 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-4.1-dev0/source/App/TAppDecoder/TAppDecTop.cpp

    r105 r188  
    436436    m_useDepth = true;
    437437
    438 #if FIX_DECODING_WO_WRITING
    439438  if ( m_pchReconFile )
    440439  {
    441 #endif
    442440    while( m_tVideoIOYuvReconFile.size() < newNumberOfViewDepth)
    443441    {
     
    473471      free ( nextFilename );
    474472    }
    475 #if FIX_DECODING_WO_WRITING
    476   }
    477 #endif
     473  }
    478474
    479475  while( m_pocLastDisplay.size() < newNumberOfViewDepth )
  • branches/HTM-4.1-dev0/source/App/TAppEncoder/TAppEncCfg.cpp

    r187 r188  
    7474{
    7575  m_aidQP = NULL;
    76 #if FIXES
    7776  m_aidQPdepth = NULL;
    78 #endif
    7977}
    8078
     
    8684  }
    8785
    88 #if FIXES
    8986  if ( m_aidQPdepth )
    9087  {
    9188    delete[] m_aidQPdepth; m_aidQPdepth = NULL;
    9289  }
    93 #endif
    9490
    9591  for(Int i = 0; i< m_pchInputFileList.size(); i++ )
     
    120116#endif
    121117
    122 #if FIX_MEM_LEAKS
    123118 if ( m_pchCameraParameterFile != NULL )
    124119   free ( m_pchCameraParameterFile );
     
    139134   free ( m_scalingListFile );
    140135
    141 #endif   
    142136
    143137}
     
    330324#endif
    331325#if DBL_CONTROL
    332 #if FIX_DBL_CONTROL_DEFAULT
    333326  ("DeblockingFilterControlPresent", m_DeblockingFilterControlPresent, true)
    334 #else
    335   ("DeblockingFilterControlPresent", m_DeblockingFilterControlPresent, false)
    336 #endif
    337327#endif
    338328
  • branches/HTM-4.1-dev0/source/App/TAppEncoder/TAppEncTop.cpp

    r185 r188  
    689689    if ( m_uiVSOMode == 4 )
    690690    {
    691 #if HHI_VSO_SPEEDUP_A0033
    692691#if LGE_VSO_EARLY_SKIP_A0093
    693692      m_cRendererModel.create( m_cRenModStrParser.getNumOfBaseViews(), m_cRenModStrParser.getNumOfModels(), m_iSourceWidth, g_uiMaxCUHeight , LOG2_DISP_PREC_LUT, 0, m_bVSOEarlySkip );
    694693#else
    695694      m_cRendererModel.create( m_cRenModStrParser.getNumOfBaseViews(), m_cRenModStrParser.getNumOfModels(), m_iSourceWidth, g_uiMaxCUHeight , LOG2_DISP_PREC_LUT, 0 );
    696 #endif
    697 #else
    698       m_cRendererModel.create( m_cRenModStrParser.getNumOfBaseViews(), m_cRenModStrParser.getNumOfModels(), m_iSourceWidth, m_iSourceHeight, LOG2_DISP_PREC_LUT, 0 );
    699695#endif
    700696
     
    10271023  pcDepthPicYuvOrg = NULL;
    10281024 
    1029 #if FIX_MEM_LEAKS
    10301025  if ( pcPdmDepthOrg != NULL )
    10311026  {
     
    10341029    pcPdmDepthOrg = NULL;
    10351030  };
    1036 #endif
    10371031
    10381032 
     
    12931287#endif
    12941288#if HHI_VSO
    1295 #if HHI_VSO_SPEEDUP_A0033
    12961289Void TAppEncTop::setupRenModel( Int iPoc, Int iEncViewIdx, Int iEncContent, Int iHorOffset )
    12971290{
    1298 #if FIX_VSO_SETUP
    12991291  m_cRendererModel.setupPart( iHorOffset, Min( g_uiMaxCUHeight, m_iSourceHeight - iHorOffset ) );
    1300 #else
    1301   m_cRendererModel.setHorOffset( iHorOffset );
    1302 #endif
    1303 #else
    1304 Void TAppEncTop::setupRenModel( Int iPoc, Int iEncViewIdx, Int iEncContent )
    1305 {
    1306 #endif
    13071292  Int iEncViewSIdx = m_cCameraData.getBaseId2SortedId()[ iEncViewIdx ];
    13081293
  • branches/HTM-4.1-dev0/source/App/TAppEncoder/TAppEncTop.h

    r177 r188  
    136136#endif
    137137#if HHI_VSO
    138 #if HHI_VSO_SPEEDUP_A0033
    139138  Void                  setupRenModel    ( Int iPoc, Int iEncViewIdx, Int iEncContent, Int iHorOffset );
    140 #else
    141   Void                  setupRenModel    ( Int iPoc, Int iEncViewIdx, Int iEncContent );
    142 #endif
    143139#endif
    144140 
  • branches/HTM-4.1-dev0/source/App/TAppRenderer/TAppRendererTop.cpp

    r124 r188  
    532532#endif
    533533
    534 #if HHI_VSO_SPEEDUP_A0033
    535 #if FIX_VSO_SETUP
    536534    cCurModel.setupPart( 0, m_iSourceHeight  );
    537 #else
    538     cCurModel.setHorOffset( 0 );
    539 #endif
    540 #endif
    541535
    542536    for ( Int iViewIdx = 0; iViewIdx < m_iNumberOfInputViews; iViewIdx++ )
     
    713707
    714708  AOT( m_iLog2SamplingFactor != 0 );
    715 #if HHI_VSO_SPEEDUP_A0033
    716 #if FIX_VSO_SETUP
    717709  cCurModel.setupPart( 0, m_iSourceHeight  );
    718 #else
    719   cCurModel.setHorOffset( 0 );
    720 #endif
    721 #endif
    722710#if LGE_VSO_EARLY_SKIP_A0093
    723711  cCurModel.create( m_iNumberOfInputViews, m_iNumberOfOutputViews, m_iSourceWidth, m_iSourceHeight, m_iShiftPrecision, m_iBlendHoleMargin, false );
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComDataCU.cpp

    r187 r188  
    9393  m_pcTrCoeffCr        = NULL;
    9494#if ADAPTIVE_QP_SELECTION 
    95 #if FIX_MEM_LEAKS
    9695  m_ArlCoeffIsAliasedAllocation = false;
    9796  m_pcArlCoeffY        = NULL;
    9897  m_pcArlCoeffCb       = NULL;
    9998  m_pcArlCoeffCr       = NULL;
    100 #endif
    10199#endif
    102100 
     
    255253      m_pcArlCoeffCb       = m_pcGlbArlCoeffCb;
    256254      m_pcArlCoeffCr       = m_pcGlbArlCoeffCr;
    257 #if FIX_MEM_LEAKS
    258255      m_ArlCoeffIsAliasedAllocation = true;
    259 #endif
    260256    }
    261257    else
     
    381377    if ( m_pcTrCoeffCr        ) { xFree(m_pcTrCoeffCr);         m_pcTrCoeffCr       = NULL; }
    382378#if ADAPTIVE_QP_SELECTION
    383 #if FIX_MEM_LEAKS
    384379    if (!m_ArlCoeffIsAliasedAllocation)
    385380    {
     
    388383      xFree(m_pcArlCoeffCr); m_pcArlCoeffCr = 0;
    389384    }
    390 #endif
    391385    if ( m_pcGlbArlCoeffY     ) { xFree(m_pcGlbArlCoeffY);      m_pcGlbArlCoeffY    = NULL; }
    392386    if ( m_pcGlbArlCoeffCb    ) { xFree(m_pcGlbArlCoeffCb);     m_pcGlbArlCoeffCb   = NULL; }
     
    23972391#if H0204_QP_PREDICTION
    23982392  UInt        lPartIdx, aPartIdx;
    2399 #if FIX_COMP_WARNING_INIT
    24002393  lPartIdx = 0;
    24012394  aPartIdx = 0;
    2402 #endif
    24032395  TComDataCU* cULeft  = getQpMinCuLeft ( lPartIdx, m_uiAbsIdxInLCU + uiCurrAbsIdxInLCU );
    24042396  TComDataCU* cUAbove = getQpMinCuAbove( aPartIdx, m_uiAbsIdxInLCU + uiCurrAbsIdxInLCU );
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComDataCU.h

    r187 r188  
    159159  Int*          m_pcArlCoeffCb;       ///< ARL coefficient buffer (Cb)
    160160  Int*          m_pcArlCoeffCr;       ///< ARL coefficient buffer (Cr)
    161 #if FIX_MEM_LEAKS
    162161  Bool          m_ArlCoeffIsAliasedAllocation; ///< ARL coefficient buffer is an alias of the global buffer and must not be free()'d
    163 #endif
    164162
    165163  static Int*   m_pcGlbArlCoeffY;     ///< ARL coefficient buffer (Y)
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComPicSym.cpp

    r121 r188  
    123123
    124124
    125 #if FIX_MEM_LEAKS
    126125  for( i=0; i<(m_iNumColumnsMinus1+1)*(m_iNumRowsMinus1+1); i++ )
    127126  {
    128127    if ( m_apcTComTile[i] )  delete m_apcTComTile[i];
    129128  }
    130 #endif
    131129
    132130  delete [] m_apcTComTile;
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComSlice.cpp

    r183 r188  
    17041704, m_cabacInitPresentFlag        (false)
    17051705, m_encCABACTableIdx            (0)
    1706 #if POZNAN_CABAC_INIT_FLAG_FIX
     1706#if FIX_POZNAN_CABAC_INIT_FLAG
    17071707, m_encPrevPOC            (0)
    17081708#endif
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComSlice.h

    r181 r188  
    883883  Bool     m_cabacInitPresentFlag;
    884884  UInt     m_encCABACTableIdx;           // Used to transmit table selection across slices
    885 #if POZNAN_CABAC_INIT_FLAG_FIX
     885#if FIX_POZNAN_CABAC_INIT_FLAG
    886886  UInt     m_encPrevPOC;
    887887#endif
     
    10181018  Bool     getCabacInitPresentFlag()                { return m_cabacInitPresentFlag;    }
    10191019  UInt     getEncCABACTableIdx()                    { return m_encCABACTableIdx;        }
    1020 #if POZNAN_CABAC_INIT_FLAG_FIX
     1020#if FIX_POZNAN_CABAC_INIT_FLAG
    10211021  Void     setEncPrevPOC(UInt uiPOC)                { m_encPrevPOC = uiPOC;             }
    10221022  UInt     getEncPrevPOC()                          { return m_encPrevPOC;              }
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComYuv.cpp

    r118 r188  
    409409
    410410#if LG_RESTRICTEDRESPRED_M24766
    411 void
     411Void
    412412TComYuv::getPUXYOffset(PartSize uhPartitionSize, Int iWidth, Int iHeight, Int &iXOffset, Int &iYOffset)
    413413{
  • branches/HTM-4.1-dev0/source/Lib/TLibCommon/TypeDef.h

    r187 r188  
    4444///// ***** FIXES *********
    4545// A
    46 #define FIXES                             1
    47 #define POZNAN_CABAC_INIT_FLAG_FIX        1
    48 #define FIX_DECODING_WO_WRITING           1
    49 #define FIX_INIT_ROM                      1
    50 #define FIX_VIRT_DESTRUCTOR               1
    51 #define FIX_MEM_LEAKS                     1
    52 #define FIX_VSO_SETUP                     1
    53 #define FIX_COMP_WARNING_INIT             1
    54 #define FIX_RDO_MACRO                     1
     46#define FIX_POZNAN_CABAC_INIT_FLAG        1
    5547#define FIX_LG_RESTRICTEDRESPRED_M24766   1
    56 #define FIX_REMOVE_TILE_DEPENDENCE        1
    57 #define FIX_DBL_CONTROL_DEFAULT           1
    5848
    5949// B
     
    7060#define HHI_DMM_WEDGE_INTRA               1   // depth model modes independent on texture (explicit and intra-predicted Wedgelet prediction)
    7161#define HHI_DMM_PRED_TEX                  1   // depth model modes dependent on texture (inter-component Wedgelet and Contour prediction )
    72 #define LGE_EDGE_INTRA_A0070              1   // JCT2-A0070
     62#define LGE_EDGE_INTRA_A0070              1   // JCT3V-A0070
    7363#define RWTH_SDC_DLT_B0036                1   // JCT3V-B0036: Simplified Depth Coding + Depth Lookup Table
    7464#define HHIQC_DMMFASTSEARCH_B0039         1   // JCT3V-B0039: fast Wedgelet search for DMM modes 1 and 3
     
    7969#define QC_MRG_CANS_B0048                 1   // JCT3V-B0048, B0086, B0069
    8070#if     QC_MRG_CANS_B0048
    81 #define OL_DISMV_POS_B0069                1   // different pos for dispairty MV candidate, B0069
    82 #endif
    83 #define MTK_INTERVIEW_MERGE_A0049         1   // JCT2-A0049 second part
     71#define OL_DISMV_POS_B0069                1   // different pos for disparity MV candidate, B0069
     72#endif
     73#define MTK_INTERVIEW_MERGE_A0049         1   // JCT3V-A0049 second part
    8474#if HHI_INTER_VIEW_MOTION_PRED         
    8575#define SAIT_IMPROV_MOTION_PRED_M24829    1   // improved inter-view motion vector prediction
     
    116106#define HHI_VSO_LS_TABLE_M23714           1   // m23714, enable table base Lagrange multiplier optimization
    117107#define HHI_VSO_DIST_INT                  1   // Allow negative synthesized view distortion change
     108#define HHI_VSO_COLOR_PLANES              1   // Compute VSO distortion on color planes
     109#define HHI_VSO_RM_ASSERTIONS             0   // Output VSO assertions
    118110#define HHI_VSO_SYNTH_DIST_OUT            0   // Output of synthesized view distortion instead of depth distortion in encoder output
    119 #define HHI_VSO_COLOR_PLANES              1   // Compute VSO distortion on color planes
    120 #define HHI_VSO_RM_ASSERTIONS             0   // output VSO assertions
    121 #define HHI_VSO_SPEEDUP_A0033             1   // JCT2-A0033 modification 1 (changes in classes directly related the renderer model
    122                                               // to are not covered by this define, since nearly the entire class has been changed)
    123 #define HHI_VSO_SET_OPTIM                 1   // remove unnecessary updates (works only with HHI_VSO_FIX 1 properly)
    124 #define SAIT_VSO_EST_A0033                1   // JCT2-A0033 modification 3
    125 #define LGE_VSO_EARLY_SKIP_A0093          1   // JCT2-A0093 modification 4
    126 #define LGE_WVSO_A0119                    1   // JCT2-A0119 & JCT3V-B0131 Depth Metric with a weighted depth fidelity term
     111#define SAIT_VSO_EST_A0033                1   // JCT3V-A0033 modification 3
     112#define LGE_VSO_EARLY_SKIP_A0093          1   // JCT3V-A0093 modification 4
     113#define LGE_WVSO_A0119                    1   // JCT3V-A0119 & JCT3V-B0131 Depth Metric with a weighted depth fidelity term
    127114
    128115
     
    408395                            // This is here just to perform timing tests -- OL_FLUSH_ALIGN should be 0 for WPP.
    409396
    410 #define RVM_VCEGAM10_M 4
     397#define RVM_VCEGAM10_M         4
    411398
    412399#define PLANAR_IDX             0
     
    775762};
    776763
    777 #if HHI_VSO_SPEEDUP_A0033
    778764
    779765enum BlenMod
     
    785771    BLEND_GEN   =  3
    786772};
    787 #endif
    788773
    789774/// supported prediction type
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncCfg.h

    r181 r188  
    279279  Int       m_iColumnRowInfoPresent;
    280280  Int       m_iUniformSpacingIdr;
    281 #if FIX_REMOVE_TILE_DEPENDENCE
    282 #else
    283   Int       m_iTileBoundaryIndependenceIdr;
    284 #endif
    285281  Int       m_iNumColumnsMinus1;
    286282  UInt*     m_puiColumnWidth;
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncCu.cpp

    r187 r188  
    13481348
    13491349#if HHI_VSO
    1350 #if HHI_VSO_SET_OPTIM
    1351 #else
    1352           if( m_pcRdCost->getUseRenModel() ) // necessary ??
    1353           {
    1354             UInt  uiWidth     = m_ppcRecoYuvBest[uhNextDepth]->getWidth   (  );
    1355             UInt  uiHeight    = m_ppcRecoYuvBest[uhNextDepth]->getHeight  (   );
    1356             Pel*  piSrc       = m_ppcRecoYuvBest[uhNextDepth]->getLumaAddr( 0 );
    1357             UInt  uiSrcStride = m_ppcRecoYuvBest[uhNextDepth]->getStride  (   );
    1358             m_pcRdCost->setRenModelData( pcSubBestPartCU, 0, piSrc, uiSrcStride, uiWidth, uiHeight );
    1359           }
    1360 #endif
    13611350#endif
    13621351        }
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncGOP.cpp

    r187 r188  
    449449#endif
    450450
    451 #if HHI_VSO_SPEEDUP_A0033
    452 #else
    453     if ( iVSOMode == 4 )
    454     {
    455       m_pcEncTop->getEncTop()->setupRenModel( pcSlice->getPOC(), pcSlice->getViewId(), m_pcEncTop->isDepthCoder() ? 1 : 0 );
    456     }
    457     else
    458     {
    459       AOT(true);
    460     }
    461 #endif
    462451
    463452#if SAIT_VSO_EST_A0033
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncGOP.h

    r101 r188  
    137137 
    138138  Void  preLoopFilterPicAll  ( TComPic* pcPic, UInt64& ruiDist, UInt64& ruiBits );
    139 #if HHI_VSO_SPEEDUP_A0033
    140139  TEncTop* getEncTop() { return m_pcEncTop; }
    141 #endif
    142140 
    143141  TEncSlice*  getSliceEncoder()   { return m_pcSliceEncoder; }
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSbac.cpp

    r187 r188  
    307307  } 
    308308
    309   #if CABAC_INIT_FLAG && POZNAN_CABAC_INIT_FLAG_FIX
     309  #if CABAC_INIT_FLAG && FIX_POZNAN_CABAC_INIT_FLAG
    310310    m_pcSlice->getPPS()->setEncPrevPOC( m_pcSlice->getPOC() );
    311311  #endif
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSearch.cpp

    r187 r188  
    65136513       
    65146514        Dist uiActDist = RDO_DIST_MAX;
    6515 #if FIX_RDO_MACRO
    65166515#if SAIT_VSO_EST_A0033
    65176516        if ( m_pcRdCost->getUseEstimatedVSD() )
     
    65446543#endif // LGE_WVSO_A0119
    65456544        }
    6546 #else // FIX_RDO_MACRO
    6547 #if SAIT_VSO_EST_A0033
    6548         if ( m_pcRdCost->getUseEstimatedVSD() )
    6549         {         
    6550           TComPicYuv* pcVirRec = m_pcRdCost->getVideoRecPicYuv();
    6551           TComPicYuv* pcVirOrg = m_pcRdCost->getDepthPicYuv();
    6552           uiActDist = m_pcRdCost->getDistPart( piPredic, uiStride, piOrig, uiStride, pcVirRec->getLumaAddr(pcCU->getAddr(),pcCU->getZorderIdxInCU()), pcVirOrg->getLumaAddr(pcCU->getAddr(),pcCU->getZorderIdxInCU()), pcVirRec->getStride(), uiWidth, uiHeight );
    6553 #if LGE_WVSO_A0119
    6554           if ( m_pcRdCost->getUseWVSO() )
    6555           {   
    6556             Int iDWeight = m_pcRdCost->getDWeight() * m_pcRdCost->getDWeight();
    6557             Int iVSDWeight = m_pcRdCost->getVSDWeight() * m_pcRdCost->getVSDWeight();
    6558             Dist iD = (Dist) m_pcRdCost->getDistPart( piPredic, uiStride, piOrig, uiStride, uiWidth, uiHeight, false, DF_SAD );
    6559             uiActDist = (iDWeight * iD + iVSDWeight * (Dist) uiActDist) / ( iDWeight + iVSDWeight);
    6560           }
    6561 #endif // LGE_WVSO_A0119
    6562         }
    6563         else       
    6564 #else  // SAIT_VSO_EST_A0033 <-- wrong #else statement should be #endif
    6565         {       
    6566           uiActDist = m_pcRdCost->getDistVS( pcCU, 0, piPredic, uiStride,  piOrig, uiStride, uiWidth, uiHeight, false, 0 );
    6567 #if LGE_WVSO_A0119
    6568           if ( m_pcRdCost->getUseWVSO() )
    6569           {   
    6570             Int iDWeight = m_pcRdCost->getDWeight() * m_pcRdCost->getDWeight();
    6571             Int iVSOWeight = m_pcRdCost->getVSOWeight() * m_pcRdCost->getVSOWeight();
    6572             Dist iD = (Dist) m_pcRdCost->getDistPart( piPredic, uiStride, piOrig, uiStride, uiWidth, uiHeight, false, DF_SAD );
    6573             uiActDist = (iDWeight * iD + iVSOWeight * (Dist) uiActDist) / ( iDWeight + iVSOWeight);
    6574           }
    6575 #endif // LGE_WVSO_A0119
    6576         }
    6577 #endif // SAIT_VSO_EST_A0033 <-- wrong #endif should be removed
    6578 #endif // FIX_RDO_MACRO
    65796545
    65806546        if( uiActDist < uiBestDist || uiBestDist == RDO_DIST_MAX )
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSlice.cpp

    r187 r188  
    3838#include "TEncTop.h"
    3939#include "TEncSlice.h"
    40 #if HHI_VSO_SPEEDUP_A0033
    4140#include "../../App/TAppEncoder/TAppEncTop.h"
    42 #endif
    4341#include <math.h>
    4442
     
    659657  m_uiPicDist       = 0;
    660658 
    661 #if CABAC_INIT_FLAG && POZNAN_CABAC_INIT_FLAG_FIX
     659#if CABAC_INIT_FLAG && FIX_POZNAN_CABAC_INIT_FLAG
    662660  Bool bReset =(pcSlice->getPOC() == 0) ||
    663661    (pcSlice->getPOC() % m_pcCfg->getIntraPeriod() == 0) ||
     
    823821  UInt uiTileLCUX     = 0;
    824822
    825 #if HHI_VSO_SPEEDUP_A0033
    826823  Int iLastPosY = -1;
    827 #endif
    828824
    829825  // for every CU in slice
     
    838834    pcCU->initCU( rpcPic, uiCUAddr );
    839835
    840 #if HHI_VSO_SPEEDUP_A0033
    841836    if ( m_pcRdCost->getUseRenModel() )
    842837    {
     
    852847      }
    853848    }   
    854 #endif
    855849
    856850    // inherit from TR if necessary, select substream to use.
  • branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncTop.cpp

    r181 r188  
    9191{
    9292  // initialize global variables
    93 #if FIX_INIT_ROM
    9493  if( m_viewId == 0 && m_isDepth == false )
    9594  {
    96 #endif
    9795    initROM();
    98 #if FIX_INIT_ROM
    99   }
    100 #endif
     96  }
    10197
    10298
     
    605601  // mark it should be extended
    606602  rpcPic->getPicYuvRec()->setBorderExtension(false);
    607 #if FIXES
    608603  rpcPic->getPicYuvOrg()->setBorderExtension(false);
    609 #endif
    610604}
    611605
     
    11061100
    11071101    // # substreams is "per tile" when tiles are independent.
    1108 #if FIX_REMOVE_TILE_DEPENDENCE
    11091102    if ( m_iWaveFrontSynchro )
    1110 #else
    1111     if (m_iTileBoundaryIndependenceIdr && m_iWaveFrontSynchro)
    1112 #endif
    11131103    {
    11141104      m_cPPS.setNumSubstreams(m_iWaveFrontSubstreams * (m_iNumColumnsMinus1+1)*(m_iNumRowsMinus1+1));
  • branches/HTM-4.1-dev0/source/Lib/TLibRenderer/TRenImage.cpp

    r101 r188  
    106106}
    107107
    108 #if HHI_VSO_SPEEDUP_A0033
    109108template<typename T>
    110109Void TRenImage<T>::getDataAndStrides( T** pptData, Int* piStrides )
     
    127126  }
    128127}
    129 #endif
    130128
    131129template<typename T>
  • branches/HTM-4.1-dev0/source/Lib/TLibRenderer/TRenImage.h

    r101 r188  
    6969  TRenImagePlane<T>** getPlanes() const;
    7070
    71 #if HHI_VSO_SPEEDUP_A0033
    7271  Void getDataAndStrides( T**    pptData, Int*  piStrides );
    7372  Void getWidthAndHeight( Int*  piWidths, Int*  piHeights );
    74 #endif
    7573
    7674  UInt getNumberOfPlanes()  const;
  • branches/HTM-4.1-dev0/source/Lib/TLibRenderer/TRenModel.cpp

    r145 r188  
    4242  m_iWidth             = -1;
    4343  m_iHeight            = -1;
    44 #if FIX_VSO_SETUP
    4544  m_iUsedHeight        = -1;
    46 #endif
    4745  m_iNumOfBaseViews    = -1;
    4846  m_iSampledWidth      = -1;
     
    437435{
    438436  AOT( iViewNum < 0 || iViewNum > m_iNumOfBaseViews );
    439 #if FIX_VSO_SETUP
    440437  AOF( pcPicYuvVideoData->getHeight() >= m_iUsedHeight + m_uiHorOff && pcPicYuvVideoData->getWidth() == m_iWidth );
    441438  AOF( pcPicYuvDepthData->getHeight() >= m_iUsedHeight + m_uiHorOff && pcPicYuvDepthData->getWidth() == m_iWidth );
    442 #else
    443   AOF( pcPicYuvVideoData->getHeight() <= m_iHeight + m_uiHorOff || pcPicYuvVideoData->getWidth() == m_iWidth );
    444   AOF( pcPicYuvDepthData->getHeight() <= m_iHeight + m_uiHorOff || pcPicYuvDepthData->getWidth() == m_iWidth );
    445 #endif
    446439
    447440  pcPicYuvVideoData->extendPicBorder();
    448441
    449 #if FIX_VSO_SETUP
    450442  TRenFilter::sampleHorUp   ( m_iShiftPrec, pcPicYuvVideoData->getLumaAddr() +  m_uiHorOff        * pcPicYuvVideoData->getStride () , pcPicYuvVideoData->getStride() , m_iWidth,      m_iUsedHeight,      m_aapiCurVideoPel[ iViewNum ][0], m_aaiCurVideoStrides[iViewNum][0] );
    451443  TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvVideoData->getCbAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvVideoData->getCStride() , pcPicYuvVideoData->getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, m_aapiCurVideoPel[ iViewNum ][1], m_aaiCurVideoStrides[iViewNum][1] );
    452444  TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvVideoData->getCrAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvVideoData->getCStride() , pcPicYuvVideoData->getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, m_aapiCurVideoPel[ iViewNum ][2], m_aaiCurVideoStrides[iViewNum][2] );
    453445  TRenFilter::copy          (               pcPicYuvDepthData->getLumaAddr() +  m_uiHorOff        * pcPicYuvDepthData->getStride () , pcPicYuvDepthData->getStride(),  m_iWidth,      m_iUsedHeight,      m_apiCurDepthPel [ iViewNum],     m_aiCurDepthStrides [iViewNum]    );
    454 #else
    455   TRenFilter::sampleHorUp   ( m_iShiftPrec, pcPicYuvVideoData->getLumaAddr() +  m_uiHorOff        * pcPicYuvVideoData->getStride () , pcPicYuvVideoData->getStride() , m_iWidth,      m_iHeight,      m_aapiCurVideoPel[ iViewNum ][0], m_aaiCurVideoStrides[iViewNum][0] );
    456   TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvVideoData->getCbAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvVideoData->getCStride() , pcPicYuvVideoData->getCStride(), m_iWidth >> 1, m_iHeight >> 1, m_aapiCurVideoPel[ iViewNum ][1], m_aaiCurVideoStrides[iViewNum][1] );
    457   TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvVideoData->getCrAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvVideoData->getCStride() , pcPicYuvVideoData->getCStride(), m_iWidth >> 1, m_iHeight >> 1, m_aapiCurVideoPel[ iViewNum ][2], m_aaiCurVideoStrides[iViewNum][2] );
    458   TRenFilter::copy          (               pcPicYuvDepthData->getLumaAddr() +  m_uiHorOff        * pcPicYuvDepthData->getStride () , pcPicYuvDepthData->getStride(),  m_iWidth,      m_iHeight,      m_apiCurDepthPel [ iViewNum],     m_aiCurDepthStrides [iViewNum]    );
    459 #endif
    460446
    461447  // Used for rendering reference pic from original video data
     
    465451  if ( m_abSetupVideoFromOrgForView[iViewNum] )
    466452  {
    467 #if FIX_VSO_SETUP
    468453    AOF( pcPicYuvOrgVideoData->getHeight() >= m_iUsedHeight + m_uiHorOff && pcPicYuvOrgVideoData->getWidth() == m_iWidth );
    469454    pcPicYuvOrgVideoData->extendPicBorder();
     
    471456    TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvOrgVideoData->getCbAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvOrgVideoData->getCStride(), pcPicYuvOrgVideoData->getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, m_aapiOrgVideoPel[ iViewNum ][1], m_aaiOrgVideoStrides[iViewNum][1] );
    472457    TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvOrgVideoData->getCrAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvOrgVideoData->getCStride(), pcPicYuvOrgVideoData->getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, m_aapiOrgVideoPel[ iViewNum ][2], m_aaiOrgVideoStrides[iViewNum][2] );
    473 #else
    474     AOF( pcPicYuvOrgVideoData->getHeight() <= m_iHeight + m_uiHorOff || pcPicYuvOrgVideoData->getWidth() == m_iWidth );
    475     pcPicYuvOrgVideoData->extendPicBorder();
    476     TRenFilter::sampleHorUp   ( m_iShiftPrec, pcPicYuvOrgVideoData->getLumaAddr() +  m_uiHorOff        * pcPicYuvOrgVideoData->getStride() , pcPicYuvOrgVideoData->getStride() , m_iWidth,      m_iHeight,      m_aapiOrgVideoPel[ iViewNum ][0], m_aaiOrgVideoStrides[iViewNum][0] );
    477     TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvOrgVideoData->getCbAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvOrgVideoData->getCStride(), pcPicYuvOrgVideoData->getCStride(), m_iWidth >> 1, m_iHeight >> 1, m_aapiOrgVideoPel[ iViewNum ][1], m_aaiOrgVideoStrides[iViewNum][1] );
    478     TRenFilter::sampleCUpHorUp( m_iShiftPrec, pcPicYuvOrgVideoData->getCrAddr()   + (m_uiHorOff >> 1 ) * pcPicYuvOrgVideoData->getCStride(), pcPicYuvOrgVideoData->getCStride(), m_iWidth >> 1, m_iHeight >> 1, m_aapiOrgVideoPel[ iViewNum ][2], m_aaiOrgVideoStrides[iViewNum][2] );
    479 #endif
    480458  }
    481459
    482460  if ( m_abSetupDepthFromOrgForView[iViewNum] )
    483461  {
    484 #if FIX_VSO_SETUP
    485462    AOF( pcPicYuvOrgDepthData->getHeight() >= m_iUsedHeight + m_uiHorOff && pcPicYuvOrgDepthData->getWidth() == m_iWidth );
    486463    TRenFilter::copy          (               pcPicYuvOrgDepthData->getLumaAddr() +  m_uiHorOff        * pcPicYuvOrgDepthData->getStride() , pcPicYuvOrgDepthData->getStride(),  m_iWidth,     m_iUsedHeight,      m_apiOrgDepthPel [ iViewNum],     m_aiOrgDepthStrides [iViewNum]    );
    487 #else
    488     AOF( pcPicYuvOrgDepthData->getHeight() <= m_iHeight + m_uiHorOff || pcPicYuvOrgDepthData->getWidth() == m_iWidth );
    489     TRenFilter::copy          (               pcPicYuvOrgDepthData->getLumaAddr() +  m_uiHorOff        * pcPicYuvOrgDepthData->getStride() , pcPicYuvOrgDepthData->getStride(),  m_iWidth,     m_iHeight,      m_apiOrgDepthPel [ iViewNum],     m_aiOrgDepthStrides [iViewNum]    );
    490 #endif
    491464  }
    492465}
     
    497470  AOT( iModelNum < 0 || iModelNum > m_iNumOfRenModels );
    498471
    499 #if FIX_VSO_SETUP
    500472  m_apcRenModels[iModelNum]->setupPart( m_uiHorOff, m_iUsedHeight );
    501 #endif
    502473
    503474  // Switch model  to original data for setup if given to render reference
     
    520491  }
    521492
    522 #if FIX_VSO_SETUP
    523493  m_apcRenModels[iModelNum]->setup     ( pcPicYuvRefView, ppiShiftLutLeft, ppiBaseShiftLutLeft, ppiShiftLutRight, ppiBaseShiftLutRight, iDistToLeft, false );
    524 #else
    525   m_apcRenModels[iModelNum]->setup     ( pcPicYuvRefView, ppiShiftLutLeft, ppiBaseShiftLutLeft, ppiShiftLutRight, ppiBaseShiftLutRight, iDistToLeft, false, m_uiHorOff );
    526 #endif
    527494
    528495  // Setup to Org
     
    545512
    546513    // setup keeping reference rendered from original data
    547 #if FIX_VSO_SETUP
    548514    m_apcRenModels[iModelNum]->setup     ( pcPicYuvRefView, ppiShiftLutLeft, ppiBaseShiftLutLeft, ppiShiftLutRight, ppiBaseShiftLutRight, iDistToLeft, true );
    549 #else
    550     m_apcRenModels[iModelNum]->setup     ( pcPicYuvRefView, ppiShiftLutLeft, ppiBaseShiftLutLeft, ppiShiftLutRight, ppiBaseShiftLutRight, iDistToLeft, true, m_uiHorOff);
    551 #endif
    552515  }
    553516}
     
    579542
    580543
    581 #if FIX_VSO_SETUP
    582544Void
    583545TRenModel::setupPart ( UInt uiHorOff, Int iUsedHeight )
     
    587549  m_iUsedHeight = iUsedHeight;
    588550}
    589 #else
    590 Void
    591 TRenModel::setHorOffset     ( UInt uiHorOff )
    592 {
    593   m_uiHorOff = uiHorOff;
    594 }
    595 #endif
    596551
    597552#if LGE_VSO_EARLY_SKIP_A0093
     
    606561
    607562  AOT( iWidth  + iStartPosX > m_iWidth  );
    608 #if FIX_VSO_SETUP
    609563  AOT( iHeight + iStartPosY > m_iUsedHeight );
    610 #else
    611   AOT( iHeight + iStartPosY > m_iHeight );
    612 #endif
    613564
    614565  AOT( iStartPosX < 0);
     
    644595
    645596  iWidth  = min(iWidth , m_iWidth  - iStartPosX );
    646 #if FIX_VSO_SETUP
    647597  iHeight = min(iHeight, m_iUsedHeight - iStartPosY );
    648 #else
    649   iHeight = min(iHeight, m_iHeight - iStartPosY );
    650 #endif
    651598
    652599  AOT( iStartPosX < 0);
     
    684631TRenModel::getSynthVideo( Int iModelNum, Int iViewNum, TComPicYuv* pcPicYuv )
    685632{
    686 #if FIX_VSO_SETUP
    687633  m_apcRenModels[iModelNum]->getSynthVideo(iViewNum, pcPicYuv );
    688 #else
    689   m_apcRenModels[iModelNum]->getSynthVideo(iViewNum, pcPicYuv, m_uiHorOff );
    690 #endif
    691634}
    692635
     
    694637TRenModel::getSynthDepth( Int iModelNum, Int iViewNum, TComPicYuv* pcPicYuv )
    695638{
    696 #if HHI_VSO_SPEEDUP_A0033 && !FIX_VSO_SETUP
    697   m_apcRenModels[iModelNum]->getSynthDepth(iViewNum, pcPicYuv, m_uiHorOff );
    698 #else
    699639  m_apcRenModels[iModelNum]->getSynthDepth(iViewNum, pcPicYuv );
    700 #endif
    701640}
    702641
     
    705644{
    706645  TComPicYuv cPicYuvSynth;
    707 #if FIX_VSO_SETUP
    708646  cPicYuvSynth.create( m_iWidth, m_iUsedHeight, g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth );
    709 #else
    710   cPicYuvSynth.create( m_iWidth, m_iHeight, g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth );
    711 #endif
    712647
    713648  TComPicYuv cPicYuvTempRef;
    714 #if FIX_VSO_SETUP
    715649  cPicYuvTempRef.create( m_iWidth, m_iUsedHeight, g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth);
    716 #else
    717   cPicYuvTempRef.create( m_iWidth, m_iHeight, g_uiMaxCUWidth, g_uiMaxCUHeight, g_uiMaxCUDepth);
    718 #endif
    719650
    720651  Int64 iSSEY = 0;
     
    724655  for (Int iCurModel = 0; iCurModel < m_iNumOfCurRenModels; iCurModel++)
    725656  {
    726 #if FIX_VSO_SETUP
    727657    m_apcCurRenModels[iCurModel]->getSynthVideo( m_aiCurPosInModels[iCurModel], &cPicYuvSynth );   
    728658    m_apcCurRenModels[iCurModel]->getRefVideo  ( m_aiCurPosInModels[iCurModel], &cPicYuvTempRef   );
     
    731661    iSSEU += TRenFilter::SSE( cPicYuvSynth.getCbAddr()  , cPicYuvSynth.getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, cPicYuvTempRef.getCbAddr()  , cPicYuvTempRef.getCStride());
    732662    iSSEV += TRenFilter::SSE( cPicYuvSynth.getCrAddr()  , cPicYuvSynth.getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, cPicYuvTempRef.getCrAddr()  , cPicYuvTempRef.getCStride());
    733 #else
    734     m_apcCurRenModels[iCurModel]->getSynthVideo( m_aiCurPosInModels[iCurModel], &cPicYuvSynth, 0 );
    735     TComPicYuv* pcPicYuvRef = &cPicYuvTempRef;
    736     m_apcCurRenModels[iCurModel]->getRefVideo  ( m_aiCurPosInModels[iCurModel], pcPicYuvRef  , 0 );
    737 
    738     iSSEY += TRenFilter::SSE( cPicYuvSynth.getLumaAddr(), cPicYuvSynth.getStride(),  m_iWidth,      m_iHeight     , pcPicYuvRef->getLumaAddr(), pcPicYuvRef->getStride() );
    739     iSSEU += TRenFilter::SSE( cPicYuvSynth.getCbAddr()  , cPicYuvSynth.getCStride(), m_iWidth >> 1, m_iHeight >> 1, pcPicYuvRef->getCbAddr()  , pcPicYuvRef->getCStride());
    740     iSSEV += TRenFilter::SSE( cPicYuvSynth.getCrAddr()  , cPicYuvSynth.getCStride(), m_iWidth >> 1, m_iHeight >> 1, pcPicYuvRef->getCrAddr()  , pcPicYuvRef->getCStride());
    741 #endif
    742663  }
    743664
  • branches/HTM-4.1-dev0/source/Lib/TLibRenderer/TRenModel.h

    r124 r188  
    6262
    6363  // Set horizontal offset
    64 #if FIX_VSO_SETUP
    6564  Void  setupPart        ( UInt uiHorOff, Int iUsedHeight );
    66 #else
    67   Void  setHorOffset     ( UInt uiHorOff );
    68 #endif
    6965
    7066  // Set Mode
     
    104100  Int m_iSampledWidth;
    105101  Int m_iPad;
    106 #if FIX_VSO_SETUP
    107102  Int m_iUsedHeight;   // height currently used in buffer, whereas m_iHeight is the total height of the buffer
    108 #endif
    109103
    110104
    111105  Int m_iNumOfBaseViews;
    112106
    113 #if HHI_VSO_SPEEDUP_A0033                 
    114107  // Horizontal Offset in input data
    115108  UInt m_uiHorOff;         
    116 #endif
    117109
    118110  /// Current Error Type ///
  • branches/HTM-4.1-dev0/source/Lib/TLibRenderer/TRenSingleModel.cpp

    r145 r188  
    4444  m_iHeight = -1;
    4545  m_iStride = -1;
    46 #if FIX_VSO_SETUP
    4746  m_iUsedHeight = -1;
    4847  m_iHorOffset  = -1;
    49 #endif
    5048  m_iMode   = -1;
    5149  m_iPad    = PICYUV_PAD;
     
    104102  if ( m_pcInputSamples [1] ) delete[] m_pcInputSamples [1];
    105103
    106 #if FIX_MEM_LEAKS
    107104  if ( m_pcOutputSamples    ) delete[] m_pcOutputSamples   ;
    108 #else
    109   if ( m_pcOutputSamples    ) delete   m_pcOutputSamples   ;
    110 #endif
    111 
    112 #if FIX_MEM_LEAKS
     105
    113106  if ( m_piInvZLUTLeft  ) delete[] m_piInvZLUTLeft ;
    114107  if ( m_piInvZLUTRight ) delete[] m_piInvZLUTRight;
     
    117110  if ( m_aapiRefVideoPel[1] ) delete[] ( m_aapiRefVideoPel[1] - ( m_aiRefVideoStrides[1] * m_iPad + m_iPad ) );
    118111  if ( m_aapiRefVideoPel[2] ) delete[] ( m_aapiRefVideoPel[2] - ( m_aiRefVideoStrides[2] * m_iPad + m_iPad ) );
    119 #endif
    120112}
    121113
     
    197189  Int iOffsetX = ( iViewPos == VIEWPOS_RIGHT ) ? 1 : 0;
    198190
    199 #if FIX_VSO_SETUP
    200191  for ( Int iPosY = 0; iPosY < m_iUsedHeight; iPosY++ )
    201 #else
    202   for ( Int iPosY = 0; iPosY < m_iHeight; iPosY++ )
    203 #endif
    204192  {
    205193    if ( iViewPos == VIEWPOS_RIGHT )
     
    245233
    246234}
    247 #if FIX_VSO_SETUP
    248235template <BlenMod iBM, Bool bBitInc> Void
    249236TRenSingleModelC<iBM,bBitInc>::setupPart ( UInt uiHorOffset,       Int iUsedHeight )
     
    254241  m_iHorOffset  = (Int) uiHorOffset;
    255242}
    256 #endif
    257243
    258244template <BlenMod iBM, Bool bBitInc> Void
    259 #if FIX_VSO_SETUP
    260245TRenSingleModelC<iBM,bBitInc>::setup( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight,  Int** ppiBaseShiftLutRight,  Int iDistToLeft, Bool bKeepReference )
    261 #else
    262 TRenSingleModelC<iBM,bBitInc>::setup( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight,  Int** ppiBaseShiftLutRight,  Int iDistToLeft, Bool bKeepReference, UInt uiHorOff )
    263 #endif
    264246{
    265247  AOT( !m_bUseOrgRef && pcOrgVideo );
     
    275257  if ( pcOrgVideo && !bKeepReference )
    276258  {
    277 #if FIX_VSO_SETUP
    278259    TRenFilter::copy(             pcOrgVideo->getLumaAddr() +  m_iHorOffset       * pcOrgVideo->getStride() , pcOrgVideo->getStride() , m_iWidth,      m_iUsedHeight,      m_aapiRefVideoPel[0], m_aiRefVideoStrides[0]);
    279260    TRenFilter::sampleCUpHorUp(0, pcOrgVideo->getCbAddr()   + (m_iHorOffset >> 1) * pcOrgVideo->getCStride(), pcOrgVideo->getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, m_aapiRefVideoPel[1], m_aiRefVideoStrides[1]);
    280261    TRenFilter::sampleCUpHorUp(0, pcOrgVideo->getCrAddr()   + (m_iHorOffset >> 1) * pcOrgVideo->getCStride(), pcOrgVideo->getCStride(), m_iWidth >> 1, m_iUsedHeight >> 1, m_aapiRefVideoPel[2], m_aiRefVideoStrides[2]);   
    281 #else
    282     TRenFilter::copy(             pcOrgVideo->getLumaAddr() +  uiHorOff       * pcOrgVideo->getStride() , pcOrgVideo->getStride() , m_iWidth,      m_iHeight,      m_aapiRefVideoPel[0], m_aiRefVideoStrides[0]);
    283     TRenFilter::sampleCUpHorUp(0, pcOrgVideo->getCbAddr()   + (uiHorOff >> 1) * pcOrgVideo->getCStride(), pcOrgVideo->getCStride(), m_iWidth >> 1, m_iHeight >> 1, m_aapiRefVideoPel[1], m_aiRefVideoStrides[1]);
    284     TRenFilter::sampleCUpHorUp(0, pcOrgVideo->getCrAddr()   + (uiHorOff >> 1) * pcOrgVideo->getCStride(), pcOrgVideo->getCStride(), m_iWidth >> 1, m_iHeight >> 1, m_aapiRefVideoPel[2], m_aiRefVideoStrides[2]);   
    285 #endif
    286262    xSetStructRefView();
    287263  }
     
    290266  xResetStructError();
    291267  xInitSampleStructs();
    292 #if FIX_VSO_SETUP
    293268  switch ( m_iMode )
    294269  { 
     
    320295    AOT(true);
    321296  }
    322 #else
    323   switch ( m_iMode )
    324   { 
    325   case 0:   
    326 #if LGE_VSO_EARLY_SKIP_A0093
    327     xRenderL<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[0], m_apiBaseDepthPel[0],false );
    328 #else
    329     xRenderL<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[0], m_apiBaseDepthPel[0] );
    330 #endif   
    331     break;
    332   case 1:   
    333 #ifdef LGE_VSO_EARLY_SKIP_A0093
    334     xRenderR<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[1], m_apiBaseDepthPel[1],false);
    335 #else
    336     xRenderR<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[1], m_apiBaseDepthPel[1] );
    337 #endif
    338     break;
    339   case 2:
    340     TRenFilter::setupZLUT( true, 30, iDistToLeft, ppiBaseShiftLutLeft, ppiBaseShiftLutRight, m_iBlendZThres, m_iBlendDistWeight, m_piInvZLUTLeft, m_piInvZLUTRight );
    341 #ifdef LGE_VSO_EARLY_SKIP_A0093
    342     xRenderL<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[0], m_apiBaseDepthPel[0],false);
    343     xRenderR<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[1], m_apiBaseDepthPel[1],false);
    344 #else     
    345     xRenderL<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[0], m_apiBaseDepthPel[0] );
    346     xRenderR<true>( 0, 0, m_iWidth, m_iHeight, m_aiBaseDepthStrides[1], m_apiBaseDepthPel[1] );
    347 #endif
    348     break;
    349   default:
    350     AOT(true);
    351   }
    352 #endif
    353297
    354298  // Get Rendered View as Reference
     
    413357#endif 
    414358
    415 #if FIX_VSO_SETUP
    416359  for ( Int iPosY = 0; iPosY < m_iUsedHeight; iPosY++ )
    417 #else
    418   for ( Int iPosY = 0; iPosY < m_iHeight; iPosY++ )
    419 #endif
    420360  {
    421361    for ( Int iPosX = 0; iPosX < m_iWidth; iPosX++ )
     
    470410#endif
    471411
    472 #if FIX_VSO_SETUP
    473412  for ( Int iPosY = 0; iPosY < m_iUsedHeight; iPosY++ )
    474 #else
    475   for ( Int iPosY = 0; iPosY < m_iHeight; iPosY++ )
    476 #endif
    477413  {
    478414    for ( Int iPosX = 0; iPosX < m_iWidth; iPosX++ )
     
    617553}
    618554
    619 #if FIX_VSO_SETUP
    620555template <BlenMod iBM, Bool bBitInc> Void
    621556TRenSingleModelC<iBM,bBitInc>::getSynthVideo( Int iViewPos, TComPicYuv* pcPicYuv )
     
    648583#endif 
    649584}
    650 #else
    651 template <BlenMod iBM, Bool bBitInc> Void
    652 TRenSingleModelC<iBM,bBitInc>::getSynthVideo( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset )
    653 
    654   AOT( pcPicYuv->getWidth() != m_iWidth );
    655   AOT( pcPicYuv->getHeight() > m_iHeight + uiHorOffset );
    656 
    657 #if HHI_VSO_COLOR_PLANES
    658   Pel RenModelOutPels::* piText[3] = { NULL, NULL, NULL };
    659   xGetSampleStrTextPtrs(iViewPos, piText[0], piText[1], piText[2]);
    660 
    661   // Temp image for chroma down sampling
    662   PelImage cTempImage( m_iWidth, m_iHeight, 3, 0);
    663 
    664   Int  aiStrides[3];
    665   Pel* apiData  [3];
    666 
    667   cTempImage.getDataAndStrides( apiData, aiStrides );
    668 
    669   for (UInt uiCurPlane = 0; uiCurPlane < 3; uiCurPlane++ )
    670   {
    671     xCopyFromSampleStruct( m_pcOutputSamples, m_iOutputSamplesStride, piText[uiCurPlane], apiData[uiCurPlane], aiStrides[uiCurPlane] , m_iWidth, m_iHeight);
    672   } 
    673   xCopy2PicYuv( apiData, aiStrides, pcPicYuv, uiHorOffset );
    674 #else
    675   Pel RenModelOutPels::* piY;
    676   xGetSampleStrTextPtrs(iViewPos, piY);
    677   xCopyFromSampleStruct( m_pcOutputSamples, m_iOutputSamplesStride, piY, pcPicYuv->getLumaAddr() + uiHorOffset * pcPicYuv->getStride(), pcPicYuv->getStride(), m_iWidth, m_iHeight );
    678   pcPicYuv->setChromaTo( 128 << g_uiBitIncrement );   
    679 #endif 
    680 }
    681 #endif
    682 
    683 #if FIX_VSO_SETUP
     585
    684586template <BlenMod iBM, Bool bBitInc> Void
    685587TRenSingleModelC<iBM,bBitInc>::getSynthDepth( Int iViewPos, TComPicYuv* pcPicYuv )
     
    695597}
    696598
    697 #else
    698 template <BlenMod iBM, Bool bBitInc> Void
    699 TRenSingleModelC<iBM,bBitInc>::getSynthDepth( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOff )
    700 
    701   AOT( iViewPos != 0 && iViewPos != 1);
    702   AOT( pcPicYuv->getWidth()  != m_iWidth  );
    703   AOT( pcPicYuv->getHeight() > m_iHeight + uiHorOff );
    704 
    705   Pel RenModelOutPels::* piD = 0;
    706   xGetSampleStrDepthPtrs(iViewPos, piD);
    707   xCopyFromSampleStruct( m_pcOutputSamples, m_iOutputSamplesStride, piD, pcPicYuv->getLumaAddr() + pcPicYuv->getStride() * uiHorOff, pcPicYuv->getStride(), m_iWidth, m_iHeight );
    708   pcPicYuv->setChromaTo( 128 << g_uiBitIncrement );   
    709 }
    710 #endif
    711 
    712 #if FIX_VSO_SETUP
     599
    713600template <BlenMod iBM, Bool bBitInc> Void
    714601TRenSingleModelC<iBM,bBitInc>::getRefVideo ( Int iViewPos, TComPicYuv* pcPicYuv )
     
    742629#endif 
    743630}
    744 #else
    745 template <BlenMod iBM, Bool bBitInc> Void
    746 TRenSingleModelC<iBM,bBitInc>::getRefVideo ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset )
    747 
    748   AOT( pcPicYuv->getWidth()  != m_iWidth  );
    749   AOT( pcPicYuv->getHeight() >  m_iHeight + uiHorOffset);
    750 
    751 #if HHI_VSO_COLOR_PLANES
    752   Pel RenModelOutPels::* piText[3];
    753   piText[0] = &RenModelOutPels::iYRef;
    754   piText[1] = &RenModelOutPels::iURef;
    755   piText[2] = &RenModelOutPels::iVRef;
    756 
    757   // Temp image for chroma down sampling
    758 
    759   PelImage cTempImage( m_iWidth, m_iHeight, 3, 0);
    760   Int  aiStrides[3];
    761   Pel* apiData  [3];
    762 
    763   cTempImage.getDataAndStrides( apiData, aiStrides );
    764 
    765   for (UInt uiCurPlane = 0; uiCurPlane < 3; uiCurPlane++ )
    766   {
    767     xCopyFromSampleStruct( m_pcOutputSamples, m_iOutputSamplesStride, piText[uiCurPlane], apiData[uiCurPlane], aiStrides[uiCurPlane] , m_iWidth, m_iHeight);
    768   }
    769 
    770   xCopy2PicYuv( apiData, aiStrides, pcPicYuv, uiHorOffset );
    771 #else
    772   xCopyFromSampleStruct( m_pcOutputSamples, m_iOutputSamplesStride, &RenModelOutPels::iYRef, pcPicYuv->getLumaAddr() *  pcPicYuv->getStride() + uiHorOffset, pcPicYuv->getStride(), m_iWidth, m_iHeight );
    773   pcPicYuv->setChromaTo( 128 << g_uiBitIncrement );   
    774 #endif 
    775 }
    776 #endif
    777631
    778632template <BlenMod iBM, Bool bBitInc> RMDist
     
    20181872}
    20191873
    2020 #if FIX_VSO_SETUP
    20211874template <BlenMod iBM, Bool bBitInc> Void
    20221875TRenSingleModelC<iBM,bBitInc>::xCopy2PicYuv( Pel** ppiSrcVideoPel, Int* piStrides, TComPicYuv* rpcPicYuvTarget )
     
    20261879  TRenFilter::sampleDown2Tap13( ppiSrcVideoPel[2], piStrides[2], m_iWidth, m_iUsedHeight, rpcPicYuvTarget->getCrAddr  () + (m_iHorOffset >> 1) * rpcPicYuvTarget->getCStride(), rpcPicYuvTarget->getCStride() );
    20271880}
    2028 #else
    2029 template <BlenMod iBM, Bool bBitInc> Void
    2030 TRenSingleModelC<iBM,bBitInc>::xCopy2PicYuv( Pel** ppiSrcVideoPel, Int* piStrides, TComPicYuv* rpcPicYuvTarget, UInt uiHorOffset )
    2031 {
    2032   TRenFilter::copy            ( ppiSrcVideoPel[0], piStrides[0], m_iWidth, m_iHeight, rpcPicYuvTarget->getLumaAddr() +  uiHorOffset       * rpcPicYuvTarget->getStride() , rpcPicYuvTarget->getStride () );
    2033   TRenFilter::sampleDown2Tap13( ppiSrcVideoPel[1], piStrides[1], m_iWidth, m_iHeight, rpcPicYuvTarget->getCbAddr  () + (uiHorOffset >> 1) * rpcPicYuvTarget->getCStride(), rpcPicYuvTarget->getCStride() );
    2034   TRenFilter::sampleDown2Tap13( ppiSrcVideoPel[2], piStrides[2], m_iWidth, m_iHeight, rpcPicYuvTarget->getCrAddr  () + (uiHorOffset >> 1) * rpcPicYuvTarget->getCStride(), rpcPicYuvTarget->getCStride() );
    2035 }
    2036 #endif
    20371881
    20381882template class TRenSingleModelC<BLEND_NONE ,true>;
  • branches/HTM-4.1-dev0/source/Lib/TLibRenderer/TRenSingleModel.h

    r124 r188  
    6969public:
    7070
    71 #if FIX_VIRT_DESTRUCTOR
    7271  virtual ~TRenSingleModel() { } 
    73 #endif
    7472#if LGE_VSO_EARLY_SKIP_A0093
    7573  virtual Void   create    ( Int iMode, Int iWidth, Int iHeight, Int iShiftPrec, Int*** aaaiSubPelShiftTable, Int iHoleMargin, Bool bUseOrgRef, Int iBlendMode, Bool bEarlySkip ) = 0;
     
    8078  // Set Frame dependent data
    8179  virtual Void   setLRView ( Int iViewPos, Pel** apiCurVideoPel, Int* aiCurVideoStride, Pel* piCurDepthPel, Int iCurDepthStride ) = 0;
    82 #if FIX_VSO_SETUP
    8380  virtual Void   setupPart ( UInt uiHorOffset,       Int iUsedHeight ) = 0;
    8481  virtual Void   setup     ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight,  Int** ppiBaseShiftLutRight,  Int iDistToLeft, Bool bKeepReference ) = 0;
    85 #else
    86   virtual Void   setup     ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight,  Int** ppiBaseShiftLutRight,  Int iDistToLeft, Bool bKeepReference, UInt uiHorOffset ) = 0;
    87 #endif
    8882
    8983  // Set Data
     
    10397  virtual RMDist getDistVideo  ( Int iViewPos, Int iPlane, Int iStartPosX, Int iStartPosY, Int iWidth, Int iHeight, Int iStride, Pel* piNewData ) = 0;
    10498
    105 #if FIX_VSO_SETUP
    10699  virtual Void   getSynthVideo  ( Int iViewPos, TComPicYuv* pcPicYuv ) = 0; 
    107100  virtual Void   getSynthDepth  ( Int iViewPos, TComPicYuv* pcPicYuv ) = 0;
    108101  virtual Void   getRefVideo    ( Int iViewPos, TComPicYuv* pcPicYuv ) = 0;
    109 #else
    110   virtual Void   getSynthVideo  ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset  ) = 0; 
    111   virtual Void   getSynthDepth  ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset  ) = 0;
    112   virtual Void   getRefVideo    ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset  ) = 0;
    113 #endif
    114102};
    115103
     
    181169  // Set Frame dependent data
    182170  Void   setLRView ( Int iViewPos, Pel** apiCurVideoPel, Int* aiCurVideoStride, Pel* piCurDepthPel, Int iCurDepthStride );
    183 #if FIX_VSO_SETUP
    184171  Void   setupPart ( UInt uiHorOffset,       Int uiUsedHeight );
    185172  Void   setup     ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight,  Int** ppiBaseShiftLutRight,  Int iDistToLeft, Bool bKeepReference );
    186 #else
    187   Void   setup     ( TComPicYuv* pcOrgVideo, Int** ppiShiftLutLeft, Int** ppiBaseShiftLutLeft, Int** ppiShiftLutRight,  Int** ppiBaseShiftLutRight,  Int iDistToLeft, Bool bKeepReference, UInt uiHorOffset );
    188 #endif
    189173
    190174#if LGE_VSO_EARLY_SKIP_A0093
     
    203187  RMDist getDistVideo  ( Int iViewPos, Int iPlane, Int iStartPosX, Int iStartPosY, Int iWidth, Int iHeight, Int iStride, Pel* piNewData );
    204188
    205 #if FIX_VSO_SETUP
    206189  Void   getSynthVideo  ( Int iViewPos, TComPicYuv* pcPicYuv ); 
    207190  Void   getSynthDepth  ( Int iViewPos, TComPicYuv* pcPicYuv );
    208191  Void   getRefVideo    ( Int iViewPos, TComPicYuv* pcPicYuv );
    209 #else
    210   Void   getSynthVideo  ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset ); 
    211   Void   getSynthDepth  ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset  );
    212   Void   getRefVideo    ( Int iViewPos, TComPicYuv* pcPicYuv, UInt uiHorOffset  );
    213 #endif
    214192
    215193private:
     
    293271  Void            xInitSampleStructs           ();
    294272  Void            xSetStructSynthViewAsRefView ();
    295 #if FIX_VSO_SETUP
    296273  Void            xCopy2PicYuv                ( Pel** ppiSrcVideoPel, Int* piStrides, TComPicYuv* rpcPicYuvTarget );
    297 #else
    298   Void            xCopy2PicYuv                ( Pel** ppiSrcVideoPel, Int* piStrides, TComPicYuv* rpcPicYuvTarget, UInt uiHorOffset );
    299 #endif
    300274
    301275  template< typename S, typename T>
    302276  Void   xCopyFromSampleStruct ( S* ptSource , Int iSourceStride, T S::* ptSourceElement, T* ptTarget, Int iTargetStride, Int iWidth, Int iHeight )
    303277  {
    304 #if FIX_VSO_SETUP
    305278    AOT( iWidth != m_iWidth );
    306279    for (Int iPosY = 0; iPosY < iHeight; iPosY++)
    307 #else
    308     for (Int iPosY = 0; iPosY < m_iHeight; iPosY++)
    309 #endif
    310280    {
    311281      for (Int iPosX = 0; iPosX < m_iWidth; iPosX++)
     
    321291  Void   xCopyToSampleStruct ( T* ptSource , Int iSourceStride, S* ptTarget, Int iTargetStride, T S::* ptSourceElement, Int iWidth, Int iHeight )
    322292  {
    323 #if FIX_VSO_SETUP
    324293    AOT( iWidth != m_iWidth );
    325294    for (Int iPosY = 0; iPosY < iHeight; iPosY++)
    326 #else
    327     for (Int iPosY = 0; iPosY < m_iHeight; iPosY++)
    328 #endif
    329295    {
    330296      for (Int iPosX = 0; iPosX < m_iWidth; iPosX++)
     
    344310  Int   m_iStride;
    345311  Int   m_iPad;
    346 #if FIX_VSO_SETUP
    347312  Int   m_iUsedHeight;
    348313  Int   m_iHorOffset;
    349 #endif
    350314
    351315  Int   m_iSampledWidth;
    352 #if FIX_VSO_SETUP
    353 #else
    354   Int   m_iSampledHeight;
    355 #endif
    356316  Int   m_iSampledStride;
    357317
Note: See TracChangeset for help on using the changeset viewer.