Changeset 1223 in 3DVCSoftware for branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncSearch.cpp
- Timestamp:
- 21 May 2015, 21:48:53 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncSearch.cpp
r1221 r1223 1053 1053 #if NH_3D_INTRA_SDC 1054 1054 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); 1055 #if NH_3D_DMM 1055 1056 if( pcCU->getSlice()->getIsDepth() && ( !pcCU->getSDCFlag( 0 ) ) && isDmmMode( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, 0 ) ) ) 1056 1057 { 1057 1058 m_pcEntropyCoder->encodeDeltaDC( pcCU, 0 ); 1058 1059 } 1060 #endif 1059 1061 #endif 1060 1062 } … … 1071 1073 for( UInt uiPart = 0; uiPart < 4; uiPart++ ) 1072 1074 { 1075 #if NH_3D_DMM 1073 1076 if( pcCU->getSlice()->getIsDepth() && ( !pcCU->getSDCFlag( uiPart * uiQNumParts ) ) && isDmmMode( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, uiPart * uiQNumParts ) ) ) 1074 1077 { 1075 1078 m_pcEntropyCoder->encodeDeltaDC( pcCU, uiPart * uiQNumParts ); 1076 1079 } 1080 #endif 1077 1081 #endif 1078 1082 #if NH_3D_INTRA_SDC … … 1081 1085 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); 1082 1086 } 1083 if( pcCU->getSlice()->getIsDepth() && ( !pcCU->getSDCFlag( uiAbsPartIdx ) ) && isDmmMode( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, uiAbsPartIdx ) ) ) 1087 #if NH_3D_DMM 1088 if( pcCU->getSlice()->getIsDepth() && ( pcCU->getSDCFlag( uiAbsPartIdx ) ) && isDmmMode( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, uiAbsPartIdx ) ) ) 1084 1089 { 1085 1090 m_pcEntropyCoder->encodeDeltaDC( pcCU, uiAbsPartIdx ); 1086 1091 } 1092 #endif 1087 1093 #endif 1088 1094 #if H_3D … … 2069 2075 UInt uiStrideTU = pcPredYuv->getStride ( COMPONENT_Y ); 2070 2076 2077 Pel* piRecIPredTU = pcCU->getPic()->getPicYuvRec()->getAddr( COMPONENT_Y, pcCU->getCtuRsAddr(), pcCU->getZorderIdxInCtu() + uiAbsPartIdxTU ); 2078 UInt uiRecIPredStrideTU = pcCU->getPic()->getPicYuvRec()->getStride(COMPONENT_Y); 2079 2080 const Bool bUseFilter = TComPrediction::filteringIntraReferenceSamples(COMPONENT_Y, uiLumaPredMode, puRect.width, puRect.height, chFmt, sps.getSpsRangeExtension().getIntraSmoothingDisabledFlag()); 2081 2071 2082 //===== init pattern for luma prediction ===== 2072 2083 Bool bAboveAvail = false; 2073 2084 Bool bLeftAvail = false; 2074 2085 2075 if (tuRecurseWithPU.ProcessComponentSection(COMPONENT_Y)) 2076 { 2077 initIntraPatternChType( tuRecurseWithPU, bAboveAvail, bLeftAvail, COMPONENT_Y, true DEBUG_STRING_PASS_INTO(sTemp2) ); 2078 } 2086 initIntraPatternChType( tuRecurseWithPU, bAboveAvail, bLeftAvail, COMPONENT_Y, bUseFilter DEBUG_STRING_PASS_INTO(sTemp2) ); 2079 2087 2080 const Bool bUseFilter = TComPrediction::filteringIntraReferenceSamples(COMPONENT_Y, uiLumaPredMode, puRect.width, puRect.height, chFmt, sps.getSpsRangeExtension().getIntraSmoothingDisabledFlag());2088 predIntraAng( COMPONENT_Y, uiLumaPredMode, piOrgTU, uiStrideTU, piPredTU, uiStrideTU, tuRecurseWithPU, bAboveAvail, bLeftAvail, bUseFilter ); 2081 2089 2082 predIntraAng( COMPONENT_Y, uiLumaPredMode, piOrgTU, uiStrideTU, piPredTU, uiStrideTU, tuRecurseWithPU, bAboveAvail, bLeftAvail, bUseFilter, TComPrediction::UseDPCMForFirstPassIntraEstimation(tuRecurseWithPU, uiLumaPredMode) ); 2090 // copy for prediction of next part 2091 for( UInt uiY = 0; uiY < puRect.height; uiY++ ) 2092 { 2093 for( UInt uiX = 0; uiX < puRect.width; uiX++ ) 2094 { 2095 piPredTU [ uiX ] = ClipBD( piPredTU[ uiX ], bitDepthY ); 2096 piRecIPredTU [ uiX ] = piPredTU[ uiX ]; 2097 } 2098 piPredTU += uiStrideTU; 2099 piRecIPredTU += uiRecIPredStrideTU; 2100 } 2083 2101 2084 2102 } while (tuRecurseWithPU.nextSection(tuRecurseCU));
Note: See TracChangeset for help on using the changeset viewer.