Changeset 673 in 3DVCSoftware
- Timestamp:
- 7 Nov 2013, 08:47:42 (11 years ago)
- Location:
- branches/HTM-8.2-dev3-LG/source/Lib
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-8.2-dev3-LG/source/Lib/TLibCommon/ContextTables.h
r667 r673 385 385 INIT_IC_FLAG[3][NUM_IC_FLAG_CTX] = 386 386 { 387 #if LGE_IC_CTX_F0160 388 { 154, 154, 154, }, 389 { 154, 154, 154, }, 390 { 154, 154, 154, }, 391 #else 387 392 { CNU, CNU, CNU, }, 388 393 { 197, 185, 201, }, 389 394 { 197, 185, 201, }, 395 #endif 390 396 }; 391 397 #endif -
branches/HTM-8.2-dev3-LG/source/Lib/TLibCommon/TComDataCU.cpp
r655 r673 2313 2313 { 2314 2314 UInt uiCtx = 0; 2315 2316 #if LGE_IC_CTX_F0160 2317 TComDataCU* pcTempCU = NULL; 2318 UInt uiTempPartIdx = 0; 2319 2320 pcTempCU = getPULeft( uiTempPartIdx, m_uiAbsIdxInLCU + uiAbsPartIdx ); 2321 uiCtx = ( pcTempCU ) ? pcTempCU->isIC( uiTempPartIdx ) : 0; 2322 2323 pcTempCU = getPUAbove( uiTempPartIdx, m_uiAbsIdxInLCU + uiAbsPartIdx ); 2324 uiCtx += ( pcTempCU ) ? pcTempCU->isIC( uiTempPartIdx ) : 0; 2325 #endif 2315 2326 2316 2327 return uiCtx; … … 4571 4582 } 4572 4583 4584 #if LGE_IC_CTX_F0160 4585 Bool TComDataCU::isIC( UInt uiPartIdx ) 4586 { 4587 if ( m_pcSlice->isIntra () ) 4588 { 4589 return false; 4590 } 4591 return ( ( getSkipFlag(uiPartIdx) || getPredictionMode(uiPartIdx) == MODE_INTER) && getICFlag( uiPartIdx ) && isICFlagRequired( uiPartIdx ) ); 4592 } 4593 #endif 4594 4573 4595 // ==================================================================================================================== 4574 4596 // Protected member functions -
branches/HTM-8.2-dev3-LG/source/Lib/TLibCommon/TComDataCU.h
r655 r673 682 682 Bool isBipredRestriction( UInt puIdx ); 683 683 684 #if LGE_IC_CTX_F0160 685 Bool isIC ( UInt uiPartIdx ); 686 #endif 687 684 688 // ------------------------------------------------------------------------------------------------------------------- 685 689 // member functions for symbol prediction (most probable / mode conversion) -
branches/HTM-8.2-dev3-LG/source/Lib/TLibCommon/TypeDef.h
r667 r673 65 65 #define H_3D ( HEVC_EXT == 2) 66 66 67 #define LGE_BUGFIX_F0158 1 //JCT3V-F0158 67 68 ///////////////////////////////////////////////////////////////////////////////////////// 68 69 /////////////////////////////////// MAJOR DEFINES /////////////////////////////////// … … 103 104 // MTK_CLIPPING_ALIGN_IC_E0168 // To support simplify bi-prediction PU with identical motion checking, JCT3V-E0168 104 105 106 #define LGE_IC_CTX_F0160 1 //JCT3V-F0160 107 105 108 #if H_3D_NBDV 106 109 #define H_3D_NBDV_REF 1 // Depth oriented neighboring block disparity derivation … … 220 223 #define QC_DIM_DELTADC_UNIFY_F0132 1 // Unify delta DC coding in depth intra modes 221 224 #define HHI_DIM_PREDSAMP_FIX_F0171 1 225 #define LGE_PRED_RES_CODING_DLT_DOMAIN_F0159 1 //JCT3V-F0159 222 226 #endif 223 227 ///// ***** VIEW SYNTHESIS PREDICTION ********* -
branches/HTM-8.2-dev3-LG/source/Lib/TLibDecoder/TDecCu.cpp
r655 r673 693 693 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 694 694 { 695 #if LGE_PRED_RES_CODING_DLT_DOMAIN_F0159 696 if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getVPS()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) ) 697 pReco [ uiX ] = pcCU->getSlice()->getVPS()->idx2DepthValue( pcCU->getSlice()->getLayerIdInVps(), Clip3( 0, pcCU->getSlice()->getVPS()->getNumDepthValues( pcCU->getSlice()->getLayerIdInVps() ) - 1, pcCU->getSlice()->getVPS()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pPred[ uiX ] ) + pResi[ uiX ] ) ); 698 else 699 pReco [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] ); 700 #else 695 701 pReco [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] ); 702 #endif 696 703 pRecIPred[ uiX ] = pReco[ uiX ]; 697 704 } -
branches/HTM-8.2-dev3-LG/source/Lib/TLibEncoder/TEncSearch.cpp
r667 r673 1126 1126 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 1127 1127 { 1128 #if LGE_PRED_RES_CODING_DLT_DOMAIN_F0159 1129 if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getVPS()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) ) 1130 pResi[ uiX ] = pcCU->getSlice()->getVPS()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pOrg[ uiX ] ) - pcCU->getSlice()->getVPS()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pPred[ uiX ] ); 1131 else 1132 pResi[ uiX ] = pOrg[ uiX ] - pPred[ uiX ]; 1133 #else 1128 1134 pResi[ uiX ] = pOrg[ uiX ] - pPred[ uiX ]; 1135 #endif 1129 1136 } 1130 1137 pOrg += uiStride; … … 1190 1197 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 1191 1198 { 1199 #if LGE_PRED_RES_CODING_DLT_DOMAIN_F0159 1200 if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getVPS()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) ) 1201 pReco [ uiX ] = pcCU->getSlice()->getVPS()->idx2DepthValue( pcCU->getSlice()->getLayerIdInVps(), Clip3( 0, pcCU->getSlice()->getVPS()->getNumDepthValues( pcCU->getSlice()->getLayerIdInVps() ) - 1, pcCU->getSlice()->getVPS()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pPred[ uiX ] ) + pResi[ uiX ] ) ); 1202 else 1203 pReco [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] ); 1204 #else 1192 1205 pReco [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] ); 1206 #endif 1193 1207 pRecQt [ uiX ] = pReco[ uiX ]; 1194 1208 pRecIPred[ uiX ] = pReco[ uiX ]; … … 2979 2993 Bool bTestZeroResi = false; 2980 2994 #if H_3D_DIM_ENC 2995 #if LGE_BUGFIX_F0158 2996 bTestZeroResi |= pcCU->getSlice()->getIsDepth() && !pcCU->getSlice()->isIRAP(); 2997 #else 2981 2998 bTestZeroResi |= pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->isIRAP(); 2999 #endif 2982 3000 #endif 2983 3001 #if H_3D_DIM_SDC
Note: See TracChangeset for help on using the changeset viewer.