Changeset 1147 in SHVCSoftware for branches/SHM-dev/source/Lib
- Timestamp:
- 7 Jul 2015, 23:55:42 (9 years ago)
- Location:
- branches/SHM-dev/source/Lib
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/Lib/TLibCommon/TComDataCU.cpp
r1090 r1147 3428 3428 #endif 3429 3429 3430 #if O0098_SCALED_REF_LAYER_ID3431 3430 Int leftStartL = m_pcSlice->getPPS()->getScaledRefLayerWindowForLayer(baseColPic->getSlice(0)->getVPS()->getRefLayerId(getSlice()->getLayerId(), refLayerIdc)).getWindowLeftOffset(); 3432 3431 Int topStartL = m_pcSlice->getPPS()->getScaledRefLayerWindowForLayer(baseColPic->getSlice(0)->getVPS()->getRefLayerId(getSlice()->getLayerId(), refLayerIdc)).getWindowTopOffset(); 3433 #else3434 Int leftStartL = baseColPic->getSlice(0)->getPPS()->getScaledRefLayerWindow(refLayerIdc).getWindowLeftOffset();3435 Int topStartL = baseColPic->getSlice(0)->getPPS()->getScaledRefLayerWindow(refLayerIdc).getWindowTopOffset();3436 #endif3437 3432 3438 3433 const Window &windowRL = m_pcSlice->getPPS()->getRefLayerWindowForLayer(baseColPic->getSlice(0)->getVPS()->getRefLayerId(getSlice()->getLayerId(), refLayerIdc)); -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp
r1139 r1147 514 514 UInt refLayerId = m_pcVPS->getRefLayerId( m_layerId, refLayerIdc ); 515 515 516 #if O0098_SCALED_REF_LAYER_ID517 516 const Window &scalEL = getPPS()->getScaledRefLayerWindowForLayer(refLayerId); 518 #else 519 const Window &scalEL = getPPS()->getScaledRefLayerWindow(m_interLayerPredLayerIdc[i]); 520 #endif 517 521 518 Int scalingOffset = ((scalEL.getWindowLeftOffset() == 0 ) && 522 519 (scalEL.getWindowRightOffset() == 0 ) && … … 3074 3071 } 3075 3072 3073 #if SVC_EXTENSION 3074 3076 3075 #if VPS_EXTN_PROFILE_INFO 3077 3076 Void ProfileTierLevel::copyProfileInfo(ProfileTierLevel *ptl) … … 3091 3090 #endif 3092 3091 3093 #if O0098_SCALED_REF_LAYER_ID3094 3092 Window& TComPPS::getScaledRefLayerWindowForLayer(Int layerId) 3095 3093 { … … 3107 3105 return win; 3108 3106 } 3109 #endif 3110 3111 #if SVC_EXTENSION 3107 3112 3108 Window& TComPPS::getRefLayerWindowForLayer(Int layerId) 3113 3109 { -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1146 r1147 1861 1861 #endif 1862 1862 UInt m_numRefLayerLocationOffsets; 1863 #if O0098_SCALED_REF_LAYER_ID1864 1863 UInt m_refLocationOffsetLayerId[MAX_LAYERS]; 1865 #endif1866 1864 Window m_scaledRefLayerWindow[MAX_LAYERS]; 1867 1865 Window m_refLayerWindow[MAX_LAYERS]; … … 2024 2022 UInt getNumRefLayerLocationOffsets() { return m_numRefLayerLocationOffsets; } 2025 2023 Void setNumRefLayerLocationOffsets(Int x) { m_numRefLayerLocationOffsets = x; } 2026 #if O0098_SCALED_REF_LAYER_ID 2024 2027 2025 UInt getRefLocationOffsetLayerId(Int x) { return m_refLocationOffsetLayerId[x]; } 2028 2026 Void setRefLocationOffsetLayerId(Int x, UInt id) { m_refLocationOffsetLayerId[x] = id; } 2029 2027 Window& getScaledRefLayerWindowForLayer( Int layerId ); 2030 #endif 2028 2031 2029 Window& getScaledRefLayerWindow( Int x ) { return m_scaledRefLayerWindow[x]; } 2032 2030 Window& getRefLayerWindowForLayer( Int layerId ); -
branches/SHM-dev/source/Lib/TLibCommon/TComUpsampleFilter.cpp
r1090 r1147 63 63 #endif 64 64 65 #if O0098_SCALED_REF_LAYER_ID66 65 const Window &scalEL = currSlice->getPPS()->getScaledRefLayerWindowForLayer(refLayerId); 67 #else68 const Window &scalEL = currSlice->getPPS()->getScaledRefLayerWindow(refLayerIdc);69 #endif70 66 const Window &windowRL = currSlice->getPPS()->getRefLayerWindowForLayer(refLayerId); 71 67 -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1146 r1147 162 162 #define MAX_REF_LAYERS 7 163 163 #endif 164 165 #define O0098_SCALED_REF_LAYER_ID 1 ///< JCTVC-O0098: signal scaled reference id166 167 164 #define Q0165_OUTPUT_LAYER_SET 1 ///< JCTVC-Q0165: add a constraint to disallow an empty output layer set 168 165 #define Q0165_NUM_ADD_OUTPUT_LAYER_SETS 1 ///< JCTVC-Q0165: signal num_add_olss and default_target_output_layer_idc when vps_num_layer_sets_minus1 is greater than 0 -
branches/SHM-dev/source/Lib/TLibDecoder/TDecTop.cpp
r1145 r1147 1744 1744 #endif 1745 1745 1746 #if O0098_SCALED_REF_LAYER_ID1747 1746 const Window &scalEL = pcSlice->getPPS()->getScaledRefLayerWindowForLayer(refLayerId); 1748 #else1749 const Window &scalEL = pcSlice->getPPS()->getScaledRefLayerWindow(refLayerIdc);1750 #endif1751 1752 1747 const Window &windowRL = pcSlice->getPPS()->getRefLayerWindowForLayer(pcSlice->getVPS()->getRefLayerId(m_layerId, refLayerIdc)); 1753 1748 Int widthBL = pcSlice->getBaseColPic(refLayerIdc)->getPicYuvRec()->getWidth(COMPONENT_Y) - windowRL.getWindowLeftOffset() - windowRL.getWindowRightOffset(); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r1144 r1147 1387 1387 } 1388 1388 1389 #if O0098_SCALED_REF_LAYER_ID1390 1389 const Window &scalEL = m_pcEncTop->getScaledRefLayerWindowForLayer(refLayerId); 1391 #else 1392 const Window &scalEL = m_pcEncTop->getScaledRefLayerWindow(refLayerIdc); 1393 #endif 1394 1395 const Window &windowRL = m_pcEncTop->getRefLayerWindowForLayer(pcSlice->getVPS()->getRefLayerId(m_layerId, refLayerIdc)); 1390 const Window &windowRL = m_pcEncTop->getRefLayerWindowForLayer(pcSlice->getVPS()->getRefLayerId(m_layerId, refLayerIdc)); 1396 1391 Int widthBL = pcSlice->getBaseColPic(refLayerIdc)->getPicYuvRec()->getWidth(COMPONENT_Y) - windowRL.getWindowLeftOffset() - windowRL.getWindowRightOffset(); 1397 1392 Int heightBL = pcSlice->getBaseColPic(refLayerIdc)->getPicYuvRec()->getHeight(COMPONENT_Y) - windowRL.getWindowTopOffset() - windowRL.getWindowBottomOffset(); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.cpp
r1119 r1147 619 619 for(UInt i = 0; i < m_cVPS.getNumDirectRefLayers( m_layerId ); i++ ) 620 620 { 621 #if O0098_SCALED_REF_LAYER_ID622 621 const Window scalEL = getPPS()->getScaledRefLayerWindowForLayer(m_cVPS.getRefLayerId(m_layerId, i)); 623 #else 624 const Window scalEL = getPPS()->getScaledRefLayerWindow(i); 625 #endif 626 const Window altRL = getPPS()->getRefLayerWindowForLayer(m_cVPS.getRefLayerId(m_layerId, i)); 622 const Window altRL = getPPS()->getRefLayerWindowForLayer(m_cVPS.getRefLayerId(m_layerId, i)); 627 623 Bool equalOffsets = scalEL.hasEqualOffset(altRL); 628 624 Bool zeroPhase = getPPS()->hasZeroResamplingPhase(m_cVPS.getRefLayerId(m_layerId, i)); … … 689 685 for(UInt i = 0; i < m_cVPS.getNumDirectRefLayers( m_layerId ); i++ ) 690 686 { 691 #if O0098_SCALED_REF_LAYER_ID692 687 const Window scalEL = getPPS()->getScaledRefLayerWindowForLayer(m_cVPS.getRefLayerId(m_layerId, i)); 693 #else 694 const Window scalEL = getPPS()->getScaledRefLayerWindow(i); 695 #endif 696 const Window altRL = getPPS()->getRefLayerWindowForLayer(m_cVPS.getRefLayerId(m_layerId, i)); 688 const Window altRL = getPPS()->getRefLayerWindowForLayer(m_cVPS.getRefLayerId(m_layerId, i)); 697 689 Bool equalOffsets = scalEL.hasEqualOffset(altRL); 698 690 Bool zeroPhase = getPPS()->hasZeroResamplingPhase(m_cVPS.getRefLayerId(m_layerId, i)); … … 1074 1066 for(Int i = 0; i < m_cPPS.getNumRefLayerLocationOffsets(); i++) 1075 1067 { 1076 #if O0098_SCALED_REF_LAYER_ID1077 1068 m_cPPS.setRefLocationOffsetLayerId(i, m_refLocationOffsetLayerId[i]); 1078 #endif1079 1069 m_cPPS.getScaledRefLayerWindow(i) = m_scaledRefLayerWindow[i]; 1080 1070 m_cPPS.getRefLayerWindow(i) = m_refLayerWindow[i]; … … 1560 1550 #endif 1561 1551 1562 #if O0098_SCALED_REF_LAYER_ID1563 1552 Window& TEncTop::getScaledRefLayerWindowForLayer(Int layerId) 1564 1553 { … … 1592 1581 return win; 1593 1582 } 1594 #endif1595 1583 #endif //SVC_EXTENSION 1596 1584 //! \} -
branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.h
r1131 r1147 123 123 #endif 124 124 UInt m_numRefLayerLocationOffsets; 125 #if O0098_SCALED_REF_LAYER_ID126 125 UInt m_refLocationOffsetLayerId[MAX_LAYERS]; 127 #endif128 126 Window m_scaledRefLayerWindow[MAX_LAYERS]; 129 127 UInt m_numRefLayerOffsets; … … 210 208 /// encode several number of pictures until end-of-sequence 211 209 #if SVC_EXTENSION 212 Void setLayerEnc(TEncTop** p) { m_ppcTEncTop = p; } 213 TEncTop** getLayerEnc() { return m_ppcTEncTop; } 214 Int getPOCLast () { return m_iPOCLast; } 215 Int getNumPicRcvd () { return m_iNumPicRcvd; } 216 Void setNumPicRcvd ( Int num ) { m_iNumPicRcvd = num; } 217 Void setNumRefLayerLocationOffsets(Int x) { m_numRefLayerLocationOffsets = x; } 218 UInt getNumRefLayerLocationOffsets() { return m_numRefLayerLocationOffsets; } 219 #if O0098_SCALED_REF_LAYER_ID 220 Void setRefLocationOffsetLayerId(Int x, UInt id) { m_refLocationOffsetLayerId[x] = id; } 221 UInt getRefLocationOffsetLayerId(Int x) { return m_refLocationOffsetLayerId[x]; } 210 Void setLayerEnc(TEncTop** p) { m_ppcTEncTop = p; } 211 TEncTop** getLayerEnc() { return m_ppcTEncTop; } 212 Int getPOCLast() { return m_iPOCLast; } 213 Int getNumPicRcvd() { return m_iNumPicRcvd; } 214 Void setNumPicRcvd( Int num ) { m_iNumPicRcvd = num; } 215 Void setNumRefLayerLocationOffsets(Int x) { m_numRefLayerLocationOffsets = x; } 216 UInt getNumRefLayerLocationOffsets() { return m_numRefLayerLocationOffsets; } 217 Void setRefLocationOffsetLayerId(Int x, UInt id) { m_refLocationOffsetLayerId[x] = id; } 218 UInt getRefLocationOffsetLayerId(Int x) { return m_refLocationOffsetLayerId[x]; } 222 219 Window& getScaledRefLayerWindowForLayer(Int layerId); 223 #endif 224 Window& getScaledRefLayerWindow(Int x) { return m_scaledRefLayerWindow[x]; } 225 Void setNumRefLayerOffsets(Int x) { m_numRefLayerOffsets = x; } 226 UInt getNumRefLayerOffsets() { return m_numRefLayerOffsets; } 227 Void setRefLayerId(Int layerIdx, UInt layerId) { m_refLayerId[layerIdx] = layerId; } 228 UInt getRefLayerId(Int layerIdx) { return m_refLayerId[layerIdx]; } 220 Window& getScaledRefLayerWindow(Int x) { return m_scaledRefLayerWindow[x]; } 221 Void setNumRefLayerOffsets(Int x) { m_numRefLayerOffsets = x; } 222 UInt getNumRefLayerOffsets() { return m_numRefLayerOffsets; } 223 Void setRefLayerId(Int layerIdx, UInt layerId) { m_refLayerId[layerIdx] = layerId; } 224 UInt getRefLayerId(Int layerIdx) { return m_refLayerId[layerIdx]; } 229 225 Window& getRefLayerWindowForLayer(Int layerId); 230 Window& getRefLayerWindow(Int x) { return m_refLayerWindow[x]; }231 Bool getScaledRefLayerOffsetPresentFlag(Int x) { return m_scaledRefLayerOffsetPresentFlag[x]; }226 Window& getRefLayerWindow(Int x) { return m_refLayerWindow[x]; } 227 Bool getScaledRefLayerOffsetPresentFlag(Int x) { return m_scaledRefLayerOffsetPresentFlag[x]; } 232 228 Void setScaledRefLayerOffsetPresentFlag(Int x, Bool b) { m_scaledRefLayerOffsetPresentFlag[x] = b; } 233 Bool getRefRegionOffsetPresentFlag(Int x) { return m_refRegionOffsetPresentFlag[x]; }234 Void setRefRegionOffsetPresentFlag(Int x, Bool b) { m_refRegionOffsetPresentFlag[x] = b; }235 Int getPhaseHorLuma(Int x) { return m_phaseHorLuma[x]; }236 Int getPhaseVerLuma(Int x) { return m_phaseVerLuma[x]; }237 Int getPhaseHorChroma(Int x) { return m_phaseHorChroma[x]; }238 Int getPhaseVerChroma(Int x) { return m_phaseVerChroma[x]; }239 Void setPhaseHorLuma(Int x, Int val) { m_phaseHorLuma[x] = val; }240 Void setPhaseVerLuma(Int x, Int val) { m_phaseVerLuma[x] = val; }241 Void setPhaseHorChroma(Int x, Int val) { m_phaseHorChroma[x] = val; }242 Void setPhaseVerChroma(Int x, Int val) { m_phaseVerChroma[x] = val; }243 Bool getResamplePhaseSetPresentFlag(Int x) { return m_resamplePhaseSetPresentFlag[x]; }244 Void setResamplePhaseSetPresentFlag(Int x, Bool b) { m_resamplePhaseSetPresentFlag[x] = b; }245 246 TComPic** getIlpList() { return m_cIlpPic; }229 Bool getRefRegionOffsetPresentFlag(Int x) { return m_refRegionOffsetPresentFlag[x]; } 230 Void setRefRegionOffsetPresentFlag(Int x, Bool b) { m_refRegionOffsetPresentFlag[x] = b; } 231 Int getPhaseHorLuma(Int x) { return m_phaseHorLuma[x]; } 232 Int getPhaseVerLuma(Int x) { return m_phaseVerLuma[x]; } 233 Int getPhaseHorChroma(Int x) { return m_phaseHorChroma[x]; } 234 Int getPhaseVerChroma(Int x) { return m_phaseVerChroma[x]; } 235 Void setPhaseHorLuma(Int x, Int val) { m_phaseHorLuma[x] = val; } 236 Void setPhaseVerLuma(Int x, Int val) { m_phaseVerLuma[x] = val; } 237 Void setPhaseHorChroma(Int x, Int val) { m_phaseHorChroma[x] = val; } 238 Void setPhaseVerChroma(Int x, Int val) { m_phaseVerChroma[x] = val; } 239 Bool getResamplePhaseSetPresentFlag(Int x) { return m_resamplePhaseSetPresentFlag[x]; } 240 Void setResamplePhaseSetPresentFlag(Int x, Bool b) { m_resamplePhaseSetPresentFlag[x] = b; } 241 242 TComPic** getIlpList() { return m_cIlpPic; } 247 243 #if REF_IDX_MFM 248 Void setMFMEnabledFlag (Bool flag){ m_bMFMEnabledFlag = flag; }249 Bool getMFMEnabledFlag() { return m_bMFMEnabledFlag; }244 Void setMFMEnabledFlag(Bool flag) { m_bMFMEnabledFlag = flag; } 245 Bool getMFMEnabledFlag() { return m_bMFMEnabledFlag; } 250 246 #endif 251 247 #if O0194_WEIGHTED_PREDICTION_CGS 252 Void setInterLayerWeightedPredFlag(Bool flag) { m_interLayerWeightedPredFlag = flag; }253 Bool getInterLayerWeightedPredFlag() { return m_interLayerWeightedPredFlag; }248 Void setInterLayerWeightedPredFlag(Bool flag) { m_interLayerWeightedPredFlag = flag; } 249 Bool getInterLayerWeightedPredFlag() { return m_interLayerWeightedPredFlag; } 254 250 #endif 255 251 Void encode ( TComPicYuv* pcPicYuvOrg, const InputColourSpaceConversion snrCSC, TComList<TComPicYuv*>& rcListPicYuvRecOut, std::list<AccessUnit>& accessUnitsOut, Int iPicIdInGOP );
Note: See TracChangeset for help on using the changeset viewer.