Changeset 1132 in SHVCSoftware
- Timestamp:
- 7 Jul 2015, 22:58:48 (9 years ago)
- Location:
- branches/SHM-dev/source
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppEncoder/TAppEncCfg.cpp
r1131 r1132 2502 2502 #if OUTPUT_LAYER_SETS_CONFIG 2503 2503 // Simplifying the code in the #else section 2504 #if FIX_LAYER_ID_INIT2505 2504 assert( scanStringToArray( cfg_highestLayerIdx[addLayerSet], m_numHighestLayerIdx[addLayerSet], "HighestLayerIdx", m_highestLayerIdx[addLayerSet] ) ); 2506 #else2507 assert( scanStringToArray( cfg_layerSetLayerIdList[addLayerSet], m_numLayerInIdList[addLayerSet], "NumLayerInIdList", m_highestLayerIdx[addLayerSet] ) );2508 #endif2509 2505 #else 2510 2506 if (m_numHighestLayerIdx[addLayerSet] > 0) -
branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp
r1131 r1132 1542 1542 } 1543 1543 #endif 1544 #if FIX_LAYER_ID_INIT1545 1544 // The Layer ID List variables should be derived here. 1546 1545 #if DERIVE_LAYER_ID_LIST_VARIABLES 1547 1546 vps->deriveLayerIdListVariables(); 1548 1547 #endif 1549 #endif1550 1548 #if Q0078_ADD_LAYER_SETS 1551 1549 vps->setPredictedLayerIds(); 1552 1550 vps->setTreePartitionLayerIdList(); 1553 #if FIX_LAYER_ID_INIT1554 1551 vps->deriveLayerIdListVariablesForAddLayerSets(); 1555 #else1556 vps->setLayerIdIncludedFlagsForAddLayerSets();1557 #endif1558 1552 #endif 1559 1553 #endif … … 1614 1608 #endif 1615 1609 #endif 1616 #if VPS_DPB_SIZE_TABLE 1617 #if !FIX_LAYER_ID_INIT // must be derived earlier to not delete additional layer sets 1618 // The Layer ID List variables can be derived here. 1619 #if DERIVE_LAYER_ID_LIST_VARIABLES 1620 vps->deriveLayerIdListVariables(); 1621 #endif 1622 #endif 1610 #if VPS_DPB_SIZE_TABLE 1623 1611 vps->deriveNumberOfSubDpbs(); 1624 1612 vps->setOutputLayerFlag( 0, 0, 1 ); -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp
r1130 r1132 3163 3163 // For layer 0 3164 3164 m_numLayerInIdList.push_back(1); 3165 #if FIX_LAYER_ID_INIT3166 3165 m_layerSetLayerIdList.resize(m_vpsNumLayerSetsMinus1 + 1); 3167 #else3168 m_layerSetLayerIdList.resize(m_numLayerSets);3169 #endif3170 3166 m_layerSetLayerIdList[0].push_back(0); 3171 3167 3172 3168 // For other layers 3173 #if FIX_LAYER_ID_INIT3174 3169 for (Int i = 1; i <= m_vpsNumLayerSetsMinus1; i++) 3175 #else3176 for( Int i = 1; i < m_numLayerSets; i++ )3177 #endif3178 3170 { 3179 3171 for( Int m = 0; m <= m_maxLayerId; m++) … … 3352 3344 } 3353 3345 3354 #if FIX_LAYER_ID_INIT 3355 void TComVPS::deriveLayerIdListVariablesForAddLayerSets() 3346 Void TComVPS::deriveLayerIdListVariablesForAddLayerSets() 3356 3347 { 3357 3348 m_layerSetLayerIdList.resize(m_vpsNumLayerSetsMinus1 + 1 + m_numAddLayerSets); … … 3372 3363 } 3373 3364 } 3374 #else3375 void TComVPS::setLayerIdIncludedFlagsForAddLayerSets()3376 {3377 for (UInt i = 0; i < m_numAddLayerSets; i++)3378 {3379 for (UInt j = 1; j < m_numIndependentLayers; j++)3380 {3381 Int layerNum = 0;3382 Int lsIdx = m_vpsNumLayerSetsMinus1 + 1 + i;3383 for (Int layerId = 0; layerId < MAX_VPS_LAYER_IDX_PLUS1; layerId++)3384 {3385 m_layerIdIncludedFlag[lsIdx][layerId] = false;3386 }3387 for (Int treeIdx = 1; treeIdx < m_numIndependentLayers; treeIdx++)3388 {3389 for (Int layerCnt = 0; layerCnt < m_highestLayerIdxPlus1[i][j]; layerCnt++)3390 {3391 m_layerSetLayerIdList[lsIdx][layerNum] = m_treePartitionLayerIdList[treeIdx][layerCnt];3392 m_layerIdIncludedFlag[lsIdx][m_treePartitionLayerIdList[treeIdx][layerCnt]] = true;3393 layerNum++;3394 }3395 }3396 m_numLayerInIdList[lsIdx] = layerNum;3397 }3398 }3399 }3400 #endif3401 3402 3365 #endif 3403 3366 -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1130 r1132 957 957 #endif 958 958 #if Q0078_ADD_LAYER_SETS 959 #if FIX_LAYER_ID_INIT960 959 void deriveLayerIdListVariablesForAddLayerSets(); 961 #else962 void setLayerIdIncludedFlagsForAddLayerSets();963 #endif964 960 UInt getVpsNumLayerSetsMinus1() { return m_vpsNumLayerSetsMinus1; } 965 961 Void setVpsNumLayerSetsMinus1(UInt x) { m_vpsNumLayerSetsMinus1 = x; } -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1131 r1132 149 149 #define P0182_VPS_VUI_PS_FLAG 1 ///< JCTVC-P0182, add base_layer_parameter_set_compatibility_flag 150 150 151 #define SPS_PTL_FIX 1 ///< remove profile_tier_level from enhancement layer SPS152 153 151 #define DERIVE_LAYER_ID_LIST_VARIABLES 1 ///< Derived variables based on the variables in VPS - for use in syntax table parsing 154 #define FIX_LAYER_ID_INIT 1155 152 156 153 #define AVC_BASE 1 ///< YUV BL reading for AVC base SVC -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1130 r1132 2846 2846 } 2847 2847 vps->setNumLayerSets(vps->getNumLayerSets() + vps->getNumAddLayerSets()); 2848 #if FIX_LAYER_ID_INIT2849 2848 vps->deriveLayerIdListVariablesForAddLayerSets(); 2850 #else2851 vps->setLayerIdIncludedFlagsForAddLayerSets();2852 #endif2853 2849 } 2854 2850 else -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r1130 r1132 848 848 } 849 849 } 850 #if !FIX_LAYER_ID_INIT // It was still called because NECESSARY_FLAG does not exist and is by default "false" 851 #if !NECESSARY_FLAG // Already called once in TAppEncTop.cpp 852 #if DERIVE_LAYER_ID_LIST_VARIABLES 853 pcVPS->deriveLayerIdListVariables(); 854 #endif 855 #endif 856 #endif 850 857 851 TimingInfo *timingInfo = pcVPS->getTimingInfo(); 858 852 WRITE_FLAG(timingInfo->getTimingInfoPresentFlag(), "vps_timing_info_present_flag");
Note: See TracChangeset for help on using the changeset viewer.