Changeset 1151 in SHVCSoftware for branches/SHM-dev/source
- Timestamp:
- 8 Jul 2015, 00:21:05 (9 years ago)
- Location:
- branches/SHM-dev/source
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp
r1150 r1151 1658 1658 } 1659 1659 #endif 1660 #if NECESSARY_LAYER_FLAG 1660 1661 1661 vps->deriveNecessaryLayerFlag(); 1662 1662 vps->checkNecessaryLayerFlagCondition(); 1663 #endif 1663 1664 1664 #if !MULTIPLE_PTL_SUPPORT 1665 1665 #if PER_LAYER_PTL -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp
r1150 r1151 2028 2028 ::memset(m_directDependencyType, 0, sizeof(m_directDependencyType)); 2029 2029 2030 #if !NECESSARY_LAYER_FLAG2031 #if DERIVE_LAYER_ID_LIST_VARIABLES2032 ::memset(m_layerSetLayerIdList, 0, sizeof(m_layerSetLayerIdList));2033 ::memset(m_numLayerInIdList, 0, sizeof(m_numLayerInIdList ));2034 #endif2035 #endif2036 2030 #if !PER_LAYER_PTL 2037 2031 ::memset(m_profileLevelTierIdx, 0, sizeof(m_profileLevelTierIdx)); … … 3151 3145 3152 3146 #if DERIVE_LAYER_ID_LIST_VARIABLES 3153 #if NECESSARY_LAYER_FLAG3154 3147 Void TComVPS::deriveLayerIdListVariables() 3155 3148 { … … 3172 3165 } 3173 3166 } 3174 #else3175 Void TComVPS::deriveLayerIdListVariables()3176 {3177 // For layer 03178 m_numLayerInIdList[0] = 1;3179 m_layerSetLayerIdList[0][0] = 0;3180 3181 // For other layers3182 Int i, m, n;3183 for( i = 1; i < m_numLayerSets; i++ )3184 {3185 n = 0;3186 for( m = 0; m <= m_maxLayerId; m++)3187 {3188 if( m_layerIdIncludedFlag[i][m] )3189 {3190 m_layerSetLayerIdList[i][n++] = m;3191 }3192 }3193 m_numLayerInIdList[i] = n;3194 }3195 }3196 #endif3197 3167 #endif 3198 3168 #if VPS_DPB_SIZE_TABLE … … 3528 3498 } 3529 3499 #endif 3530 #if NECESSARY_LAYER_FLAG 3500 3531 3501 Void TComVPS::deriveNecessaryLayerFlag() 3532 3502 { … … 3539 3509 } 3540 3510 } 3511 3541 3512 Void TComVPS::deriveNecessaryLayerFlag(Int const olsIdx) 3542 3513 { … … 3563 3534 m_numNecessaryLayers.push_back(std::accumulate(m_necessaryLayerFlag[olsIdx].begin(), m_necessaryLayerFlag[olsIdx].end(), 0)); 3564 3535 } 3536 3565 3537 Void TComVPS::checkNecessaryLayerFlagCondition() 3566 3538 { … … 3590 3562 } 3591 3563 } 3592 #endif 3564 3593 3565 #if PER_LAYER_PTL 3594 3566 Int TComVPS::calculateLenOfSyntaxElement( Int const numVal ) -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1150 r1151 598 598 #if DERIVE_LAYER_ID_LIST_VARIABLES 599 599 #if Q0078_ADD_LAYER_SETS 600 #if NECESSARY_LAYER_FLAG601 600 std::vector< std::vector<Int> > m_layerSetLayerIdList; 602 601 std::vector<Int> m_numLayerInIdList; 603 #else604 Int m_layerSetLayerIdList[MAX_VPS_LAYER_SETS_PLUS1 + MAX_NUM_ADD_LAYER_SETS][MAX_VPS_LAYER_IDX_PLUS1];605 Int m_numLayerInIdList[MAX_VPS_LAYER_SETS_PLUS1 + MAX_NUM_ADD_LAYER_SETS];606 #endif607 602 #else 608 603 Int m_layerSetLayerIdList[MAX_VPS_LAYER_SETS_PLUS1][MAX_VPS_LAYER_IDX_PLUS1]; … … 825 820 Bool m_vpsPocLsbAlignedFlag; 826 821 #endif 827 #if NECESSARY_LAYER_FLAG828 822 std::vector< std::vector<Bool> > m_necessaryLayerFlag; 829 std::vector<Int> m_numNecessaryLayers; 830 #endif 823 std::vector<Int> m_numNecessaryLayers; 831 824 #endif //SVC_EXTENSION 832 825 … … 1298 1291 #endif 1299 1292 #if O0164_MULTI_LAYER_HRD 1300 Void setBspHrdParameters( UInt hrdIdx, UInt frameRate, UInt numDU, UInt bitRate, Bool randomAccess ); 1301 #endif 1302 #if NECESSARY_LAYER_FLAG 1303 Void deriveNecessaryLayerFlag(); 1304 Void deriveNecessaryLayerFlag(Int const olsIdx); 1305 Void checkNecessaryLayerFlagCondition(); 1306 #endif 1307 Void calculateMaxSLInLayerSets(); 1293 Void setBspHrdParameters( UInt hrdIdx, UInt frameRate, UInt numDU, UInt bitRate, Bool randomAccess ); 1294 #endif 1295 Void deriveNecessaryLayerFlag(); 1296 Void deriveNecessaryLayerFlag(Int const olsIdx); 1297 Void checkNecessaryLayerFlagCondition(); 1298 Void calculateMaxSLInLayerSets(); 1308 1299 #endif //SVC_EXTENSION 1309 1300 }; -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1150 r1151 57 57 #if PTL_SIGNALLING 58 58 #define LIST_OF_PTL 1 ///< JCTVC-R0272: Signalling the PTL for the 0-th OLS 59 #define NECESSARY_LAYER_FLAG 1 ////< Derivation of NecessaryLayerFlag60 59 #define PER_LAYER_PTL 1 ///< Signal profile-tier-level information for each layer. 61 60 #endif -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1148 r1151 2946 2946 #endif 2947 2947 vps->setNumOutputLayerSets( numOutputLayerSets ); 2948 #if NECESSARY_LAYER_FLAG 2948 2949 2949 // Default output layer set 2950 2950 vps->setOutputLayerSetIdx(0, 0); … … 2955 2955 vps->getProfileLevelTierIdx(0)->push_back( vps->getBaseLayerInternalFlag() && vps->getMaxLayers() > 1 ? 1 : 0); 2956 2956 #endif 2957 #endif 2957 2958 2958 for(i = 1; i < numOutputLayerSets; i++) 2959 2959 { … … 3011 3011 } 3012 3012 } 3013 #if NECESSARY_LAYER_FLAG 3013 3014 3014 vps->deriveNecessaryLayerFlag(i); 3015 #endif 3015 3016 3016 #if PER_LAYER_PTL 3017 3017 vps->getProfileLevelTierIdx(i)->assign(vps->getNumLayersInIdList(layerSetIdxForOutputLayerSet), -1); … … 3078 3078 #endif 3079 3079 } 3080 #if NECESSARY_LAYER_FLAG 3080 3081 3081 vps->checkNecessaryLayerFlagCondition(); 3082 #endif 3082 3083 3083 #else 3084 3084 if( numOutputLayerSets > 1 ) … … 3369 3369 } 3370 3370 3371 #if NECESSARY_LAYER_FLAG3372 3371 // Default output layer set 3373 3372 // The value of NumLayersInIdList[ 0 ] is set equal to 1 and the value of LayerSetLayerIdList[ 0 ][ 0 ] is set equal to 0. … … 3378 3377 3379 3378 vps->deriveNecessaryLayerFlag(0); 3380 #endif3381 3379 3382 3380 // The value of sub_layer_dpb_info_present_flag[ i ][ 0 ] for any possible value of i is inferred to be equal to 1
Note: See TracChangeset for help on using the changeset viewer.