Changeset 1173 in SHVCSoftware
- Timestamp:
- 8 Jul 2015, 01:52:42 (9 years ago)
- Location:
- branches/SHM-dev/source
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp
r1172 r1173 1475 1475 } 1476 1476 1477 #if O0092_0094_DEPENDENCY_CONSTRAINT 1477 // dependency constraint 1478 1478 vps->setNumRefLayers(); 1479 1479 1480 if (vps->getMaxLayers() > MAX_REF_LAYERS)1481 { 1482 for (UInt layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++)1480 if( vps->getMaxLayers() > MAX_REF_LAYERS ) 1481 { 1482 for( UInt layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++ ) 1483 1483 { 1484 1484 assert(vps->getNumRefLayers(vps->getLayerIdInNuh(layerCtr)) <= MAX_REF_LAYERS); 1485 1485 } 1486 1486 } 1487 #endif 1487 1488 1488 // The Layer ID List variables should be derived here. 1489 1489 vps->deriveLayerIdListVariables(); -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp
r1172 r1173 2064 2064 ::memset(m_viewIdVal, 0, sizeof(m_viewIdVal)); 2065 2065 #endif 2066 #if O0092_0094_DEPENDENCY_CONSTRAINT 2067 for (Int i = 0; i < MAX_NUM_LAYER_IDS; i++)2066 2067 for( Int i = 0; i < MAX_NUM_LAYER_IDS; i++ ) 2068 2068 { 2069 2069 m_numberRefLayers[i] = 0; 2070 for (Int j = 0; j < MAX_NUM_LAYER_IDS; j++)2070 for( Int j = 0; j < MAX_NUM_LAYER_IDS; j++ ) 2071 2071 { 2072 2072 m_recursiveRefLayerFlag[i][j] = 0; 2073 2073 } 2074 2074 } 2075 #endif 2075 2076 2076 #if VPS_DPB_SIZE_TABLE 2077 2077 ::memset( m_subLayerFlagInfoPresentFlag, 0, sizeof(m_subLayerFlagInfoPresentFlag ) ); … … 3189 3189 } 3190 3190 #endif 3191 #if O0092_0094_DEPENDENCY_CONSTRAINT 3191 3192 3192 Void TComVPS::setRefLayersFlags(Int currLayerId) 3193 3193 { … … 3217 3217 } 3218 3218 } 3219 #endif3220 3219 3221 3220 Void TComVPS::setPredictedLayerIds() -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1172 r1173 709 709 #endif 710 710 711 #if O0092_0094_DEPENDENCY_CONSTRAINT712 711 Int m_numberRefLayers[MAX_NUM_LAYER_IDS]; // number of direct and indirect reference layers of a coding layer 713 712 Bool m_recursiveRefLayerFlag[MAX_NUM_LAYER_IDS][MAX_NUM_LAYER_IDS]; // flag to indicate if j-th layer is a direct or indirect reference layer of i-th layer 714 #endif 713 715 714 Int m_numAddLayerSets; 716 715 UInt m_highestLayerIdxPlus1[MAX_NUM_ADD_LAYER_SETS][MAX_NUM_LAYER_IDS]; … … 872 871 #endif 873 872 874 #if O0092_0094_DEPENDENCY_CONSTRAINT875 873 Void setRefLayersFlags(Int currLayerId); 876 874 Bool getRecursiveRefLayerFlag(Int currLayerId, Int refLayerId) { return m_recursiveRefLayerFlag[currLayerId][refLayerId];} … … 878 876 Int getNumRefLayers(Int currLayerId) { return m_numberRefLayers[currLayerId]; } 879 877 Void setNumRefLayers(); 880 #endif881 878 882 879 void deriveLayerIdListVariablesForAddLayerSets(); -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1172 r1173 125 125 #define O0062_POC_LSB_NOT_PRESENT_FLAG 1 ///< JCTVC-O0062: signal poc_lsb_not_present_flag for each layer in VPS extension 126 126 127 #define O0092_0094_DEPENDENCY_CONSTRAINT 1 ///< JCTVC-O0092: constraint on the layer_id of SPS/PPS128 #if O0092_0094_DEPENDENCY_CONSTRAINT129 #define MAX_REF_LAYERS 7130 #endif131 132 127 #define MULTIPLE_PTL_SUPPORT 1 ///< Profile, tier and level signalling 133 128 … … 203 198 #define MAX_SEIS_IN_BSP_NESTING 64 204 199 #define MAX_VPS_NUM_SCALABILITY_TYPES 16 200 #define MAX_REF_LAYERS 7 205 201 206 202 #endif // SVC_EXTENSION -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1172 r1173 2777 2777 } 2778 2778 2779 #if O0092_0094_DEPENDENCY_CONSTRAINT // Moved here 2779 // dependency constraint 2780 2780 vps->setNumRefLayers(); 2781 2781 … … 2787 2787 } 2788 2788 } 2789 #endif 2789 2790 2790 vps->setPredictedLayerIds(); 2791 2791 vps->setTreePartitionLayerIdList(); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r1172 r1173 2406 2406 pcSlice->getSPS()->getVuiParameters()->setHrdParametersPresentFlag( true ); 2407 2407 } 2408 #if O0092_0094_DEPENDENCY_CONSTRAINT 2408 2409 #if SVC_EXTENSION 2410 // dependency constraint 2409 2411 assert( pcSlice->getSPS()->getLayerId() == 0 || pcSlice->getSPS()->getLayerId() == m_layerId || m_pcEncTop->getVPS()->getRecursiveRefLayerFlag(m_layerId, pcSlice->getSPS()->getLayerId()) ); 2410 2412 #endif 2413 2411 2414 m_pcEntropyCoder->encodeSPS(pcSlice->getSPS()); 2412 2415 writeRBSPTrailingBits(nalu.m_Bitstream); … … 2427 2430 2428 2431 m_pcEntropyCoder->setBitstream(&nalu.m_Bitstream); 2429 #if O0092_0094_DEPENDENCY_CONSTRAINT 2432 2433 #if SVC_EXTENSION 2434 // dependency constraint 2430 2435 assert( pcSlice->getPPS()->getLayerId() == 0 || pcSlice->getPPS()->getLayerId() == m_layerId || m_pcEncTop->getVPS()->getRecursiveRefLayerFlag(m_layerId, pcSlice->getPPS()->getLayerId()) ); 2431 2436 #endif 2432 #if Q0048_CGS_3D_ASYMLUT2437 #if SVC_EXTENSION && Q0048_CGS_3D_ASYMLUT 2433 2438 m_pcEntropyCoder->encodePPS(pcSlice->getPPS(), &m_Enc3DAsymLUTPPS); 2434 2439 #else
Note: See TracChangeset for help on using the changeset viewer.