- Timestamp:
- 8 Jul 2015, 00:28:51 (9 years ago)
- Location:
- branches/SHM-dev/source
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp ¶
r1152 r1153 1591 1591 #endif 1592 1592 #endif 1593 #if !PER_LAYER_PTL1594 for(i = 1; i < vps->getNumLayerSets(); i++)1595 {1596 vps->setProfileLevelTierIdx(i, i);1597 #if !OUTPUT_LAYER_SETS_CONFIG1598 vps->setOutputLayerSetIdx(i, i);1599 #endif1600 }1601 #endif1602 1593 #endif 1603 1594 #if VPS_DPB_SIZE_TABLE … … 1663 1654 1664 1655 #if !MULTIPLE_PTL_SUPPORT 1665 #if PER_LAYER_PTL1666 1656 vps->getProfileLevelTierIdx()->resize(vps->getNumOutputLayerSets()); 1667 1657 vps->getProfileLevelTierIdx(0)->push_back( vps->getBaseLayerInternalFlag() && vps->getMaxLayers() > 1 ? 1 : 0 ); // Default 0-th output layer set … … 1683 1673 } 1684 1674 } 1685 #endif1686 1675 #endif 1687 1676 -
TabularUnified branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp ¶
r1151 r1153 2028 2028 ::memset(m_directDependencyType, 0, sizeof(m_directDependencyType)); 2029 2029 2030 #if !PER_LAYER_PTL2031 ::memset(m_profileLevelTierIdx, 0, sizeof(m_profileLevelTierIdx));2032 #endif2033 2030 m_maxOneActiveRefLayerFlag = true; 2034 2031 #if O0062_POC_LSB_NOT_PRESENT_FLAG … … 3563 3560 } 3564 3561 3565 #if PER_LAYER_PTL3566 3562 Int TComVPS::calculateLenOfSyntaxElement( Int const numVal ) 3567 3563 { … … 3573 3569 return numBits; 3574 3570 } 3575 #endif3576 3571 3577 3572 Void TComVPS::calculateMaxSLInLayerSets() -
TabularUnified branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h ¶
r1152 r1153 678 678 #endif 679 679 #endif 680 #if PER_LAYER_PTL681 680 std::vector< std::vector<Int> > m_profileLevelTierIdx; 682 #else683 Int m_profileLevelTierIdx[64];684 #endif685 681 Bool m_maxOneActiveRefLayerFlag; 686 682 #if O0062_POC_LSB_NOT_PRESENT_FLAG … … 1058 1054 #endif 1059 1055 #endif 1060 #if PER_LAYER_PTL 1056 1061 1057 Bool getNecessaryLayerFlag(Int const i, Int const j) { return m_necessaryLayerFlag[i][j]; } 1062 1058 std::vector< std::vector<Int> >* getProfileLevelTierIdx() { return &m_profileLevelTierIdx; } … … 1068 1064 #endif 1069 1065 Int calculateLenOfSyntaxElement( Int const numVal ); 1070 #else 1071 Int getProfileLevelTierIdx(Int i) { return m_profileLevelTierIdx[i]; } 1072 Void setProfileLevelTierIdx(Int i, Int x) { m_profileLevelTierIdx[i] = x ; } 1073 #endif 1066 1074 1067 Bool getMaxOneActiveRefLayerFlag() { return m_maxOneActiveRefLayerFlag; } 1075 1068 Void setMaxOneActiveRefLayerFlag(Bool x) { m_maxOneActiveRefLayerFlag = x; } -
TabularUnified branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h ¶
r1152 r1153 57 57 #if PTL_SIGNALLING 58 58 #define LIST_OF_PTL 1 ///< JCTVC-R0272: Signalling the PTL for the 0-th OLS 59 #define PER_LAYER_PTL 1 ///< Signal profile-tier-level information for each layer.60 59 #endif 61 60 #define BSP_INIT_ARRIVAL_SEI 1 ///< JCTVC-R0231: Make signalling of vcl_initial_arrival_delay independent of NalHrdBpPresentFlag -
TabularUnified branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp ¶
r1152 r1153 2874 2874 READ_UVLC( uiCode, "vps_num_profile_tier_level_minus1"); vps->setNumProfileTierLevel( uiCode + 1 ); 2875 2875 #endif 2876 #if PER_LAYER_PTL2877 2876 Int const numBitsForPtlIdx = vps->calculateLenOfSyntaxElement( vps->getNumProfileTierLevel() ); 2878 #endif2879 2877 #if !MULTIPLE_PTL_SUPPORT 2880 2878 vps->getPTLForExtnPtr()->resize(vps->getNumProfileTierLevel()); … … 2951 2949 vps->setOutputLayerFlag(0, 0, true); 2952 2950 vps->deriveNecessaryLayerFlag(0); 2953 #if PER_LAYER_PTL2954 2951 vps->getProfileLevelTierIdx()->resize(numOutputLayerSets); 2955 2952 vps->getProfileLevelTierIdx(0)->push_back( vps->getBaseLayerInternalFlag() && vps->getMaxLayers() > 1 ? 1 : 0); 2956 #endif2957 2953 2958 2954 for(i = 1; i < numOutputLayerSets; i++) … … 3014 3010 vps->deriveNecessaryLayerFlag(i); 3015 3011 3016 #if PER_LAYER_PTL3017 3012 vps->getProfileLevelTierIdx(i)->assign(vps->getNumLayersInIdList(layerSetIdxForOutputLayerSet), -1); 3018 3013 for(j = 0; j < vps->getNumLayersInIdList(layerSetIdxForOutputLayerSet) ; j++) … … 3044 3039 } 3045 3040 } 3046 #else3047 Int numBits = 1;3048 while ((1 << numBits) < (vps->getNumProfileTierLevel()))3049 {3050 numBits++;3051 }3052 READ_CODE( numBits, uiCode, "profile_tier_level_idx[i]" ); vps->setProfileLevelTierIdx(i, uiCode);3053 #endif3054 3041 3055 3042 NumOutputLayersInOutputLayerSet[i] = 0; -
TabularUnified branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp ¶
r1152 r1153 2125 2125 #else 2126 2126 WRITE_UVLC( vps->getNumProfileTierLevel() - 1, "vps_num_profile_tier_level_minus1"); 2127 #if PER_LAYER_PTL2128 2127 Int const numBitsForPtlIdx = vps->calculateLenOfSyntaxElement( vps->getNumProfileTierLevel() ); 2129 #endif2130 2128 #endif 2131 2129 #if LIST_OF_PTL … … 2221 2219 } 2222 2220 } 2223 #if PER_LAYER_PTL 2224 for( j = 0; j < vps->getNumLayersInIdList(layerSetIdxForOutputLayerSet) ; j++)2221 2222 for( j = 0; j < vps->getNumLayersInIdList(layerSetIdxForOutputLayerSet); j++ ) 2225 2223 { 2226 2224 if( vps->getNecessaryLayerFlag(i, j) && (vps->getNumProfileTierLevel() - 1) > 0 ) … … 2229 2227 } 2230 2228 } 2231 #else2232 Int numBits = 1;2233 while ((1 << numBits) < (vps->getNumProfileTierLevel()))2234 {2235 numBits++;2236 }2237 WRITE_CODE( vps->getProfileLevelTierIdx(i), numBits, "profile_level_tier_idx[i]" );2238 #endif2239 2229 2240 2230 NumOutputLayersInOutputLayerSet[i] = 0;
Note: See TracChangeset for help on using the changeset viewer.