Changeset 638 in 3DVCSoftware


Ignore:
Timestamp:
18 Oct 2013, 04:44:23 (11 years ago)
Author:
kwu-htm
Message:

Macro enclosed and cleaned-up

Location:
branches/HTM-8.2-dev0-KWU/source
Files:
9 edited

Legend:

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

    r637 r638  
    8484
    8585#if KWU_RC_MADPRED_E0227
    86   m_DepthMADPred = 0;
     86  m_depthMADPred = 0;
    8787#endif
    8888}
     
    600600
    601601#if KWU_RC_VIEWRC_E0227
    602   ("ViewWiseTargetBits, -vtbr" ,  m_ViewTargetBits,  std::vector<Int>(1, 32), "View-wise target bit-rate setting")
    603   ("TargetBitAssign, -ta", m_ViewWiseRateCtrl, false, "View-wise rate control on/off")
     602  ("ViewWiseTargetBits, -vtbr" ,  m_viewTargetBits,  std::vector<Int>(1, 32), "View-wise target bit-rate setting")
     603  ("TargetBitAssign, -ta", m_viewWiseRateCtrl, false, "View-wise rate control on/off")
    604604#endif
    605605#if KWU_RC_MADPRED_E0227
    606   ("DepthMADPred, -dm", m_DepthMADPred, (UInt)0, "Depth based MAD prediction on/off")
     606  ("DepthMADPred, -dm", m_depthMADPred, (UInt)0, "Depth based MAD prediction on/off")
    607607#endif
    608608#else
     
    612612
    613613#if KWU_RC_VIEWRC_E0227
    614   ("ViewWiseTargetBits, -vtbr" ,  m_ViewTargetBits,  std::vector<Int>(1, 32), "View-wise target bit-rate setting")
    615   ("TargetBitAssign, -ta", m_ViewWiseRateCtrl, false, "View-wise rate control on/off")
     614  ("ViewWiseTargetBits, -vtbr" ,  m_viewTargetBits,  std::vector<Int>(1, 32), "View-wise target bit-rate setting")
     615  ("TargetBitAssign, -ta", m_viewWiseRateCtrl, false, "View-wise rate control on/off")
    616616#endif
    617617#if KWU_RC_MADPRED_E0227
    618   ("DepthMADPred, -dm", m_DepthMADPred, (UInt)0, "Depth based MAD prediction on/off")
     618  ("DepthMADPred, -dm", m_depthMADPred, (UInt)0, "Depth based MAD prediction on/off")
    619619#endif
    620620#endif
     
    23252325
    23262326#if KWU_RC_MADPRED_E0227
    2327     printf("Depth based MAD prediction   : %d\n", m_DepthMADPred);
     2327    printf("Depth based MAD prediction   : %d\n", m_depthMADPred);
    23282328#endif
    23292329#if KWU_RC_VIEWRC_E0227
    2330     printf("View-wise Rate control       : %d\n", m_ViewWiseRateCtrl);
    2331     if(m_ViewWiseRateCtrl)
     2330    printf("View-wise Rate control       : %d\n", m_viewWiseRateCtrl);
     2331    if(m_viewWiseRateCtrl)
    23322332    {
    23332333
    23342334      printf("ViewWiseTargetBits           : ");
    2335       for (int i = 0 ; i < m_iNumberOfViews ; i++)
    2336         printf("%d ", m_ViewTargetBits[i]);
     2335      for (Int i = 0 ; i < m_iNumberOfViews ; i++)
     2336        printf("%d ", m_viewTargetBits[i]);
    23372337      printf("\n");
    23382338    }
     
    23512351
    23522352#if KWU_RC_MADPRED_E0227
    2353     printf("Depth based MAD prediction   : %d\n", m_DepthMADPred);
     2353    printf("Depth based MAD prediction   : %d\n", m_depthMADPred);
    23542354#endif
    23552355#if KWU_RC_VIEWRC_E0227
    2356     printf("View-wise Rate control       : %d\n", m_ViewWiseRateCtrl);
    2357     if(m_ViewWiseRateCtrl)
     2356    printf("View-wise Rate control       : %d\n", m_viewWiseRateCtrl);
     2357    if(m_viewWiseRateCtrl)
    23582358    {
    23592359
    23602360      printf("ViewWiseTargetBits           : ");
    2361       for (int i = 0 ; i < m_iNumberOfViews ; i++)
    2362         printf("%d ", m_ViewTargetBits[i]);
     2361      for (Int i = 0 ; i < m_iNumberOfViews ; i++)
     2362        printf("%d ", m_viewTargetBits[i]);
    23632363      printf("\n");
    23642364    }
  • branches/HTM-8.2-dev0-KWU/source/App/TAppEncoder/TAppEncCfg.h

    r636 r638  
    369369
    370370#if KWU_RC_VIEWRC_E0227
    371   vector<Int>     m_ViewTargetBits;
    372   bool      m_ViewWiseRateCtrl;                              ///< Flag for using view-wise rate control
     371  vector<Int>     m_viewTargetBits;
     372  Bool      m_viewWiseRateCtrl;                              ///< Flag for using view-wise rate control
    373373#endif
    374374#if KWU_RC_MADPRED_E0227
    375   UInt       m_DepthMADPred;
     375  UInt       m_depthMADPred;
    376376#endif
    377377#else
     
    381381
    382382#if KWU_RC_VIEWRC_E0227
    383   vector<Int>     m_ViewTargetBits;
    384   bool      m_ViewWiseRateCtrl;                              ///< Flag for using view-wise rate control
     383  vector<Int>     m_viewTargetBits;
     384  Bool      m_viewWiseRateCtrl;                              ///< Flag for using view-wise rate control
    385385#endif
    386386#if KWU_RC_MADPRED_E0227
    387   UInt       m_DepthMADPred;
     387  UInt       m_depthMADPred;
    388388#endif
    389389#endif
  • branches/HTM-8.2-dev0-KWU/source/App/TAppEncoder/TAppEncTop.cpp

    r637 r638  
    536536  if(m_cTEncTop.getUseRateCtrl() && !m_cTEncTop.getIsDepth())
    537537  {
    538     m_cTEncTop.setUseDepthMADPred(layerIdInVps ? m_DepthMADPred       : 0);
     538    m_cTEncTop.setUseDepthMADPred(layerIdInVps ? m_depthMADPred       : 0);
    539539
    540540    if(m_cTEncTop.getUseDepthMADPred())
     
    547547  if(m_cTEncTop.getUseRateCtrl() && !m_cTEncTop.getIsDepth())
    548548  {
    549     m_cTEncTop.setUseViewWiseRateCtrl(m_ViewWiseRateCtrl);
     549    m_cTEncTop.setUseViewWiseRateCtrl(m_viewWiseRateCtrl);
    550550
    551551    if(m_iNumberOfViews == 1)
    552552    {
    553       if(m_ViewWiseRateCtrl)
    554       {
    555         m_cTEncTop.setTargetBitrate(m_ViewTargetBits[layerIdInVps>>1]);
     553      if(m_viewWiseRateCtrl)
     554      {
     555        m_cTEncTop.setTargetBitrate(m_viewTargetBits[layerIdInVps>>1]);
    556556      }
    557557      else
     
    562562    else
    563563    {
    564       if(m_ViewWiseRateCtrl)
    565       {
    566         m_cTEncTop.setTargetBitrate(m_ViewTargetBits[layerIdInVps>>1]);
     564      if(m_viewWiseRateCtrl)
     565      {
     566        m_cTEncTop.setTargetBitrate(m_viewTargetBits[layerIdInVps>>1]);
    567567      }
    568568      else
     
    624624  if(m_cTEncTop.getUseRateCtrl() && !m_cTEncTop.getIsDepth())
    625625  {
    626     m_cTEncTop.setUseDepthMADPred(layerIdInVps ? m_DepthMADPred       : 0);
     626    m_cTEncTop.setUseDepthMADPred(layerIdInVps ? m_depthMADPred       : 0);
    627627
    628628    if(m_cTEncTop.getUseDepthMADPred())
     
    636636  if(m_cTEncTop.getUseRateCtrl() && !m_cTEncTop.getIsDepth())
    637637  {
    638     m_cTEncTop.setUseViewWiseRateCtrl(m_ViewWiseRateCtrl);
     638    m_cTEncTop.setUseViewWiseRateCtrl(m_viewWiseRateCtrl);
    639639    if(m_iNumberOfViews == 1)
    640640    {
    641       if(m_ViewWiseRateCtrl)
    642       {
    643         m_cTEncTop.setTargetBitrate(m_ViewTargetBits[layerIdInVps>>1]);
     641      if(m_viewWiseRateCtrl)
     642      {
     643        m_cTEncTop.setTargetBitrate(m_viewTargetBits[layerIdInVps>>1]);
    644644      }
    645645      else
     
    650650    else
    651651    {
    652       if(m_ViewWiseRateCtrl)
    653       {
    654         m_cTEncTop.setTargetBitrate(m_ViewTargetBits[layerIdInVps>>1]);
     652      if(m_viewWiseRateCtrl)
     653      {
     654        m_cTEncTop.setTargetBitrate(m_viewTargetBits[layerIdInVps>>1]);
    655655      }
    656656      else
  • branches/HTM-8.2-dev0-KWU/source/Lib/TLibCommon/TypeDef.h

    r637 r638  
    302302#endif
    303303
    304 #define RATE_CONTROL_LAMBDA_DOMAIN                  1  ///< JCTVC-K0103, rate control by R-lambda model
     304#define RATE_CONTROL_LAMBDA_DOMAIN                  0  ///< JCTVC-K0103, rate control by R-lambda model
    305305#define M0036_RC_IMPROVEMENT                        1  ///< JCTVC-M0036, improvement for R-lambda model based rate control
    306306#define TICKET_1090_FIX                             1
  • branches/HTM-8.2-dev0-KWU/source/Lib/TLibEncoder/TEncCfg.h

    r635 r638  
    312312
    313313#if KWU_RC_MADPRED_E0227
    314   UInt       m_uiDepthMADPred;
     314  UInt       m_depthMADPred;
    315315#endif
    316316#if KWU_RC_VIEWRC_E0227
     
    323323
    324324#if KWU_RC_MADPRED_E0227
    325   UInt       m_uiDepthMADPred;
     325  UInt       m_depthMADPred;
    326326#endif
    327327#if KWU_RC_VIEWRC_E0227
     
    842842
    843843#if KWU_RC_MADPRED_E0227
    844   UInt      getUseDepthMADPred    ()                { return m_uiDepthMADPred;        }
    845   Void      setUseDepthMADPred    (UInt b)          { m_uiDepthMADPred    = b;        }
     844  UInt      getUseDepthMADPred    ()                { return m_depthMADPred;        }
     845  Void      setUseDepthMADPred    (UInt b)          { m_depthMADPred    = b;        }
    846846#endif
    847847#if KWU_RC_VIEWRC_E0227
     
    858858
    859859#if KWU_RC_MADPRED_E0227
    860   UInt      getUseDepthMADPred    ()                { return m_uiDepthMADPred;        }
    861   Void      setUseDepthMADPred    (UInt b)          { m_uiDepthMADPred    = b;        }
     860  UInt      getUseDepthMADPred    ()                { return m_depthMADPred;        }
     861  Void      setUseDepthMADPred    (UInt b)          { m_depthMADPred    = b;        }
    862862#endif
    863863#if KWU_RC_VIEWRC_E0227
  • branches/HTM-8.2-dev0-KWU/source/Lib/TLibEncoder/TEncCu.cpp

    r637 r638  
    103103 
    104104  m_bEncodeDQP = false;
    105 #if RATE_CONTROL_LAMBDA_DOMAIN && (!M0036_RC_IMPROVEMENT || KWU_RC_MADPRED_E0227)
     105#if RATE_CONTROL_LAMBDA_DOMAIN
     106#if !M0036_RC_IMPROVEMENT
     107  m_LCUPredictionSAD = 0;
     108  m_addSADDepth      = 0;
     109  m_temporalSAD      = 0;
     110#endif
     111#if M0036_RC_IMPROVEMENT && KWU_RC_MADPRED_E0227
     112  m_LCUPredictionSAD = 0;
     113  m_addSADDepth      = 0;
     114  m_temporalSAD      = 0;
     115#endif
     116#endif
     117#if KWU_RC_MADPRED_E0227
    106118  m_LCUPredictionSAD = 0;
    107119  m_addSADDepth      = 0;
     
    257269  m_ppcTempCU[0]->initCU( rpcCU->getPic(), rpcCU->getAddr() );
    258270
    259 #if (RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT) || KWU_RC_MADPRED_E0227
     271#if RATE_CONTROL_LAMBDA_DOMAIN
     272#if !M0036_RC_IMPROVEMENT
     273  m_LCUPredictionSAD = 0;
    260274  m_addSADDepth      = 0;
     275  m_temporalSAD      = 0;
     276#endif
     277#if M0036_RC_IMPROVEMENT && KWU_RC_MADPRED_E0227
    261278  m_LCUPredictionSAD = 0;
     279  m_addSADDepth      = 0;
     280  m_temporalSAD      = 0;
     281#endif
     282#endif
     283#if KWU_RC_MADPRED_E0227
     284  m_LCUPredictionSAD = 0;
     285  m_addSADDepth      = 0;
    262286  m_temporalSAD      = 0;
    263287  m_spatialSAD       = 0;
     
    673697    }
    674698
    675 #if (RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT) || KWU_RC_MADPRED_E0227
     699#if RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT
    676700    if ( uiDepth <= m_addSADDepth )
    677701    {
     
    679703      m_addSADDepth = uiDepth;
    680704    }
     705#endif
     706#if RATE_CONTROL_LAMBDA_DOMAIN && M0036_RC_IMPROVEMENT && KWU_RC_MADPRED_E0227
     707    if ( uiDepth <= m_addSADDepth )
     708    {
     709      m_LCUPredictionSAD += m_temporalSAD;
     710      m_addSADDepth = uiDepth;
     711    }
     712#endif
     713#if !RATE_CONTROL_LAMBDA_DOMAIN && KWU_RC_MADPRED_E0227
     714if ( uiDepth <= m_addSADDepth )
     715{
     716  m_LCUPredictionSAD += m_temporalSAD;
     717  m_addSADDepth = uiDepth;
     718}
    681719#endif
    682720#if !RATE_CONTROL_LAMBDA_DOMAIN && KWU_FIX_URQ
     
    10221060          {
    10231061            xCheckRDCostIntra( rpcBestCU, rpcTempCU, SIZE_2Nx2N );
    1024 #if (RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT) || KWU_RC_MADPRED_E0227
     1062#if RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT
     1063            if ( uiDepth <= m_addSADDepth )
     1064            {
     1065              m_LCUPredictionSAD += m_spatialSAD;
     1066              m_addSADDepth = uiDepth;
     1067            }
     1068#elif RATE_CONTROL_LAMBDA_DOMAIN && KWU_RC_MADPRED_E0227
     1069            if ( uiDepth <= m_addSADDepth )
     1070            {
     1071              m_LCUPredictionSAD += m_spatialSAD;
     1072              m_addSADDepth = uiDepth;
     1073            }
     1074#endif
     1075#if !RATE_CONTROL_LAMBDA_DOMAIN && KWU_RC_MADPRED_E0227
    10251076            if ( uiDepth <= m_addSADDepth )
    10261077            {
     
    22612312  rpcTempCU->getTotalCost() = m_pcRdCost->calcRdCost( rpcTempCU->getTotalBits(), rpcTempCU->getTotalDistortion() );
    22622313 
    2263 #if RATE_CONTROL_LAMBDA_DOMAIN && (!M0036_RC_IMPROVEMENT || KWU_RC_MADPRED_E0227)
     2314#if RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT
     2315  UChar uhDepth = rpcTempCU->getDepth( 0 );
     2316  if ( m_pcEncCfg->getUseRateCtrl() && m_pcEncCfg->getLCULevelRC() && eSize == SIZE_2Nx2N && uhDepth <= m_addSADDepth )
     2317  {
     2318    UInt SAD = m_pcRdCost->getSADPart( g_bitDepthY, m_ppcPredYuvTemp[uhDepth]->getLumaAddr(), m_ppcPredYuvTemp[uhDepth]->getStride(),
     2319      m_ppcOrigYuv[uhDepth]->getLumaAddr(), m_ppcOrigYuv[uhDepth]->getStride(),
     2320      rpcTempCU->getWidth(0), rpcTempCU->getHeight(0) );
     2321    m_spatialSAD = (Int)SAD;
     2322  }
     2323#elif RATE_CONTROL_LAMBDA_DOMAIN && KWU_RC_MADPRED_E0227
    22642324  UChar uhDepth = rpcTempCU->getDepth( 0 );
    22652325  if ( m_pcEncCfg->getUseRateCtrl() && m_pcEncCfg->getLCULevelRC() && eSize == SIZE_2Nx2N && uhDepth <= m_addSADDepth )
  • branches/HTM-8.2-dev0-KWU/source/Lib/TLibEncoder/TEncCu.h

    r635 r638  
    102102  Bool                    m_bUseSBACRD;
    103103  TEncRateCtrl*           m_pcRateCtrl;
    104 #if (RATE_CONTROL_LAMBDA_DOMAIN && !M0036_RC_IMPROVEMENT) || KWU_RC_MADPRED_E0227
     104#if RATE_CONTROL_LAMBDA_DOMAIN
     105#if !M0036_RC_IMPROVEMENT
     106  UInt                    m_LCUPredictionSAD;
     107  Int                     m_addSADDepth;
     108  Int                     m_temporalSAD;
     109#endif
     110#if M0036_RC_IMPROVEMENT && KWU_RC_MADPRED_E0227
     111  UInt                    m_LCUPredictionSAD;
     112  Int                     m_addSADDepth;
     113  Int                     m_temporalSAD;
     114#endif
     115#endif
     116#if KWU_RC_MADPRED_E0227
    105117  UInt                    m_LCUPredictionSAD;
    106118  Int                     m_addSADDepth;
     
    108120  Int                     m_spatialSAD;
    109121#endif
     122
    110123public:
    111124  /// copy parameters from encoder class
  • branches/HTM-8.2-dev0-KWU/source/Lib/TLibEncoder/TEncRateCtrl.cpp

    r637 r638  
    726726  m_lastPicture = NULL;
    727727  list<TEncRCPic*>::reverse_iterator it;
    728 #if KWU_RC_MADPRED_E0227
    729728  for ( it = listPreviousPictures.rbegin(); it != listPreviousPictures.rend(); it++ )
    730729  {
     
    735734    }
    736735  }
    737 #endif
    738736#endif
    739737
     
    24862484{
    24872485  Int     x, y;
    2488   double dMAD = 0.0;
     2486  Double dMAD = 0.0;
    24892487  Int Sum = 0;
    24902488  Double SAD = 0.0;
  • branches/HTM-8.2-dev0-KWU/source/Lib/TLibEncoder/TEncSlice.cpp

    r637 r638  
    11391139      if(pcSlice->getLayerId() != 0 && m_pcCfg->getUseDepthMADPred() && !pcSlice->getIsDepth())
    11401140      {
    1141         double zn, zf, focallength, position, camshift;
    1142         double basepos;
    1143         bool bInterpolated;
     1141        Double zn, zf, focallength, position, camshift;
     1142        Double basepos;
     1143        Bool bInterpolated;
    11441144        Int direction = pcSlice->getViewId() - pcCU->getSlice()->getIvPic(false, 0)->getViewId();
    11451145
     
    12521252          if(pcSlice->getLayerId() != 0 && m_pcCfg->getUseDepthMADPred() && !pcSlice->getIsDepth())
    12531253          {
    1254             double zn, zf, focallength, position, camShift;
    1255             double basePos;
    1256             bool bInterpolated;
     1254            Double zn, zf, focallength, position, camShift;
     1255            Double basePos;
     1256            Bool bInterpolated;
    12571257            Int direction = pcSlice->getViewId() - pcCU->getSlice()->getIvPic(false, 0)->getViewId();
    12581258            Int disparity;
Note: See TracChangeset for help on using the changeset viewer.