Changeset 1146 in SHVCSoftware
- Timestamp:
- 7 Jul 2015, 23:47:08 (9 years ago)
- Location:
- branches/SHM-dev/source
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp
r1136 r1146 1476 1476 // Direct reference layers 1477 1477 UInt maxDirectRefLayers = 0; 1478 #if O0096_DEFAULT_DEPENDENCY_TYPE1479 1478 Bool isDefaultDirectDependencyTypeSet = false; 1480 #endif1481 1479 for (UInt layerCtr = 1; layerCtr < vps->getMaxLayers(); layerCtr++) 1482 1480 { … … 1510 1508 vps->setDirectDependencyType(layerCtr, refLayerCtr, ((m_acTEncTop[layerCtr].getSamplePredEnabledFlag(numDirectRefLayers) ? 1 : 0) | 1511 1509 (m_acTEncTop[layerCtr].getMotionPredEnabledFlag(numDirectRefLayers) ? 2 : 0)) - 1); 1512 #if O0096_DEFAULT_DEPENDENCY_TYPE 1510 1513 1511 if (!isDefaultDirectDependencyTypeSet) 1514 1512 { … … 1521 1519 vps->setDefaultDirectDependecyTypeFlag(0); 1522 1520 } 1523 #endif 1521 1524 1522 numDirectRefLayers ++; 1525 1523 } -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1145 r1146 665 665 UInt m_refLayerId[MAX_VPS_LAYER_IDX_PLUS1][MAX_VPS_LAYER_IDX_PLUS1]; 666 666 UInt m_directDepTypeLen; 667 #if O0096_DEFAULT_DEPENDENCY_TYPE668 667 Bool m_defaultDirectDependencyTypeFlag; 669 668 UInt m_defaultDirectDependencyType; 670 #endif671 669 UInt m_directDependencyType[MAX_VPS_LAYER_IDX_PLUS1][MAX_VPS_LAYER_IDX_PLUS1]; 672 670 #endif … … 1037 1035 UInt getDirectDepTypeLen() { return m_directDepTypeLen; } 1038 1036 Void setDirectDepTypeLen(UInt x) { m_directDepTypeLen = x; } 1039 #if O0096_DEFAULT_DEPENDENCY_TYPE1040 1037 Bool getDefaultDirectDependencyTypeFlag() { return m_defaultDirectDependencyTypeFlag; } 1041 1038 Void setDefaultDirectDependecyTypeFlag(Bool x) { m_defaultDirectDependencyTypeFlag = x; } 1042 1039 UInt getDefaultDirectDependencyType() { return m_defaultDirectDependencyType; } 1043 1040 Void setDefaultDirectDependecyType(UInt x) { m_defaultDirectDependencyType = x; } 1044 #endif1045 1041 UInt getDirectDependencyType(Int currLayerIdx, Int refLayerIdx) { return m_directDependencyType[currLayerIdx][refLayerIdx]; } 1046 1042 Void setDirectDependencyType(Int currLayerIdx, Int refLayerIdx, UInt x) { m_directDependencyType[currLayerIdx][refLayerIdx] = x; } -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1145 r1146 162 162 #define MAX_REF_LAYERS 7 163 163 #endif 164 #define O0096_DEFAULT_DEPENDENCY_TYPE 1 ///< JCTVC-O0096: specify default dependency type for all direct reference layers165 164 166 165 #define O0098_SCALED_REF_LAYER_ID 1 ///< JCTVC-O0098: signal scaled reference id -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1143 r1146 3246 3246 #if VPS_EXTN_DIRECT_REF_LAYERS 3247 3247 READ_UVLC( uiCode, "direct_dep_type_len_minus2"); vps->setDirectDepTypeLen(uiCode+2); 3248 #if O0096_DEFAULT_DEPENDENCY_TYPE 3248 3249 3249 READ_FLAG(uiCode, "default_direct_dependency_type_flag"); 3250 3250 vps->setDefaultDirectDependecyTypeFlag(uiCode == 1? true : false); 3251 if (vps->getDefaultDirectDependencyTypeFlag()) 3251 3252 if( vps->getDefaultDirectDependencyTypeFlag() ) 3252 3253 { 3253 3254 READ_CODE( vps->getDirectDepTypeLen(), uiCode, "default_direct_dependency_type" ); 3254 3255 vps->setDefaultDirectDependecyType(uiCode); 3255 3256 } 3256 #endif3257 3257 3258 3258 for( i = vps->getBaseLayerInternalFlag() ? 1 : 2; i < vps->getMaxLayers(); i++ ) … … 3260 3260 for( j = vps->getBaseLayerInternalFlag() ? 0 : 1; j < i; j++ ) 3261 3261 { 3262 if (vps->getDirectDependencyFlag(i, j)) 3263 { 3264 #if O0096_DEFAULT_DEPENDENCY_TYPE 3262 if( vps->getDirectDependencyFlag(i, j) ) 3263 { 3265 3264 if (vps->getDefaultDirectDependencyTypeFlag()) 3266 3265 { … … 3272 3271 vps->setDirectDependencyType(i, j, uiCode); 3273 3272 } 3274 #else3275 READ_CODE( vps->getDirectDepTypeLen(), uiCode, "direct_dependency_type[i][j]" );3276 vps->setDirectDependencyType(i, j, uiCode);3277 #endif3278 3273 } 3279 3274 } -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r1138 r1146 2313 2313 #if VPS_EXTN_DIRECT_REF_LAYERS 2314 2314 WRITE_UVLC( vps->getDirectDepTypeLen()-2, "direct_dep_type_len_minus2"); 2315 #if O0096_DEFAULT_DEPENDENCY_TYPE 2315 2316 2316 WRITE_FLAG(vps->getDefaultDirectDependencyTypeFlag(), "default_direct_dependency_flag"); 2317 if (vps->getDefaultDirectDependencyTypeFlag()) 2317 2318 if( vps->getDefaultDirectDependencyTypeFlag() ) 2318 2319 { 2319 2320 WRITE_CODE( vps->getDefaultDirectDependencyType(), vps->getDirectDepTypeLen(), "default_direct_dependency_type" ); … … 2332 2333 } 2333 2334 } 2334 #else2335 for(i = 1; i < vps->getMaxLayers(); i++)2336 {2337 for(j = 0; j < i; j++)2338 {2339 if (vps->getDirectDependencyFlag(i, j))2340 {2341 WRITE_CODE( vps->getDirectDependencyType(i, j), vps->getDirectDepTypeLen(), "direct_dependency_type[i][j]" );2342 }2343 }2344 }2345 #endif2346 2335 #endif 2347 2336
Note: See TracChangeset for help on using the changeset viewer.