Changeset 1224 in SHVCSoftware
- Timestamp:
- 9 Jul 2015, 00:12:33 (9 years ago)
- Location:
- branches/SHM-dev/source
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp
r1219 r1224 1465 1465 1466 1466 // Target output layer 1467 #if VPS_DPB_SIZE_TABLE1468 1467 vps->deriveNumberOfSubDpbs(); 1469 1468 vps->setOutputLayerFlag( 0, 0, 1 ); … … 1525 1524 } 1526 1525 } 1527 #endif 1528 1529 vps->setMaxOneActiveRefLayerFlag(maxDirectRefLayers > 1 ? false : true); 1530 1531 // POC LSB not present flag 1532 for( i = 1; i< vps->getMaxLayers(); i++ ) 1533 { 1534 if( vps->getNumDirectRefLayers( vps->getLayerIdInNuh(i) ) == 0 ) 1535 { 1536 // make independedent layers base-layer compliant 1537 vps->setPocLsbNotPresentFlag(i, true); 1538 } 1539 } 1540 1541 vps->setCrossLayerPictureTypeAlignFlag( m_crossLayerPictureTypeAlignFlag ); 1542 vps->setCrossLayerAlignedIdrOnlyFlag( m_crossLayerAlignedIdrOnlyFlag ); 1543 vps->setCrossLayerIrapAlignFlag( m_crossLayerIrapAlignFlag ); 1544 for(UInt layerCtr = 1;layerCtr <= vps->getMaxLayers() - 1; layerCtr++) 1545 { 1546 for(Int refLayerCtr = 0; refLayerCtr < layerCtr; refLayerCtr++) 1547 { 1548 if (vps->getDirectDependencyFlag( layerCtr, refLayerCtr)) 1526 1527 vps->setMaxOneActiveRefLayerFlag(maxDirectRefLayers > 1 ? false : true); 1528 1529 // POC LSB not present flag 1530 for( i = 1; i< vps->getMaxLayers(); i++ ) 1531 { 1532 if( vps->getNumDirectRefLayers( vps->getLayerIdInNuh(i) ) == 0 ) 1533 { 1534 // make independedent layers base-layer compliant 1535 vps->setPocLsbNotPresentFlag(i, true); 1536 } 1537 } 1538 1539 vps->setCrossLayerPictureTypeAlignFlag( m_crossLayerPictureTypeAlignFlag ); 1540 vps->setCrossLayerAlignedIdrOnlyFlag( m_crossLayerAlignedIdrOnlyFlag ); 1541 vps->setCrossLayerIrapAlignFlag( m_crossLayerIrapAlignFlag ); 1542 for(UInt layerCtr = 1;layerCtr <= vps->getMaxLayers() - 1; layerCtr++) 1543 { 1544 for(Int refLayerCtr = 0; refLayerCtr < layerCtr; refLayerCtr++) 1545 { 1546 if (vps->getDirectDependencyFlag( layerCtr, refLayerCtr)) 1547 { 1548 if(m_acTEncTop[layerCtr].getIntraPeriod() != m_acTEncTop[refLayerCtr].getIntraPeriod()) 1549 1549 { 1550 if(m_acTEncTop[layerCtr].getIntraPeriod() != m_acTEncTop[refLayerCtr].getIntraPeriod()) 1551 { 1552 vps->setCrossLayerIrapAlignFlag(false); 1553 break; 1554 } 1550 vps->setCrossLayerIrapAlignFlag(false); 1551 break; 1555 1552 } 1556 1553 } 1557 1554 } 1555 } 1558 1556 vps->setSingleLayerForNonIrapFlag(m_adaptiveResolutionChange > 0 ? true : false); 1559 1557 vps->setHigherLayerIrapSkipFlag(m_skipPictureAtArcSwitch); -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp
r1223 r1224 2012 2012 } 2013 2013 2014 #if VPS_DPB_SIZE_TABLE2015 2014 ::memset( m_subLayerFlagInfoPresentFlag, 0, sizeof(m_subLayerFlagInfoPresentFlag ) ); 2016 2015 ::memset( m_subLayerDpbInfoPresentFlag, 0, sizeof(m_subLayerDpbInfoPresentFlag ) ); … … 2019 2018 ::memset( m_maxVpsLatencyIncreasePlus1, 0, sizeof(m_maxVpsLatencyIncreasePlus1 ) ); 2020 2019 ::memset( m_numSubDpbs , 0, sizeof(m_numSubDpbs) ); 2021 #endif2022 2020 ::memset( m_baseLayerPSCompatibilityFlag, 0, sizeof(m_baseLayerPSCompatibilityFlag) ); 2023 2021 } … … 3068 3066 } 3069 3067 3070 #if VPS_DPB_SIZE_TABLE3071 3068 Void TComVPS::deriveNumberOfSubDpbs() 3072 3069 { … … 3080 3077 } 3081 3078 } 3082 #endif3083 3079 3084 3080 Void TComVPS::setTilesNotInUseFlag(Bool x) … … 3247 3243 } 3248 3244 3249 #if VPS_DPB_SIZE_TABLE3250 3245 Int TComVPS::getLayerIdcForOls( Int olsIdx, Int layerId ) 3251 3246 { … … 3313 3308 } 3314 3309 } 3315 #endif3316 3310 3317 3311 #if O0164_MULTI_LAYER_HRD -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1223 r1224 702 702 703 703 Int m_TolsIdx; 704 #if VPS_DPB_SIZE_TABLE705 704 Bool m_subLayerFlagInfoPresentFlag [MAX_VPS_OP_LAYER_SETS_PLUS1]; 706 705 Bool m_subLayerDpbInfoPresentFlag [MAX_VPS_OP_LAYER_SETS_PLUS1][MAX_LAYERS]; … … 709 708 Int m_maxVpsLatencyIncreasePlus1 [MAX_VPS_OP_LAYER_SETS_PLUS1][MAX_LAYERS]; 710 709 Int m_numSubDpbs [MAX_VPS_LAYER_SETS_PLUS1 + 2*MAX_NUM_ADD_LAYER_SETS]; 711 #endif712 710 713 711 Bool m_vpsVuiPresentFlag; … … 818 816 819 817 Void deriveLayerIdListVariables(); 820 #if VPS_DPB_SIZE_TABLE 821 Void deriveNumberOfSubDpbs(); 822 #endif 818 Void deriveNumberOfSubDpbs(); 823 819 824 820 Void setRefLayersFlags(Int currLayerId); … … 1078 1074 Int scalTypeToScalIdx( ScalabilityType scalType ); 1079 1075 1080 #if VPS_DPB_SIZE_TABLE1081 1076 Bool getSubLayerFlagInfoPresentFlag(Int olsIdx) { return m_subLayerFlagInfoPresentFlag[olsIdx]; } 1082 1077 Void setSubLayerFlagInfoPresentFlag(Int olsIdx, Bool x) { m_subLayerFlagInfoPresentFlag[olsIdx] = x; } … … 1099 1094 Void setNumSubDpbs(Int olsIdx, Int x) { m_numSubDpbs[olsIdx] = x; } 1100 1095 Void determineSubDpbInfoFlags(); 1101 #endif1102 1096 1103 1097 Bool getVpsVuiPresentFlag() { return m_vpsVuiPresentFlag; } -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1223 r1224 64 64 #define AUXILIARY_PICTURES 1 ///< JCTVC-O0041: auxiliary picture layers 65 65 #define R0062_AUX_PSEUDO_MONOCHROME 1 ///> JCVVC-R0063: pseudo monochrome for auxiliary pictures 66 #define VPS_DPB_SIZE_TABLE 1 ///< JCTVC-O0217: DPB operations: signaling DPB-related parameters67 66 #define NO_CLRAS_OUTPUT_FLAG 1 68 67 #define P0138_USE_ALT_CPB_PARAMS_FLAG 1 ///< JCTVC-P0138: use_alt_cpb_params_flag syntax in buffering period SEI message extension -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1223 r1224 3002 3002 } 3003 3003 3004 #if VPS_DPB_SIZE_TABLE3005 3004 parseVpsDpbSizeTable(vps); 3006 #endif3007 3005 3008 3006 READ_UVLC( uiCode, "direct_dep_type_len_minus2"); vps->setDirectDepTypeLen(uiCode+2); … … 3215 3213 } 3216 3214 3217 #if VPS_DPB_SIZE_TABLE3218 3215 Void TDecCavlc::parseVpsDpbSizeTable( TComVPS *vps ) 3219 3216 { … … 3287 3284 } 3288 3285 } 3289 #endif3290 3286 3291 3287 Void TDecCavlc::parseVPSVUI(TComVPS *vps) -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.h
r1215 r1224 133 133 Void defaultVPSVUI ( TComVPS* pcVPS ); 134 134 Void parseRepFormat ( RepFormat *repFormat, RepFormat *repFormatPrev ); 135 #if VPS_DPB_SIZE_TABLE136 135 Void parseVpsDpbSizeTable( TComVPS *vps ); 137 #endif138 136 Void parseVpsVuiBspHrdParams( TComVPS *vps ); 139 137 Void parseSPSExtension ( TComSPS* pcSPS ); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r1223 r1224 2172 2172 } 2173 2173 2174 #if VPS_DPB_SIZE_TABLE2175 2174 codeVpsDpbSizeTable(vps); 2176 #endif2177 2175 2178 2176 WRITE_UVLC( vps->getDirectDepTypeLen()-2, "direct_dep_type_len_minus2"); … … 2255 2253 } 2256 2254 2257 #if VPS_DPB_SIZE_TABLE2258 2255 Void TEncCavlc::codeVpsDpbSizeTable(TComVPS *vps) 2259 2256 { … … 2288 2285 } 2289 2286 } 2290 #endif2291 2287 2292 2288 Void TEncCavlc::codeVPSVUI (TComVPS *vps) -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.h
r1215 r1224 154 154 155 155 #if SVC_EXTENSION 156 Void codeSliceHeaderExtn( TComSlice* slice, Int shBitsWrittenTillNow ); 157 Void codeSPSExtension ( TComSPS* pcSPS ); 158 Void codeVPSExtension ( TComVPS* pcVPS ); 159 Void codeVPSVUI ( TComVPS *vps ); 160 Void codeRepFormat ( RepFormat *repFormat ); 161 #if VPS_DPB_SIZE_TABLE 162 Void codeVpsDpbSizeTable (TComVPS *vps); 163 #endif 164 Void codeVpsVuiBspHrdParams (TComVPS * const); 156 Void codeSliceHeaderExtn ( TComSlice* slice, Int shBitsWrittenTillNow ); 157 Void codeSPSExtension ( TComSPS* pcSPS ); 158 Void codeVPSExtension ( TComVPS* pcVPS ); 159 Void codeVPSVUI ( TComVPS *vps ); 160 Void codeRepFormat ( RepFormat *repFormat ); 161 Void codeVpsDpbSizeTable ( TComVPS *vps ); 162 Void codeVpsVuiBspHrdParams( TComVPS * const ); 165 163 166 164 #if CGS_3D_ASYMLUT
Note: See TracChangeset for help on using the changeset viewer.