Changeset 118 in SHVCSoftware for branches/HM-10.0-dev-SHM/source/Lib
- Timestamp:
- 11 Apr 2013, 00:34:54 (12 years ago)
- Location:
- branches/HM-10.0-dev-SHM/source/Lib
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HM-10.0-dev-SHM/source/Lib/TLibCommon/TComSlice.cpp
r115 r118 1506 1506 ::memset(m_outputLayerSetIdx, 0, sizeof(m_outputLayerSetIdx)); 1507 1507 ::memset(m_outputLayerFlag, 0, sizeof(m_outputLayerFlag)); 1508 #endif 1509 #if VPS_EXTN_DIRECT_REF_LAYERS 1510 ::memset(m_directDependencyFlag, 0, sizeof(m_directDependencyFlag)); 1511 ::memset(m_numDirectRefLayers, 0, sizeof(m_numDirectRefLayers )); 1512 ::memset(m_refLayerId, 0, sizeof(m_refLayerId )); 1508 1513 #endif 1509 1514 } -
branches/HM-10.0-dev-SHM/source/Lib/TLibCommon/TComSlice.h
r115 r118 541 541 UInt m_outputLayerSetIdx[MAX_VPS_LAYER_SETS_PLUS1]; 542 542 Bool m_outputLayerFlag[MAX_VPS_LAYER_SETS_PLUS1][MAX_VPS_LAYER_ID_PLUS1]; 543 // .. More declarations here 543 #endif 544 #if VPS_EXTN_DIRECT_REF_LAYERS 545 Bool m_directDependencyFlag[MAX_VPS_LAYER_ID_PLUS1][MAX_VPS_LAYER_ID_PLUS1]; 546 UInt m_numDirectRefLayers[MAX_VPS_LAYER_ID_PLUS1]; 547 UInt m_refLayerId[MAX_VPS_LAYER_ID_PLUS1][MAX_VPS_LAYER_ID_PLUS1]; 544 548 #endif 545 549 … … 656 660 Bool getOutputLayerFlag(Int layerSet, Int layerId) { return m_outputLayerFlag[layerSet][layerId]; } 657 661 Void setOutputLayerFlag(Int layerSet, Int layerId, Bool x) { m_outputLayerFlag[layerSet][layerId] = x; } 662 #endif 663 #if VPS_EXTN_DIRECT_REF_LAYERS 664 // Direct dependency of layers 665 Bool getDirectDependencyFlag(Int i, Int j) { return m_directDependencyFlag[i][j]; } 666 Void setDirectDependencyFlag(Int i, Int j, Bool x) { m_directDependencyFlag[i][j] = x; } 667 668 UInt getNumDirectRefLayers(Int i) { return m_numDirectRefLayers[i]; } 669 Void setNumDirectRefLayers(Int i, UInt x) { m_numDirectRefLayers[i] = x; } 670 671 UInt getRefLayerId(Int i, Int j) { return m_refLayerId[i][j]; } 672 Void setRefLayerId(Int i, Int j, UInt x) { m_refLayerId[i][j] = x; } 658 673 #endif 659 674 }; -
branches/HM-10.0-dev-SHM/source/Lib/TLibCommon/TypeDef.h
r117 r118 50 50 #define VPS_EXTN_OP_LAYER_SETS 1 ///< Include output layer sets in VPS extension 51 51 #define VPS_EXTN_PROFILE_INFO 1 ///< Include profile information for layer sets in VPS extension 52 #define VPS_EXTN_DIRECT_REF_LAYERS 1 ///< Include indication of direct dependency of layers in VPS extension 52 53 #endif 53 54 #define MAX_LAYERS 2 ///< max number of layers the codec is supposed to handle -
branches/HM-10.0-dev-SHM/source/Lib/TLibDecoder/TDecCAVLC.cpp
r116 r118 934 934 } 935 935 #endif 936 // ... More syntax elements to be parsed here 936 #if VPS_EXTN_DIRECT_REF_LAYERS 937 // For layer 0 938 vps->setNumDirectRefLayers(0, 0); 939 // For other layers 940 for( Int layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++) 941 { 942 UInt numDirectRefLayers = 0; 943 for( Int refLayerCtr = 0; refLayerCtr < layerCtr; refLayerCtr++) 944 { 945 READ_FLAG(uiCode, "direct_dependency_flag[i][j]" ); vps->setDirectDependencyFlag(layerCtr, refLayerCtr, uiCode? true : false); 946 if(uiCode) 947 { 948 vps->setRefLayerId(layerCtr, numDirectRefLayers, refLayerCtr); 949 numDirectRefLayers++; 950 } 951 } 952 vps->setNumDirectRefLayers(layerCtr, numDirectRefLayers); 953 } 954 #endif 937 955 } 938 956 #endif -
branches/HM-10.0-dev-SHM/source/Lib/TLibEncoder/TEncCavlc.cpp
r116 r118 731 731 } 732 732 #endif 733 // ... More syntax elements to be written here 733 #if VPS_EXTN_DIRECT_REF_LAYERS 734 for( Int layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++) 735 { 736 for( Int refLayerCtr = 0; refLayerCtr < layerCtr; refLayerCtr++) 737 { 738 WRITE_FLAG(vps->getDirectDependencyFlag(layerCtr, refLayerCtr), "direct_dependency_flag[i][j]" ); 739 } 740 } 741 #endif 734 742 } 735 743 #endif -
branches/HM-10.0-dev-SHM/source/Lib/TLibEncoder/TEncCfg.h
r54 r118 142 142 Int m_maxTempLayer; ///< Max temporal layer 143 143 Bool m_useAMP; 144 #if VPS_EXTN_DIRECT_REF_LAYERS 145 Int m_numDirectRefLayers; 146 Int m_refLayerId[MAX_VPS_LAYER_ID_PLUS1]; 147 #endif 144 148 //======= Transform ============= 145 149 UInt m_uiQuadtreeTULog2MaxSize; … … 350 354 Bool getMaxTempLayer () { return m_maxTempLayer; } 351 355 Void setMaxTempLayer ( Int maxTempLayer ) { m_maxTempLayer = maxTempLayer; } 356 #if VPS_EXTN_DIRECT_REF_LAYERS 357 Int getNumDirectRefLayers () { return m_numDirectRefLayers; } 358 Void setNumDirectRefLayers (Int num) { m_numDirectRefLayers = num; } 359 360 Int getRefLayerId (Int i) { return m_refLayerId[i]; } 361 Void setRefLayerId (Int i, Int refLayerId) { m_refLayerId[i] = refLayerId; } 362 #endif 352 363 //======== Transform ============= 353 364 Void setQuadtreeTULog2MaxSize ( UInt u ) { m_uiQuadtreeTULog2MaxSize = u; }
Note: See TracChangeset for help on using the changeset viewer.