Changeset 1076 in 3DVCSoftware


Ignore:
Timestamp:
21 Oct 2014, 21:25:42 (9 years ago)
Author:
tech
Message:

Removed MV-HEVC related macros part 2.

Location:
branches/HTM-12.1-dev0/source
Files:
17 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-12.1-dev0/source/App/TAppDecoder/TAppDecCfg.cpp

    r1066 r1076  
    9595  ("RespectDefDispWindow,w", m_respectDefDispWindow, 0, "Only output content inside the default display window\n")
    9696#if H_MV
    97 #if H_MV_HLS10_GEN_FIX
    9897  ("OutputVpsInfo,v", m_outputVpsInfo, false, "Output information about the layer dependencies and layer sets")
    99 #endif
    10098#endif
    10199  ;
  • branches/HTM-12.1-dev0/source/App/TAppDecoder/TAppDecCfg.h

    r1066 r1076  
    8080
    8181#if H_MV
    82 #if H_MV_HLS10_GEN_FIX
    8382  Bool          m_outputVpsInfo;                     ///< Output VPS information
    84 #endif
    8583  Void xAppendToFileNameEnd( Char* pchInputFileName, const Char* pchStringToAppend, Char*& rpchOutputFileName); ///< create filenames
    8684#endif
  • branches/HTM-12.1-dev0/source/App/TAppDecoder/TAppDecTop.cpp

    r1066 r1076  
    257257            m_targetDecLayerIdSet = vps->getTargetDecLayerIdList( m_targetOptLayerSetIdx );
    258258          }
    259 #if H_MV_HLS10_GEN_FIX
    260259          if (m_outputVpsInfo )
    261260          {
    262 #if H_MV_HLS10_AUX
    263261            m_vps->printScalabilityId();
    264 #endif
    265262            m_vps->printLayerDependencies();
    266263            m_vps->printLayerSets();
    267264            m_vps->printPTL();
    268265          }
    269 #endif
    270266        }
    271267#if H_3D
     
    580576  Int dpbFullness = 0;
    581577#if H_MV
    582 #if H_MV_HLS10_ADD_LAYERSETS
    583578  TComSPS* activeSPS = m_tDecTop[ decIdx ]->getActiveSPS();
    584 #else
    585   // preliminary fix
    586   TComSPS* activeSPS = m_tDecTop[0]->getActiveSPS();
    587 #endif
    588579#else
    589580  TComSPS* activeSPS = m_cTDecTop.getActiveSPS();
     
    11551146    Int curLayerId = m_tDecTop[dIdx]->getLayerId();
    11561147    Int curLayerIdxInVps = m_vps->getLayerIdInNuh( curLayerId  );
    1157 #if H_MV_HLS10_REF_PRED_LAYERS
    11581148    if ( m_vps->getDependencyFlag(optLayerIdxInVps, curLayerIdxInVps ) )
    1159 #else
    1160     if ( m_vps->getInDirectDependencyFlag(optLayerIdxInVps, curLayerIdxInVps ) )
    1161 #endif
    11621149    {
    11631150      TComPic* curPic = m_ivPicLists.getPic( curLayerId, pocLastPic );
  • branches/HTM-12.1-dev0/source/App/TAppEncoder/TAppEncCfg.cpp

    r1074 r1076  
    241241  {"main-still-picture", Profile::MAINSTILLPICTURE},
    242242#if H_MV
    243 #if H_MV_HLS10_PTL
    244243  {"multiview-main", Profile::MULTIVIEWMAIN},
    245244#if H_3D
     
    247246#endif
    248247
    249 #else
    250   {"main-stereo",    Profile::MAINSTEREO},
    251   {"main-multiview", Profile::MAINMULTIVIEW},
    252 #if H_3D
    253   {"main-3d"    , Profile::MAIN3D},
    254 #endif
    255 #endif
    256248#endif
    257249};
     
    341333#if H_MV
    342334  vector<Int>   cfg_dimensionLength;
    343 #if H_MV_HLS10_PTL
    344335  string        cfg_profiles;
    345336  string        cfg_levels;
    346337  string        cfg_tiers;
    347 #endif
    348338#if H_3D
    349339  cfg_dimensionLength.push_back( 2  );  // depth
     
    380370  ("NumberOfLayers",        m_numberOfLayers     , 1,                     "Number of layers")
    381371#if !H_3D
    382 #if H_MV_HLS10_AUX
    383372  ("ScalabilityMask",       m_scalabilityMask    , 2                    , "Scalability Mask: 2: Multiview, 8: Auxiliary, 10: Multiview + Auxiliary")   
    384 #else
    385   ("ScalabilityMask",       m_scalabilityMask    , 2                    , "Scalability Mask")   
    386 #endif
    387373#else
    388374  ("ScalabilityMask",       m_scalabilityMask    , 3                    , "Scalability Mask, 1: Texture 3: Texture + Depth ")   
     
    391377  ("ViewOrderIndex",        m_viewOrderIndex     , std::vector<Int>(1,0), "View Order Index per layer")
    392378  ("ViewId",                m_viewId             , std::vector<Int>(1,0), "View Id per View Order Index")
    393 #if H_MV_HLS10_AUX
    394379  ("AuxId",                 m_auxId              , std::vector<Int>(1,0), "AuxId per layer")
    395 #endif
    396380#if H_3D
    397381  ("DepthFlag",             m_depthFlag          , std::vector<Int>(1,0), "Depth Flag")
     
    406390#endif
    407391#endif
    408 #if H_MV_HLS10_GEN_FIX
    409392  ("TargetEncLayerIdList",  m_targetEncLayerIdList, std::vector<Int>(0,0), "LayerIds in Nuh to be encoded") 
    410 #endif
    411393  ("LayerIdInNuh",          m_layerIdInNuh       , std::vector<Int>(1,0), "LayerId in Nuh") 
    412394  ("SplittingFlag",         m_splittingFlag      , false                , "Splitting Flag")   
     
    415397  ("VpsNumLayerSets",       m_vpsNumLayerSets    , 1                    , "Number of layer sets")   
    416398  ("LayerIdsInSet_%d",      m_layerIdsInSets     , std::vector<Int>(1,0), MAX_VPS_OP_SETS_PLUS1 ,"LayerIds of Layer set") 
    417 #if H_MV_HLS10_ADD_LAYERSETS
    418399  ("NumAddLayerSets"     , m_numAddLayerSets     , 0                                              , "NumAddLayerSets     ")
    419400  ("HighestLayerIdxPlus1_%d", m_highestLayerIdxPlus1, std::vector< Int  >(0,0)  ,MAX_VPS_NUM_ADD_LAYER_SETS, "HighestLayerIdxPlus1")
    420 #endif
    421401  ("DefaultTargetOutputLayerIdc"     , m_defaultOutputLayerIdc     , 0, "Specifies output layers of layer sets, 0: output all layers, 1: output highest layer, 2: specified by LayerIdsInDefOutputLayerSet")
    422402  ("OutputLayerSetIdx",     m_outputLayerSetIdx  , std::vector<Int>(0,0), "Indices of layer sets used as additional output layer sets") 
     
    426406  ("AltOutputLayerFlag",    m_altOutputLayerFlag , std::vector<Bool>(1,0), "Alt output layer flag")
    427407 
    428 #if H_MV_HLS10_PTL
    429408  ("ProfileTierLevelIdx_%d",  m_profileTierLevelIdx, std::vector<Int>(0), MAX_NUM_LAYERS, "Indices to profile level tier for ols")
    430 #else
    431   ("ProfileLevelTierIdx",   m_profileLevelTierIdx, std::vector<Int>(1,0), "Indices to profile level tier")
    432 #endif
    433409  // Layer dependencies
    434410  ("DirectRefLayers_%d",    m_directRefLayers    , std::vector<Int>(0,0), MAX_NUM_LAYERS, "LayerIds of direct reference layers")
     
    460436 
    461437  // Profile and level
    462 #if H_MV_HLS10_PTL
    463438  ("Profile", cfg_profiles,   string(""),           "Profile in VpsProfileTierLevel (Indication only)")
    464439  ("Level",   cfg_levels ,    string(""),           "Level indication in VpsProfileTierLevel (Indication only)")
    465440  ("Tier",    cfg_tiers  ,    string(""),           "Tier indication in VpsProfileTierLevel (Indication only)")
    466441  ("InblFlag",m_inblFlag ,    std::vector<Bool>(0), "InblFlags in VpsProfileTierLevel (Indication only)" )
    467 #else
    468   ("Profile", m_profile,   Profile::NONE, "Profile to be used when encoding (Incomplete)")
    469   ("Level",   m_level,     Level::NONE,   "Level limit to be used, eg 5.1 (Incomplete)")
    470   ("Tier",    m_levelTier, Level::MAIN,   "Tier to use for interpretation of --Level")
    471 #endif
    472442  ("ProgressiveSource", m_progressiveSourceFlag, false, "Indicate that source is progressive")
    473443  ("InterlacedSource",  m_interlacedSourceFlag,  false, "Indicate that source is interlaced")
     
    648618#endif
    649619#if H_MV
    650 #if H_MV_HLS10_GEN_FIX
    651620// A lot of this stuff could should actually be derived by the encoder.
    652 #endif // H_MV_HLS10_GEN
    653621  // VPS VUI
    654622  ("VpsVuiPresentFlag"           , m_vpsVuiPresentFlag           , false                                           , "VpsVuiPresentFlag           ")
     
    674642  ("CtuBasedOffsetEnabledFlag"   , m_ctuBasedOffsetEnabledFlag   , std::vector< Bool >(1,0)  ,MAX_NUM_LAYERS       , "CtuBasedOffsetEnabledFlag    per direct reference for the N-th layer")
    675643  ("MinHorizontalCtuOffsetPlus1" , m_minHorizontalCtuOffsetPlus1 , std::vector< Int  >(1,0)  ,MAX_NUM_LAYERS       , "MinHorizontalCtuOffsetPlus1  per direct reference for the N-th layer")
    676 #if H_MV_HLS10_VPS_VUI
    677644  ("SingleLayerForNonIrapFlag", m_singleLayerForNonIrapFlag, false                                          , "SingleLayerForNonIrapFlag")
    678645  ("HigherLayerIrapSkipFlag"  , m_higherLayerIrapSkipFlag  , false                                          , "HigherLayerIrapSkipFlag  ")
    679 #endif
    680646#endif
    681647
     
    784750  ("SEISubBitstreamMaxBitRate",               m_sbPropMaxBitRate,             std::vector< Int  >(1,0)  ,"Specifies maximum bit rate of the i-th sub-bitstream")
    785751
    786 #if H_MV_HLS10_GEN_FIX
    787752  ("OutputVpsInfo",                           m_outputVpsInfo,                false                     ,"Output information about the layer dependencies and layer sets")
    788 #endif
    789753#endif
    790754#if H_3D
     
    10731037  }
    10741038  m_iNumberOfViews = (Int) uniqueViewOrderIndices.size();
    1075 #if H_MV_HLS10_AUX
    10761039  xResizeVector( m_auxId );
    1077 #endif
    10781040
    10791041#if H_3D
     
    11091071  xResizeVector( m_wppInUseFlag );
    11101072
    1111 #if H_MV_HLS10_ADD_LAYERSETS
    11121073  for (Int olsIdx = 0; olsIdx < m_vpsNumLayerSets + m_numAddLayerSets + (Int) m_outputLayerSetIdx.size(); olsIdx++)
    1113 #else
    1114   for (Int olsIdx = 0; olsIdx < m_vpsNumLayerSets + (Int) m_outputLayerSetIdx.size(); olsIdx++)
    1115 #endif
    11161074  {   
    11171075    m_altOutputLayerFlag.push_back( false );     
     
    12251183
    12261184#if H_MV
    1227 #if H_MV_HLS10_PTL
    12281185  // parse PTL
    12291186  Bool anyEmpty = false;
     
    12721229  xReadStrToEnum( cfg_levels,   m_level     );
    12731230  xReadStrToEnum( cfg_tiers ,   m_levelTier );
    1274 #endif
    12751231#endif
    12761232#if H_3D
     
    13901346
    13911347
    1392 #if !H_MV_HLS10_PTL
    1393   if( m_profile==Profile::NONE )
    1394   {
    1395     fprintf(stderr, "***************************************************************************\n");
    1396     fprintf(stderr, "** WARNING: For conforming bitstreams a valid Profile value must be set! **\n");
    1397     fprintf(stderr, "***************************************************************************\n");
    1398   }
    1399   if( m_level==Level::NONE )
    1400   {
    1401     fprintf(stderr, "***************************************************************************\n");
    1402     fprintf(stderr, "** WARNING: For conforming bitstreams a valid Level value must be set!   **\n");
    1403     fprintf(stderr, "***************************************************************************\n");
    1404   }
    1405 #endif
    14061348
    14071349  Bool check_failed = false; /* abort if there is a fatal configuration problem */
     
    14221364  xConfirmPara( m_scalabilityMask != 2 && m_scalabilityMask != 3, "Scalability Mask must be equal to 2 or 3. ");
    14231365#else
    1424 #if H_MV_HLS10_AUX
    14251366  xConfirmPara( m_scalabilityMask != 2 && m_scalabilityMask != 8 && m_scalabilityMask != 10, "Scalability Mask must be equal to 2, 8 or 10");
    1426 #else
    1427   xConfirmPara( m_scalabilityMask != 2 , "Scalability Mask must be equal to 2. ");
    1428 #endif
    14291367#endif
    14301368
     
    14371375
    14381376  m_dimIds.push_back( m_viewOrderIndex );   
    1439 #if H_MV_HLS10_AUX
    14401377  for (Int i = 0; i < m_auxId.size(); i++)
    14411378  {
     
    14461383    m_dimIds.push_back ( m_auxId );
    14471384  }
    1448 #endif 
    14491385  xConfirmPara(  m_dimensionIdLen.size() < m_dimIds.size(), "DimensionIdLen must be given for all dimensions. "   );
    14501386  Int dimBitOffset[MAX_NUM_SCALABILITY_TYPES+1];
     
    15401476  {   
    15411477    Int refLayerSetIdx = m_outputLayerSetIdx[ lsIdx ];
    1542 #if H_MV_HLS10_ADD_LAYERSETS
    15431478    xConfirmPara(  refLayerSetIdx < 0 || refLayerSetIdx >= m_vpsNumLayerSets + m_numAddLayerSets, "Output layer set idx must be greater or equal to 0 and less than the VpsNumLayerSets plus NumAddLayerSets." );
    1544 #else
    1545     xConfirmPara(  refLayerSetIdx < 0 || refLayerSetIdx >= m_vpsNumLayerSets, "Output layer set idx must be greater or equal to 0 and less than the VpsNumLayerSets." );
    1546 #endif
    1547 #if !H_MV_HLS10_ADD_LAYERSETS
    1548     for (Int i = 0; i < m_layerIdsInAddOutputLayerSet[ lsIdx ].size(); i++)
    1549     {
    1550       Bool isAlsoInLayerSet = false;
    1551       for (Int j = 0; j < m_layerIdsInSets[ refLayerSetIdx ].size(); j++ )
    1552       {
    1553         if ( m_layerIdsInSets[ refLayerSetIdx ][ j ] == m_layerIdsInAddOutputLayerSet[ lsIdx ][ i ] )
    1554         {
    1555           isAlsoInLayerSet = true;
    1556           break;
    1557         }       
    1558       }
    1559       xConfirmPara( !isAlsoInLayerSet, "All output layers of a output layer set be included in corresponding layer set.");
    1560     }
    1561 #endif
    15621479  }
    15631480
     
    15711488      anyDefaultOutputFlag = anyDefaultOutputFlag || ( m_layerIdsInDefOutputLayerSet[lsIdx].size() != 0 );
    15721489    }   
    1573 #if H_MV_HLS10_ADD_LAYERSETS
    15741490    if ( anyDefaultOutputFlag )
    15751491    {   
    15761492      printf( "\nWarning: Ignoring LayerIdsInDefOutputLayerSet parameters, since defaultTargetOuputLayerIdc is not equal 2.\n" );   
    15771493    }
    1578 #else
    1579     printf( "\nWarning: Ignoring LayerIdsInDefOutputLayerSet parameters, since defaultTargetOuputLayerIdc is not equal 2.\n" );   
    1580 #endif
    15811494  }
    15821495  else 
     
    16001513  }
    16011514
    1602 #if H_MV_HLS10_ADD_LAYERSETS
    16031515  xConfirmPara( m_altOutputLayerFlag.size() < m_vpsNumLayerSets + m_numAddLayerSets + m_outputLayerSetIdx.size(), "The number of alt output layer flags must be equal to the number of layer set additional output layer sets plus the number of output layer set indices" );
    1604 #else
    1605   xConfirmPara( m_altOutputLayerFlag.size() < m_vpsNumLayerSets + m_outputLayerSetIdx.size(), "The number of Profile Level Tier indices must be equal to the number of layer set plus the number of output layer set indices" );
    1606 #endif
    16071516
    16081517  // PTL
    1609 #if H_MV_HLS10_PTL
    16101518    xConfirmPara( ( m_profile.size() != m_inblFlag.size() || m_profile.size() != m_level.size()  ||  m_profile.size() != m_levelTier.size() ), "The number of Profiles, Levels, Tiers and InblFlags must be equal." );
    16111519
     
    16201528      }
    16211529    }
    1622 #else
    1623     xConfirmPara( m_profileLevelTierIdx.size() < m_vpsNumLayerSets + m_outputLayerSetIdx.size(), "The number of Profile Level Tier indices must be equal to the number of layer set plus the number of output layer set indices" );
    1624 #endif
    16251530
    16261531    // Layer Dependencies 
     
    24862391#endif
    24872392#if H_MV
    2488 #if H_MV_HLS10_GEN_FIX
    24892393  xPrintParaVector( "NuhLayerId"     , m_layerIdInNuh );
    24902394  if ( m_targetEncLayerIdList.size() > 0)
     
    24922396    xPrintParaVector( "TargetEncLayerIdList"     , m_targetEncLayerIdList );
    24932397  }
    2494 #endif
    24952398  xPrintParaVector( "ViewIdVal"     , m_viewId );
    24962399  xPrintParaVector( "ViewOrderIndex", m_viewOrderIndex );
    2497 #if H_MV_HLS10_AUX
    24982400  xPrintParaVector( "AuxId", m_auxId );
    2499 #endif
    25002401#endif
    25012402#if H_3D
  • branches/HTM-12.1-dev0/source/App/TAppEncoder/TAppEncCfg.h

    r1074 r1076  
    7878  std::vector<Int>       m_viewId;                            ///< view id
    7979  std::vector<Int>       m_viewOrderIndex;                    ///< view order index 
    80 #if H_MV_HLS10_AUX
    8180  std::vector<Int>       m_auxId;                             ///< auxiliary id
    82 #endif
    8381#if H_3D
    8482  std::vector<Int>       m_depthFlag;                         ///< depth flag
    8583#endif
    86 #if H_MV_HLS10_GEN_FIX
    8784  std::vector<Int>       m_targetEncLayerIdList;              ///< layer Ids in Nuh to be encoded
    88 #endif
    8985  std::vector<Int>       m_layerIdInNuh;                      ///< layer Id in Nuh for each layer
    9086  Bool                   m_splittingFlag;                     ///< Splitting Flag
     
    9591  Int                    m_vpsNumLayerSets;                   ///< Number of layer sets
    9692  std::vector< std::vector<Int> > m_layerIdsInSets;           ///< LayerIds in vps of layer set
    97 #if H_MV_HLS10_ADD_LAYERSETS
    9893  Int                    m_numAddLayerSets;                    ///< Number of additional layer sets
    9994  std::vector< std::vector<Int> > m_highestLayerIdxPlus1;      ///< HighestLayerIdxPlus1 for each additional layer set and each independent layer (value with index 0 will be ignored)
    100 #endif
    10195  Int                    m_defaultOutputLayerIdc;             ///< Specifies output layers of layer sets, 0: output all layers, 1: output highest layers, 2: specified by LayerIdsInDefOuputLayerSet
    10296  std::vector<Int>       m_outputLayerSetIdx;                 ///< Indices of layer sets used as additional output layer sets 
    10397  std::vector< std::vector<Int> > m_layerIdsInAddOutputLayerSet; ///< LayerIds in vps of additional output layers
    10498  std::vector< std::vector<Int> > m_layerIdsInDefOutputLayerSet; ///< Indices in vps of output layers in layer sets
    105 #if H_MV_HLS10_ADD_LAYERSETS
    10699  std::vector< std::vector< Int > > m_profileTierLevelIdx;      ///< Indices of of profile, per layer in layer set
    107 #else
    108   std::vector<Int>       m_profileLevelTierIdx;               ///< Indices of of profile level tier
    109 #endif
    110100  std::vector<Bool>      m_altOutputLayerFlag;                ///< Alt output layer flag
    111101
     
    138128  std::vector< std::vector<Bool > > m_ctuBasedOffsetEnabledFlag;
    139129  std::vector< std::vector<Int  > > m_minHorizontalCtuOffsetPlus1;
    140 #if H_MV_HLS10_VPS_VUI
    141130  Bool m_singleLayerForNonIrapFlag;
    142131  Bool m_higherLayerIrapSkipFlag;
    143 #endif // H_MV_HLS10_VPS_VUI
    144132
    145133
     
    193181 
    194182  // profile/level
    195 #if H_MV_HLS10_PTL
    196183#if H_MV
    197184  std::vector< Profile::Name > m_profile;
     
    203190  Level::Tier   m_levelTier;
    204191  Level::Name   m_level;
    205 #endif
    206192#endif
    207193
     
    468454  std::vector<Int>  m_sbPropAvgBitRate;
    469455  std::vector<Int>  m_sbPropMaxBitRate;
    470 #if H_MV_HLS10_GEN_FIX
    471456  Bool              m_outputVpsInfo;
    472 #endif
    473457#endif
    474458#if H_3D
     
    531515#if H_MV
    532516
    533 #if H_MV_HLS10_PTL
    534517  template<typename T>
    535518  Void xReadStrToEnum(string in, std::vector<T> &val)
     
    552535    delete[] cString;
    553536  }
    554 #endif
    555537
    556538
  • branches/HTM-12.1-dev0/source/App/TAppEncoder/TAppEncTop.cpp

    r1074 r1076  
    144144  xDeriveDltArray          ( vps, dlt );
    145145#endif
    146 #if H_MV_HLS10_GEN_FIX
    147146  if ( m_targetEncLayerIdList.size() == 0 )
    148147  {
     
    166165    }
    167166  }
    168 #endif
    169 
    170 #if H_MV_HLS10_ADD_LAYERSETS
     167
    171168  if ( m_outputVpsInfo )
    172169  { 
    173 #if H_MV_HLS10_AUX
    174170    vps.printScalabilityId();
    175 #endif
    176171    vps.printLayerDependencies();
    177172    vps.printLayerSets();
    178173    vps.printPTL();
    179174  }
    180 #endif
    181175
    182176  for(Int layerIdInVps = 0; layerIdInVps < m_numberOfLayers; layerIdInVps++)
     
    829823 
    830824#if H_MV
    831 #if H_MV_HLS10_GEN_FIX
    832825  while ( (m_targetEncLayerIdList.size() != 0 ) && !allEos )
    833 #else
    834   while ( !allEos )
    835 #endif
    836826  {
    837827    for(Int layer=0; layer < m_numberOfLayers; layer++ )
    838828    {
    839 #if H_MV_HLS10_GEN_FIX
    840829      if (!xLayerIdInTargetEncLayerIdList( m_vps->getLayerIdInNuh( layer ) ))
    841830      {
    842831        continue;
    843832      }
    844 #endif
    845833
    846834      Int frmCnt = 0;
     
    883871      for(Int layer=0; layer < m_numberOfLayers; layer++ )
    884872      {
    885 #if H_MV_HLS10_GEN_FIX
    886873        if (!xLayerIdInTargetEncLayerIdList( m_vps->getLayerIdInNuh( layer ) ))
    887874        {
    888875          continue;
    889876        }
    890 #endif
    891877
    892878#if H_3D_VSO       
     
    916902  for(Int layer=0; layer < m_numberOfLayers; layer++ )
    917903  {
    918 #if H_MV_HLS10_GEN_FIX
    919904    if (!xLayerIdInTargetEncLayerIdList( m_vps->getLayerIdInNuh( layer ) ))
    920905    {
    921906      continue;
    922907    }
    923 #endif
    924908    m_acTEncTopList[layer]->printSummary( m_acTEncTopList[layer]->getNumAllPicCoded(), m_isField );
    925909  }
     
    13851369  // Max sub layers, + presence flag
    13861370  Bool subLayersMaxMinus1PresentFlag = false;
    1387 #if !H_MV_FIX_SUB_LAYERS_MAX_MINUS1
    1388   Int  subLayersMaxMinus1 = -1;
    1389 #endif
    13901371  for (Int curLayerIdInVps = 0; curLayerIdInVps < m_numberOfLayers; curLayerIdInVps++ )
    13911372  {   
     
    13981379
    13991380    vps.setSubLayersVpsMaxMinus1( curLayerIdInVps, curSubLayersMaxMinus1 );
    1400 #if !H_MV_FIX_SUB_LAYERS_MAX_MINUS1
    1401     if ( subLayersMaxMinus1 == -1 )
    1402     {
    1403       subLayersMaxMinus1 = curSubLayersMaxMinus1;
    1404     }
    1405     else
    1406     {
    1407       subLayersMaxMinus1PresentFlag = subLayersMaxMinus1PresentFlag || ( curSubLayersMaxMinus1 != subLayersMaxMinus1 );
    1408     }
    1409 #else
    14101381    subLayersMaxMinus1PresentFlag = subLayersMaxMinus1PresentFlag || ( curSubLayersMaxMinus1 != vps.getMaxSubLayersMinus1() );
    1411 #endif
    14121382  }
    14131383
     
    14221392    {
    14231393      Int maxTid = -1;
    1424 #if H_MV_FIX_LOOP_GOPSIZE
    14251394      for( Int i = 0; i < ( getGOPSize() + 1); i++ )
    14261395      {       
    14271396        GOPEntry geCur =  m_GOPListMvc[curLayerIdInVps][( i < getGOPSize()  ? i : MAX_GOP )];
    14281397        GOPEntry geRef =  m_GOPListMvc[refLayerIdInVps][( i < getGOPSize()  ? i : MAX_GOP )];
    1429 #else
    1430       for( Int i = 0; i < getGOPSize(); i++ )
    1431       {       
    1432         GOPEntry geCur =  m_GOPListMvc[curLayerIdInVps][i];
    1433         GOPEntry geRef =  m_GOPListMvc[refLayerIdInVps][i];     
    1434 #endif
    14351398        for (Int j = 0; j < geCur.m_numActiveRefLayerPics; j++)
    14361399        {       
    14371400          if ( m_directRefLayers[ curLayerIdInVps ][ geCur.m_interLayerPredLayerIdc[ j ]] == refLayerIdInVps )
    14381401          {
    1439 #if H_MV_FIX_LOOP_GOPSIZE
    14401402            Bool refAlwaysIntra = ( i == getGOPSize() ) && ( m_iIntraPeriod[ curLayerIdInVps ] % m_iIntraPeriod[ refLayerIdInVps ] == 0 );
    14411403            Bool refLayerZero   = ( i == getGOPSize() ) && ( refLayerIdInVps == 0 );
    14421404            maxTid = std::max( maxTid, ( refAlwaysIntra || refLayerZero ) ? 0 : geRef.m_temporalId );
    1443 #else
    1444             maxTid = std::max( maxTid, geRef.m_temporalId );
    1445 #endif
    14461405          }
    14471406        }
     
    15691528Void TAppEncTop::xSetProfileTierLevel( TComVPS& vps )
    15701529{
    1571 #if H_MV_HLS10_PTL
    15721530
    15731531  // SET PTL
     
    15871545      m_nonPackedConstraintFlag, m_frameOnlyConstraintFlag,  m_inblFlag[ptlIdx] );     
    15881546  } 
    1589 #else
    1590   const Int vpsNumProfileTierLevelMinus1 = 0; //TBD
    1591   vps.setVpsNumProfileTierLevelMinus1( vpsNumProfileTierLevelMinus1 );
    1592  
    1593   for (Int i = 0; i <= vps.getVpsNumProfileTierLevelMinus1(); i++ )
    1594   {
    1595     vps.setVpsProfilePresentFlag( i, true );
    1596   }
    1597 #endif
    1598 }
    1599 
    1600 #if H_MV_HLS10_PTL
     1547}
     1548
    16011549Void TAppEncTop::xSetProfileTierLevel(TComVPS& vps, Int profileTierLevelIdx, Int subLayer, Profile::Name profile, Level::Name level, Level::Tier tier, Bool progressiveSourceFlag, Bool interlacedSourceFlag, Bool nonPackedConstraintFlag, Bool frameOnlyConstraintFlag, Bool inbldFlag)
    16021550{
     
    16201568  ptl->setLevelIdc  ( level   );
    16211569  ptl->setProfileCompatibilityFlag( profile, true );
    1622 #if H_MV_HLS10_PTL_INBL_FIX
    16231570  ptl->setInbldFlag( inbldFlag );
    1624 #endif
    16251571
    16261572  switch ( profile )
     
    16481594  }
    16491595}
    1650 #endif
    16511596
    16521597Void TAppEncTop::xSetRepFormat( TComVPS& vps )
     
    16661611  //repFormat->setSeparateColourPlaneVpsFlag( );
    16671612
    1668 #if H_MV_HLS10_GEN_VSP_CONF_WIN
    16691613  repFormat->setConformanceWindowVpsFlag( true );
    16701614  repFormat->setConfWinVpsLeftOffset    ( m_confLeft   / TComSPS::getWinUnitX( repFormat->getChromaFormatVpsIdc() ) );
     
    16721616  repFormat->setConfWinVpsTopOffset     ( m_confTop    / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() )  );
    16731617  repFormat->setConfWinVpsBottomOffset  ( m_confBottom / TComSPS::getWinUnitY( repFormat->getChromaFormatVpsIdc() ) );
    1674 #endif
    16751618
    16761619  assert( vps.getRepFormat( 0 ) == NULL );
     
    16891632  { 
    16901633    Int currLsIdx = vps.olsIdxToLsIdx( i );
    1691 #if !H_MV_HLS10_ADD_LAYERSETS
    1692     std::vector<Int> targetDecLayerIdList = vps.getTargetDecLayerIdList( i );
    1693 #endif
    16941634    Bool subLayerFlagInfoPresentFlag = false;
    16951635
     
    16971637    {   
    16981638      Bool subLayerDpbInfoPresentFlag = false;
    1699 #if !H_MV_HLS10_ADD_LAYERSETS
    1700       assert( vps.getNumLayersInIdList( currLsIdx ) == targetDecLayerIdList.size() );
    1701 #endif
    17021639      for( Int k = 0; k < vps.getNumLayersInIdList( currLsIdx ); k++ )   
    17031640      {
    1704 #if H_MV_HLS10_DBP_SIZE
    17051641        Int layerIdInVps = vps.getLayerIdInVps( vps.getLayerSetLayerIdList( currLsIdx, k ) );
    17061642        if ( vps.getNecessaryLayerFlag( i,k ) && ( vps.getVpsBaseLayerInternalFlag() || vps.getLayerSetLayerIdList( currLsIdx, k ) != 0 ) )
     
    17191655          }
    17201656        }
    1721 #else
    1722         Int layerIdInVps = vps.getLayerIdInVps( targetDecLayerIdList[k] );           
    1723         dpbSize->setMaxVpsDecPicBufferingMinus1( i, k, j, m_maxDecPicBufferingMvc[ layerIdInVps ][ j ] - 1 );
    1724 
    1725         if ( j > 0 )
    1726         {
    1727           subLayerDpbInfoPresentFlag = subLayerDpbInfoPresentFlag || ( dpbSize->getMaxVpsDecPicBufferingMinus1( i, k, j ) != dpbSize->getMaxVpsDecPicBufferingMinus1( i, k, j - 1 ) );
    1728         }
    1729 #endif
    17301657      }       
    17311658
    17321659      Int maxNumReorderPics = MIN_INT;
    1733 #if H_MV_HLS10_DBP_SIZE
    17341660      for ( Int idx = 0; idx < vps.getNumLayersInIdList( currLsIdx ); idx++ )
    17351661      {
     
    17401666        }
    17411667      }
    1742 #else
    1743       for ( Int idx = 0; idx < targetDecLayerIdList.size(); idx++ )
    1744       {
    1745         Int layerIdInVps = vps.getLayerIdInVps( targetDecLayerIdList[ idx ] );
    1746         maxNumReorderPics = std::max( maxNumReorderPics, m_numReorderPicsMvc[ layerIdInVps ][ j ] );
    1747       }
    1748 #endif
    17491668      assert( maxNumReorderPics != MIN_INT );
    17501669
     
    17931712  // Additional output layer sets + profileLevelTierIdx
    17941713  vps.setDefaultOutputLayerIdc      ( m_defaultOutputLayerIdc );   
    1795 #if H_MV_HLS10_ADD_LAYERSETS
    17961714  if( vps.getNumIndependentLayers() == 0 && m_numAddLayerSets > 0  )
    17971715  {
     
    18271745    }       
    18281746  } 
    1829 #else
    1830   vps.setNumAddLayerSets            ( 0                             ); 
    1831 #endif
    18321747  vps.setNumAddOlss                 ( numAddOuputLayerSets          );
    18331748  vps.initTargetLayerIdLists();
    18341749
    1835 #if H_MV_HLS10_ADD_LAYERSETS
    18361750  for (Int olsIdx = 0; olsIdx < vps.getNumLayerSets() + numAddOuputLayerSets; olsIdx++)
    18371751  {
    18381752    Int addOutLsIdx = olsIdx - vps.getNumLayerSets();     
    1839 #else
    1840   for (Int olsIdx = 0; olsIdx < m_vpsNumLayerSets + numAddOuputLayerSets; olsIdx++)
    1841   {
    1842     Int addOutLsIdx = olsIdx - m_vpsNumLayerSets;     
    1843 #endif   
    18441753    vps.setLayerSetIdxForOlsMinus1( olsIdx, ( ( addOutLsIdx < 0 ) ?  olsIdx  : m_outputLayerSetIdx[ addOutLsIdx ] ) - 1 );
    18451754
    1846 #if H_MV_HLS10_ADD_LAYERSETS
    18471755    Int lsIdx = vps.olsIdxToLsIdx( olsIdx );
    1848 #else
    1849     std::vector<Int>& layerIdList    = m_layerIdsInSets[ vps.olsIdxToLsIdx( olsIdx ) ];
    1850 #endif
    18511756    if (vps.getDefaultOutputLayerIdc() == 2 || addOutLsIdx >= 0 )
    18521757    {
    1853 #if H_MV_HLS10_ADD_LAYERSETS
    18541758      for ( Int i = 0; i < vps.getNumLayersInIdList( lsIdx ); i++)
    1855 #else
    1856       for ( Int i = 0; i < layerIdList.size(); i++)
    1857 #endif
    18581759      {
    18591760        vps.setOutputLayerFlag( olsIdx, i, ( olsIdx == 0 && i == 0 ) ? vps.inferOutputLayerFlag(olsIdx, i ) : false ); // This is a software only fix for a bug in the spec. In spec outputLayerFlag neither present nor inferred for this case !
     
    18651766      for (Int j = 0; j < outLayerIdList.size(); j++)
    18661767      {   
    1867 #if H_MV_HLS10_ADD_LAYERSETS
    18681768        for ( Int i = 0; i < vps.getNumLayersInIdList( lsIdx ); i++)
    18691769        {
    18701770          if ( vps.getLayerSetLayerIdList( lsIdx, i ) == outLayerIdList[ j ] )
    1871 #else
    1872         for (Int i = 0; i < layerIdList.size(); i++ )
    1873         {
    1874           if ( layerIdList[ i ] == outLayerIdList[ j ] )
    1875 #endif
    18761771          {
    18771772            vps.setOutputLayerFlag( olsIdx, i, true );       
     
    18801775          }
    18811776        }
    1882 #if H_MV_HLS10_ADD_LAYERSETS
    18831777        if ( !outputLayerInLayerSetFlag )
    18841778        {
     
    18861780          exit(EXIT_FAILURE);
    18871781        }
    1888 #else
    1889         assert( outputLayerInLayerSetFlag ); // The output layer is not in the layer set.
    1890 #endif
    18911782      }
    18921783    }
    18931784    else
    18941785    {
    1895 #if H_MV_HLS10_ADD_LAYERSETS
    18961786      for ( Int i = 0; i < vps.getNumLayersInIdList( lsIdx ); i++)
    1897 #else
    1898       for ( Int i = 0; i < layerIdList.size(); i++)
    1899 #endif
    19001787      {
    19011788        vps.setOutputLayerFlag( olsIdx, i, vps.inferOutputLayerFlag( olsIdx, i ) );       
     
    19031790    }
    19041791
    1905 #if H_MV_HLS10_NESSECARY_LAYER
    19061792    vps.deriveNecessaryLayerFlags( olsIdx );
    1907 #endif
    19081793    vps.deriveTargetLayerIdList(  olsIdx );
    19091794
    1910 #if H_MV_HLS10_PTL
    19111795    // SET profile_tier_level_index.
    19121796    if ( olsIdx == 0 )
     
    19251809        {
    19261810          vps.setProfileTierLevelIdx(olsIdx, j, m_profileTierLevelIdx[olsIdx][j] );
    1927 #if H_MV_HLS10_PTL_FIX
    19281811          if( !vps.getNecessaryLayerFlag(olsIdx,j) && m_profileTierLevelIdx[ olsIdx ][ j ] != -1 )
    19291812          {
     
    19321815        }
    19331816        else if ( vps.getNecessaryLayerFlag(olsIdx,j) )
    1934 #else
    1935         }
    1936         else
    1937 #endif
    19381817        {
    19391818          // setting default values
     
    19511830      }
    19521831    }
    1953 #else
    1954     if ( olsIdx > 0 )
    1955     {
    1956       vps.setProfileLevelTierIdx( olsIdx, m_profileLevelTierIdx[ olsIdx ] );
    1957     }
    1958 #endif
    19591832   
    19601833    if ( vps.getNumOutputLayersInOutputLayerSet( olsIdx ) == 1 &&
     
    19941867    if( pcVPSVUI->getBitRatePresentVpsFlag( )  ||  pcVPSVUI->getPicRatePresentVpsFlag( ) )
    19951868    {
    1996 #if H_MV_HLS10_VPS_VUI
    19971869      for( Int i = 0; i  <  vps.getNumLayerSets(); i++ )
    1998 #else
    1999       for( Int i = 0; i  <=  vps.getVpsNumLayerSetsMinus1(); i++ )
    2000 #endif
    20011870      {
    20021871        for( Int j = 0; j  <=  vps.getMaxTLayers(); j++ )
     
    20471916        for( Int j = 0; j < vps.getNumDirectRefLayers( vps.getLayerIdInNuh( i ) ) ; j++ )
    20481917        { 
    2049 #if H_MV_HLS10_REF_PRED_LAYERS
    20501918          Int layerIdx = vps.getLayerIdInVps( vps.getIdDirectRefLayer(vps.getLayerIdInNuh( i ) , j  )); 
    2051 #else
    2052           Int layerIdx = vps.getLayerIdInVps( vps.getRefLayerId(vps.getLayerIdInNuh( i ) , j  )); 
    2053 #endif
    20541919          if( pcVPSVUI->getTilesInUseFlag( i )  &&  pcVPSVUI->getTilesInUseFlag( layerIdx ) ) 
    20551920          {
     
    20701935    }
    20711936
    2072 #if H_MV_HLS10_VPS_VUI
    20731937  pcVPSVUI->setSingleLayerForNonIrapFlag( m_singleLayerForNonIrapFlag );
    20741938  pcVPSVUI->setHigherLayerIrapSkipFlag( m_higherLayerIrapSkipFlag );
    2075 #endif
    20761939
    20771940    pcVPSVUI->setIlpRestrictedRefLayersFlag( m_ilpRestrictedRefLayersFlag );
     
    21301993  }
    21311994}
    2132 #if H_MV_HLS10_GEN_FIX
    21331995Bool TAppEncTop::xLayerIdInTargetEncLayerIdList(Int nuhLayerId)
    21341996{
    21351997  return  ( std::find(m_targetEncLayerIdList.begin(), m_targetEncLayerIdList.end(), nuhLayerId) != m_targetEncLayerIdList.end()) ;
    21361998}
    2137 #endif
    21381999
    21392000
  • branches/HTM-12.1-dev0/source/App/TAppEncoder/TAppEncTop.h

    r1066 r1076  
    133133  Void xSetProfileTierLevel       ( TComVPS& vps );
    134134
    135 #if H_MV_HLS10_PTL
    136135  Void xSetProfileTierLevel( TComVPS& vps, Int profileTierLevelIdx, Int subLayer,                             
    137136                             Profile::Name profile, Level::Name level, Level::Tier tier,
     
    139138                             Bool nonPackedConstraintFlag, Bool frameOnlyConstraintFlag,
    140139                             Bool inbldFlag );
    141 #endif
    142140  Void xSetRepFormat              ( TComVPS& vps );
    143141  Void xSetDpbSize                ( TComVPS& vps );
     
    145143  GOPEntry* xGetGopEntry( Int layerIdInVps, Int poc );
    146144  Int  xGetMax( std::vector<Int>& vec);
    147 #if H_MV_HLS10_GEN_FIX
    148145  Bool xLayerIdInTargetEncLayerIdList( Int nuhLayerId );
    149 #endif
    150146#endif
    151147#if H_3D
  • branches/HTM-12.1-dev0/source/Lib/TLibCommon/TComSlice.cpp

    r1075 r1076  
    18731873#if H_MV
    18741874  m_vpsBaseLayerInternalFlag = true;
    1875 #if H_MV_HLS10_GEN_VSP_BASE_LAYER_AVAIL
    18761875  m_vpsBaseLayerAvailableFlag = true;
    1877 #endif
    18781876#endif
    18791877
     
    19011899  {
    19021900    m_layerSetIdxForOlsMinus1[i]  = -1;
    1903 #if !H_MV_HLS10_PTL
    1904     m_profileLevelTierIdx[i]      = 0;
    1905 #endif
    19061901    for ( Int j = 0; j < MAX_VPS_NUH_LAYER_ID_PLUS1; j++)
    19071902    {
    1908 #if H_MV_HLS10_PTL
    1909 #if H_MV_HLS10_PTL_FIX
    19101903      m_profileTierLevelIdx[i][j] = -1;
    1911 #else
    1912       m_profileTierLevelIdx[i][j] = false;
    1913 #endif
    1914 #endif
    19151904      m_outputLayerFlag[i][j] = false;
    19161905    }
     
    19701959      m_directDependencyFlag[i][j] = false;
    19711960      m_directDependencyType[i][j] = -1;
    1972 #if H_MV_HLS10_REF_PRED_LAYERS
    19731961      m_dependencyFlag  [i][j]    = false;
    19741962      m_idDirectRefLayer[i][j]    = -1;
    19751963      m_idPredictedLayer[i][j]    = -1;
    19761964      m_idRefLayer      [i][j]    = -1;
    1977 #else
    1978       m_refLayerId[i][j]           = -1;
    1979 #endif
    19801965      m_maxTidIlRefPicsPlus1[i][j]  = 7;
    19811966    }
     
    20612046  assert( getVpsNumRepFormatsMinus1() <= 255 );
    20622047
    2063 #if H_MV_HLS10_ADD_LAYERSETS
    20642048  // The value of num_add_layer_sets shall be in the range of 0 to 1023, inclusive.
    20652049  assert( getNumAddLayerSets() >= 0 && getNumAddLayerSets() <= 1023 );
    2066 #endif
    20672050  return true;
    20682051}
     
    20972080{
    20982081
    2099 #if H_MV_HLS10_REF_PRED_LAYERS
    21002082  for( Int i = 0; i  <=  getMaxLayersMinus1(); i++ )
    21012083  {
     
    21672149  }
    21682150  m_numIndependentLayers = k;
    2169 #else // H_MV_HLS10_GEN
    2170 
    2171   for( Int i = 0; i  <= getMaxLayersMinus1(); i++ )
    2172   {
    2173     Int iNuhLId = getLayerIdInNuh( i );
    2174     m_numDirectRefLayers[ iNuhLId ] = 0;
    2175     for( Int j = 0; j < i; j++ )
    2176     {
    2177       if( getDirectDependencyFlag(i , j) )
    2178       {
    2179         m_refLayerId[ iNuhLId ][m_numDirectRefLayers[ iNuhLId ]++ ] = getLayerIdInNuh( j );
    2180       }
    2181     }
    2182   }
    2183 
    2184   for (Int i = 0 ; i < MAX_NUM_LAYER_IDS; i++ )
    2185   {
    2186     m_numRefLayers[i] = 0;
    2187   }
    2188 
    2189   for (Int currLayerId = 0; currLayerId <= 62; currLayerId++ )
    2190   {
    2191     for (Int i = 0 ; i < MAX_NUM_LAYER_IDS; i++ )
    2192     {
    2193       m_recursiveRefLayerFlag[currLayerId][i] = 0;
    2194     }
    2195   }
    2196 
    2197   for( Int i = 0; i  <=  getMaxLayersMinus1(); i++ )
    2198   {
    2199     Int iNuhLId = getLayerIdInNuh( i );
    2200     xSetRefLayerFlags( iNuhLId );
    2201     for( Int j = 0; j < 63; j++ )
    2202     {
    2203       m_numRefLayers[ iNuhLId ]  +=  m_recursiveRefLayerFlag[ iNuhLId ][ j ];
    2204     }
    2205   }
    2206  
    2207   for( Int i = 0; i <= getMaxLayersMinus1(); i++ )  // Bug in spec "<" instead of "<="
    2208   {
    2209     Int iNuhLId = getLayerIdInNuh( i );
    2210     Int predIdx = 0;
    2211     for( Int j = iNuhLId + 1; j < 63; j++ )
    2212     {
    2213       if( m_recursiveRefLayerFlag[ j ][ iNuhLId ] )
    2214       {
    2215         m_predictedLayerId[ iNuhLId ][ predIdx++ ] = j;
    2216       }
    2217     }
    2218     m_numPredictedLayers[ iNuhLId ] = predIdx;
    2219   }
    2220  
    2221   Bool countedLayerIdxFlag[ MAX_NUM_LAYERS ];
    2222   for( Int i = 0; i  <=  getMaxLayersMinus1(); i++ )
    2223   {
    2224     countedLayerIdxFlag[ i ] = 0;
    2225   }
    2226   for( Int i = 0, k = 0; i  <=  getMaxLayersMinus1(); i++ )
    2227   {
    2228     Int iNuhLId = getLayerIdInNuh( i );
    2229     if( m_numDirectRefLayers[ iNuhLId ]  ==  0 )
    2230     {
    2231       m_treePartitionLayerIdList[ k ][ 0 ] = iNuhLId;
    2232       m_numLayersInTreePartition[ k ]      = 1;
    2233 
    2234       for( Int j = 0; j < m_numPredictedLayers[ iNuhLId ]; j++ ) 
    2235       {
    2236         if( !countedLayerIdxFlag[ getLayerIdInVps( m_predictedLayerId[ iNuhLId ][ j ] ) ] )   
    2237         {
    2238           m_treePartitionLayerIdList[ k ][ m_numLayersInTreePartition[ k ] ] = m_predictedLayerId[ iNuhLId ][ j ];
    2239           m_numLayersInTreePartition[ k ]++;
    2240           countedLayerIdxFlag[ getLayerIdInVps( m_predictedLayerId[ iNuhLId ][ j ] ) ] = 1;
    2241         }
    2242       }
    2243       k++;
    2244 
    2245       m_numIndependentLayers = k;
    2246     }
    2247   }
    2248 #endif // H_MV_HLS10_GEN
    2249 }
    2250 
    2251 #if !H_MV_HLS10_REF_PRED_LAYERS
    2252 Int TComVPS::getRefLayerId( Int layerIdInNuh, Int idx )
    2253 {
    2254   assert( idx >= 0 && idx < m_numDirectRefLayers[layerIdInNuh] );     
    2255   Int refLayerIdInNuh = m_refLayerId[ layerIdInNuh ][ idx ];   
    2256   assert ( refLayerIdInNuh >= 0 );
    2257   return refLayerIdInNuh;
    2258 }
    2259 #endif
     2151}
     2152
    22602153
    22612154Int TComVPS::getScalabilityId( Int layerIdInVps, ScalabilityType scalType )
     
    24082301{
    24092302  assert( lsIdx >= 0 );
    2410 #if H_MV_HLS10_ADD_LAYERSETS
    24112303  assert( lsIdx <= getNumLayerSets() );
    2412 #else
    2413   assert( lsIdx <= getVpsNumLayerSetsMinus1() );
    2414 #endif
    24152304  return (Int) m_layerSetLayerIdList[ lsIdx ].size();
    24162305}
     
    24362325}
    24372326
    2438 #if !H_MV_HLS10_REF_PRED_LAYERS
    2439 Bool TComVPS::getInDirectDependencyFlag( Int depLayeridInVps, Int refLayeridInVps, Int depth /*= 0 */ )
    2440 {
    2441 #if H_MV_HLS10_REF_PRED_LAYERS
    2442   // TBD: Remove getInDirectDependencyFlag entirely.
    2443   return getDependencyFlag( depLayeridInVps, refLayeridInVps );
    2444 #else
    2445   assert( depth < 65 );
    2446   Bool dependentFlag = getDirectDependencyFlag( depLayeridInVps, refLayeridInVps );
    2447 
    2448   for( Int i = 0; i < depLayeridInVps && !dependentFlag; i++ )
    2449   {
    2450     if ( getDirectDependencyFlag( depLayeridInVps, i ) )
    2451     {
    2452       dependentFlag = getInDirectDependencyFlag( i, refLayeridInVps, depth++ );
    2453     }
    2454   }
    2455   return dependentFlag;
    2456 #endif
    2457 }
    2458 #endif
    24592327
    24602328Void TComVPS::deriveLayerSetLayerIdList()
     
    24852353  for( Int j = 0; j < getNumLayersInIdList( lsIdx ); j++ )
    24862354  {
    2487 #if H_MV_HLS10_NESSECARY_LAYER
    24882355    if ( getNecessaryLayerFlag( i , j ))
    24892356    {
    2490 #endif
    24912357      m_targetDecLayerIdLists[i].push_back( m_layerSetLayerIdList[ lsIdx ][ j ] );
    2492 #if H_MV_HLS10_NESSECARY_LAYER
    2493     }
    2494 #endif
     2358    }
    24952359
    24962360    if( getOutputLayerFlag( i, j  ))
     
    25412405}
    25422406
    2543 #if !H_MV_HLS10_ADD_LAYERSETS
    2544 Void TComVPS::inferDbpSizeLayerSetZero( TComSPS* sps, Bool encoder )
    2545 {
    2546   for( Int j = 0; j <= getMaxSubLayersInLayerSetMinus1( 0 ); j++ )
    2547   {
    2548     Int maxDecPicBufferingMinus1 = sps->getMaxDecPicBuffering( j ) - 1;
    2549     Int numReorderPics           = sps->getNumReorderPics    ( j );
    2550     Int maxLatencyIncreasePlus1  = sps->getMaxLatencyIncrease( j );
    2551 
    2552     if ( encoder )
    2553     {
    2554       assert( getDpbSize()->getMaxVpsDecPicBufferingMinus1(0, 0, j ) == maxDecPicBufferingMinus1 );
    2555       assert( getDpbSize()->getMaxVpsNumReorderPics       (0,    j ) == numReorderPics           );
    2556       assert( getDpbSize()->getMaxVpsLatencyIncreasePlus1 (0,    j ) == maxLatencyIncreasePlus1  );
    2557     }
    2558     else
    2559     {
    2560       getDpbSize()->setMaxVpsDecPicBufferingMinus1(0, 0, j, maxDecPicBufferingMinus1 );
    2561       getDpbSize()->setMaxVpsNumReorderPics       (0,    j, numReorderPics           );
    2562       getDpbSize()->setMaxVpsLatencyIncreasePlus1 (0,    j, maxLatencyIncreasePlus1  );       
    2563     }     
    2564   }
    2565 }
    2566 #endif
    25672407Bool TComVPS::getAltOutputLayerFlagVar( Int i )
    25682408{
     
    25782418}
    25792419
    2580 #if !H_MV_HLS10_MAXNUMPICS
    2581 Int TComVPS::getMaxNumPics( Int layerId )
    2582 {
    2583   Int maxNumPics = MAX_INT;
    2584   for( Int olsIdx = 0; olsIdx < getNumOutputLayerSets(); olsIdx++)
    2585   {
    2586     Int lsIdx = olsIdxToLsIdx( olsIdx );
    2587     for( Int j = 0; j < getNumLayersInIdList( lsIdx ); j++ )
    2588     {
    2589       if( getLayerSetLayerIdList(lsIdx, j ) ==  layerId )
    2590       {
    2591         Int maxSL = getMaxSubLayersInLayerSetMinus1( lsIdx );
    2592         maxNumPics = std::min( maxNumPics, getDpbSize()->getMaxVpsDecPicBufferingMinus1( olsIdx , j,  maxSL ) );
    2593       }
    2594     }
    2595   }
    2596   assert( maxNumPics != MAX_INT );
    2597   return maxNumPics;
    2598 }
    2599 #endif
    2600 
    2601 #if !H_MV_HLS10_REF_PRED_LAYERS
    2602 Void TComVPS::xSetRefLayerFlags( Int currLayerId )
    2603 {
    2604   for( Int j = 0; j < getNumDirectRefLayers( currLayerId ); j++ )
    2605   {
    2606     Int refLayerId = m_refLayerId[ currLayerId ][ j ];
    2607     m_recursiveRefLayerFlag[ currLayerId ][ refLayerId ] = 1;
    2608     for( Int k = 0; k < MAX_NUM_LAYER_IDS; k++ )
    2609     {
    2610       m_recursiveRefLayerFlag[ currLayerId ][ k ] = m_recursiveRefLayerFlag[ currLayerId ][ k ]  ||  m_recursiveRefLayerFlag[ refLayerId ][ k ];
    2611     }
    2612   }
    2613 }
    2614 
    2615 #endif
    2616 
    2617 #if H_MV_HLS10_PTL_FIX
     2420
     2421
    26182422Int TComVPS::inferProfileTierLevelIdx(Int i, Int j)
    26192423{
     
    26352439  return ptlIdx;
    26362440}
    2637 #endif
    2638 
    2639 #if H_MV_HLS10_ADD_LAYERSETS
     2441
    26402442Void TComVPS::deriveAddLayerSetLayerIdList(Int i)
    26412443{
     
    26602462}
    26612463
    2662 #endif
    2663 
    2664 #if H_MV_HLS10_NESSECARY_LAYER
     2464
    26652465Void TComVPS::deriveNecessaryLayerFlags(Int olsIdx)
    26662466{
     
    26932493  }
    26942494}
    2695 #endif
    2696 
    2697 #if H_MV_HLS10_ADD_LAYERSETS
     2495
    26982496Void TComVPS::printPTL()
    26992497{
     
    27412539#endif
    27422540
    2743 #if H_MV_HLS10_AUX
    27442541  vector<Int> viewOrderIndex;
    27452542  vector<Int> auxId;
    27462543  vector<Int> dependencyId;
    27472544  vector<Int> viewId;
    2748 #endif
    27492545  for (Int i = 0; i <= getMaxLayersMinus1(); i++ )
    27502546  {
    27512547    fullArray.push_back( getMaxLayersMinus1() + 1 );
    27522548    range.push_back( i );
    2753 #if H_MV_HLS10_AUX     
    27542549    viewOrderIndex.push_back( getViewIndex   ( i ) );
    27552550    dependencyId  .push_back( getDependencyId( i ) );
     
    27582553#if H_3D 
    27592554    depthId.push_back( getDepthId( i ) );
    2760 #endif
    27612555#endif
    27622556  }
     
    27712565}
    27722566
    2773 #if H_MV_HLS10_AUX
    27742567Void TComVPS::printScalabilityId()
    27752568{
     
    28092602  std::cout << std::endl;
    28102603}
    2811 #endif
    28122604
    28132605Void TComVPS::printLayerSets()
     
    28642656}
    28652657
    2866 #endif
    28672658
    28682659#endif // H_MV
     
    29422733#endif
    29432734
    2944 #if !H_MV_HLS10_PPS
    2945   m_numScaledRefLayerOffsets = 0;
    2946 
    2947   for (Int i = 0; i < MAX_NUM_SCALED_REF_LAYERS; i++ )
    2948   {
    2949     m_scaledRefLayerId             [i] = -1;
    2950   }
    2951 
    2952   for (Int i = 0; i < MAX_NUM_LAYERS; i++ )
    2953   {
    2954     m_scaledRefLayerLeftOffset     [i] = 0;
    2955     m_scaledRefLayerTopOffset      [i] = 0;
    2956     m_scaledRefLayerRiFghtOffset    [i] = 0;
    2957     m_scaledRefLayerBottomOffset   [i] = 0;
    2958   }
    2959 #endif
    29602735#endif
    29612736}
     
    33243099Void TComSPS::inferRepFormat( TComVPS* vps, Int layerIdCurr )
    33253100{
    3326 #if H_MV_HLS10_MULTILAYERSPS
    33273101  if ( getMultiLayerExtSpsFlag() )
    3328 #else
    3329   if ( layerIdCurr > 0 )
    3330 #endif
    33313102  {
    33323103    Int            repFormatIdx = getUpdateRepFormatFlag() ?  getSpsRepFormatIdx() : vps->getVpsRepFormatIdx( vps->getLayerIdInVps( layerIdCurr ) ) ;
     
    33443115    setBitDepthC             ( repFormat->getBitDepthVpsChromaMinus8() + 8 );
    33453116    setQpBDOffsetC           ( (Int) (6* ( getBitDepthC() -8 ) ) );
    3346  #if H_MV_HLS10_GEN_VSP_CONF_WIN
    33473117    Window &spsConf    = getConformanceWindow();   
    33483118
     
    33533123    spsConf.setWindowTopOffset   ( repFormat->getConfWinVpsTopOffset()     );
    33543124    spsConf.setWindowBottomOffset( repFormat->getConfWinVpsBottomOffset()  );   
    3355 #endif
    3356 
    3357 #if H_MV_HLS10_MULTILAYERSPS
     3125
    33583126   if ( getMultiLayerExtSpsFlag() && getUpdateRepFormatFlag() )
    3359 #else
    3360    if ( getLayerId() > 0 && getUpdateRepFormatFlag() )
    3361 #endif
    33623127    {
    33633128      assert( getChromaFormatIdc()      <=  repFormat->getChromaFormatVpsIdc()         );
     
    33933158  const std::vector<Int>& targetDecLayerIdList = vps->getTargetDecLayerIdList( vps->olsIdxToLsIdx( targetOptLayerSetIdx ));
    33943159
    3395 #if H_MV_HLS10_MULTILAYERSPS
    33963160  if ( getMultiLayerExtSpsFlag() )
    3397 #else
    3398   if (getLayerId() > 0 )
    3399 #endif
    34003161  {
    34013162    Int layerIdx = 0;         
     
    34153176      Int maxDecPicBufferingMinus1 = vps->getDpbSize()->getMaxVpsDecPicBufferingMinus1( targetOptLayerSetIdx, layerIdx, i ) ;
    34163177
    3417 #if H_MV_HLS10_MULTILAYERSPS
    34183178      // This preliminary fix needs to be checked.
    34193179      Int maxNumReorderPics       = vps->getDpbSize()->getMaxVpsNumReorderPics( targetOptLayerSetIdx, i );
    34203180      Int maxLatencyIncreasePlus1 = vps->getDpbSize()->getMaxVpsLatencyIncreasePlus1( targetOptLayerSetIdx, i );
    3421 #endif
    34223181      if ( encoder )     
    34233182      {
    34243183        assert( getMaxDecPicBuffering( i ) - 1 == maxDecPicBufferingMinus1 );
    3425 #if H_MV_HLS10_MULTILAYERSPS
    34263184        // This preliminary fix needs to be checked.
    34273185        assert( getNumReorderPics( i )     == maxNumReorderPics       );
    34283186        assert( getMaxLatencyIncrease( i ) == maxLatencyIncreasePlus1 );
    3429 #endif   
    34303187
    34313188      }
    34323189      else
    34333190      {
    3434 #if !H_MV_HLS10_MULTILAYERSPS
    3435         setMaxDecPicBuffering(i, maxDecPicBufferingMinus1 + 1 );
    3436 #else
    34373191        // This preliminary fix needs to be checked.
    34383192        setMaxDecPicBuffering( maxDecPicBufferingMinus1 + 1 , i);
    34393193        setNumReorderPics    ( maxNumReorderPics, i );
    34403194        setMaxLatencyIncrease( maxLatencyIncreasePlus1 - 1 , i);
    3441 #endif
    34423195      }
    34433196    }   
     
    34473200Void TComSPS::checkRpsMaxNumPics( TComVPS* vps, Int currLayerId )
    34483201{
    3449 #if !H_MV_HLS10_MAXNUMPICS
    3450   // In spec, when rps is in SPS, nuh_layer_id of SPS is used instead
    3451   // of nuh_layer_id of slice (currLayerId), this seems to be a bug.
    3452 #endif
    34533202  for (Int i = 0; i < getRPSList()->getNumberOfReferencePictureSets(); i++ )
    34543203  {
     
    34563205    if ( !rps->getInterRPSPrediction() )
    34573206    {
    3458 #if H_MV_HLS10_MAXNUMPICS
    34593207      rps->checkMaxNumPics( vps->getVpsExtensionFlag(), MAX_INT, getLayerId(), getMaxDecPicBuffering( getSpsMaxSubLayersMinus1() ) - 1 );   // INT_MAX to be replaced by DpbSize
    3460 #else
    3461       rps->checkMaxNumPics( vps->getVpsExtensionFlag(), vps->getMaxNumPics( currLayerId ),
    3462         getLayerId(), getMaxDecPicBuffering( getSpsMaxSubLayersMinus1() ) - 1 ); 
    3463 #endif
    3464     }
    3465   }
    3466 }
    3467 
    3468 #if H_MV_HLS10_MULTILAYERSPS
     3208    }
     3209  }
     3210}
     3211
    34693212Void TComSPS::inferSpsMaxSubLayersMinus1(Bool atPsActivation, TComVPS* vps)
    34703213{
     
    34873230  }
    34883231}
    3489 #endif
    34903232#endif
    34913233
     
    38503592{
    38513593  TComVPS* vps = getVPS();
    3852 #if H_MV_HLS10_REF_PRED_LAYERS
    38533594  Int refLayerIdx = vps->getLayerIdInVps( vps->getIdDirectRefLayer( getLayerId(), i ) );
    3854 #else
    3855   Int refLayerIdx = vps->getLayerIdInVps( vps->getRefLayerId( getLayerId(), i ) );
    3856 #endif
    38573595
    38583596  Bool refLayerPicFlag = ( vps->getSubLayersVpsMaxMinus1( refLayerIdx ) >=  getTLayer() )  && ( getTLayer() == 0  ) &&
     
    39253663Int TComSlice::getRefPicLayerId( Int i )
    39263664{
    3927 #if H_MV_HLS10_REF_PRED_LAYERS
    39283665  return getVPS()->getIdDirectRefLayer( getLayerId(), getInterLayerPredLayerIdc( i ) );
    3929 #else
    3930   return getVPS()->getRefLayerId( getLayerId(), getInterLayerPredLayerIdc( i ) );
    3931 #endif
    39323666}
    39333667
     
    46484382, m_nonPackedConstraintFlag(false)
    46494383, m_frameOnlyConstraintFlag(false)
    4650 #if H_MV_HLS10_PTL
    46514384  , m_max12bitConstraintFlag      ( false )
    46524385  , m_max10bitConstraintFlag      ( false )
     
    46594392  , m_lowerBitRateConstraintFlag  ( false )
    46604393  , m_inbldFlag                   ( false )
    4661 #endif
    46624394{
    46634395  ::memset(m_profileCompatibilityFlag, 0, sizeof(m_profileCompatibilityFlag));
    46644396}
    46654397
    4666 #if H_MV_HLS10_PTL_INFER_FIX
    46674398Bool ProfileTierLevel::getV2ConstraintsPresentFlag()
    46684399{
     
    47104441}
    47114442
    4712 #endif
    47134443
    47144444TComPTL::TComPTL()
     
    47194449
    47204450#if H_MV
    4721 #if !H_MV_HLS10_PTL_INFER_FIX
    4722 Void TComPTL::copyLevelFrom( TComPTL* source )
    4723 {
    4724   getGeneralPTL()->setLevelIdc( source->getGeneralPTL()->getLevelIdc() );
    4725   for( Int subLayer = 0; subLayer < 6; subLayer++ )
    4726   {
    4727     setSubLayerLevelPresentFlag( subLayer, source->getSubLayerLevelPresentFlag( subLayer ) );
    4728     getSubLayerPTL( subLayer )->setLevelIdc( source->getSubLayerPTL( subLayer )->getLevelIdc() );
    4729   }
    4730 }
    4731 #else
    47324451Void TComPTL::inferGeneralValues(Bool profilePresentFlag, Int k, TComPTL* refPTL)
    47334452{
     
    48174536}
    48184537
    4819 #endif
    48204538#endif
    48214539//! \}
     
    48604578
    48614579  m_vpsVuiBspHrdPresentFlag = false;
    4862 #if H_MV_HLS10_VPS_VUI_BSP
    48634580  m_vpsVuiBspHrdParameters  = NULL;
    4864 #else
    4865   m_vpsVuiBspHrdParameters  = new TComVpsVuiBspHrdParameters();
    4866 #endif
    48674581}
    48684582
     
    49104624}
    49114625
    4912 #if !H_MV_HLS10_VPS_VUI_BSP
    4913 Void TComVpsVuiBspHrdParameters::checkLayerInBspFlag( TComVPS* vps, Int h )
    4914 {
    4915   // It is a requirement of bitstream conformance that bitstream partition with index j shall not include
    4916   // direct or indirect reference layers of any layers in bitstream partition i for any values of i and j
    4917   // in the range of 0 to num_bitstream_partitions[ h ] ?1, inclusive, such that i is less than j.
    4918 
    4919   for ( Int partJ = 0; partJ < getNumBitstreamPartitions( h ); partJ++ )
    4920   {       
    4921     for ( Int partI = 0; partI < partJ; partI++ )
    4922     {
    4923       for ( Int layerJ = 0; layerJ < vps->getMaxLayersMinus1(); layerJ++ )
    4924       {
    4925         if ( m_layerInBspFlag[ h ][partJ][layerJ ] )
    4926         {
    4927           for ( Int layerI = 0; layerI < vps->getMaxLayersMinus1(); layerI++ )
    4928           {
    4929             if ( m_layerInBspFlag[ h ][partI][layerI] )
    4930             {
    4931               assert( !vps->getInDirectDependencyFlag( layerI, layerJ ) );
    4932             }
    4933           }
    4934         }
    4935       }
    4936     }
    4937   }
    4938 
    4939   // ---------------
    4940   // To be added:
    4941   // When vps_base_layer_internal_flag is equal to 0 and layer_in_bsp_flag[ h ][ i ][ 0 ] is equal to 1 for any value of h in the
    4942   // range of 1 to vps_num_layer_sets_minus1, inclusive, and any value of i in the range of 0 to num_bitstream_partitions[ h ] - 1,
    4943   // inclusive, the value of layer_in_bsp_flag[ h ][ i ][ j ] for at least one value of j in the range of 1 to
    4944   // NumLayersInIdList[ h ] - 1, inclusive, shall be equal to 1.
    4945   // ---------------
    4946 
    4947 
    4948   // When num_bitstream_partitions[ h ] is equal to 1 for any value of h in the range 1 to vps_num_layer_set_minus1, inclusive,
    4949   // the value of layer_in_bsp_flag[ h ][ 0 ][ j ] should be equal to 0 for at least one value of j in the range 0 to
    4950   // NumLayersInIdList[ h ] ? 1, inclusive.
    4951 
    4952 
    4953   if ( getNumBitstreamPartitions( h ) == 1 )
    4954   {
    4955     Bool atLeastOneZero = false;
    4956     for ( Int j = 0; j <= vps->getNumLayersInIdList( h ) - 1; j++ )
    4957     {
    4958       atLeastOneZero = atLeastOneZero || !getLayerInBspFlag( h, 0, j );
    4959     }   
    4960     assert( atLeastOneZero );
    4961   }
    4962 
    4963  
    4964   // For any value of h in the range 1 to vps_num_layer_set_minus1, inclusive, the value of layer_in_bsp_flag[ h ][ i ][ j ]
    4965   // shall be equal to 1 for at most one value of i in the range of 0 to num_bitstream_partitions[ h ] ? 1, inclusive.
    4966 
    4967   for ( Int j = 0; j <= vps->getNumLayersInIdList( h ) - 1; j++ )
    4968   {
    4969     Int numLayerInBsp = 0;
    4970     for ( Int i = 0; i <= getNumBitstreamPartitions( h ) - 1; i++ )
    4971     {
    4972       numLayerInBsp += ( getLayerInBspFlag( h, i, j ) ? 1 : 0 ); 
    4973     }   
    4974     assert( numLayerInBsp <= 1 );
    4975   }
    4976 
    4977 }
    4978 
    4979 Void TComVpsVuiBspHrdParameters::checkBspCombHrdAndShedIdx( TComVPS* vps, Int h, Int i, Int j )
    4980 {
    4981   // bsp_comb_hrd_idx
    4982   assert( getBspCombSchedIdx(h, i, j ) >= 0 );
    4983   assert( getBspCombSchedIdx(h, i, j ) <= getVpsNumBspHrdParametersMinus1() );
    4984 
    4985   // bsp_comb_sched_idx
    4986   assert( getBspCombSchedIdx(h, i, j ) >= 0 );
    4987 
    4988   //* This check needs to activated,  when HighestTid is available here   
    4989   //  assert(  getBspCombSchedIdx(h, i, j ) <= vps->getHrdParameters( getBspCombHrdIdx( h, i, j ) )->getCpbCntMinus1( highestTid ) );
    4990 }
    4991 #endif
    4992 
    4993 #if H_MV_HLS10_VPS_VUI_BSP
     4626
    49944627
    49954628TComVpsVuiBspHrdParameters::~TComVpsVuiBspHrdParameters()
     
    50894722}
    50904723
    5091 #endif
    50924724
    50934725Void TComVUI::inferVideoSignalInfo( TComVPS* vps, Int layerIdCurr )
     
    51254757      for (Int k = 0; k < MAX_NUM_LAYER_IDS; k++ )
    51264758      {
    5127 #if H_MV_HLS10_ADD_LAYERSETS
    51284759        m_maxVpsDecPicBufferingMinus1[i][k][j] = MIN_INT;
    5129 #else
    5130         m_maxVpsDecPicBufferingMinus1[i][k][j] = 0;
    5131 #endif
    51324760      }
    51334761    }
  • branches/HTM-12.1-dev0/source/Lib/TLibCommon/TComSlice.h

    r1075 r1076  
    4545#include "TComRom.h"
    4646#include "TComList.h"
    47 #if H_MV_HLS10_GEN_FIX
    4847#if H_MV
    4948#include <ios>
    5049#include <iostream>
    5150#include <iomanip>
    52 #endif
    5351#endif
    5452//! \ingroup TLibCommon
     
    207205  Bool m_frameOnlyConstraintFlag;
    208206 
    209 #if H_MV_HLS10_PTL
    210207#if H_MV
    211208  Bool m_max12bitConstraintFlag;
     
    220217  Bool m_inbldFlag;
    221218#endif
    222 #endif
    223219public:
    224220  ProfileTierLevel();
     
    252248
    253249#if H_MV
    254 #if H_MV_HLS10_PTL
    255250  Void setMax12bitConstraintFlag( Bool flag ) { m_max12bitConstraintFlag = flag; }
    256251  Bool getMax12bitConstraintFlag(  ) { return m_max12bitConstraintFlag; }
     
    281276  Void setInbldFlag( Bool flag ) { m_inbldFlag = flag; }
    282277  Bool getInbldFlag(  ) { return m_inbldFlag; }
    283 #endif
    284 #if H_MV_HLS10_PTL_INFER_FIX
    285278  Bool getV2ConstraintsPresentFlag(); 
    286279  Bool getInbldPresentFlag();
    287280  Void copyV2ConstraintFlags( ProfileTierLevel* ptlRef );
    288281  Void copyProfile( ProfileTierLevel* ptlRef );
    289 #endif
    290282#endif
    291283};
     
    310302  ProfileTierLevel* getSubLayerPTL(Int i)  { return &m_subLayerPTL[i]; }
    311303#if H_MV
    312 #if H_MV_HLS10_PTL_INFER_FIX
    313304  Void inferGeneralValues ( Bool profilePresentFlag  , Int k, TComPTL* refPTL );;
    314305  Void inferSubLayerValues( Int maxNumSubLayersMinus1, Int k, TComPTL* refPTL );;
    315 #else
    316   Void copyLevelFrom( TComPTL* source );
    317 #endif
    318306#endif
    319307};
     
    501489class TComVpsVuiBspHrdParameters
    502490{
    503 #if H_MV_HLS10_VPS_VUI_BSP
    504491
    505492  /* Not yet tested */
     
    563550  Void setHrdParametermeters( Int k, TComHRD* val  ) {  *(m_hrdParameters + k ) = *val; };
    564551  TComHRD* getHrdParametermeters( Int k ) {  return m_hrdParameters + k; };
    565 #else
    566 private:
    567   Int  m_vpsNumBspHrdParametersMinus1;
    568   Bool m_bspCprmsPresentFlag[MAX_NUM_BSP_HRD_PARAMETERS];
    569   Int  m_numBitstreamPartitions[MAX_VPS_OP_SETS_PLUS1];
    570   Bool m_layerInBspFlag[MAX_VPS_OP_SETS_PLUS1][MAX_NUM_BSP_HRD_PARAMETERS][MAX_NUM_LAYERS];
    571   Int  m_numBspSchedCombinationsMinus1[MAX_VPS_OP_SETS_PLUS1];
    572   Int  m_bspCombHrdIdx[MAX_VPS_OP_SETS_PLUS1][MAX_NUM_BSP_HRD_PARAMETERS][MAX_NUM_BSP_SCHED_COMBINATION];
    573   Int  m_bspCombSchedIdx[MAX_VPS_OP_SETS_PLUS1][MAX_NUM_BSP_HRD_PARAMETERS][MAX_NUM_BSP_SCHED_COMBINATION];
    574   TComHRD* m_hrdParameters[MAX_NUM_BSP_HRD_PARAMETERS];
    575 public:
    576 
    577   Void setVpsNumBspHrdParametersMinus1( Int  val ) { m_vpsNumBspHrdParametersMinus1 = val; }
    578   Int  getVpsNumBspHrdParametersMinus1(  ) { return m_vpsNumBspHrdParametersMinus1; }
    579 
    580   Void setBspCprmsPresentFlag( Int i, Bool flag ) { m_bspCprmsPresentFlag[i] = flag; }
    581   Bool getBspCprmsPresentFlag( Int i ) { return m_bspCprmsPresentFlag[i]; }
    582 
    583   Void setNumBitstreamPartitions( Int h, Int  val ) { m_numBitstreamPartitions[h] = val; }
    584   Int  getNumBitstreamPartitions( Int h ) { return m_numBitstreamPartitions[h]; }
    585 
    586   Void setLayerInBspFlag( Int h, Int i, Int j, Bool flag ) { m_layerInBspFlag[h][i][j] = flag; }
    587   Bool getLayerInBspFlag( Int h, Int i, Int j ) { return m_layerInBspFlag[h][i][j]; }
    588   Void checkLayerInBspFlag ( TComVPS* vps, Int h ); 
    589 
    590   Void setNumBspSchedCombinationsMinus1( Int h, Int  val ) { m_numBspSchedCombinationsMinus1[h] = val; }
    591   Int  getNumBspSchedCombinationsMinus1( Int h ) { return m_numBspSchedCombinationsMinus1[h]; }
    592 
    593   Void setBspCombHrdIdx( Int h, Int i, Int j, Int  val ) { m_bspCombHrdIdx[h][i][j] = val; }
    594   Int  getBspCombHrdIdx( Int h, Int i, Int j ) { return m_bspCombHrdIdx[h][i][j]; }
    595   Int  getBspCombHrdIdxLen() { return gCeilLog2( getVpsNumBspHrdParametersMinus1() + 1);  };
    596 
    597 
    598   Void setBspCombSchedIdx( Int h, Int i, Int j, Int  val ) { m_bspCombSchedIdx[h][i][j] = val; }
    599   Int  getBspCombSchedIdx( Int h, Int i, Int j ) { return m_bspCombSchedIdx[h][i][j]; }
    600 
    601   Void checkBspCombHrdAndShedIdx( TComVPS* vps, Int h, Int i, Int j );
    602 
    603   Void setHrdParametermeters( Int k, TComHRD* val  ) {  m_hrdParameters[k] = val; };
    604   TComHRD* getHrdParametermeters( Int k ) {  return m_hrdParameters[k]; };
    605 #endif
    606552};
    607553
     
    630576  Bool m_wppNotInUseFlag;
    631577  Bool m_wppInUseFlag                [MAX_NUM_LAYERS];
    632 #if H_MV_HLS10_VPS_VUI
    633578  Bool m_singleLayerForNonIrapFlag;
    634579  Bool m_higherLayerIrapSkipFlag;
    635 #endif
    636580  Bool m_ilpRestrictedRefLayersFlag;
    637581  Int  m_minSpatialSegmentOffsetPlus1[MAX_NUM_LAYERS][MAX_NUM_LAYERS];
     
    708652  Bool getWppInUseFlag( Int i ) { return m_wppInUseFlag[i]; }
    709653
    710 #if H_MV_HLS10_VPS_VUI
    711654  Void setSingleLayerForNonIrapFlag( Bool flag ) { m_singleLayerForNonIrapFlag = flag; }
    712655  Bool getSingleLayerForNonIrapFlag(  ) { return m_singleLayerForNonIrapFlag; }
     
    714657  Void setHigherLayerIrapSkipFlag( Bool flag ) { m_higherLayerIrapSkipFlag = flag; }
    715658  Bool getHigherLayerIrapSkipFlag(  ) { return m_higherLayerIrapSkipFlag; }
    716 #endif
    717659
    718660  Void setIlpRestrictedRefLayersFlag( Bool flag ) { m_ilpRestrictedRefLayersFlag = flag; }
     
    750692  Int  m_bitDepthVpsLumaMinus8;
    751693  Int  m_bitDepthVpsChromaMinus8;
    752 #if H_MV_HLS10_GEN_VSP_CONF_WIN
    753694  Bool m_conformanceWindowVpsFlag;
    754695  Int  m_confWinVpsLeftOffset;
     
    756697  Int  m_confWinVpsTopOffset;
    757698  Int  m_confWinVpsBottomOffset;
    758 #endif
    759699
    760700public:
    761701
    762 #if H_MV_HLS10_GEN_VSP_CONF_WIN
    763702  TComRepFormat()
    764703  {
     
    769708  m_confWinVpsBottomOffset   = 0;
    770709  }; 
    771 #else
    772   TComRepFormat() { }; 
    773 #endif
    774710
    775711  Void setChromaAndBitDepthVpsPresentFlag( Bool flag ) { m_chromaAndBitDepthVpsPresentFlag = flag; }
     
    796732  Int  getBitDepthVpsChromaMinus8(  ) { return m_bitDepthVpsChromaMinus8; }
    797733
    798 #if H_MV_HLS10_GEN_VSP_CONF_WIN
    799734  Void setConformanceWindowVpsFlag( Bool flag ) { m_conformanceWindowVpsFlag = flag; }
    800735  Bool getConformanceWindowVpsFlag(  ) { return m_conformanceWindowVpsFlag; }
     
    811746  Void setConfWinVpsBottomOffset( Int  val ) { m_confWinVpsBottomOffset = val; }
    812747  Int  getConfWinVpsBottomOffset(  ) { return m_confWinVpsBottomOffset; }
    813 #endif
    814748};
    815749
     
    834768
    835769  Void setMaxVpsDecPicBufferingMinus1( Int i, Int k, Int j, Int  val ) { m_maxVpsDecPicBufferingMinus1[i][k][j] = val; }
    836   #if H_MV_HLS10_ADD_LAYERSETS
    837770  Int  getMaxVpsDecPicBufferingMinus1( Int i, Int k, Int j ) { assert( m_maxVpsDecPicBufferingMinus1[i][k][j] >= 0 ); return m_maxVpsDecPicBufferingMinus1[i][k][j]; }     
    838   #else
    839   Int  getMaxVpsDecPicBufferingMinus1( Int i, Int k, Int j ) { return m_maxVpsDecPicBufferingMinus1[i][k][j]; }
    840   #endif
    841771
    842772  Void setMaxVpsNumReorderPics( Int i, Int j, Int  val ) { m_maxVpsNumReorderPics[i][j] = val; }
     
    853783#if H_MV
    854784  Bool        m_vpsBaseLayerInternalFlag;
    855 #if H_MV_HLS10_GEN_VSP_BASE_LAYER_AVAIL
    856785  Bool        m_vpsBaseLayerAvailableFlag;
    857 #endif // H_MV_HLS10_GEN
    858786#endif
    859787
     
    925853  Int         m_layerSetIdxForOlsMinus1  [MAX_VPS_OUTPUTLAYER_SETS]; 
    926854  Bool        m_outputLayerFlag          [MAX_VPS_OUTPUTLAYER_SETS][MAX_VPS_NUH_LAYER_ID_PLUS1];
    927 #if H_MV_HLS10_PTL
    928855  Int         m_profileTierLevelIdx      [MAX_VPS_OUTPUTLAYER_SETS ][MAX_NUM_LAYERS];
    929 #else 
    930   Int         m_profileLevelTierIdx      [MAX_VPS_OUTPUTLAYER_SETS ];
    931 #endif
    932856  Bool        m_altOutputLayerFlag       [MAX_VPS_OUTPUTLAYER_SETS];
    933857  Bool        m_repFormatIdxPresentFlag;
     
    958882  // VPS EXTENSION SEMANTICS VARIABLES
    959883  Int         m_layerIdInVps             [MAX_NUM_LAYERS   ];
    960 #if H_MV_HLS10_REF_PRED_LAYERS
    961884  Int         m_dependencyFlag           [MAX_NUM_LAYERS][MAX_NUM_LAYERS];
    962 #endif
    963885
    964886  Int         m_numDirectRefLayers       [MAX_NUM_LAYERS];
    965 #if H_MV_HLS10_REF_PRED_LAYERS
    966887  Int         m_idDirectRefLayer         [MAX_NUM_LAYERS][MAX_NUM_LAYERS]; 
    967 #else
    968   Int         m_refLayerId               [MAX_NUM_LAYERS][MAX_NUM_LAYERS]; 
    969 #endif
    970888
    971889  Int         m_numRefLayers             [MAX_NUM_LAYER_IDS];
    972 #if H_MV_HLS10_REF_PRED_LAYERS
    973890  Int         m_idRefLayer               [MAX_NUM_LAYERS][MAX_NUM_LAYERS]; 
    974 #endif
    975891
    976892
    977893  Int         m_numPredictedLayers       [MAX_NUM_LAYERS ];
    978 #if !H_MV_HLS10_REF_PRED_LAYERS
    979   Int         m_predictedLayerId         [MAX_NUM_LAYERS][MAX_NUM_LAYER_IDS];
    980 #else
    981894  Int         m_idPredictedLayer         [MAX_NUM_LAYERS][MAX_NUM_LAYER_IDS];
    982 #endif
    983895  Int         m_numIndependentLayers;
    984896  Int         m_numLayersInTreePartition [MAX_NUM_LAYER_IDS];
    985897  Int         m_treePartitionLayerIdList [MAX_NUM_LAYERS][MAX_NUM_LAYER_IDS];
    986 #if H_MV_HLS10_REF_PRED_LAYERS
    987898  Bool        m_recursiveRefLayerFlag    [MAX_NUM_LAYER_IDS][MAX_NUM_LAYER_IDS];
    988   #endif
    989899  Int         m_viewIndex                [MAX_NUM_LAYERS   ];
    990900 
     
    993903  std::vector< std::vector< Int> >       m_layerSetLayerIdList;
    994904
    995 #if H_MV_HLS10_NESSECARY_LAYER
    996905  Int        m_numNecessaryLayers        [MAX_VPS_OUTPUTLAYER_SETS];
    997906  Bool       m_necessaryLayerFlag        [MAX_VPS_OUTPUTLAYER_SETS][MAX_NUM_LAYERS];
    998 #endif
    999907
    1000908  Int         xGetDimBitOffset( Int j );
    1001 #if H_MV_HLS10_REF_PRED_LAYERS
    1002909  Void        xSetRefLayerFlags( Int currLayerId );
    1003 #endif
    1004910  // VPS EXTENSION 2 SYNTAX ELEMENTS
    1005911#if H_3D_ARP
     
    1069975  Void    setVpsBaseLayerInternalFlag( Bool flag ) { m_vpsBaseLayerInternalFlag = flag; }
    1070976  Bool    getVpsBaseLayerInternalFlag(  )          { return m_vpsBaseLayerInternalFlag; }
    1071 #if H_MV_HLS10_GEN_VSP_BASE_LAYER_AVAIL
    1072977  Void    setVpsBaseLayerAvailableFlag( Bool flag ) { m_vpsBaseLayerAvailableFlag = flag; }
    1073978  Bool    getVpsBaseLayerAvailableFlag(  )          { return m_vpsBaseLayerAvailableFlag; }
    1074979#endif
    1075 #endif
    1076980
    1077981  UInt    getMaxTLayers  ()                   { return m_uiMaxTLayers;   }
     
    1080984#if H_MV   
    1081985  UInt    getMaxSubLayersMinus1()             { return m_uiMaxTLayers - 1;  }  // For consistency with draft spec
    1082 #if H_MV_HLS10_GEN_FIX
    1083986  Void    setMaxSubLayersMinus1(UInt val)     { m_uiMaxTLayers = (val + 1); };
    1084 #endif
    1085987  UInt    getMaxLayersMinus1()                { return m_uiMaxLayersMinus1;  };
    1086988  Void    setMaxLayersMinus1(UInt l)          { m_uiMaxLayersMinus1 = l; }
     
    11221024
    11231025#if H_MV
    1124 #if H_MV_HLS10_PTL
    11251026  TComPTL* getPTL( Int idx = 0 ) { return &m_pcPTL[idx]; }
    1126 #else
    1127   TComPTL* getPTL( Int layerSet = 0 ) { return &m_pcPTL[layerSet]; }
    1128 #endif
    11291027#else
    11301028  TComPTL* getPTL() { return &m_pcPTL; }
     
    12131111  Bool    inferOutputLayerFlag( Int i, Int j );
    12141112
    1215 #if H_MV_HLS10_PTL
    12161113  Void    setProfileTierLevelIdx( Int i, Int j, Int val )                  { m_profileTierLevelIdx[ i ][ j ] = val; }
    12171114  Int     getProfileTierLevelIdx( Int i, Int j )                           { return m_profileTierLevelIdx[ i ][ j ]; }
    1218 #if H_MV_HLS10_PTL_FIX
    12191115  Int     inferProfileTierLevelIdx( Int i, Int j );
    1220 #endif
    1221 #else
    1222   Void    setProfileLevelTierIdx( Int outLayerSetIdx, Int val )            { m_profileLevelTierIdx[ outLayerSetIdx ] = val; }
    1223   Int     getProfileLevelTierIdx( Int outLayerSetIdx )                     { return m_profileLevelTierIdx[ outLayerSetIdx ]; }
    1224 #endif
    12251116 
    12261117  Void    setAltOutputLayerFlag( Int i, Bool flag )                        { m_altOutputLayerFlag[i] = flag; }
     
    12521143  TComDpbSize* getDpbSize( )                                               { return m_dpbSize;}
    12531144 
    1254 #if !H_MV_HLS10_ADD_LAYERSETS 
    1255   Void    inferDbpSizeLayerSetZero( TComSPS* sps, Bool encoder );
    1256 #endif
    12571145
    12581146  Void    setPocLsbNotPresentFlag( Int i, Bool flag )                      { m_pocLsbNotPresentFlag[i] = flag; }
     
    12851173
    12861174  Int     getViewIndex    ( Int layerIdInNuh )                             { return getScalabilityId( getLayerIdInVps(layerIdInNuh), VIEW_ORDER_INDEX  ); }   
    1287 #if H_MV_HLS10_AUX
    12881175  Int     getAuxId        ( Int layerIdInNuh )                             { return getScalabilityId( getLayerIdInVps(layerIdInNuh), AUX_ID  ); }   
    12891176  Int     getDependencyId ( Int layerIdInNuh )                             { return getScalabilityId( getLayerIdInVps(layerIdInNuh), DEPENDENCY_ID  ); }   
    1290 #endif
    12911177  Int     getNumViews();
    12921178
    1293 #if H_MV_HLS10_REF_PRED_LAYERS
    12941179  Bool    getDependencyFlag( Int i, Int j )                                { return m_dependencyFlag[i][j]; }
    1295 #endif
    12961180  Int     getNumDirectRefLayers( Int layerIdInNuh )                        { return m_numDirectRefLayers[ layerIdInNuh ];  };                               
    1297 #if !H_MV_HLS10_REF_PRED_LAYERS
    1298   Int     getRefLayerId        ( Int layerIdInNuh, Int idx );;
    1299 #endif
    13001181  Int     getNumRefLayers            ( Int i )        { return m_numRefLayers[i]; }
    13011182  Int     getNumPredictedLayers      ( Int i )        { return m_numPredictedLayers[i]; }
    13021183
    1303 #if !H_MV_HLS10_REF_PRED_LAYERS 
    1304   Int     getPredictedLayerId        ( Int i, Int j ) { return m_predictedLayerId[i][j]; }
    1305 #else
    13061184  Int     getIdRefLayer              ( Int i, Int j ) { assert( j >= 0 && j < getNumRefLayers      ( i )); return m_idRefLayer      [i][j]; }
    13071185  Int     getIdPredictedLayer        ( Int i, Int j ) { assert( j >= 0 && j < getNumPredictedLayers( i )); return m_idPredictedLayer[i][j]; }
    13081186  Int     getIdDirectRefLayer        ( Int i, Int j ) { assert( j >= 0 && j < getNumDirectRefLayers( i )); return m_idDirectRefLayer[i][j]; }
    1309 #endif
    13101187  Int     getNumIndependentLayers    (  )             { return m_numIndependentLayers; }
    13111188  Int     getNumLayersInTreePartition( Int i )        { return m_numLayersInTreePartition[i]; }
     
    13141191  Int     getNumLayerSets( )                                               { return getVpsNumLayerSetsMinus1() + 1 + getNumAddLayerSets();  }; 
    13151192 
    1316 #if H_MV_HLS10_ADD_LAYERSETS
    13171193  Int     getFirstAddLayerSetIdx()                    { return getVpsNumLayerSetsMinus1() + 1; }
    13181194  Int     getLastAddLayerSetIdx()                     { return getFirstAddLayerSetIdx() + getNumAddLayerSets() - 1; }
    1319 #endif
    13201195  Bool    checkVPSExtensionSyntax();
    13211196  Int     scalTypeToScalIdx   ( ScalabilityType scalType );
    13221197
    1323 #if H_MV_HLS10_PTL
    13241198  Int     getProfileTierLevelIdxLen()                                      { return gCeilLog2( getVpsNumProfileTierLevelMinus1() + 1 ); };       
    1325 #else
    1326   Int     getProfileLevelTierIdxLen()                                      { return gCeilLog2( getVpsNumProfileTierLevelMinus1() + 1 ); };       
    1327 #endif
    13281199  Int     getVpsRepFormatIdxLen()                                          { return gCeilLog2( getVpsNumRepFormatsMinus1() + 1 ); };       
    13291200
     
    13361207  Void    deriveLayerSetLayerIdList();
    13371208
    1338 #if H_MV_HLS10_ADD_LAYERSETS
    13391209  Int     olsIdxToLsIdx( Int i )                                           { return ( i < getNumLayerSets() ) ? i  : getLayerSetIdxForOlsMinus1( i ) + 1 ; };
    1340 #else
    1341   Int     olsIdxToLsIdx( Int i )                                           { return ( i <= getVpsNumLayerSetsMinus1() ) ? i  : getLayerSetIdxForOlsMinus1( i ) + 1 ; };
    1342 #endif
    13431210  Void    initTargetLayerIdLists  ( );
    13441211  Void    deriveTargetLayerIdList ( Int i );
     
    13491216  Int     getOlsHighestOutputLayerId( Int i )                              { return getTargetOptLayerIdList( i ).back(); }; 
    13501217
    1351 #if H_MV_HLS10_ADD_LAYERSETS
    13521218  Void    deriveAddLayerSetLayerIdList( Int i );
    1353 #endif
    1354 #if H_MV_HLS10_NESSECARY_LAYER
    13551219  Void    deriveNecessaryLayerFlags( Int olsIdx );;
    13561220  Int     getNecessaryLayerFlag( Int i, Int j )                            { AOF( i >= 0 && i < getNumOutputLayerSets() ); AOF( j >= 0 && j < getNumLayersInIdList( olsIdxToLsIdx( i ) )  );  return m_necessaryLayerFlag[i][j]; }; 
    1357 #endif
    13581221
    13591222  Int     getMaxSubLayersInLayerSetMinus1( Int i );
     
    13661229
    13671230  // helpers
    1368 #if !H_MV_HLS10_REF_PRED_LAYERS
    1369   Bool    getInDirectDependencyFlag( Int depLayeridInVps, Int refLayeridInVps, Int depth = 0 );
    1370 #endif
    1371 #if !H_MV_HLS10_MAXNUMPICS
    1372   Int     getMaxNumPics( Int layerId );
    1373 #endif
    1374 #if H_MV_HLS10_ADD_LAYERSETS
    13751231  Void    printPTL();
    13761232  Void    printLayerDependencies();
    1377 #if H_MV_HLS10_AUX
    13781233  Void    printScalabilityId();;
    1379 #endif
    13801234  Void    printLayerSets();;
    13811235
     
    14221276    xPrintArray( name, 1, idx2, numElemDim2, vec2, printNumber, false );
    14231277  }
    1424 #endif
    14251278
    14261279
     
    18371690  TComVPS*    m_pcVPS;
    18381691  // SPS
    1839 #if H_MV_HLS10_MULTILAYERSPS
    18401692  Int         m_spsMaxSubLayersMinus1;
    18411693  Int         m_spsExtOrMaxSubLayersMinus1;
    1842 #endif
    18431694  Bool        m_spsExtensionPresentFlag;
    18441695
     
    18581709  // SPS Extension
    18591710  Bool        m_interViewMvVertConstraintFlag;
    1860 #if !H_MV_HLS10_PPS
    1861   Int         m_numScaledRefLayerOffsets;
    1862   Int         m_scaledRefLayerId          [MAX_NUM_SCALED_REF_LAYERS];
    1863   Int         m_scaledRefLayerLeftOffset  [MAX_NUM_LAYERS];
    1864   Int         m_scaledRefLayerTopOffset   [MAX_NUM_LAYERS];
    1865   Int         m_scaledRefLayerRightOffset [MAX_NUM_LAYERS];
    1866   Int         m_scaledRefLayerBottomOffset[MAX_NUM_LAYERS];
    1867 #endif
    18681711#endif
    18691712#if H_3D
     
    19691812#if H_MV
    19701813  UInt      getSpsMaxSubLayersMinus1()                { return ( m_uiMaxTLayers - 1); }
    1971 #if H_MV_HLS10_MULTILAYERSPS
    19721814  Void      setSpsMaxSubLayersMinus1( UInt val )       { setMaxTLayers( val + 1 ); }
    1973 #endif
    19741815#endif
    19751816
     
    20041845  TComPTL* getPTL()     { return &m_pcPTL; }
    20051846#if H_MV
    2006 #if H_MV_HLS10_MULTILAYERSPS
    20071847  Void setSpsExtOrMaxSubLayersMinus1( Int  val ) { m_spsExtOrMaxSubLayersMinus1 = val; }
    20081848  Int  getSpsExtOrMaxSubLayersMinus1(  ) { return m_spsExtOrMaxSubLayersMinus1; }
     
    20101850
    20111851  Bool getMultiLayerExtSpsFlag()            { return ( getLayerId() != 0  &&  getSpsExtOrMaxSubLayersMinus1() == 7 ); }
    2012 #endif
    20131852  Void inferSpsMaxDecPicBufferingMinus1( TComVPS* vps, Int targetOptLayerSetIdx, Int currLayerId, Bool encoder );
    20141853
     
    20491888  Bool getInterViewMvVertConstraintFlag()         { return m_interViewMvVertConstraintFlag;}
    20501889
    2051 #if !H_MV_HLS10_PPS
    2052   Void setNumScaledRefLayerOffsets( Int  val )    { m_numScaledRefLayerOffsets = val; }
    2053   Int  getNumScaledRefLayerOffsets(  )            { return m_numScaledRefLayerOffsets; }
    2054 
    2055   Void setScaledRefLayerId( Int i, Int  val )     { m_scaledRefLayerId[i] = val; }
    2056   Int  getScaledRefLayerId( Int i )               { return m_scaledRefLayerId[i]; }
    2057 
    2058   Void setScaledRefLayerLeftOffset( Int j, Int  val ) { m_scaledRefLayerLeftOffset[j] = val; }
    2059   Int  getScaledRefLayerLeftOffset( Int j )           { return m_scaledRefLayerLeftOffset[j]; }
    2060 
    2061   Void setScaledRefLayerTopOffset( Int j, Int  val )  { m_scaledRefLayerTopOffset[j] = val; }
    2062   Int  getScaledRefLayerTopOffset( Int j )            { return m_scaledRefLayerTopOffset[j]; }
    2063 
    2064   Void setScaledRefLayerRightOffset( Int j, Int  val ) { m_scaledRefLayerRightOffset[j] = val; }
    2065   Int  getScaledRefLayerRightOffset( Int j )           { return m_scaledRefLayerRightOffset[j]; }
    2066 
    2067   Void setScaledRefLayerBottomOffset( Int j, Int  val ) { m_scaledRefLayerBottomOffset[j] = val; }
    2068   Int  getScaledRefLayerBottomOffset( Int j )           { return m_scaledRefLayerBottomOffset[j]; }
    2069 #endif
    20701890  // Inference
    20711891
  • branches/HTM-12.1-dev0/source/Lib/TLibCommon/TypeDef.h

    r1075 r1076  
    368368// TBD: Check if integration is necessary.
    369369
    370 #define H_MV_HLS10_GEN                       0  // General changes (not tested)
    371 
    372 #define H_MV_HLS10_AUX                       1 // Auxiliary pictures
    373 #define H_MV_HLS10_GEN_FIX                   1
    374 #define H_MV_FIX_LOOP_GOPSIZE                1
    375 #define H_MV_FIX_SUB_LAYERS_MAX_MINUS1       1
    376 
    377 #define H_MV_HLS10_GEN_VSP_CONF_WIN          1  // VPS conformance window
    378 #define H_MV_HLS10_GEN_VSP_BASE_LAYER_AVAIL  1  // vps_base_layer_available
    379 #define H_MV_HLS10_REF_PRED_LAYERS           1  // reference and predicted layer derivation
    380 #define H_MV_HLS10_NESSECARY_LAYER           1  // necessary layers
    381 #define H_MV_HLS10_ADD_LAYERSETS             1  // additional layer sets
    382 #define H_MV_HLS10_DBP_SIZE                  1  // dpb size syntax structure
    383 #define H_MV_HLS10_MAXNUMPICS                1  // constraint on number of pictures in rps 
    384 #define H_MV_HLS10_PTL                       1  // profile tier level
    385 #define H_MV_HLS10_PTL_FIX                   1  // profile tier level fix
    386 #define H_MV_HLS10_PTL_INBL_FIX              1  // profile tier level fix
    387 #define H_MV_HLS10_PTL_INFER_FIX             1  // fix inference ptl
    388 #define H_MV_HLS10_MULTILAYERSPS             1  // multilayer SPS extension
    389 #define H_MV_HLS10_VPS_VUI                   1  // vsp vui
    390 #define H_MV_HLS10_VPS_VUI_BSP               1  // vsp vui bsp
    391 #define H_MV_HLS10_PPS                       1  // PPS modifications
    392 
    393 #define H_MV_HLS10_VPS_VUI_BSP_STORE         0  // Currently bsp vui bsp hrd parameters are not stored, some dynamic memory allocation with upper bounds is required.
    394 
    395 
    396370#define H_MV_HLS7_GEN                        0  // General changes (not tested)
    397371
     
    459433#define MAX_NESTING_NUM_LAYER       64
    460434
    461 #if H_MV_HLS10_VPS_VUI_BSP
    462435#define MAX_VPS_NUM_HRD_PARAMETERS                1024
    463436#define MAX_NUM_SUB_LAYERS                        7
    464437#define MAX_NUM_SIGNALLED_PARTITIONING_SCHEMES    16
    465 #else
    466 #define MAX_VPS_NUM_HRD_PARAMETERS                1
    467 #endif
    468438
    469439#define MAX_VPS_OP_SETS_PLUS1                     1024
    470440#if H_MV
    471 #if H_MV_HLS10_ADD_LAYERSETS
    472441#define MAX_VPS_NUM_ADD_LAYER_SETS                1024
    473 #endif
    474442#define MAX_VPS_NUH_LAYER_ID_PLUS1  63
    475443#define MAX_NUM_SCALABILITY_TYPES   16
     
    486454#define MAX_VPS_PROFILE_TIER_LEVEL      64
    487455#define MAX_VPS_ADD_OUTPUT_LAYER_SETS   1024
    488 #if H_MV_HLS10_ADD_LAYERSETS
    489456#define MAX_VPS_OUTPUTLAYER_SETS        ( MAX_VPS_ADD_OUTPUT_LAYER_SETS + MAX_VPS_OP_SETS_PLUS1 + MAX_VPS_OP_SETS_PLUS1 )
    490 #else
    491 #define MAX_VPS_OUTPUTLAYER_SETS        ( MAX_VPS_ADD_OUTPUT_LAYER_SETS + MAX_VPS_OP_SETS_PLUS1 )
    492 #endif
    493457#define  MAX_NUM_VIDEO_SIGNAL_INFO      16
    494458#define MAX_NUM_SCALED_REF_LAYERS       MAX_NUM_LAYERS-1
    495 #if !H_MV_HLS10_VPS_VUI_BSP
    496 #define MAX_NUM_BSP_HRD_PARAMETERS      100 ///< Maximum value is actually not specified
    497 #define MAX_NUM_BITSTREAM_PARTITIONS    100 ///< Maximum value is actually not specified
    498 #define MAX_NUM_BSP_SCHED_COMBINATION   100 ///< Maximum value is actually not specified
    499 #define MAX_SUB_STREAMS                 1024
    500 #endif
    501459#else
    502460#define MAX_NUM_LAYER_IDS                64
     
    969927    MAINSTILLPICTURE = 3,
    970928#if H_MV
    971 #if H_MV_HLS10_PTL
    972929    MULTIVIEWMAIN = 6,
    973930#if H_3D
    974931    MAIN3D = 8,
    975 #endif
    976 #else
    977     MAINSTEREO = 4,
    978     MAINMULTIVIEW = 5,
    979 #if H_3D
    980     MAIN3D = 6,
    981 #endif
    982932#endif
    983933#endif
     
    1022972#endif   
    1023973    VIEW_ORDER_INDEX  = 1,
    1024 #if H_MV_HLS10_AUX
    1025974    DEPENDENCY_ID = 2,
    1026975    AUX_ID = 3,
    1027 #endif   
    1028976  };
    1029977#endif
  • branches/HTM-12.1-dev0/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r1075 r1076  
    5353  }
    5454  // To avoid mismatches
    55 #if H_MV_HLS10_GEN_FIX
    5655  fprintf( g_hTrace, "=========== Sequence Parameter Set LayerId: %d ===========\n", pSPS->getLayerId() );
    5756#else
    58   fprintf( g_hTrace, "=========== Sequence Parameter Set ===========\n" );
    59 #endif
    60 #else
    6157  fprintf( g_hTrace, "=========== Sequence Parameter Set ID: %d ===========\n", pSPS->getSPSId() );
    6258#endif
     
    7066    return;
    7167  }
    72 #if H_MV_HLS10_GEN_FIX
    7368  fprintf( g_hTrace, "=========== Picture Parameter Set LayerId: %d ===========\n", pPPS->getLayerId() );
    74 #else
    75   fprintf( g_hTrace, "=========== Picture Parameter Set ===========\n" );
    76 #endif
    7769#else
    7870  fprintf( g_hTrace, "=========== Picture Parameter Set ID: %d ===========\n", pPPS->getPPSId() );
     
    342334    }
    343335  }
    344 #if !H_MV_HLS10_PPS
    345 #if H_MV
    346   if ( pcPPS->getLayerId() > 0 )
    347   {
    348     READ_FLAG( uiCode, "pps_infer_scaling_list_flag" ); pcPPS->setPpsInferScalingListFlag( uiCode == 1 );   
    349   }
    350 
    351   if( pcPPS->getPpsInferScalingListFlag( ) )
    352   {
    353     READ_CODE( 6, uiCode, "pps_scaling_list_ref_layer_id" ); pcPPS->setPpsScalingListRefLayerId( uiCode );
    354   }
    355   else
    356   { 
    357 #endif
    358 #endif
    359336  READ_FLAG( uiCode, "pps_scaling_list_data_present_flag" );           pcPPS->setScalingListPresentFlag( uiCode ? true : false );
    360337  if(pcPPS->getScalingListPresentFlag ())
     
    362339    parseScalingList( pcPPS->getScalingList() );
    363340  }
    364 #if !H_MV_HLS10_PPS
    365 #if H_MV
    366   }
    367 #endif
    368 #endif
    369341  READ_FLAG( uiCode, "lists_modification_present_flag");
    370342  pcPPS->setListsModificationPresentFlag(uiCode);
     
    400372    if ( pcPPS->getPpsMultilayerExtensionFlag() )
    401373    {
    402 #if H_MV_HLS10_PPS
    403374      parsePPSMultilayerExtension( pcPPS );
    404 #else
    405       READ_FLAG( uiCode, "poc_reset_info_present_flag" ); pcPPS->setPocResetInfoPresentFlag( uiCode == 1 );
    406       READ_FLAG( uiCode, "pps_extension_reserved_zero_flag" );
    407 #endif
    408375    }
    409376#if !H_3D
     
    775742    READ_CODE( 3,  uiCode, "sps_max_sub_layers_minus1" );          pcSPS->setMaxTLayers   ( uiCode+1 );
    776743    assert(uiCode <= 6);
    777 #if H_MV_HLS10_MULTILAYERSPS
    778744#if H_MV
    779745  }
     
    786752  {
    787753#endif
    788 #endif
    789754
    790755    READ_FLAG( uiCode, "sps_temporal_id_nesting_flag" );               pcSPS->setTemporalIdNestingFlag ( uiCode > 0 ? true : false );
     
    796761
    797762    parsePTL(pcSPS->getPTL(), 1, pcSPS->getMaxTLayers() - 1);
    798 #if H_MV_HLS10_PTL_INFER_FIX
    799763    pcSPS->getPTL()->inferGeneralValues ( true, 0, NULL );
    800764    pcSPS->getPTL()->inferSubLayerValues( pcSPS->getMaxTLayers() - 1, 0, NULL );
    801 #endif
    802765#if H_MV
    803766  }
     
    806769  assert(uiCode <= 15);
    807770#if H_MV
    808 #if H_MV_HLS10_MULTILAYERSPS
    809771  if ( pcSPS->getMultiLayerExtSpsFlag() )
    810 #else
    811   if ( pcSPS->getLayerId() > 0 )
    812 #endif
    813772  {
    814773    READ_FLAG( uiCode, "update_rep_format_flag" );               pcSPS->setUpdateRepFormatFlag( uiCode == 1 );
     
    832791    READ_UVLC (    uiCode, "pic_width_in_luma_samples" );          pcSPS->setPicWidthInLumaSamples ( uiCode    );
    833792    READ_UVLC (    uiCode, "pic_height_in_luma_samples" );         pcSPS->setPicHeightInLumaSamples( uiCode    );
    834 #if !H_MV_HLS10_MULTILAYERSPS
    835 #if H_MV
    836   }
    837 #endif
    838 #endif
    839793  READ_FLAG(     uiCode, "conformance_window_flag");
    840794  if (uiCode != 0)
     
    848802    READ_UVLC(   uiCode, "conf_win_top_offset" );                conf.setWindowTopOffset   ( uiCode  );
    849803    READ_UVLC(   uiCode, "conf_win_bottom_offset" );             conf.setWindowBottomOffset( uiCode  );   
    850 #if H_MV_HLS10_MULTILAYERSPS
    851   }
    852 #endif
     804  }
    853805#else
    854806    READ_UVLC(   uiCode, "conf_win_left_offset" );               conf.setWindowLeftOffset  ( uiCode * TComSPS::getWinUnitX( pcSPS->getChromaFormatIdc() ) );
     
    860812
    861813#if H_MV
    862 #if H_MV_HLS10_MULTILAYERSPS
    863814  if ( !pcSPS->getMultiLayerExtSpsFlag() )
    864 #else // H_MV_HLS10_GEN
    865   if ( pcSPS->getLayerId() == 0 )
    866 #endif // H_MV_HLS10_GEN
    867815  {
    868816#endif
     
    884832
    885833#if H_MV
    886 #if H_MV_HLS10_MULTILAYERSPS
    887834  if ( !pcSPS->getMultiLayerExtSpsFlag())
    888 #else
    889   if ( pcSPS->getLayerId() == 0 )
    890 #endif
    891835  { 
    892836#endif
     
    947891  {
    948892#if H_MV
    949 #if H_MV_HLS10_MULTILAYERSPS
    950893    if ( pcSPS->getMultiLayerExtSpsFlag() )
    951 #else
    952     if ( pcSPS->getLayerId() > 0 )
    953 #endif
    954894    {   
    955895      READ_FLAG( uiCode, "sps_infer_scaling_list_flag" ); pcSPS->setSpsInferScalingListFlag( uiCode == 1 );
     
    10791019  READ_FLAG( uiCode, "inter_view_mv_vert_constraint_flag" );    pcSPS->setInterViewMvVertConstraintFlag(uiCode == 1 ? true : false);
    10801020 
    1081 #if !H_MV_HLS10_PPS
    1082   READ_UVLC( uiCode, "num_scaled_ref_layer_offsets" ); pcSPS->setNumScaledRefLayerOffsets( uiCode );
    1083 
    1084   for( Int i = 0; i < pcSPS->getNumScaledRefLayerOffsets( ); i++)
    1085   {   
    1086     READ_CODE( 6, uiCode, "scaled_ref_layer_id" ); pcSPS->setScaledRefLayerId( i, uiCode );
    1087 
    1088     Int j = pcSPS->getScaledRefLayerId( i );
    1089     Int iCode;
    1090     READ_SVLC( iCode, "scaled_ref_layer_left_offset" ); pcSPS->setScaledRefLayerLeftOffset( j, iCode );
    1091     READ_SVLC( iCode, "scaled_ref_layer_top_offset" ); pcSPS->setScaledRefLayerTopOffset( j, iCode );
    1092     READ_SVLC( iCode, "scaled_ref_layer_right_offset" ); pcSPS->setScaledRefLayerRightOffset( j, iCode );
    1093     READ_SVLC( iCode, "scaled_ref_layer_bottom_offset" ); pcSPS->setScaledRefLayerBottomOffset( j, iCode );
    1094     READ_FLAG( uiCode, "sps_multilayer_ext_reserved_zero_flag[ i ]" );
    1095   }
    1096 #endif
    10971021}
    10981022
     
    11041028#endif
    11051029
    1106 #if H_MV_HLS10_PPS
    11071030Void TDecCavlc::parsePPSMultilayerExtension(TComPPS* pcPPS)
    11081031{
     
    11151038
    11161039#endif
    1117 #endif
    11181040
    11191041Void TDecCavlc::parseVPS(TComVPS* pcVPS)
     
    11241046#if H_MV
    11251047  READ_FLAG( uiCode, "vps_base_layer_internal_flag" );            pcVPS->setVpsBaseLayerInternalFlag( uiCode == 1 );
    1126 #if H_MV_HLS10_GEN_VSP_BASE_LAYER_AVAIL
    11271048  READ_FLAG( uiCode, "vps_base_layer_available_flag" );           pcVPS->setVpsBaseLayerAvailableFlag( uiCode == 1 );
    1128 #else
    1129   READ_FLAG( uiCode, "vps_reserved_one_bit" );                    assert( uiCode == 1 );
    1130 #endif
    11311049#else
    11321050  READ_CODE( 2,  uiCode,  "vps_reserved_three_2bits" );           assert(uiCode == 3);
     
    11431061  READ_CODE( 16, uiCode,  "vps_reserved_ffff_16bits" );           assert(uiCode == 0xffff);
    11441062  parsePTL ( pcVPS->getPTL(), true, pcVPS->getMaxTLayers()-1);
    1145 #if H_MV_HLS10_PTL_INFER_FIX
    11461063#if H_MV
    11471064  pcVPS->getPTL()->inferGeneralValues ( true, 0, NULL );
    11481065  pcVPS->getPTL()->inferSubLayerValues( pcVPS->getMaxTLayers() - 1, 0, NULL );
    1149 #endif
    11501066#endif
    11511067  UInt subLayerOrderingInfoPresentFlag;
     
    11741090  READ_CODE( 6, uiCode, "vps_max_layer_id" );   pcVPS->setVpsMaxLayerId( uiCode );
    11751091
    1176 #if H_MV_HLS10_GEN_FIX
    11771092  READ_UVLC(    uiCode, "vps_num_layer_sets_minus1" );  pcVPS->setVpsNumLayerSetsMinus1( uiCode );
    1178 #else
    1179   READ_UVLC(    uiCode, "vps_max_num_layer_sets_minus1" );               pcVPS->setVpsNumLayerSetsMinus1( uiCode );
    1180 #endif
    11811093  for( UInt opsIdx = 1; opsIdx <= pcVPS->getVpsNumLayerSetsMinus1(); opsIdx ++ )
    11821094  {
     
    12671179  UInt uiCode;
    12681180
    1269 #if H_MV_HLS10_PTL
    12701181  if( pcVPS->getMaxLayersMinus1() > 0  &&  pcVPS->getVpsBaseLayerInternalFlag() )
    12711182  {
    12721183    parsePTL( pcVPS->getPTL( 1 ),0, pcVPS->getMaxSubLayersMinus1()  ); 
    12731184   
    1274 #if !H_MV_HLS10_PTL_INFER_FIX
    1275     // Copy Profile info
    1276     TComPTL temp = *pcVPS->getPTL( 1 );
    1277     *pcVPS->getPTL( 1 ) = *pcVPS->getPTL( 0 );
    1278     pcVPS->getPTL( 1 )->copyLevelFrom( &temp );
    1279 #else
    12801185    pcVPS->getPTL( 1 )->inferGeneralValues ( false, 1, pcVPS->getPTL( 0 ) );
    12811186    pcVPS->getPTL( 1 )->inferSubLayerValues( pcVPS->getMaxSubLayersMinus1(), 1, pcVPS->getPTL( 0 ) );   
    1282 #endif
    1283   }
    1284 #endif
     1187  }
    12851188
    12861189  READ_FLAG( uiCode, "splitting_flag" );                          pcVPS->setSplittingFlag( uiCode == 1 ? true : false );
     
    13561259  pcVPS->setRefLayers();
    13571260
    1358 #if H_MV_HLS10_ADD_LAYERSETS
    13591261  if ( pcVPS->getNumIndependentLayers() > 1 )
    13601262  {
     
    13691271    pcVPS->deriveAddLayerSetLayerIdList( i );
    13701272  }
    1371 #endif
    13721273
    13731274  READ_FLAG( uiCode, "vps_sub_layers_max_minus1_present_flag" ); pcVPS->setVpsSubLayersMaxMinus1PresentFlag( uiCode == 1 );
     
    14061307  READ_UVLC( uiCode, "vps_num_profile_tier_level_minus1" );  pcVPS->setVpsNumProfileTierLevelMinus1( uiCode ); 
    14071308
    1408 #if H_MV_HLS10_PTL
    14091309  Int offsetVal =  ( pcVPS->getMaxLayersMinus1() > 0  &&  pcVPS->getVpsBaseLayerInternalFlag() ) ? 2 : 1;   
    14101310  for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 2 : 1; i <= pcVPS->getVpsNumProfileTierLevelMinus1(); i++ )
     
    14121312    READ_FLAG(  uiCode, "vps_profile_present_flag[i]" );    pcVPS->setVpsProfilePresentFlag( i, uiCode == 1 );
    14131313    parsePTL ( pcVPS->getPTL( offsetVal ), pcVPS->getVpsProfilePresentFlag( i ), pcVPS->getMaxTLayers()-1);
    1414 #if H_MV_HLS10_PTL_INFER_FIX
    14151314    pcVPS->getPTL( offsetVal )->inferGeneralValues ( pcVPS->getVpsProfilePresentFlag( i ), offsetVal, pcVPS->getPTL( offsetVal - 1 ) );   
    14161315    pcVPS->getPTL( offsetVal )->inferSubLayerValues( pcVPS->getMaxSubLayersMinus1()      , offsetVal, pcVPS->getPTL( offsetVal - 1 ) );   
    1417 #else
    1418     if( !pcVPS->getVpsProfilePresentFlag( i ) )
    1419     {
    1420       TComPTL temp = *pcVPS->getPTL( offsetVal );
    1421       *pcVPS->getPTL( offsetVal ) = *pcVPS->getPTL( offsetVal - 1 );
    1422       pcVPS->getPTL( offsetVal )->copyLevelFrom( &temp );
    1423     }
    1424 #endif
    14251316    offsetVal++;
    14261317  }
    1427 #else
    1428   for( Int i = 1; i <= pcVPS->getVpsNumProfileTierLevelMinus1(); i++ )
    1429   {
    1430     READ_FLAG(  uiCode, "vps_profile_present_flag[i]" );    pcVPS->setVpsProfilePresentFlag( i, uiCode == 1 );
    1431     parsePTL ( pcVPS->getPTL( i ), pcVPS->getVpsProfilePresentFlag( i ), pcVPS->getMaxTLayers()-1);
    1432     if( !pcVPS->getVpsProfilePresentFlag( i ) )
    1433     {
    1434       TComPTL temp = *pcVPS->getPTL( i );
    1435       *pcVPS->getPTL( i ) = *pcVPS->getPTL( i - 1 );
    1436       pcVPS->getPTL( i )->copyLevelFrom( &temp );
    1437     }
    1438   }
    1439 #endif
    1440 
    1441 #if !H_MV_HLS10_ADD_LAYERSETS
    1442   if ( pcVPS->getNumIndependentLayers() > 1 )
    1443   {
    1444    READ_UVLC( uiCode, "num_add_layer_sets"      ); pcVPS->setNumAddLayerSets( uiCode );
    1445   }
    1446   for (Int i = 0; i < pcVPS->getNumAddLayerSets(); i++)
    1447   {
    1448     for (Int j = 0; j < pcVPS->getNumIndependentLayers(); j++)
    1449     {
    1450       READ_CODE( pcVPS->getHighestLayerIdxPlus1Len( j ) , uiCode, "highest_layer_idx_plus1" ); pcVPS->setHighestLayerIdxPlus1( i, j, uiCode );
    1451     }
    1452   }
    1453 #endif
     1318
    14541319
    14551320  if (pcVPS->getNumLayerSets() > 1)
     
    14651330  pcVPS->setLayerSetIdxForOlsMinus1(0, -1);
    14661331
    1467 #if H_MV_HLS10_NESSECARY_LAYER
    14681332  pcVPS->deriveNecessaryLayerFlags( 0 );
    1469 #endif
    14701333  pcVPS->deriveTargetLayerIdList( 0 );
    14711334
    1472 #if H_MV_HLS10_PTL_FIX
    14731335  if (pcVPS->getVpsBaseLayerInternalFlag() )
    14741336  { 
    14751337    pcVPS->setProfileTierLevelIdx(0,0, pcVPS->inferProfileTierLevelIdx(0,0) );
    14761338  }
    1477 #endif
    14781339  for( Int i = 1; i < pcVPS->getNumOutputLayerSets( ); i++ )
    14791340  {
     
    14971358      }
    14981359    }
    1499 #if H_MV_HLS10_NESSECARY_LAYER
    15001360    pcVPS->deriveNecessaryLayerFlags( i );
    1501 #endif
    15021361    pcVPS->deriveTargetLayerIdList( i );
    15031362
    1504 #if H_MV_HLS10_PTL
    15051363    for ( Int j = 0; j < pcVPS->getNumLayersInIdList( pcVPS->olsIdxToLsIdx(i)); j++ )
    15061364    {   
     
    15091367        READ_CODE( pcVPS->getProfileTierLevelIdxLen(), uiCode,"profile_tier_level_idx[ i ][ j ]" );   pcVPS->setProfileTierLevelIdx( i, j, uiCode );
    15101368      }
    1511 #if H_MV_HLS10_PTL_FIX
    15121369      if (pcVPS->getNecessaryLayerFlag( i, j ) && pcVPS->getVpsNumProfileTierLevelMinus1() == 0 )
    15131370      {
    15141371        pcVPS->setProfileTierLevelIdx( i , j, pcVPS->inferProfileTierLevelIdx( i, j) );
    15151372      }
    1516 #endif
    1517     }
    1518 #else
    1519     if ( pcVPS->getProfileLevelTierIdxLen()  > 0 )
    1520     {
    1521       READ_CODE( pcVPS->getProfileLevelTierIdxLen(), uiCode,"profile_level_tier_idx[ i ]" );   pcVPS->setProfileLevelTierIdx( i , uiCode );
    1522     }
    1523 #endif
     1373    }
    15241374
    15251375    if( pcVPS->getNumOutputLayersInOutputLayerSet( i ) == 1 && pcVPS->getNumDirectRefLayers( pcVPS->getOlsHighestOutputLayerId( i ) ) > 0 )
     
    15711421  }
    15721422
    1573 #if !H_MV_HLS10_GEN_FIX
    1574   READ_FLAG( uiCode, "vps_reserved_zero_flag" );
    1575 #endif
    15761423  parseDpbSize( pcVPS );
    15771424
     
    16471494    pcRepFormat->inferChromaAndBitDepth(pcPrevRepFormat, false );
    16481495  }
    1649 #if H_MV_HLS10_GEN_VSP_CONF_WIN
    16501496  READ_FLAG( uiCode, "conformance_window_vps_flag" ); pcRepFormat->setConformanceWindowVpsFlag( uiCode == 1 );
    16511497  if ( pcRepFormat->getConformanceWindowVpsFlag() )
     
    16561502    READ_UVLC( uiCode, "conf_win_vps_bottom_offset" ); pcRepFormat->setConfWinVpsBottomOffset( uiCode );
    16571503  }
    1658 #endif
    16591504}
    16601505
     
    16821527  if( pcVPSVUI->getBitRatePresentVpsFlag( )  ||  pcVPSVUI->getPicRatePresentVpsFlag( ) )
    16831528  {
    1684 #if H_MV_HLS10_VPS_VUI
    16851529    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <  pcVPS->getNumLayerSets(); i++ )
    1686 #else
    1687     for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <=  pcVPS->getVpsNumLayerSetsMinus1(); i++ )
    1688 #endif
    16891530    {
    16901531      for( Int j = 0; j  <=  pcVPS->getMaxSubLayersInLayerSetMinus1( i ); j++ )
     
    17191560  else
    17201561  {
    1721 #if H_MV_HLS10_VPS_VUI
    17221562    pcVPSVUI->setVpsNumVideoSignalInfoMinus1( pcVPS->getMaxLayersMinus1() - pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1 );
    1723 #else
    1724     pcVPSVUI->setVpsNumVideoSignalInfoMinus1( pcVPS->getMaxLayersMinus1() );
    1725 #endif
    17261563  }
    17271564
     
    17711608      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ) ; j++ )
    17721609      {
    1773 #if H_MV_HLS10_REF_PRED_LAYERS
    17741610        Int layerIdx = pcVPS->getLayerIdInVps(pcVPS->getIdDirectRefLayer(pcVPS->getLayerIdInNuh( i ) , j  )); 
    1775 #else
    1776         Int layerIdx = pcVPS->getLayerIdInVps(pcVPS->getRefLayerId(pcVPS->getLayerIdInNuh( i ) , j  )); 
    1777 #endif
    17781611        if( pcVPSVUI->getTilesInUseFlag( i )  &&  pcVPSVUI->getTilesInUseFlag( layerIdx ) ) 
    17791612        {
     
    17931626    }
    17941627  }
    1795 #if H_MV_HLS10_VPS_VUI
    17961628  READ_FLAG( uiCode, "single_layer_for_non_irap_flag" ); pcVPSVUI->setSingleLayerForNonIrapFlag( uiCode == 1 );
    17971629  READ_FLAG( uiCode, "higher_layer_irap_skip_flag" ); pcVPSVUI->setHigherLayerIrapSkipFlag( uiCode == 1 );
    1798 #else
    1799   READ_CODE( 3, uiCode, "vps_vui_reserved_zero_3bits" );
    1800 #endif
    18011630  READ_FLAG( uiCode, "ilp_restricted_ref_layers_flag" ); pcVPSVUI->setIlpRestrictedRefLayersFlag( uiCode == 1 );
    18021631
     
    18071636      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ); j++ )
    18081637      {
    1809 #if H_MV_HLS10_REF_PRED_LAYERS
    18101638        if( pcVPS->getVpsBaseLayerInternalFlag() || pcVPS->getIdDirectRefLayer( pcVPS->getLayerIdInNuh( i ), j ) > 0 )
    1811 #else
    1812         if( pcVPS->getVpsBaseLayerInternalFlag() || pcVPS->getRefLayerId( pcVPS->getLayerIdInNuh( i ), j ) > 0 )
    1813 #endif
    18141639        {       
    18151640          READ_UVLC( uiCode, "min_spatial_segment_offset_plus1" ); pcVPSVUI->setMinSpatialSegmentOffsetPlus1( i, j, uiCode );
     
    18511676
    18521677  TComVpsVuiBspHrdParameters*  vpsVuiBspHrdP = pcVPSVUI->getVpsVuiBspHrdParameters();
    1853 #if H_MV_HLS10_VPS_VUI_BSP
    18541678  assert( vpsVuiBspHrdP == NULL );
    18551679  vpsVuiBspHrdP = new TComVpsVuiBspHrdParameters;
    18561680  pcVPSVUI->setVpsVuiBspHrdParameters( vpsVuiBspHrdP );
    1857 #else
    1858   assert ( vpsVuiBspHrdP );
    1859 #endif
    18601681  UInt uiCode;
    1861 #if H_MV_HLS10_VPS_VUI_BSP
    18621682  READ_UVLC( uiCode, "vps_num_add_hrd_params" ); vpsVuiBspHrdP->setVpsNumAddHrdParams( uiCode );
    18631683  vpsVuiBspHrdP->createAfterVpsNumAddHrdParams( pcVPS );
     
    19481768    }
    19491769  } 
    1950 #else
    1951   READ_UVLC( uiCode, "vps_num_bsp_hrd_parameters_minus1" ); vpsVuiBspHrdP->setVpsNumBspHrdParametersMinus1( uiCode );
    1952   for( Int i = 0; i <= vpsVuiBspHrdP->getVpsNumBspHrdParametersMinus1( ); i++ )
    1953   { 
    1954     if( i > 0 )
    1955     {
    1956       READ_FLAG( uiCode, "bsp_cprms_present_flag" ); vpsVuiBspHrdP->setBspCprmsPresentFlag( i, uiCode == 1 );
    1957     }
    1958     TComHRD* hrdParameters = vpsVuiBspHrdP->getHrdParametermeters( i );
    1959     parseHrdParameters( hrdParameters, vpsVuiBspHrdP->getBspCprmsPresentFlag( i ), pcVPS->getMaxSubLayersMinus1() );     
    1960   } 
    1961   for( Int h = 1; h <= pcVPS->getVpsNumLayerSetsMinus1(); h++ )
    1962   { 
    1963     READ_UVLC( uiCode, "num_bitstream_partitions" ); vpsVuiBspHrdP->setNumBitstreamPartitions( h, uiCode );
    1964     for( Int i = 0; i < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); i++ ) 
    1965     {
    1966       for( Int j = 0; j < pcVPS->getNumLayersInIdList( h ); j++ ) 
    1967       {
    1968         READ_FLAG( uiCode, "layer_in_bsp_flag" ); vpsVuiBspHrdP->setLayerInBspFlag( h, i, j, uiCode == 1 );
    1969       }
    1970     }
    1971     vpsVuiBspHrdP->checkLayerInBspFlag( pcVPS, h );
    1972    
    1973     if( vpsVuiBspHrdP->getNumBitstreamPartitions( h ) )
    1974     { 
    1975       READ_UVLC( uiCode, "num_bsp_sched_combinations_minus1" ); vpsVuiBspHrdP->setNumBspSchedCombinationsMinus1( h, uiCode );
    1976       for( Int i = 0; i <= vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ); i++ )
    1977       {
    1978         for( Int j = 0; j < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); j++ )
    1979         { 
    1980           READ_CODE( vpsVuiBspHrdP->getBspCombHrdIdxLen(), uiCode, "bsp_comb_hrd_idx" ); vpsVuiBspHrdP->setBspCombHrdIdx( h, i, j, uiCode );
    1981           READ_UVLC( uiCode, "bsp_comb_sched_idx" ); vpsVuiBspHrdP->setBspCombSchedIdx( h, i, j, uiCode );
    1982           vpsVuiBspHrdP->checkBspCombHrdAndShedIdx( pcVPS, h, i, j );
    1983         } 
    1984       }
    1985     } 
    1986   } 
    1987 #endif 
    19881770}
    19891771
     
    20181800        for( Int k = 0; k < vps->getNumLayersInIdList( currLsIdx ); k++ )   
    20191801        {
    2020 #if H_MV_HLS10_DBP_SIZE
    20211802          if ( vps->getNecessaryLayerFlag( i, k ) && ( vps->getVpsBaseLayerInternalFlag() || ( vps->getLayerSetLayerIdList(vps->olsIdxToLsIdx(i),k) != 0 ) ))
    20221803          {
     
    20301811            }
    20311812          }
    2032 #else
    2033           READ_UVLC( uiCode, "max_vps_dec_pic_buffering_minus1" ); dpbSize->setMaxVpsDecPicBufferingMinus1( i, k, j, uiCode );
    2034 #endif
    20351813        }
    20361814        READ_UVLC( uiCode, "max_vps_num_reorder_pics" ); dpbSize->setMaxVpsNumReorderPics( i, j, uiCode );
     
    20431821          for( Int k = 0; k < vps->getNumLayersInIdList( vps->olsIdxToLsIdx( i ) ); k++ )   
    20441822          {
    2045 #if H_MV_HLS10_DBP_SIZE
    20461823            if ( vps->getNecessaryLayerFlag(i, k ) )
    20471824            {           
    2048 #endif
    20491825              dpbSize->setMaxVpsDecPicBufferingMinus1( i, k, j, dpbSize->getMaxVpsDecPicBufferingMinus1( i,k, j - 1 ) );
    2050 #if H_MV_HLS10_DBP_SIZE
    20511826            }
    2052 #endif           
    20531827          }
    20541828          dpbSize->setMaxVpsNumReorderPics      ( i, j, dpbSize->getMaxVpsNumReorderPics      ( i, j - 1 ) );
     
    22041978  sps->inferScalingList( parameterSetManager->getActiveSPS( sps->getSpsScalingListRefLayerId() ) );   
    22051979  sps->inferSpsMaxDecPicBufferingMinus1( vps, targetOlsIdx, rpcSlice->getLayerId(), false );
    2206 #if !H_MV_HLS10_ADD_LAYERSETS
    2207   vps->inferDbpSizeLayerSetZero( sps, false );
    2208 #endif
    22091980
    22101981  if ( sps->getVuiParametersPresentFlag() )
     
    24292200          rps->checkMaxNumPics(
    24302201            vps->getVpsExtensionFlag(),
    2431 #if H_MV_HLS10_MAXNUMPICS
    24322202            MAX_INT,  // To be replaced by MaxDbpSize
    2433 #else
    2434             vps->getMaxNumPics( rpcSlice->getLayerId() ),
    2435 #endif
    24362203            rpcSlice->getLayerId(),
    24372204            sps->getMaxDecPicBuffering( sps->getSpsMaxSubLayersMinus1() ) - 1 );
     
    25462313        rps->checkMaxNumPics(
    25472314          vps->getVpsExtensionFlag(),
    2548 #if H_MV_HLS10_MAXNUMPICS
    25492315            MAX_INT,  // To be replaced by MaxDbpsize
    2550 #else
    2551           vps->getMaxNumPics( rpcSlice->getLayerId() ),
    2552 #endif
    25532316          rpcSlice->getLayerId(),
    25542317          sps->getMaxDecPicBuffering( sps->getSpsMaxSubLayersMinus1() ) - 1 );
     
    31042867      READ_FLAG( uiCode, "sub_layer_profile_present_flag[i]" ); rpcPTL->setSubLayerProfilePresentFlag(i, uiCode);
    31052868#if H_MV
    3106 #if !H_MV_HLS10_PTL_INFER_FIX
    3107       rpcPTL->setSubLayerProfilePresentFlag( i, profilePresentFlag && rpcPTL->getSubLayerProfilePresentFlag(i) );
    3108 #else
    31092869      // When profilePresentFlag is equal to 0, sub_layer_profile_present_flag[ i ] shall be equal to 0.
    31102870      assert( profilePresentFlag || !rpcPTL->getSubLayerProfilePresentFlag(i) );
    3111 #endif
    31122871#else
    31132872    }
     
    31272886  for(Int i = 0; i < maxNumSubLayersMinus1; i++)
    31282887  {
    3129 #if H_MV_HLS10_PTL_INFER_FIX
    31302888#if H_MV
    31312889    if( rpcPTL->getSubLayerProfilePresentFlag(i) )         
    31322890#else
    31332891    if( profilePresentFlag && rpcPTL->getSubLayerProfilePresentFlag(i) )         
    3134 #endif
    3135 #else
    3136     if( profilePresentFlag && rpcPTL->getSubLayerProfilePresentFlag(i) )   
    31372892#endif
    31382893    {
     
    31682923  ptl->setFrameOnlyConstraintFlag(uiCode ? true : false);
    31692924 
    3170 #if H_MV_HLS10_PTL
    3171 #if H_MV_HLS10_PTL_INFER_FIX
    31722925  if( ptl->getV2ConstraintsPresentFlag() )
    3173 #else
    3174   if( ptl->getProfileIdc( ) ==  4 || ptl->getProfileCompatibilityFlag( 4 )  ||
    3175       ptl->getProfileIdc( ) ==  5 || ptl->getProfileCompatibilityFlag( 5 )  ||
    3176       ptl->getProfileIdc( ) ==  6 || ptl->getProfileCompatibilityFlag( 6 )  ||
    3177       ptl->getProfileIdc( ) ==  7 || ptl->getProfileCompatibilityFlag( 7 ) )
    3178 #endif
    31792926  {
    31802927    READ_FLAG( uiCode, "max_12bit_constraint_flag" );        ptl->setMax12bitConstraintFlag      ( uiCode == 1 );
     
    31972944    READ_CODE(11, uiCode, "XXX_reserved_zero_43bits[32..42]");
    31982945  }
    3199 #if H_MV_HLS10_PTL_INFER_FIX
    32002946  if( ptl->getInbldPresentFlag() )
    3201 #else
    3202   if( ( ptl->getProfileIdc() >= 1 && ptl->getProfileIdc() <= 5 )  ||
    3203     ptl->getProfileCompatibilityFlag( 1 ) || ptl->getProfileCompatibilityFlag( 2 )  ||
    3204     ptl->getProfileCompatibilityFlag( 3 ) || ptl->getProfileCompatibilityFlag( 4 )  ||
    3205     ptl->getProfileCompatibilityFlag( 5 ) )
    3206 #endif
    32072947  {
    32082948    READ_FLAG( uiCode, "inbld_flag" ); ptl->setInbldFlag( uiCode == 1 );
     
    32122952    READ_FLAG(uiCode, "reserved_zero_bit");
    32132953  }
    3214 #else
    3215   READ_CODE(16, uiCode, "XXX_reserved_zero_44bits[0..15]");
    3216   READ_CODE(16, uiCode, "XXX_reserved_zero_44bits[16..31]");
    3217   READ_CODE(12, uiCode, "XXX_reserved_zero_44bits[32..43]");
    3218 #endif
    32192954}
    32202955
  • branches/HTM-12.1-dev0/source/Lib/TLibDecoder/TDecCAVLC.h

    r1074 r1076  
    9797#endif
    9898
    99 #if H_MV_HLS10_PPS
    10099#if H_MV
    101100  Void  parsePPSMultilayerExtension( TComPPS* pcPPS );
    102 #endif
    103101#endif
    104102
  • branches/HTM-12.1-dev0/source/Lib/TLibDecoder/TDecTop.cpp

    r1075 r1076  
    669669#if H_MV
    670670  sps->inferSpsMaxDecPicBufferingMinus1( vps, m_targetOptLayerSetIdx, getLayerId(), false );
    671 #if !H_MV_HLS10_ADD_LAYERSETS
    672   vps->inferDbpSizeLayerSetZero( sps, false );
    673 #endif
    674671  // When the value of vps_num_rep_formats_minus1 in the active VPS is equal to 0
    675672  if ( vps->getVpsNumRepFormatsMinus1() == 0 )
     
    679676  }
    680677  sps->checkRpsMaxNumPics( vps, getLayerId() );
    681 #if H_MV_HLS10_MULTILAYERSPS
    682678
    683679  if( sps->getLayerId() != 0 )
     
    686682  }
    687683
    688 #if H_MV_HLS10_MULTILAYERSPS
    689684  // It is a requirement of bitstream conformance that, when the SPS is referred to by
    690685  // any current picture that belongs to an independent non-base layer, the value of
     
    695690    assert( sps->getMultiLayerExtSpsFlag() == 0 );
    696691  }
    697 #endif
    698692
    699693  if( sps->getMultiLayerExtSpsFlag() )
     
    701695    sps->setTemporalIdNestingFlag( (sps->getMaxTLayers() > 1) ? vps->getTemporalNestingFlag() : true );
    702696  }
    703 #else
    704   if( m_layerId > 0 )
    705   {
    706     sps->setTemporalIdNestingFlag( (sps->getMaxTLayers() > 1) ? vps->getTemporalNestingFlag() : true );
    707   }
    708 #endif
    709697#endif
    710698
     
    730718#if H_MV
    731719  m_apcSlicePilot->setVPS(vps); 
    732 #if H_MV_HLS10_REF_PRED_LAYERS
    733720  // The nuh_layer_id value of the NAL unit containing the PPS that is activated for a layer layerA with nuh_layer_id equal to nuhLayerIdA shall be equal to 0, or nuhLayerIdA, or the nuh_layer_id of a direct or indirect reference layer of layerA.
    734721  assert( pps->getLayerId() == m_layerId || pps->getLayerId( ) == 0 || vps->getDependencyFlag( m_layerId, pps->getLayerId() ) );   
    735722  // The nuh_layer_id value of the NAL unit containing the SPS that is activated for a layer layerA with nuh_layer_id equal to nuhLayerIdA shall be equal to 0, or nuhLayerIdA, or the nuh_layer_id of a direct or indirect reference layer of layerA.
    736723  assert( sps->getLayerId() == m_layerId || sps->getLayerId( ) == 0 || vps->getDependencyFlag( m_layerId, sps->getLayerId() ) );
    737 #else
    738   // The nuh_layer_id value of the NAL unit containing the PPS that is activated for a layer layerA with nuh_layer_id equal to nuhLayerIdA shall be equal to 0, or nuhLayerIdA, or the nuh_layer_id of a direct or indirect reference layer of layerA.
    739   assert( pps->getLayerId() == m_layerId || pps->getLayerId( ) == 0 || vps->getInDirectDependencyFlag( m_layerId, pps->getLayerId() ) );   
    740   // The nuh_layer_id value of the NAL unit containing the SPS that is activated for a layer layerA with nuh_layer_id equal to nuhLayerIdA shall be equal to 0, or nuhLayerIdA, or the nuh_layer_id of a direct or indirect reference layer of layerA.
    741   assert( sps->getLayerId() == m_layerId || sps->getLayerId( ) == 0 || vps->getInDirectDependencyFlag( m_layerId, sps->getLayerId() ) );
    742 #endif
    743724  sps->inferRepFormat  ( vps , m_layerId );
    744725  sps->inferScalingList( m_parameterSetManagerDecoder.getActiveSPS( sps->getSpsScalingListRefLayerId() ) );
     
    17251706  for (Int i = 0; i < vps->getNumDirectRefLayers( getLayerId()  ); i++ )
    17261707  {
    1727 #if H_MV_HLS10_REF_PRED_LAYERS
    17281708    Int refLayerId = vps->getIdDirectRefLayer( m_layerId, i );
    1729 #else
    1730     Int refLayerId = vps->getRefLayerId( m_layerId, i );
    1731 #endif
    17321709    allRefLayersInitilizedFlag = allRefLayersInitilizedFlag && m_layerInitilizedFlag[ refLayerId ];
    17331710  }
  • branches/HTM-12.1-dev0/source/Lib/TLibEncoder/TEncCavlc.cpp

    r1075 r1076  
    4949{
    5050#if H_MV_ENC_DEC_TRAC
    51 #if H_MV_HLS10_GEN_FIX
    5251  fprintf( g_hTrace, "=========== Sequence Parameter Set LayerId: %d ===========\n", pSPS->getLayerId() );
    5352#else
    54   fprintf( g_hTrace, "=========== Sequence Parameter Set ===========\n" );
    55 #endif
    56 #else
    5753  fprintf( g_hTrace, "=========== Sequence Parameter Set ID: %d ===========\n", pSPS->getSPSId() );
    5854#endif
     
    6258{
    6359#if H_MV_ENC_DEC_TRAC
    64 #if H_MV_HLS10_GEN_FIX
    6560  fprintf( g_hTrace, "=========== Picture Parameter Set LayerId: %d ===========\n", pPPS->getLayerId() );
    66 #else
    67   fprintf( g_hTrace, "=========== Picture Parameter Set ===========\n" );
    68 #endif
    6961#else
    7062  fprintf( g_hTrace, "=========== Picture Parameter Set ID: %d ===========\n", pPPS->getPPSId() );
     
    249241    }
    250242  }
    251 #if !H_MV_HLS10_PPS
    252 #if H_MV
    253   if ( pcPPS->getLayerId() > 0 )
    254   {
    255     WRITE_FLAG( pcPPS->getPpsInferScalingListFlag( ) ? 1 : 0 , "pps_infer_scaling_list_flag" );
    256   }
    257 
    258   if( pcPPS->getPpsInferScalingListFlag( ) )
    259   {
    260     WRITE_CODE( pcPPS->getPpsScalingListRefLayerId( ), 6, "pps_scaling_list_ref_layer_id" );
    261   }
    262   else
    263   { 
    264 #endif 
    265 #endif
    266243  WRITE_FLAG( pcPPS->getScalingListPresentFlag() ? 1 : 0,                          "pps_scaling_list_data_present_flag" );
    267244  if( pcPPS->getScalingListPresentFlag() )
     
    269246    codeScalingList( m_pcSlice->getScalingList() );
    270247  }
    271 #if !H_MV_HLS10_PPS
    272 #if H_MV
    273   }
    274 #endif
    275 #endif
    276248#if PPS_FIX_DEPTH
    277249  if( pcPPS->getSPS()->getVPS()->getDepthId(pcPPS->getSPS()->getLayerId()) )
     
    313285    if ( pcPPS->getPpsMultilayerExtensionFlag() )
    314286    {
    315 #if H_MV_HLS10_PPS
    316287      codePPSMultilayerExtension( pcPPS );
    317 #else
    318       WRITE_FLAG( pcPPS->getPocResetInfoPresentFlag( ) ? 1 : 0 , "poc_reset_info_present_flag" );
    319       WRITE_FLAG( 0, "pps_extension_reserved_zero_flag" );
    320 #endif
    321288    }
    322289
     
    686653#endif
    687654  WRITE_CODE( pcSPS->getMaxTLayers() - 1,  3,       "sps_max_sub_layers_minus1" );
    688 #if H_MV_HLS10_MULTILAYERSPS
    689655#if H_MV
    690656  }
     
    695661  if ( !pcSPS->getMultiLayerExtSpsFlag() )
    696662  {
    697 #endif
    698663#endif
    699664
     
    705670  WRITE_UVLC( pcSPS->getSPSId (),                   "sps_seq_parameter_set_id" );
    706671#if H_MV
    707 #if H_MV_HLS10_MULTILAYERSPS
    708672    if ( pcSPS->getMultiLayerExtSpsFlag() )
    709 #else
    710   if ( pcSPS->getLayerId() > 0 )
    711 #endif
    712673  {
    713674    WRITE_FLAG( pcSPS->getUpdateRepFormatFlag( ) ? 1 : 0 , "update_rep_format_flag" );
     
    730691  WRITE_UVLC( pcSPS->getPicWidthInLumaSamples (),   "pic_width_in_luma_samples" );
    731692  WRITE_UVLC( pcSPS->getPicHeightInLumaSamples(),   "pic_height_in_luma_samples" );
    732 #if !H_MV_HLS10_MULTILAYERSPS
    733 #if H_MV
    734   }
    735 #endif
    736 #endif
    737693  Window conf = pcSPS->getConformanceWindow();
    738694
     
    745701    WRITE_UVLC( conf.getWindowBottomOffset() / TComSPS::getWinUnitY(pcSPS->getChromaFormatIdc() ), "conf_win_bottom_offset" );
    746702  }
    747 #if H_MV_HLS10_MULTILAYERSPS
    748703#if H_MV
    749704}
    750705#endif
    751 #endif
    752706
    753707#if H_MV
    754 #if H_MV_HLS10_MULTILAYERSPS
    755708  if ( !pcSPS->getMultiLayerExtSpsFlag() )
    756 #else
    757   if ( pcSPS->getLayerId() == 0 )
    758 #endif
    759709  {
    760710#endif
     
    766716  WRITE_UVLC( pcSPS->getBitsForPOC()-4,                 "log2_max_pic_order_cnt_lsb_minus4" );
    767717#if H_MV
    768 #if H_MV_HLS10_MULTILAYERSPS
    769718  if ( !pcSPS->getMultiLayerExtSpsFlag())
    770 #else
    771   if ( pcSPS->getLayerId() == 0 )
    772 #endif
    773719  { 
    774720#endif
     
    801747  {
    802748#if H_MV
    803 #if H_MV_HLS10_MULTILAYERSPS
    804749    if ( pcSPS->getMultiLayerExtSpsFlag() )
    805 #else
    806     if ( pcSPS->getLayerId() > 0 )
    807 #endif
    808750    {   
    809751      WRITE_FLAG( pcSPS->getSpsInferScalingListFlag( ) ? 1 : 0 , "sps_infer_scaling_list_flag" );
     
    912854{
    913855  WRITE_FLAG( pcSPS->getInterViewMvVertConstraintFlag() ? 1 : 0, "inter_view_mv_vert_constraint_flag" );
    914 #if !H_MV_HLS10_PPS
    915   WRITE_UVLC( pcSPS->getNumScaledRefLayerOffsets( ), "num_scaled_ref_layer_offsets" );
    916 
    917   for( Int i = 0; i < pcSPS->getNumScaledRefLayerOffsets( ); i++)
    918   {   
    919     WRITE_CODE( pcSPS->getScaledRefLayerId( i ), 6, "scaled_ref_layer_id" );
    920 
    921     Int j = pcSPS->getScaledRefLayerId( i );
    922    
    923     WRITE_SVLC( pcSPS->getScaledRefLayerLeftOffset( j ), "scaled_ref_layer_left_offset" );
    924     WRITE_SVLC( pcSPS->getScaledRefLayerTopOffset( j ), "scaled_ref_layer_top_offset" );
    925     WRITE_SVLC( pcSPS->getScaledRefLayerRightOffset( j ), "scaled_ref_layer_right_offset" );
    926     WRITE_SVLC( pcSPS->getScaledRefLayerBottomOffset( j ), "scaled_ref_layer_bottom_offset" );
    927     WRITE_FLAG( 0, "sps_multilayer_ext_reserved_zero_flag[ j ]" );
    928   }
    929 #endif
    930 }
    931 
    932 
    933 #if H_MV_HLS10_PPS
     856}
     857
     858
    934859Void TEncCavlc::codePPSMultilayerExtension(TComPPS* pcPPS)
    935860{
     
    939864  WRITE_UVLC( 0, "num_ref_loc_offsets" );
    940865}
    941 #endif
    942866
    943867#endif
     
    958882#if H_MV
    959883  WRITE_FLAG( pcVPS->getVpsBaseLayerInternalFlag( ) ? 1 : 0 , "vps_base_layer_internal_flag" );
    960 #if H_MV_HLS10_GEN_VSP_BASE_LAYER_AVAIL
    961884  WRITE_FLAG( pcVPS->getVpsBaseLayerAvailableFlag( ) ? 1 : 0 , "vps_base_layer_available_flag" );
    962 #else // H_MV_HLS10_GEN
    963   WRITE_FLAG( 1                                             , "vps_reserved_one_bit" );
    964 #endif // H_MV_HLS10_GEN
    965885#else
    966886  WRITE_CODE( 3,                                    2,        "vps_reserved_three_2bits" );
     
    992912  assert( pcVPS->getVpsMaxLayerId() < MAX_VPS_NUH_LAYER_ID_PLUS1 );
    993913  WRITE_CODE( pcVPS->getVpsMaxLayerId(), 6,                 "vps_max_layer_id" ); 
    994 #if H_MV_HLS10_GEN_FIX
    995914  WRITE_UVLC( pcVPS->getVpsNumLayerSetsMinus1(),  "vps_num_layer_sets_minus1" );
    996 #else
    997   WRITE_UVLC( pcVPS->getVpsNumLayerSetsMinus1(),  "vps_max_num_layer_sets_minus1" );
    998 #endif
    999915  for( UInt opsIdx = 1; opsIdx <= pcVPS->getVpsNumLayerSetsMinus1(); opsIdx ++ )
    1000916  {
     
    1073989Void TEncCavlc::codeVPSExtension( TComVPS *pcVPS )
    1074990{
    1075 #if H_MV_HLS10_PTL
    1076991  if( pcVPS->getMaxLayersMinus1() > 0  &&  pcVPS->getVpsBaseLayerInternalFlag() )
    1077992  {
    1078993    codePTL( pcVPS->getPTL( 1 ),0, pcVPS->getMaxSubLayersMinus1()  );
    1079994  }
    1080 #endif
    1081995
    1082996  WRITE_FLAG( pcVPS->getSplittingFlag() ? 1 : 0,             "splitting_flag" );
     
    11511065  }
    11521066
    1153 #if H_MV_HLS10_ADD_LAYERSETS
    11541067  if ( pcVPS->getNumIndependentLayers() > 1 )
    11551068  {
     
    11641077 
    11651078  }
    1166 #endif
    11671079
    11681080
     
    12021114  WRITE_UVLC( pcVPS->getVpsNumProfileTierLevelMinus1( ), "vps_num_profile_tier_level_minus1" );
    12031115
    1204 #if H_MV_HLS10_PTL
    12051116  Int offsetVal =  ( pcVPS->getMaxLayersMinus1() > 0  &&  pcVPS->getVpsBaseLayerInternalFlag() ) ? 2 : 1;   
    12061117  for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 2 : 1; i <= pcVPS->getVpsNumProfileTierLevelMinus1(); i++ )
     
    12101121    offsetVal++;
    12111122  }
    1212 #else
    1213   for( Int i = 1; i <= pcVPS->getVpsNumProfileTierLevelMinus1(); i++ )
    1214   {
    1215     WRITE_FLAG( pcVPS->getVpsProfilePresentFlag( i ) ? 1 : 0, "vps_profile_present_flag[i]" );
    1216     codePTL( pcVPS->getPTL( i ), pcVPS->getVpsProfilePresentFlag( i ), pcVPS->getMaxTLayers() - 1 );
    1217   }
    1218 #endif
    1219 
    1220 #if !H_MV_HLS10_ADD_LAYERSETS
    1221   if ( pcVPS->getNumIndependentLayers() > 1 )
    1222   {
    1223    WRITE_UVLC( pcVPS->getNumAddLayerSets( ), "num_add_layer_sets" );
    1224   }
    1225   for (Int i = 0; i < pcVPS->getNumAddLayerSets(); i++)
    1226   {
    1227     for (Int j = 0; j < pcVPS->getNumIndependentLayers(); j++)
    1228     {
    1229       WRITE_CODE( pcVPS->getHighestLayerIdxPlus1( i, j ), pcVPS->getHighestLayerIdxPlus1Len( j )  , "highest_layer_idx_plus1" );
    1230     }
    1231   }
    1232 #endif
     1123
    12331124
    12341125  if (pcVPS->getNumLayerSets() > 1)
     
    12421133
    12431134
    1244 #if H_MV_HLS10_PTL_FIX
    12451135  if (pcVPS->getVpsBaseLayerInternalFlag() )
    12461136  { 
    12471137    assert( pcVPS->getProfileTierLevelIdx(0,0) == pcVPS->inferProfileTierLevelIdx(0,0) );
    12481138  }
    1249 #endif
    12501139
    12511140
     
    12721161    }       
    12731162       
    1274 #if H_MV_HLS10_PTL
    12751163    for ( Int j = 0; j < pcVPS->getNumLayersInIdList( pcVPS->olsIdxToLsIdx(i)); j++ )
    12761164    {   
     
    12791167        WRITE_CODE( pcVPS->getProfileTierLevelIdx( i, j ), pcVPS->getProfileTierLevelIdxLen() ,"profile_tier_level_idx[ i ][ j ]" );   
    12801168      }
    1281 #if H_MV_HLS10_PTL_FIX
    12821169      if (pcVPS->getNecessaryLayerFlag( i, j ) && pcVPS->getVpsNumProfileTierLevelMinus1() == 0 )
    12831170      {
    12841171        assert( pcVPS->getProfileTierLevelIdx( i , j ) == pcVPS->inferProfileTierLevelIdx( i, j ) );
    12851172      }
    1286 #endif
    1287 
    1288     }
    1289 #else
    1290     if ( pcVPS->getProfileLevelTierIdxLen()  > 0 )
    1291     {     
    1292       WRITE_CODE( pcVPS->getProfileLevelTierIdx( i ), pcVPS->getProfileLevelTierIdxLen() ,"profile_level_tier_idx[ i ]" );   
    1293     }
    1294 #endif
     1173
     1174    }
    12951175    if( pcVPS->getNumOutputLayersInOutputLayerSet( i ) == 1 && pcVPS->getNumDirectRefLayers( pcVPS->getOlsHighestOutputLayerId( i ) ) > 0 )
    12961176    {
     
    13421222  }
    13431223
    1344 #if !H_MV_HLS10_GEN_FIX
    1345   WRITE_FLAG( 0, "vps_reserved_zero_flag" );
    1346 #endif
    13471224  codeDpbSize( pcVPS );
    13481225
     
    14211298        for( Int k = 0; k < vps->getNumLayersInIdList( currLsIdx ); k++ )   
    14221299        {
    1423 #if H_MV_HLS10_DBP_SIZE
    14241300          if ( vps->getNecessaryLayerFlag( i, k ) && ( vps->getVpsBaseLayerInternalFlag() || ( vps->getLayerSetLayerIdList(vps->olsIdxToLsIdx(i),k) != 0 ) ))
    14251301          {
     
    14331309            }
    14341310          }
    1435 #else
    1436           WRITE_UVLC( dpbSize->getMaxVpsDecPicBufferingMinus1( i, k, j ), "max_vps_dec_pic_buffering_minus1" );
    1437 #endif
    14381311        }
    14391312        WRITE_UVLC( dpbSize->getMaxVpsNumReorderPics( i, j ), "max_vps_num_reorder_pics" );
     
    14461319          for( Int k = 0; k < vps->getNumLayersInIdList( vps->olsIdxToLsIdx( i ) ); k++ )   
    14471320          {
    1448 #if H_MV_HLS10_DBP_SIZE
    14491321            if ( vps->getNecessaryLayerFlag(i, k ) )
    14501322            {           
    1451 #endif
    14521323              assert( dpbSize->getMaxVpsDecPicBufferingMinus1( i, k, j ) == dpbSize->getMaxVpsDecPicBufferingMinus1( i,k, j - 1 ) );
    1453 #if H_MV_HLS10_DBP_SIZE
    14541324            }
    1455 #endif 
    14561325          }
    14571326          assert( dpbSize->getMaxVpsNumReorderPics      ( i, j ) ==  dpbSize->getMaxVpsNumReorderPics      ( i, j - 1 ) );
     
    14881357    pcRepFormat->inferChromaAndBitDepth(pcPrevRepFormat, true );
    14891358  }
    1490 #if H_MV_HLS10_GEN_VSP_CONF_WIN
    14911359  WRITE_FLAG( pcRepFormat->getConformanceWindowVpsFlag( ) ? 1 : 0 , "conformance_window_vps_flag" );
    14921360  if ( pcRepFormat->getConformanceWindowVpsFlag() )
     
    14971365    WRITE_UVLC( pcRepFormat->getConfWinVpsBottomOffset( ), "conf_win_vps_bottom_offset" );
    14981366  }
    1499 #endif
    15001367}
    15011368
     
    15221389  if( pcVPSVUI->getBitRatePresentVpsFlag( )  ||  pcVPSVUI->getPicRatePresentVpsFlag( ) )
    15231390  {
    1524 #if H_MV_HLS10_VPS_VUI
    15251391    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i < pcVPS->getNumLayerSets(); i++ )
    1526 #else
    1527     for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <=  pcVPS->getVpsNumLayerSetsMinus1(); i++ )
    1528 #endif
    15291392    {
    15301393      for( Int j = 0; j  <=  pcVPS->getMaxSubLayersInLayerSetMinus1( i ); j++ )
     
    15591422  else
    15601423  {
    1561 #if H_MV_HLS10_VPS_VUI
    15621424    assert( pcVPSVUI->getVpsNumVideoSignalInfoMinus1() == pcVPS->getMaxLayersMinus1() - ( pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1)  );
    1563 #else
    1564     pcVPSVUI->setVpsNumVideoSignalInfoMinus1( pcVPS->getMaxLayersMinus1() );
    1565 #endif
    15661425  }
    15671426
     
    15961455      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ) ; j++ )
    15971456      { 
    1598 #if H_MV_HLS10_REF_PRED_LAYERS
    15991457        Int layerIdx = pcVPS->getLayerIdInVps(pcVPS->getIdRefLayer(pcVPS->getLayerIdInNuh( i ) , j  )); 
    1600 #else
    1601         Int layerIdx = pcVPS->getLayerIdInVps(pcVPS->getRefLayerId(pcVPS->getLayerIdInNuh( i ) , j  )); 
    1602 #endif
    16031458        if( pcVPSVUI->getTilesInUseFlag( i )  &&  pcVPSVUI->getTilesInUseFlag( layerIdx ) ) 
    16041459        {
     
    16181473    }
    16191474  }
    1620 #if H_MV_HLS10_VPS_VUI
    16211475  WRITE_FLAG( pcVPSVUI->getSingleLayerForNonIrapFlag( ) ? 1 : 0 , "single_layer_for_non_irap_flag" );
    16221476  WRITE_FLAG( pcVPSVUI->getHigherLayerIrapSkipFlag( ) ? 1 : 0 , "higher_layer_irap_skip_flag" );
    1623 #else
    1624   WRITE_CODE( 0, 3, "vps_vui_reserved_zero_3bits" );
    1625 #endif
    16261477  WRITE_FLAG( pcVPSVUI->getIlpRestrictedRefLayersFlag( ) ? 1 : 0 , "ilp_restricted_ref_layers_flag" );
    16271478
     
    16321483      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ); j++ )
    16331484      {
    1634 #if H_MV_HLS10_REF_PRED_LAYERS
    16351485        if( pcVPS->getVpsBaseLayerInternalFlag() || pcVPS->getIdRefLayer( pcVPS->getLayerIdInNuh( i ), j ) > 0 )
    1636 #else
    1637         if( pcVPS->getVpsBaseLayerInternalFlag() || pcVPS->getRefLayerId( pcVPS->getLayerIdInNuh( i ), j ) > 0 )
    1638 #endif
    16391486        {       
    16401487          WRITE_UVLC( pcVPSVUI->getMinSpatialSegmentOffsetPlus1( i, j ), "min_spatial_segment_offset_plus1" );
     
    16791526  assert ( vpsVuiBspHrdP );
    16801527 
    1681 #if H_MV_HLS10_VPS_VUI_BSP
    16821528  WRITE_UVLC( vpsVuiBspHrdP->getVpsNumAddHrdParams( ), "vps_num_add_hrd_params" );
    16831529
     
    17251571  } 
    17261572
    1727 #else // H_MV_HLS10_GEN
    1728   WRITE_UVLC( vpsVuiBspHrdP->getVpsNumBspHrdParametersMinus1( ), "vps_num_bsp_hrd_parameters_minus1" );
    1729   for( Int i = 0; i <= vpsVuiBspHrdP->getVpsNumBspHrdParametersMinus1( ); i++ )
    1730   { 
    1731     if( i > 0 )
    1732     {
    1733       WRITE_FLAG( vpsVuiBspHrdP->getBspCprmsPresentFlag( i ) ? 1 : 0 , "bsp_cprms_present_flag" );
    1734     }
    1735     TComHRD* hrdParameters = vpsVuiBspHrdP->getHrdParametermeters( i );
    1736     codeHrdParameters( hrdParameters, vpsVuiBspHrdP->getBspCprmsPresentFlag( i ), pcVPS->getMaxSubLayersMinus1() );     
    1737   } 
    1738   for( Int h = 1; h <= pcVPS->getVpsNumLayerSetsMinus1(); h++ )
    1739   { 
    1740     WRITE_UVLC( vpsVuiBspHrdP->getNumBitstreamPartitions( h ), "num_bitstream_partitions" );
    1741     for( Int i = 0; i < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); i++ ) 
    1742     {
    1743       for( Int j = 0; j < pcVPS->getNumLayersInIdList( h ); j++ ) 
    1744       {
    1745         WRITE_FLAG( vpsVuiBspHrdP->getLayerInBspFlag( h, i, j ) ? 1 : 0 , "layer_in_bsp_flag" );
    1746       }
    1747     }
    1748     vpsVuiBspHrdP->checkLayerInBspFlag( pcVPS, h );
    1749 
    1750     if( vpsVuiBspHrdP->getNumBitstreamPartitions( h ) )
    1751     {
    1752       WRITE_UVLC( vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ), "num_bsp_sched_combinations_minus1" );
    1753       for( Int i = 0; i <= vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ); i++ )
    1754       {
    1755         for( Int j = 0; j < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); j++ )
    1756         { 
    1757           WRITE_CODE( vpsVuiBspHrdP->getBspCombHrdIdx( h, i, j ),  vpsVuiBspHrdP->getBspCombHrdIdxLen(), "bsp_comb_hrd_idx" );
    1758           WRITE_UVLC( vpsVuiBspHrdP->getBspCombSchedIdx( h, i, j ), "bsp_comb_sched_idx" );
    1759 
    1760           vpsVuiBspHrdP->checkBspCombHrdAndShedIdx( pcVPS, h, i, j );
    1761         } 
    1762       }
    1763     } 
    1764   }
    1765 #endif 
    17661573
    17671574#endif
     
    24932300  WRITE_FLAG(ptl->getFrameOnlyConstraintFlag(), "general_frame_only_constraint_flag");
    24942301 
    2495 #if H_MV_HLS10_PTL
    2496 #if H_MV_HLS10_PTL_INFER_FIX
    24972302  if( ptl->getV2ConstraintsPresentFlag() )
    2498 #else
    2499   if( ptl->getProfileIdc( ) ==  4 || ptl->getProfileCompatibilityFlag( 4 )  ||
    2500     ptl->getProfileIdc( ) ==  5 || ptl->getProfileCompatibilityFlag( 5 )  ||
    2501     ptl->getProfileIdc( ) ==  6 || ptl->getProfileCompatibilityFlag( 6 )  ||
    2502     ptl->getProfileIdc( ) ==  7 || ptl->getProfileCompatibilityFlag( 7 ) )
    2503 #endif
    25042303  {
    25052304    WRITE_FLAG( ptl->getMax12bitConstraintFlag( ) ? 1 : 0 , "max_12bit_constraint_flag" );
     
    25222321    WRITE_CODE( 0, 11, "XXX_reserved_zero_43bits[32..42]");
    25232322  }
    2524 #if H_MV_HLS10_PTL_INFER_FIX
    25252323    if( ptl->getInbldPresentFlag() )
    2526 #else
    2527   if( ( ptl->getProfileIdc() >= 1 && ptl->getProfileIdc() <= 5 )  ||
    2528     ptl->getProfileCompatibilityFlag( 1 ) || ptl->getProfileCompatibilityFlag( 2 )  ||
    2529     ptl->getProfileCompatibilityFlag( 3 ) || ptl->getProfileCompatibilityFlag( 4 )  ||
    2530     ptl->getProfileCompatibilityFlag( 5 ) )
    2531 #endif
    25322324  {
    25332325    WRITE_FLAG( ptl->getInbldFlag( ) ? 1 : 0 , "inbld_flag" );
     
    25372329    WRITE_FLAG(0, "reserved_zero_bit");
    25382330  }
    2539 #else
    2540   WRITE_CODE(0 , 16, "XXX_reserved_zero_44bits[0..15]");
    2541   WRITE_CODE(0 , 16, "XXX_reserved_zero_44bits[16..31]");
    2542   WRITE_CODE(0 , 12, "XXX_reserved_zero_44bits[32..43]");
    2543 #endif
    25442331}
    25452332
  • branches/HTM-12.1-dev0/source/Lib/TLibEncoder/TEncCavlc.h

    r1074 r1076  
    107107  Void  codePPS                 ( TComPPS* pcPPS );
    108108
    109 #if H_MV_HLS10_PPS
    110109#if H_MV
    111110  Void codePPSMultilayerExtension( TComPPS* pcPPS );
    112 #endif
    113111#endif
    114112
  • branches/HTM-12.1-dev0/source/Lib/TLibEncoder/TEncTop.cpp

    r1074 r1076  
    7272  ContextModel::buildNextStateTable();
    7373#endif
    74 #if H_MV_HLS10_GEN_FIX
    7574#if H_MV
    7675  m_iNumSubstreams         = 0;
    77 #endif
    7876#endif
    7977
     
    236234      for (Int iCIIdx = 0; iCIIdx < CI_NUM; iCIIdx ++ )
    237235      {
    238 #if H_MV_HLS10_GEN_FIX
    239236#if H_MV
    240237        xDelete( false, m_pppcRDSbacCoder, iDepth, iCIIdx);
     
    244241        delete m_pppcBinCoderCABAC[iDepth][iCIIdx];
    245242#endif
    246 #endif
    247243      }
    248244    }
     
    250246    for ( iDepth = 0; iDepth < g_uiMaxCUDepth+1; iDepth++ )
    251247    {
    252 #if H_MV_HLS10_GEN_FIX
    253248#if H_MV
    254249      xDelete( true, m_pppcRDSbacCoder  , iDepth);
     
    258253      delete [] m_pppcBinCoderCABAC[iDepth];
    259254#endif
    260 #endif
    261     }
    262 
    263 #if H_MV_HLS10_GEN_FIX
     255    }
     256
    264257#if H_MV
    265258     xDelete( true, m_pppcRDSbacCoder  );
     
    269262    delete [] m_pppcBinCoderCABAC;
    270263#endif
    271 #endif
    272264    for ( UInt ui = 0; ui < m_iNumSubstreams; ui++ )
    273265    {
     
    276268        for (Int iCIIdx = 0; iCIIdx < CI_NUM; iCIIdx ++ )
    277269        {
    278 #if H_MV_HLS10_GEN_FIX
    279270#if H_MV
    280271          xDelete(false, m_ppppcRDSbacCoders  ,ui, iDepth, iCIIdx);
     
    284275          delete m_ppppcBinCodersCABAC[ui][iDepth][iCIIdx];
    285276#endif
    286 #endif
    287277        }
    288278      }
     
    290280      for ( iDepth = 0; iDepth < g_uiMaxCUDepth+1; iDepth++ )
    291281      {
    292 #if H_MV_HLS10_GEN_FIX
    293282#if H_MV
    294283        xDelete(true, m_ppppcRDSbacCoders  ,ui, iDepth);
     
    298287        delete [] m_ppppcBinCodersCABAC[ui][iDepth];
    299288#endif
    300 #endif
    301       }
    302 
    303 
    304 #if H_MV_HLS10_GEN_FIX
     289      }
     290
     291
    305292#if H_MV
    306293      xDelete(true, m_ppppcRDSbacCoders,   ui);
     
    310297      delete[] m_ppppcBinCodersCABAC[ui];
    311298#endif
    312 #endif
    313     }
    314 #if H_MV_HLS10_GEN_FIX
     299    }
    315300#if H_MV
    316301    xDelete(true, m_ppppcRDSbacCoders    ) ;
     
    331316  delete[] m_pcBitCounters;
    332317  delete[] m_pcRdCosts;
    333 #endif
    334318#endif
    335319
     
    769753#if H_MV 
    770754  m_cSPS.setUpdateRepFormatFlag           ( false );   
    771 #if H_MV_HLS10_MULTILAYERSPS 
    772755  Bool multiLayerExtensionFlag  = ( getLayerId() > 0 ) && ( m_cVPS->getNumRefLayers( getLayerId() ) > 0 );
    773756 
     
    778761    m_cSPS.setSpsScalingListRefLayerId( m_cVPS->getIdRefLayer( getLayerId(), 0 ) );
    779762  }
    780 #else
    781   m_cSPS.setSpsInferScalingListFlag       ( m_layerId > 0 && m_cVPS->getInDirectDependencyFlag( getLayerIdInVps(), 0 ) );
    782   m_cSPS.setSpsScalingListRefLayerId      ( 0              );
    783 #endif
    784763  m_cSPS.setSpsExtensionPresentFlag       ( true );
    785764  m_cSPS.setSpsMultilayerExtensionFlag    ( true );
     
    856835    for( Int is = 0; is < targetDecLayerIdList.size(); is++  )
    857836    {
    858 #if H_MV_HLS10_ADD_LAYERSETS
    859837      if ( m_cVPS->getNecessaryLayerFlag( ols, is ) )
    860838      {     
    861839        m_cSPS.inferSpsMaxDecPicBufferingMinus1( m_cVPS, ols, targetDecLayerIdList[is], true );       
    862840      }
    863 #else
    864       m_cSPS.inferSpsMaxDecPicBufferingMinus1( m_cVPS, ols, targetDecLayerIdList[is], true );       
    865 #endif
    866     }
    867   }
    868 #if !H_MV_HLS10_ADD_LAYERSETS
    869   m_cVPS->inferDbpSizeLayerSetZero( &m_cSPS, true );
    870 #endif
     841    }
     842  }
    871843#endif
    872844  m_cSPS.setPCMBitDepthLuma (g_uiPCMBitDepthLuma);
  • branches/HTM-12.1-dev0/source/Lib/TLibEncoder/TEncTop.h

    r1074 r1076  
    150150  Void  xInitPPSforTiles  ();
    151151  Void  xInitRPS          (Bool isFieldCoding);           ///< initialize PPS from encoder options
    152 #if H_MV_HLS10_GEN_FIX
    153152#if H_MV
    154153
     
    193192
    194193#endif
    195 #endif
    196194public:
    197195  TEncTop();
Note: See TracChangeset for help on using the changeset viewer.