Changeset 445 in SHVCSoftware for branches/SHM-4.0-dev/source/Lib
- Timestamp:
- 7 Nov 2013, 08:07:50 (11 years ago)
- Location:
- branches/SHM-4.0-dev/source/Lib
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComDataCU.cpp
r442 r445 4004 4004 uiPelY = (UInt)Clip3<UInt>(0, m_pcPic->getPicYuvRec()->getHeight() - 1, uiPelY); 4005 4005 4006 #if !LAYER_CTB 4006 4007 UInt uiMinUnitSize = m_pcPic->getMinCUWidth(); 4008 #endif 4007 4009 4008 4010 #if SCALED_REF_LAYER_OFFSETS … … 4034 4036 } 4035 4037 4038 #if LAYER_CTB 4039 UInt baseMaxCUHeight = cBaseColPic->getPicSym()->getMaxCUHeight(); 4040 UInt baseMaxCUWidth = cBaseColPic->getPicSym()->getMaxCUWidth(); 4041 UInt baseMinUnitSize = cBaseColPic->getMinCUWidth(); 4042 4043 uiCUAddrBase = ( iBY / cBaseColPic->getPicSym()->getMaxCUHeight() ) * cBaseColPic->getFrameWidthInCU() + ( iBX / cBaseColPic->getPicSym()->getMaxCUWidth() ); 4044 #else 4036 4045 uiCUAddrBase = (iBY/g_uiMaxCUHeight)*cBaseColPic->getFrameWidthInCU() + (iBX/g_uiMaxCUWidth); 4046 #endif 4037 4047 4038 4048 assert(uiCUAddrBase < cBaseColPic->getNumCUsInFrame()); 4039 4049 4050 #if LAYER_CTB 4051 UInt uiRasterAddrBase = ( iBY - (iBY/baseMaxCUHeight)*baseMaxCUHeight ) / baseMinUnitSize * cBaseColPic->getNumPartInWidth() + ( iBX - (iBX/baseMaxCUWidth)*baseMaxCUWidth ) / baseMinUnitSize; 4052 4053 uiAbsPartIdxBase = g_auiLayerRasterToZscan[cBaseColPic->getLayerId()][uiRasterAddrBase]; 4054 #else 4040 4055 UInt uiRasterAddrBase = (iBY - (iBY/g_uiMaxCUHeight)*g_uiMaxCUHeight)/uiMinUnitSize*cBaseColPic->getNumPartInWidth() 4041 4056 + (iBX - (iBX/g_uiMaxCUWidth)*g_uiMaxCUWidth)/uiMinUnitSize; 4042 4057 4043 4058 uiAbsPartIdxBase = g_auiRasterToZscan[uiRasterAddrBase]; 4059 #endif 4044 4060 4045 4061 return cBaseColPic->getCU(uiCUAddrBase); -
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComPicSym.h
r442 r445 126 126 TComDataCU*& getCU( UInt uiCUAddr ) { return m_apcTComDataCU[uiCUAddr]; } 127 127 128 #if LAYER_CTB 129 UInt getMaxCUWidth() { return m_uiMaxCUWidth; } 130 UInt getMaxCUHeight() { return m_uiMaxCUHeight; } 131 #endif 132 128 133 #if AVC_SYNTAX 129 134 UInt getMaxCUWidth() { return m_uiMaxCUWidth; } -
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComPicYuv.cpp
r313 r445 90 90 Int numCuInHeight = m_iPicHeight / m_iCuHeight + (m_iPicHeight % m_iCuHeight != 0); 91 91 92 #if LAYER_CTB 93 m_iLumaMarginX = uiMaxCUWidth + 16; // for 16-byte alignment 94 m_iLumaMarginY = uiMaxCUHeight + 16; // margin for 8-tap filter and infinite padding 95 #else 92 96 m_iLumaMarginX = g_uiMaxCUWidth + 16; // for 16-byte alignment 93 97 m_iLumaMarginY = g_uiMaxCUHeight + 16; // margin for 8-tap filter and infinite padding 98 #endif 94 99 95 100 m_iChromaMarginX = m_iLumaMarginX>>1; -
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComRom.cpp
r442 r445 86 86 // Data structure related table & variable 87 87 // ==================================================================================================================== 88 88 #if LAYER_CTB 89 UInt g_auiLayerMaxCUWidth[MAX_LAYERS]; 90 UInt g_auiLayerMaxCUHeight[MAX_LAYERS]; 91 UInt g_auiLayerMaxCUDepth[MAX_LAYERS]; 92 UInt g_auiLayerAddCUDepth[MAX_LAYERS]; 93 UInt g_auiLayerZscanToRaster[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 94 UInt g_auiLayerRasterToZscan[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 95 UInt g_auiLayerRasterToPelX[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 96 UInt g_auiLayerRasterToPelY[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 97 #endif 89 98 UInt g_uiMaxCUWidth = MAX_CU_SIZE; 90 99 UInt g_uiMaxCUHeight = MAX_CU_SIZE; -
branches/SHM-4.0-dev/source/Lib/TLibCommon/TComRom.h
r442 r445 81 81 82 82 // global variable (LCU width/height, max. CU depth) 83 #if LAYER_CTB 84 extern UInt g_auiLayerMaxCUWidth[MAX_LAYERS]; 85 extern UInt g_auiLayerMaxCUHeight[MAX_LAYERS]; 86 extern UInt g_auiLayerMaxCUDepth[MAX_LAYERS]; 87 extern UInt g_auiLayerAddCUDepth[MAX_LAYERS]; 88 extern UInt g_auiLayerZscanToRaster[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 89 extern UInt g_auiLayerRasterToZscan[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 90 extern UInt g_auiLayerRasterToPelX[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 91 extern UInt g_auiLayerRasterToPelY[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ]; 92 #endif 83 93 extern UInt g_uiMaxCUWidth; 84 94 extern UInt g_uiMaxCUHeight; -
branches/SHM-4.0-dev/source/Lib/TLibCommon/TypeDef.h
r442 r445 64 64 #define VERT_MV_CONSTRAINT 1 ///< Vertical MV component constraint flag 65 65 #define SCALABILITY_MASK_E0104 1 ///< JCT3V-E0104: scalability mask for depth 66 #define LAYER_CTB 0 ///< enable layer-specific CTB structure 66 67 67 68 #define ILP_SSH_SIG 1 ///< JCTVC-N0195 proposal 2, JCTVC-N0118: add presence flag in VPS ext to condition inter-layer prediction signaling in slice segment header -
branches/SHM-4.0-dev/source/Lib/TLibEncoder/TEncTop.cpp
r442 r445 175 175 } 176 176 } 177 178 #if LAYER_CTB 179 memcpy(g_auiLayerZscanToRaster[m_layerId], g_auiZscanToRaster, sizeof( g_auiZscanToRaster ) ); 180 memcpy(g_auiLayerRasterToZscan[m_layerId], g_auiRasterToZscan, sizeof( g_auiRasterToZscan ) ); 181 memcpy(g_auiLayerRasterToPelX[m_layerId], g_auiRasterToPelX, sizeof( g_auiRasterToPelX ) ); 182 memcpy(g_auiLayerRasterToPelY[m_layerId], g_auiRasterToPelY, sizeof( g_auiRasterToPelY ) ); 183 #endif 177 184 } 178 185
Note: See TracChangeset for help on using the changeset viewer.