Changeset 1221 in 3DVCSoftware
- Timestamp:
- 21 May 2015, 14:39:30 (10 years ago)
- Location:
- branches/HTM-14.1-update-dev1-RWTH
- Files:
-
- 28 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.1-update-dev1-RWTH/HTM.xcodeproj/project.pbxproj
r1219 r1221 339 339 78486FDD1B0B62C70098FD5A /* ContextModel3DBuffer.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = ContextModel3DBuffer.cpp; sourceTree = "<group>"; }; 340 340 78486FDE1B0B62C70098FD5A /* ContextModel3DBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ContextModel3DBuffer.h; sourceTree = "<group>"; }; 341 78486FDF1B0B62C70098FD5A /* ContextTables.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ContextTables.h; sourceTree = "<group>"; };341 78486FDF1B0B62C70098FD5A /* ContextTables.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = ContextTables.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 342 342 78486FE01B0B62C70098FD5A /* Debug.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = Debug.cpp; sourceTree = "<group>"; }; 343 343 78486FE11B0B62C70098FD5A /* Debug.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Debug.h; sourceTree = "<group>"; }; … … 372 372 78486FFE1B0B62C70098FD5A /* TComPicYuv.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TComPicYuv.h; sourceTree = "<group>"; }; 373 373 78486FFF1B0B62C70098FD5A /* TComPicYuvMD5.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TComPicYuvMD5.cpp; sourceTree = "<group>"; }; 374 784870001B0B62C70098FD5A /* TComPrediction.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TComPrediction.cpp; sourceTree = "<group>"; };375 784870011B0B62C70098FD5A /* TComPrediction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TComPrediction.h; sourceTree = "<group>"; };374 784870001B0B62C70098FD5A /* TComPrediction.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; path = TComPrediction.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; }; 375 784870011B0B62C70098FD5A /* TComPrediction.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = TComPrediction.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 376 376 784870021B0B62C70098FD5A /* TComRdCost.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TComRdCost.cpp; sourceTree = "<group>"; }; 377 377 784870031B0B62C70098FD5A /* TComRdCost.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TComRdCost.h; sourceTree = "<group>"; }; … … 395 395 784870151B0B62C70098FD5A /* TComYuv.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TComYuv.cpp; sourceTree = "<group>"; }; 396 396 784870161B0B62C70098FD5A /* TComYuv.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TComYuv.h; sourceTree = "<group>"; }; 397 784870171B0B62C70098FD5A /* TypeDef.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TypeDef.h; sourceTree = "<group>"; };397 784870171B0B62C70098FD5A /* TypeDef.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = TypeDef.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 398 398 784870191B0B62C70098FD5A /* AnnexBread.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = AnnexBread.cpp; sourceTree = "<group>"; }; 399 399 7848701A1B0B62C70098FD5A /* AnnexBread.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AnnexBread.h; sourceTree = "<group>"; }; … … 415 415 7848702A1B0B62C70098FD5A /* TDecGop.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TDecGop.cpp; sourceTree = "<group>"; }; 416 416 7848702B1B0B62C70098FD5A /* TDecGop.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TDecGop.h; sourceTree = "<group>"; }; 417 7848702C1B0B62C70098FD5A /* TDecSbac.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TDecSbac.cpp; sourceTree = "<group>"; };418 7848702D1B0B62C70098FD5A /* TDecSbac.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TDecSbac.h; sourceTree = "<group>"; };417 7848702C1B0B62C70098FD5A /* TDecSbac.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; path = TDecSbac.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; }; 418 7848702D1B0B62C70098FD5A /* TDecSbac.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = TDecSbac.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 419 419 7848702E1B0B62C70098FD5A /* TDecSlice.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TDecSlice.cpp; sourceTree = "<group>"; }; 420 420 7848702F1B0B62C70098FD5A /* TDecSlice.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TDecSlice.h; sourceTree = "<group>"; }; … … 453 453 784870511B0B62C70098FD5A /* TEncSampleAdaptiveOffset.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TEncSampleAdaptiveOffset.cpp; sourceTree = "<group>"; }; 454 454 784870521B0B62C70098FD5A /* TEncSampleAdaptiveOffset.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TEncSampleAdaptiveOffset.h; sourceTree = "<group>"; }; 455 784870531B0B62C70098FD5A /* TEncSbac.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TEncSbac.cpp; sourceTree = "<group>"; };456 784870541B0B62C70098FD5A /* TEncSbac.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TEncSbac.h; sourceTree = "<group>"; };457 784870551B0B62C70098FD5A /* TEncSearch.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TEncSearch.cpp; sourceTree = "<group>"; };458 784870561B0B62C70098FD5A /* TEncSearch.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TEncSearch.h; sourceTree = "<group>"; };455 784870531B0B62C70098FD5A /* TEncSbac.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; path = TEncSbac.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; }; 456 784870541B0B62C70098FD5A /* TEncSbac.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = TEncSbac.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 457 784870551B0B62C70098FD5A /* TEncSearch.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; path = TEncSearch.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; }; 458 784870561B0B62C70098FD5A /* TEncSearch.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = TEncSearch.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; }; 459 459 784870571B0B62C70098FD5A /* TEncSlice.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TEncSlice.cpp; sourceTree = "<group>"; }; 460 460 784870581B0B62C70098FD5A /* TEncSlice.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TEncSlice.h; sourceTree = "<group>"; }; -
branches/HTM-14.1-update-dev1-RWTH/source/App/TAppEncoder/TAppEncTop.cpp
r1219 r1221 2485 2485 dlt.setUseBitmapRep(layer, bDltBitMapRepFlag); 2486 2486 2487 #ifdef DEBUG2488 printf("---------------------------------------------\n");2489 printf("LayerId: %d\n", layer);2490 printf("getUseDLTFlag: %d\n", dlt.getUseDLTFlag(layer));2491 printf("getInterViewDltPredEnableFlag: %d\n", dlt.getInterViewDltPredEnableFlag(layer));2492 printf("getUseBitmapRep: %d\n", dlt.getUseBitmapRep(layer));2493 printf("getNumDepthValues: %d\n", dlt.getNumDepthValues(layer));2494 for(Int i=0; i<dlt.getNumDepthValues(layer); i++)2495 printf("depthValue[%d] = %d\n", i, dlt.idx2DepthValue(layer, i));2496 #endif2487 //#ifdef DEBUG 2488 // printf("---------------------------------------------\n"); 2489 // printf("LayerId: %d\n", layer); 2490 // printf("getUseDLTFlag: %d\n", dlt.getUseDLTFlag(layer)); 2491 // printf("getInterViewDltPredEnableFlag: %d\n", dlt.getInterViewDltPredEnableFlag(layer)); 2492 // printf("getUseBitmapRep: %d\n", dlt.getUseBitmapRep(layer)); 2493 // printf("getNumDepthValues: %d\n", dlt.getNumDepthValues(layer)); 2494 // for(Int i=0; i<dlt.getNumDepthValues(layer); i++) 2495 // printf("depthValue[%d] = %d\n", i, dlt.idx2DepthValue(layer, i)); 2496 //#endif 2497 2497 } 2498 2498 } -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/ContextTables.h
r1209 r1221 177 177 #define NUM_DMM_MODE_CTX 1 ///< number of context models for DMM modes 178 178 #endif 179 #if NH_3D_DMM || NH_3D_ SDC179 #if NH_3D_DMM || NH_3D_INTRA_SDC 180 180 #define NUM_DDC_DATA_CTX 1 ///< number of context models for deltaDC data (DMM or SDC) 181 181 #endif 182 #if H_3D_DIM_SDC182 #if NH_3D_INTRA_SDC 183 183 #define SDC_NUM_RESIDUAL_FLAG_CTX 1 184 184 #define SDC_NUM_RESIDUAL_CTX 1 … … 577 577 }; 578 578 #endif 579 #if NH_3D_DMM || NH_3D_ SDC579 #if NH_3D_DMM || NH_3D_INTRA_SDC 580 580 static const UChar 581 581 INIT_DDC_DATA[3][NUM_DDC_DATA_CTX] = … … 586 586 }; 587 587 #endif 588 #if H_3D_DIM_SDC588 #if NH_3D_INTRA_SDC 589 589 static const UChar 590 590 INIT_SDC_RESIDUAL_FLAG[3][SDC_NUM_RESIDUAL_FLAG_CTX] = -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComCodingStatistics.h
r1209 r1221 93 93 STATS__CABAC_BITS__ALIGNED_ESCAPE_BITS, 94 94 95 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC95 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 96 96 STATS__CABAC_BITS__DELTADC_SIGN_EP, 97 97 STATS__CABAC_BITS__DELTADC_PREFIX, … … 154 154 "CABAC_BITS__ALIGNED_SIGN_BIT", 155 155 "CABAC_BITS__ALIGNED_ESCAPE_BITS" 156 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC156 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 157 157 ,"STATS__CABAC_BITS__DELTADC_SIGN_EP" 158 158 ,"STATS__CABAC_BITS__DELTADC_PREFIX" -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComDataCU.cpp
r1209 r1221 112 112 m_dmm1WedgeTabIdx = NULL; 113 113 #endif 114 #if H_3D_DIM_SDC114 #if NH_3D_INTRA_SDC 115 115 m_pbSDCFlag = NULL; 116 116 m_apSegmentDCOffset[0] = NULL; … … 258 258 m_dmm1WedgeTabIdx = (UInt*)xMalloc(UInt, uiNumPartition); 259 259 #endif 260 #if H_3D_DIM_SDC260 #if NH_3D_INTRA_SDC 261 261 m_pbSDCFlag = (Bool*)xMalloc(Bool, uiNumPartition); 262 262 m_apSegmentDCOffset[0] = (Pel*)xMalloc(Pel, uiNumPartition); … … 473 473 if ( m_dmm1WedgeTabIdx ) { xFree( m_dmm1WedgeTabIdx ); m_dmm1WedgeTabIdx = NULL; } 474 474 #endif 475 #if H_3D_DIM_SDC475 #if NH_3D_INTRA_SDC 476 476 if ( m_pbSDCFlag ) { xFree(m_pbSDCFlag); m_pbSDCFlag = NULL; } 477 477 if ( m_apSegmentDCOffset[0] ) { xFree(m_apSegmentDCOffset[0]); m_apSegmentDCOffset[0] = NULL; } … … 614 614 m_pbSPIVMPFlag[ui] = pcFrom->m_pbSPIVMPFlag[ui]; 615 615 #endif 616 #if H_3D_DIM_SDC617 m_pbSDCFlag[ui] = pcFrom->m_pbSDCFlag[ui];616 #if NH_3D_INTRA_SDC 617 memset( m_pbSDCFlag, false, m_uiNumPartition * sizeof( *m_pbSDCFlag ) ); 618 618 #endif 619 619 #if H_3D_DBBP … … 653 653 memset( m_dmm1WedgeTabIdx, 0, m_uiNumPartition * sizeof( *m_dmm1WedgeTabIdx ) ); 654 654 #endif 655 #if H_3D_DIM_SDC656 memset( m_pbSDCFlag + firstElement, 0, numElements * sizeof( *m_pbSDCFlag) );657 memset( m_apSegmentDCOffset[0] + firstElement, 0, numElements* sizeof( *m_apSegmentDCOffset[0] ) );658 memset( m_apSegmentDCOffset[1] + firstElement, 0, numElements* sizeof( *m_apSegmentDCOffset[1] ) );655 #if NH_3D_INTRA_SDC 656 memset( m_pbSDCFlag, false, m_uiNumPartition * sizeof( *m_pbSDCFlag ) ); 657 memset( m_apSegmentDCOffset[0], 0, m_uiNumPartition * sizeof( *m_apSegmentDCOffset[0] ) ); 658 memset( m_apSegmentDCOffset[1], 0, m_uiNumPartition * sizeof( *m_apSegmentDCOffset[1] ) ); 659 659 #if !TEMP_SDC_CLEANUP // PM: should be obsolete after cleanup 660 660 m_apDmmPredictor[0] = 0; … … 811 811 m_dmm1WedgeTabIdx [ui] = 0; 812 812 #endif 813 #if H_3D_DIM_SDC813 #if NH_3D_INTRA_SDC 814 814 m_pbSDCFlag [ui] = false; 815 815 m_apSegmentDCOffset[0][ui] = 0; … … 917 917 memset( m_dmm1WedgeTabIdx, 0, sizeof(UInt) * m_uiNumPartition ); 918 918 #endif 919 #if H_3D_DIM_SDC919 #if NH_3D_INTRA_SDC 920 920 memset( m_pbSDCFlag, 0, sizeof(Bool) * m_uiNumPartition ); 921 921 memset( m_apSegmentDCOffset[0], 0, sizeof(Pel) * m_uiNumPartition ); … … 974 974 m_dmm1WedgeTabIdx [ui] = pcCU->m_dmm1WedgeTabIdx [uiPartOffset+ui]; 975 975 #endif 976 #if H_3D_DIM_SDC977 978 979 976 #if NH_3D_INTRA_SDC 977 m_pbSDCFlag [ui] = pcCU->m_pbSDCFlag [ uiPartOffset + ui ]; 978 m_apSegmentDCOffset[0][ui] = pcCU->m_apSegmentDCOffset[0] [ uiPartOffset + ui ]; 979 m_apSegmentDCOffset[1][ui] = pcCU->m_apSegmentDCOffset[1] [ uiPartOffset + ui ]; 980 980 #endif 981 981 #if H_3D_DBBP … … 1092 1092 m_dmm1WedgeTabIdx = pcCU->getDmm1WedgeTabIdx() + uiPart; 1093 1093 #endif 1094 #if H_3D_DIM_SDC1094 #if NH_3D_INTRA_SDC 1095 1095 m_pbSDCFlag = pcCU->getSDCFlag() + uiPart; 1096 1096 m_apSegmentDCOffset[0] = pcCU->getSDCSegmentDCOffset(0) + uiPart; … … 1294 1294 memcpy( m_dmm1WedgeTabIdx + uiOffset, pcCU->getDmm1WedgeTabIdx(), sizeof(UInt) * uiNumPartition ); 1295 1295 #endif 1296 #if H_3D_DIM_SDC1297 memcpy( m_pbSDCFlag + uiOffset, pcCU->getSDCFlag(), iSizeInBool);1296 #if NH_3D_INTRA_SDC 1297 memcpy( m_pbSDCFlag + uiOffset, pcCU->getSDCFlag(), sizeof( *m_pbSDCFlag ) * uiNumPartition ); 1298 1298 memcpy( m_apSegmentDCOffset[0] + uiOffset, pcCU->getSDCSegmentDCOffset(0), sizeof( Pel ) * uiNumPartition); 1299 1299 memcpy( m_apSegmentDCOffset[1] + uiOffset, pcCU->getSDCSegmentDCOffset(1), sizeof( Pel ) * uiNumPartition); … … 1417 1417 memcpy( pCtu->getDmm1WedgeTabIdx() + m_absZIdxInCtu, m_dmm1WedgeTabIdx, sizeof(UInt) * m_uiNumPartition ); 1418 1418 #endif 1419 #if H_3D_DIM_SDC1420 memcpy( rpcCU->getSDCFlag() + m_uiAbsIdxInLCU, m_pbSDCFlag, iSizeInBool);1421 memcpy( rpcCU->getSDCSegmentDCOffset(0) + m_uiAbsIdxInLCU, m_apSegmentDCOffset[0], sizeof( Pel ) * m_uiNumPartition);1422 memcpy( rpcCU->getSDCSegmentDCOffset(1) + m_uiAbsIdxInLCU, m_apSegmentDCOffset[1], sizeof( Pel ) * m_uiNumPartition);1419 #if NH_3D_INTRA_SDC 1420 memcpy( pCtu->getSDCFlag() + m_absZIdxInCtu, m_pbSDCFlag, sizeof(Bool) * m_uiNumPartition ); 1421 memcpy( pCtu->getSDCSegmentDCOffset(0) + m_absZIdxInCtu, m_apSegmentDCOffset[0], sizeof( Pel ) * m_uiNumPartition); 1422 memcpy( pCtu->getSDCSegmentDCOffset(1) + m_absZIdxInCtu, m_apSegmentDCOffset[1], sizeof( Pel ) * m_uiNumPartition); 1423 1423 #endif 1424 1424 #if H_3D_DBBP … … 1478 1478 #if H_3D_SPIVMP 1479 1479 memcpy( rpcCU->getSPIVMPFlag() + uiPartOffset, m_pbSPIVMPFlag, sizeof(Bool) * uiQNumPart ); 1480 #endif1481 #if H_3D_DIM_SDC1482 memcpy( rpcCU->getSDCFlag() + uiPartOffset, m_pbSDCFlag, iSizeInBool );1483 memcpy( rpcCU->getSDCSegmentDCOffset(0) + uiPartOffset, m_apSegmentDCOffset[0], sizeof( Pel ) * uiQNumPart);1484 memcpy( rpcCU->getSDCSegmentDCOffset(1) + uiPartOffset, m_apSegmentDCOffset[1], sizeof( Pel ) * uiQNumPart);1485 1480 #endif 1486 1481 #if H_3D_DBBP … … 2136 2131 #endif 2137 2132 2138 #if H_3D_DIM_SDC2139 UInt TComDataCU::getCtxSDCFlag( UInt uiAbsPartIdx )2140 {2141 return 0;2142 }2143 2144 #endif2145 2146 2133 2147 2134 UInt TComDataCU::getCtxInterDir( UInt uiAbsPartIdx ) … … 2395 2382 } 2396 2383 2397 #if H_3D_DIM_SDC2398 Void TComDataCU::setSDCFlagSubParts ( Bool bSDCFlag, UInt uiAbsPartIdx, UInt uiDepth )2384 #if NH_3D_INTRA_SDC 2385 Void TComDataCU::setSDCFlagSubParts ( Bool bSDCFlag, UInt absPartIdx, UInt depth ) 2399 2386 { 2400 2387 assert( sizeof( *m_pbSDCFlag) == 1 ); 2401 memset( m_pbSDCFlag + uiAbsPartIdx, bSDCFlag, m_pcPic->getNumPartInCU() >> ( 2 * uiDepth ) );2388 memset( m_pbSDCFlag + absPartIdx, bSDCFlag, m_pcPic->getNumPartitionsInCtu() >> ( 2 * depth ) ); 2402 2389 } 2403 2390 -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComDataCU.h
r1209 r1221 186 186 UInt* m_dmm1WedgeTabIdx; 187 187 #endif 188 #if H_3D_DIM_SDC188 #if NH_3D_INTRA_SDC 189 189 Bool* m_pbSDCFlag; 190 190 Pel* m_apSegmentDCOffset[2]; … … 563 563 Void setDmm1WedgeTabIdxSubParts ( UInt tabIdx, UInt uiAbsPartIdx, UInt uiDepth ); 564 564 #endif 565 #if H_3D_DIM_SDC565 #if NH_3D_INTRA_SDC 566 566 Bool* getSDCFlag () { return m_pbSDCFlag; } 567 567 Bool getSDCFlag ( UInt uiIdx ) { return m_pbSDCFlag[uiIdx]; } … … 577 577 Pel getDmmPredictor ( UInt uiSeg) { return m_apDmmPredictor[uiSeg]; } 578 578 #endif 579 UInt getCtxSDCFlag ( UInt uiAbsPartIdx );580 579 #endif 581 580 -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComPrediction.cpp
r1219 r1221 535 535 assert( iWidth == iHeight ); 536 536 assert( iWidth >= DMM_MIN_SIZE && iWidth <= DMM_MAX_SIZE ); 537 #if H_3D_DIM_SDC537 #if NH_3D_INTRA_SDC 538 538 assert( !pcCU->getSDCFlag( uiAbsPartIdx ) ); 539 539 #endif … … 569 569 assignBiSegDCs( pDst, uiStride, biSegPattern, patternStride, segDC1, segDC2 ); 570 570 #if !TEMP_SDC_CLEANUP // PM: should be obsolete after cleanup 571 #if H_3D_DIM_SDC571 #if NH_3D_INTRA_SDC 572 572 pcCU->setDmmPredictor(segDC1, 0); 573 573 pcCU->setDmmPredictor(segDC2, 1); … … 2389 2389 2390 2390 #if TEMP_SDC_CLEANUP // PM: consider this cleanup for SDC 2391 #if NH_3D_ SDC2391 #if NH_3D_INTRA_SDC 2392 2392 Void TComPrediction::predConstantSDC( Pel* ptrSrc, UInt srcStride, UInt uiSize, Pel& predDC ) 2393 2393 { … … 2400 2400 #endif 2401 2401 #else // PM: should be obsolete after cleanup 2402 #if H_3D_DIM_SDC2402 #if NH_3D_INTRA_SDC 2403 2403 Void TComPrediction::analyzeSegmentsSDC( Pel* pOrig, UInt uiStride, UInt uiSize, Pel* rpSegMeans, UInt uiNumSegments, Bool* pMask, UInt uiMaskStride 2404 2404 ,UInt uiIntraMode … … 2465 2465 } 2466 2466 } 2467 #endif // H_3D_DIM_SDC2467 #endif // NH_3D_INTRA_SDC 2468 2468 #endif 2469 2469 -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComPrediction.h
r1209 r1221 171 171 #endif 172 172 #if TEMP_SDC_CLEANUP // PM: consider this cleanup for SDC 173 #if NH_3D_ SDC173 #if NH_3D_INTRA_SDC 174 174 Void predConstantSDC ( Pel* ptrSrc, UInt srcStride, UInt uiSize, Pel& predDC ); 175 175 #endif 176 176 #else // PM: should be obsolete after cleanup 177 #if H_3D_DIM_SDC177 #if NH_3D_INTRA_SDC 178 178 Void analyzeSegmentsSDC ( Pel* pOrig, UInt uiStride, UInt uiSize, Pel* rpSegMeans, UInt uiNumSegments, Bool* pMask, UInt uiMaskStride, UInt uiIntraMode, Bool orgDC=false ); 179 179 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComRom.cpp
r1209 r1221 543 543 UInt64 g_nSymbolCounter = 0; 544 544 #if H_MV_ENC_DEC_TRAC 545 Bool g_traceCU = false;545 Bool g_traceCU = true; 546 546 Bool g_tracePU = false; 547 547 Bool g_traceTU = false; 548 Bool g_disableNumbering = false;549 Bool g_disableHLSTrace = false;548 Bool g_disableNumbering = true; 549 Bool g_disableHLSTrace = true; 550 550 UInt64 g_stopAtCounter = 937234; 551 551 Bool g_traceCopyBack = false; -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TComRom.h
r1219 r1221 157 157 // Change later 158 158 #ifndef ENC_DEC_TRACE 159 #define ENC_DEC_TRACE 0159 #define ENC_DEC_TRACE 1 160 160 #endif 161 161 #endif … … 176 176 #define DTRACE_CABAC_R( x,y ) if ( ( g_nSymbolCounter >= COUNTER_START && g_nSymbolCounter <= COUNTER_END )|| g_bJustDoIt ) fprintf( g_hTrace, x, y ); 177 177 #define DTRACE_CABAC_N if ( ( g_nSymbolCounter >= COUNTER_START && g_nSymbolCounter <= COUNTER_END )|| g_bJustDoIt ) fprintf( g_hTrace, "\n" ); 178 178 179 #if H_MV_ENC_DEC_TRAC 179 180 extern Bool g_traceCU; -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibCommon/TypeDef.h
r1219 r1221 70 70 #define NH_3D_VSO 1 71 71 #define NH_3D_DMM 1 // Depth modeling modes 72 #define NH_3D_ SDC 1 // Segment-wise DC coding for intra and inter73 #define NH_3D_ DLT 1 // Depth Lookup Table72 #define NH_3D_DLT 0 // Depth Lookup Table 73 #define NH_3D_INTRA_SDC 1 // Segment-wise DC Coding method for INTRA 74 74 #define NH_3D_ENC_DEPTH 1 // Encoder optimizations for depth, incl. 75 75 // HHI_DEPTH_INTRA_SEARCH_RAU_C0160 -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1219 r1221 628 628 } 629 629 630 #ifdef DEBUG631 printf("---------------------------------------------\n");632 printf("LayerId: %d\n", layerId);633 printf("getUseDLTFlag: %d\n", pcDLT->getUseDLTFlag(layerId));634 printf("getInterViewDltPredEnableFlag: %d\n", pcDLT->getInterViewDltPredEnableFlag(layerId));635 printf("getUseBitmapRep: %d\n", pcDLT->getUseBitmapRep(layerId));636 printf("getNumDepthValues: %d\n", pcDLT->getNumDepthValues(layerId));637 for(Int i=0; i<pcDLT->getNumDepthValues(layerId); i++)638 printf("depthValue[%d] = %d\n", i, pcDLT->idx2DepthValue(layerId, i));639 #endif630 //#ifdef DEBUG 631 // printf("---------------------------------------------\n"); 632 // printf("LayerId: %d\n", layerId); 633 // printf("getUseDLTFlag: %d\n", pcDLT->getUseDLTFlag(layerId)); 634 // printf("getInterViewDltPredEnableFlag: %d\n", pcDLT->getInterViewDltPredEnableFlag(layerId)); 635 // printf("getUseBitmapRep: %d\n", pcDLT->getUseBitmapRep(layerId)); 636 // printf("getNumDepthValues: %d\n", pcDLT->getNumDepthValues(layerId)); 637 // for(Int i=0; i<pcDLT->getNumDepthValues(layerId); i++) 638 // printf("depthValue[%d] = %d\n", i, pcDLT->idx2DepthValue(layerId, i)); 639 //#endif 640 640 } 641 641 } … … 3390 3390 } 3391 3391 #endif 3392 #if H_3D_INTER_SDC3392 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 3393 3393 Void TDecCavlc::parseSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 3394 3394 { -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecCAVLC.h
r1209 r1221 123 123 Void parseICFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 124 124 #endif 125 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC125 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 126 126 Void parseDeltaDC ( TComDataCU* /*pcCU*/, UInt /*absPartIdx*/, UInt /*depth*/ ) { assert(0); }; 127 127 #endif 128 #if H_3D_INTER_SDC128 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 129 129 Void parseSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 130 130 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecCu.cpp
r1219 r1221 527 527 if(pcCU->getIPCMFlag(uiAbsPartIdx)) 528 528 { 529 #if H_3D_DIM_SDC529 #if NH_3D_INTRA_SDC 530 530 m_pcEntropyDecoder->decodeSDCFlag( pcCU, uiAbsPartIdx, uiDepth ); 531 531 #endif … … 642 642 break; 643 643 case MODE_INTRA: 644 #if H_3D645 if( m_ppcCU[uiDepth]->getDISFlag(0))646 { 647 xReconDIS( m_ppcCU[uiDepth], 0, uiDepth );648 } 649 #if H_3D_DIM_SDC644 #if NH_3D 645 if( false /*m_ppcCU[uiDepth]->getDISFlag(0)*/ ) 646 { 647 //xReconDIS( m_ppcCU[uiDepth], 0, uiDepth ); 648 } 649 #if NH_3D_INTRA_SDC 650 650 else if( m_ppcCU[uiDepth]->getSDCFlag(0) ) 651 651 { … … 1183 1183 } 1184 1184 1185 #if H_3D_DIM_SDC1185 #if NH_3D_INTRA_SDC 1186 1186 Void TDecCu::xReconIntraSDC( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 1187 1187 { … … 1191 1191 TComYuv* pcResiYuv = m_ppcYuvResi[uiDepth]; 1192 1192 1193 Bool bAboveAvail = false;1194 Bool bLeftAvail = false;1195 1193 UInt uiWidth = pcCU->getWidth ( 0 ); 1196 1194 UInt uiHeight = pcCU->getHeight( 0 ); 1197 1195 UInt uiLumaPredMode = pcCU->getIntraDir( CHANNEL_TYPE_LUMA, uiAbsPartIdx ); 1196 const Int bitDepthY = pcCU->getSlice()->getSPS()->getBitDepth(CHANNEL_TYPE_LUMA); 1197 const TComSPS &sps = *(pcCU->getSlice()->getSPS()); 1198 const ChromaFormat chFmt = pcCU->getPic()->getChromaFormat(); 1198 1199 1199 1200 UInt sdcDepth = 0; … … 1203 1204 Pel* piResi; 1204 1205 1205 UInt uiZOrder; 1206 Pel* piRecIPred; 1206 Pel* piRecIPred; 1207 1207 UInt uiRecIPredStride; 1208 1208 … … 1214 1214 1215 1215 #if NH_3D_DMM 1216 TComWedgelet* dmm4Segmentation = NULL;1217 1216 if( isDmmMode( uiLumaPredMode ) ) 1218 1217 { … … 1262 1261 uiNumSegments = 1; 1263 1262 1264 UInt numParts = 1; 1265 UInt uiSubPartIdx = uiAbsPartIdx; 1266 1267 if ((uiWidth >> pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize()) > 1) 1268 { 1269 numParts = uiWidth * uiWidth >> (2 * pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize()); 1263 if( ( uiWidth >> pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize() ) > 1 ) 1264 { 1270 1265 sdcDepth = g_aucConvertToBit[uiWidth] + 2 - pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize(); 1271 uiWidth = uiHeight = (1 << pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize()); 1272 } 1273 1274 for ( Int i = 0; i < numParts; i++ ) 1275 { 1276 uiStride = pcRecoYuv->getStride (); 1277 piReco = pcRecoYuv->getLumaAddr( uiSubPartIdx ); 1278 piPred = pcPredYuv->getLumaAddr( uiSubPartIdx ); 1279 piResi = pcResiYuv->getLumaAddr( uiSubPartIdx ); 1280 1281 uiZOrder = pcCU->getZorderIdxInCU() + uiSubPartIdx; 1282 piRecIPred = pcCU->getPic()->getPicYuvRec()->getLumaAddr( pcCU->getAddr(), uiZOrder ); 1283 uiRecIPredStride = pcCU->getPic()->getPicYuvRec()->getStride (); 1284 1285 AOF( uiWidth == uiHeight ); 1286 1287 //===== init availability pattern ===== 1288 pcCU->getPattern()->initPattern ( pcCU, sdcDepth, uiSubPartIdx ); 1289 pcCU->getPattern()->initAdiPattern( pcCU, uiSubPartIdx, sdcDepth, m_pcPrediction->getPredicBuf(), m_pcPrediction->getPredicBufWidth(), m_pcPrediction->getPredicBufHeight(), bAboveAvail, bLeftAvail ); 1290 1291 m_pcPrediction->predIntraLumaAng( pcCU->getPattern(), uiLumaPredMode, piPred, uiStride, uiWidth, uiHeight, bAboveAvail, bLeftAvail ); 1292 1293 if ( numParts > 1 ) 1294 { 1295 for( UInt uiY = 0; uiY < uiHeight; uiY++ ) 1296 { 1297 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 1298 { 1299 piReco [ uiX ] = ClipY( piPred[ uiX ] ); 1300 piRecIPred [ uiX ] = piReco[ uiX ]; 1301 } 1302 piPred += uiStride; 1303 piReco += uiStride; 1304 piRecIPred += uiRecIPredStride; 1305 } 1306 } 1307 uiSubPartIdx += ( (uiWidth * uiWidth) >> 4 ); 1308 } 1266 } 1267 1268 //===== loop over partitions ===== 1269 TComTURecurse tuRecurseCU(pcCU, 0); 1270 TComTURecurse tuRecurseWithPU(tuRecurseCU, false, (sdcDepth==0)?TComTU::DONT_SPLIT:TComTU::QUAD_SPLIT); 1271 1272 do 1273 { 1274 const TComRectangle &puRect = tuRecurseWithPU.getRect(COMPONENT_Y); 1275 const UInt uiAbsPartIdxTU = tuRecurseWithPU.GetAbsPartIdxTU(); 1276 1277 Pel* piPredTU = pcPredYuv->getAddr ( COMPONENT_Y, uiAbsPartIdxTU ); 1278 UInt uiStrideTU = pcPredYuv->getStride ( COMPONENT_Y ); 1279 1280 //===== init pattern for luma prediction ===== 1281 Bool bAboveAvail = false; 1282 Bool bLeftAvail = false; 1283 1284 if (tuRecurseWithPU.ProcessComponentSection(COMPONENT_Y)) 1285 { 1286 m_pcPrediction->initIntraPatternChType( tuRecurseWithPU, bAboveAvail, bLeftAvail, COMPONENT_Y, true DEBUG_STRING_PASS_INTO(sTemp2) ); 1287 } 1288 1289 const Bool bUseFilter = TComPrediction::filteringIntraReferenceSamples(COMPONENT_Y, uiLumaPredMode, puRect.width, puRect.height, chFmt, sps.getSpsRangeExtension().getIntraSmoothingDisabledFlag()); 1290 1291 m_pcPrediction->predIntraAng( COMPONENT_Y, uiLumaPredMode, NULL, uiStrideTU, piPredTU, uiStrideTU, tuRecurseWithPU, bAboveAvail, bLeftAvail, bUseFilter, TComPrediction::UseDPCMForFirstPassIntraEstimation(tuRecurseWithPU, uiLumaPredMode) ); 1292 1293 } while (tuRecurseWithPU.nextSection(tuRecurseCU)); 1309 1294 1310 1295 // reset to full block … … 1312 1297 uiHeight = pcCU->getHeight( 0 ); 1313 1298 1314 piReco = pcRecoYuv->getLumaAddr( uiAbsPartIdx);1315 pi Pred = pcPredYuv->getLumaAddr(uiAbsPartIdx );1316 pi Resi = pcResiYuv->getLumaAddr(uiAbsPartIdx );1317 1318 uiZOrder = pcCU->getZorderIdxInCU() + uiAbsPartIdx;1319 piRecIPred = pcCU->getPic()->getPicYuvRec()->get LumaAddr( pcCU->getAddr(), uiZOrder);1320 uiRecIPredStride = pcCU->getPic()->getPicYuvRec()->getStride ();1299 uiStride = pcRecoYuv->getStride( COMPONENT_Y ); 1300 piReco = pcRecoYuv->getAddr ( COMPONENT_Y, uiAbsPartIdx ); 1301 piPred = pcPredYuv->getAddr ( COMPONENT_Y, uiAbsPartIdx ); 1302 piResi = pcResiYuv->getAddr ( COMPONENT_Y, uiAbsPartIdx ); 1303 1304 piRecIPred = pcCU->getPic()->getPicYuvRec()->getAddr ( COMPONENT_Y, pcCU->getCtuRsAddr(), pcCU->getZorderIdxInCtu() + uiAbsPartIdx ); 1305 uiRecIPredStride = pcCU->getPic()->getPicYuvRec()->getStride( COMPONENT_Y ); 1321 1306 1322 1307 m_pcPrediction->predConstantSDC( piPred, uiStride, uiWidth, apDCPredValues[0] ); apDCPredValues[1] = 0; … … 1488 1473 Pel pResiDC = apDCResiValues[ucSegment]; 1489 1474 1490 pReco [ uiX ] = Clip Y( pPred[ uiX ] + pResiDC);1475 pReco [ uiX ] = ClipBD( pPred[ uiX ] + pResiDC, bitDepthY ); 1491 1476 pRecIPred[ uiX ] = pReco[ uiX ]; 1492 1477 } … … 1498 1483 } 1499 1484 1500 // clear UV1501 UInt uiStrideC = pcPredYuv->get CStride();1502 Pel *pRecCb = pcPredYuv->get CbAddr();1503 Pel *pRecCr = pcPredYuv->get CrAddr();1485 // clear chroma 1486 UInt uiStrideC = pcPredYuv->getStride( COMPONENT_Cb ); 1487 Pel *pRecCb = pcPredYuv->getAddr ( COMPONENT_Cb, uiAbsPartIdx ); 1488 Pel *pRecCr = pcPredYuv->getAddr ( COMPONENT_Cr, uiAbsPartIdx ); 1504 1489 1505 1490 for (Int y=0; y<uiHeight/2; y++) -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecCu.h
r1200 r1221 127 127 Void xReconDIS ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 128 128 #endif 129 #if H_3D_DIM_SDC129 #if NH_3D_INTRA_SDC 130 130 Void xReconIntraSDC ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 131 131 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecEntropy.cpp
r1209 r1221 162 162 { 163 163 decodeIntraDirModeLuma ( pcCU, uiAbsPartIdx, uiDepth ); 164 #if H_3D_DIM_SDC164 #if NH_3D_INTRA_SDC 165 165 decodeSDCFlag ( pcCU, uiAbsPartIdx, uiDepth ); 166 if(!pcCU->getSDCFlag(uiAbsPartIdx))167 166 #endif 168 167 if (pcCU->getPic()->getChromaFormat()!=CHROMA_400) … … 961 960 Void TDecEntropy::decodeCoeff( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, Bool& bCodeDQP, Bool& isChromaQpAdjCoded ) 962 961 { 963 #if H_3D_DIM_SDC962 #if NH_3D_INTRA_SDC 964 963 if( pcCU->getSDCFlag( uiAbsPartIdx ) && pcCU->isIntra( uiAbsPartIdx) ) 965 964 { 966 965 assert( pcCU->getPartitionSize(uiAbsPartIdx) == SIZE_2Nx2N ); 967 966 assert( pcCU->getTransformIdx(uiAbsPartIdx) == 0 ); 968 assert( pcCU->getCbf(uiAbsPartIdx, TEXT_LUMA) == 1 ); 969 assert( pcCU->getCbf(uiAbsPartIdx, TEXT_CHROMA_U) == 1 ); 970 assert( pcCU->getCbf(uiAbsPartIdx, TEXT_CHROMA_V) == 1 ); 967 assert( pcCU->getCbf(uiAbsPartIdx, COMPONENT_Y) == 1 ); 971 968 } 972 969 #endif … … 982 979 if( pcCU->getSlice()->getIsDepth() ) 983 980 { 984 #if H_3D_DIM_SDC || H_3D_INTER_SDC981 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 985 982 if( pcCU->getSDCFlag( uiAbsPartIdx ) ) 986 983 { … … 1040 1037 } 1041 1038 1042 #if H_3D_INTER_SDC1039 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 1043 1040 Void TDecEntropy::decodeSDCFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 1044 1041 { -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecEntropy.h
r1209 r1221 91 91 virtual Void parseICFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) = 0; 92 92 #endif 93 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC93 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 94 94 virtual Void parseDeltaDC ( TComDataCU* pcCU, UInt absPartIdx, UInt depth ) = 0; 95 95 #endif 96 #if H_3D_INTER_SDC96 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 97 97 virtual Void parseSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) = 0; 98 98 #endif … … 183 183 #endif 184 184 185 #if H_3D_INTER_SDC185 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 186 186 Void decodeSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 187 187 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecSbac.cpp
r1209 r1221 111 111 , m_cDmmModeSCModel ( 1, 1, NUM_DMM_MODE_CTX , m_contextModels + m_numContextModels, m_numContextModels) 112 112 #endif 113 #if NH_3D_DMM || NH_3D_ SDC113 #if NH_3D_DMM || NH_3D_INTRA_SDC 114 114 , m_cDdcDataSCModel ( 1, 1, NUM_DDC_DATA_CTX , m_contextModels + m_numContextModels, m_numContextModels) 115 115 #endif 116 #if H_3D_DIM_SDC116 #if NH_3D_INTRA_SDC 117 117 , m_cSDCResidualFlagSCModel ( 1, 1, SDC_NUM_RESIDUAL_FLAG_CTX , m_contextModels + m_numContextModels, m_numContextModels) 118 118 , m_cSDCResidualSCModel ( 1, 1, SDC_NUM_RESIDUAL_CTX , m_contextModels + m_numContextModels, m_numContextModels) … … 202 202 m_cDmmModeSCModel.initBuffer ( sliceType, qp, (UChar*)INIT_DMM_MODE ); 203 203 #endif 204 #if NH_3D_DMM || NH_3D_ SDC204 #if NH_3D_DMM || NH_3D_INTRA_SDC 205 205 m_cDdcDataSCModel.initBuffer ( sliceType, qp, (UChar*)INIT_DDC_DATA ); 206 206 #endif 207 #if H_3D_DIM_SDC207 #if NH_3D_INTRA_SDC 208 208 m_cSDCResidualFlagSCModel.initBuffer ( sliceType, qp, (UChar*)INIT_SDC_RESIDUAL_FLAG ); 209 209 m_cSDCResidualSCModel.initBuffer ( sliceType, qp, (UChar*)INIT_SDC_RESIDUAL ); … … 247 247 #if H_3D_IC 248 248 m_cCUICFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_IC_FLAG ); 249 #endif250 #if H_3D_DIM_SDC251 m_cSDCResidualFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL_FLAG );252 m_cSDCResidualSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL );253 m_cSDCFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_FLAG );254 m_cDdcFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_DDC_FLAG );255 249 #endif 256 250 #if H_3D_DBBP … … 2340 2334 #endif 2341 2335 2342 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC2336 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 2343 2337 Void TDecSbac::parseDeltaDC( TComDataCU* pcCU, UInt absPartIdx, UInt depth ) 2344 2338 { 2345 #if H_3D_DIM_SDC || H_3D_INTER_SDC2339 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 2346 2340 if( !(pcCU->getSDCFlag( absPartIdx )) ) 2347 2341 #endif … … 2352 2346 2353 2347 UInt symbol = 1; 2354 #if H_3D_DIM_SDC2348 #if NH_3D_INTRA_SDC 2355 2349 if( pcCU->isIntra( absPartIdx ) && pcCU->getSDCFlag( absPartIdx )) 2356 2350 { 2357 2351 m_pcTDecBinIf->decodeBin( symbol, m_cDdcFlagSCModel.get( 0, 0, 0 ) ); 2358 2359 pcCU->setTrIdxSubParts( 0, absPartIdx, depth);2360 pcCU->setCbfSubParts( 1, 1, 1, absPartIdx, depth);2352 assert( pcCU->getPartitionSize( absPartIdx ) == SIZE_2Nx2N ); 2353 assert( pcCU->getTransformIdx(absPartIdx) == 0 ); 2354 assert( pcCU->getCbf(absPartIdx, COMPONENT_Y) == 1 ); 2361 2355 } 2362 2356 #endif … … 2376 2370 if( pcCU->isIntra( absPartIdx ) ) 2377 2371 { 2378 #if H_3D_DIM_SDC2372 #if NH_3D_INTRA_SDC 2379 2373 if( pcCU->getSDCFlag( absPartIdx ) ) 2380 2374 { … … 2387 2381 pcCU->setDmmDeltaDC( getDmmType( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, absPartIdx ) ), segment, absPartIdx, valDeltaDC ); 2388 2382 #endif 2389 #if H_3D_DIM_SDC2383 #if NH_3D_INTRA_SDC 2390 2384 } 2391 2385 #endif … … 2415 2409 } 2416 2410 } 2411 2412 DTRACE_CU("delta_dc", rValDeltaDC); 2417 2413 } 2418 2414 … … 2507 2503 } 2508 2504 #endif 2509 #if H_3D_INTER_SDC2505 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 2510 2506 Void TDecSbac::parseSDCFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 2511 2507 { 2512 2508 UInt uiSymbol = 0; 2513 UInt uiCtxSDCFlag = pcCU->getCtxSDCFlag( uiAbsPartIdx ); 2514 2515 m_pcTDecBinIf->decodeBin( uiSymbol, m_cSDCFlagSCModel.get( 0, 0, uiCtxSDCFlag ) ); 2509 2510 m_pcTDecBinIf->decodeBin( uiSymbol, m_cSDCFlagSCModel.get( 0, 0, 0 ) ); 2516 2511 DTRACE_CU("dc_only_flag", uiSymbol) 2517 2512 if( uiSymbol ) … … 2519 2514 pcCU->setSDCFlagSubParts( true, uiAbsPartIdx, uiDepth ); 2520 2515 pcCU->setTrIdxSubParts( 0, uiAbsPartIdx, uiDepth ); 2521 pcCU->setCbfSubParts( 1, 1, 1, uiAbsPartIdx, uiDepth);2516 pcCU->setCbfSubParts(1, COMPONENT_Y, uiAbsPartIdx, uiDepth); 2522 2517 } 2523 2518 else -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibDecoder/TDecSbac.h
r1209 r1221 107 107 Void xReadCoefRemainExGolomb ( UInt &rSymbol, UInt &rParam, const Bool useLimitedPrefixLength, const Int maxLog2TrDynamicRange ); 108 108 #endif 109 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC109 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 110 110 Void xReadExGolombLevelDdc( UInt& ruiSymbol ); 111 111 Void xParseDeltaDC ( Pel& rValDeltaDC, UInt uiNumSeg ); … … 116 116 Void xParseDmm1WedgeIdx ( UInt& ruiTabIdx, Int iNumBit ); 117 117 #endif 118 #if H_3D_DIM_SDC118 #if NH_3D_INTRA_SDC 119 119 Void xParseSDCResidualData ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, UInt uiPart ); 120 120 #endif 121 #if H_3D_INTER_SDC121 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 122 122 Void parseSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 123 123 #endif … … 136 136 Void parseDIS ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 137 137 #endif 138 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC138 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 139 139 Void parseDeltaDC ( TComDataCU* pcCU, UInt absPartIdx, UInt depth ); 140 140 #endif … … 229 229 ContextModel3DBuffer m_cDmmModeSCModel; 230 230 #endif 231 #if NH_3D_DMM || NH_3D_ SDC231 #if NH_3D_DMM || NH_3D_INTRA_SDC 232 232 ContextModel3DBuffer m_cDdcDataSCModel; 233 233 #endif 234 #if H_3D_DIM_SDC234 #if NH_3D_INTRA_SDC 235 235 ContextModel3DBuffer m_cSDCResidualFlagSCModel; 236 236 ContextModel3DBuffer m_cSDCResidualSCModel; -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncCavlc.cpp
r1219 r1221 2843 2843 assert(0); 2844 2844 } 2845 #if H_3D_INTER_SDC2845 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 2846 2846 Void TEncCavlc::codeSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ) 2847 2847 { -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncCavlc.h
r1209 r1221 126 126 Void codeMergeFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 127 127 Void codeMergeIndex ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 128 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC128 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 129 129 Void codeDeltaDC ( TComDataCU* /*pcCU*/, UInt /*absPartIdx*/ ) { assert(0); }; 130 130 #endif … … 136 136 #endif 137 137 138 #if H_3D_INTER_SDC138 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 139 139 Void codeSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 140 140 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncCu.cpp
r1209 r1221 1597 1597 if(pcCU->getIPCMFlag(uiAbsPartIdx)) 1598 1598 { 1599 #if H_3D_DIM_SDC1600 m_pcEntropyCoder->encodeSDCFlag( pcCU, uiAbsPartIdx , false);1599 #if NH_3D_INTRA_SDC 1600 m_pcEntropyCoder->encodeSDCFlag( pcCU, uiAbsPartIdx ); 1601 1601 #endif 1602 1602 … … 1612 1612 m_pcEntropyCoder->encodeDBBPFlag( pcCU, uiAbsPartIdx ); 1613 1613 #endif 1614 #if H_3D_DIM_SDC1615 m_pcEntropyCoder->encodeSDCFlag( pcCU, uiAbsPartIdx , false);1614 #if NH_3D_INTRA_SDC 1615 m_pcEntropyCoder->encodeSDCFlag( pcCU, uiAbsPartIdx ); 1616 1616 #endif 1617 1617 #if H_3D_ARP … … 2470 2470 rpcTempCU->setDISFlagSubParts(true, 0, uiDepth); 2471 2471 rpcTempCU->setLumaIntraDirSubParts (DC_IDX, 0, uiDepth); 2472 #if H_3D_DIM_SDC2472 #if NH_3D_INTRA_SDC 2473 2473 rpcTempCU->setSDCFlagSubParts( false, 0, uiDepth); 2474 2474 #endif … … 2700 2700 m_pcPredSearch->estIntraPredChromaQT( rpcTempCU, m_ppcOrigYuv[uiDepth], m_ppcPredYuvTemp[uiDepth], m_ppcResiYuvTemp[uiDepth], m_ppcRecoYuvTemp[uiDepth], resiLuma DEBUG_STRING_PASS_INTO(sTest) ); 2701 2701 } 2702 #if H_3D_DIM_SDC 2703 if( !rpcTempCU->getSDCFlag( 0 ) ) 2702 2703 #if NH_3D_INTRA_SDC 2704 if( rpcTempCU->getSDCFlag( 0 ) ) 2705 { 2706 assert( rpcTempCU->getTransformIdx(0) == 0 ); 2707 assert( rpcTempCU->getCbf(0, COMPONENT_Y) == 1 ); 2708 } 2704 2709 #endif 2705 2710 … … 2720 2725 m_pcEntropyCoder->encodePredInfo( rpcTempCU, 0 ); 2721 2726 m_pcEntropyCoder->encodeIPCMInfo(rpcTempCU, 0, true ); 2722 #if H_3D_DIM_SDC2727 #if NH_3D_INTRA_SDC 2723 2728 m_pcEntropyCoder->encodeSDCFlag( rpcTempCU, 0, true ); 2724 2729 #endif … … 2805 2810 m_pcEntropyCoder->encodePartSize ( rpcTempCU, 0, uiDepth, true ); 2806 2811 m_pcEntropyCoder->encodeIPCMInfo ( rpcTempCU, 0, true ); 2807 #if H_3D_DIM_SDC2812 #if NH_3D_INTRA_SDC 2808 2813 m_pcEntropyCoder->encodeSDCFlag( rpcTempCU, 0, true ); 2809 2814 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncEntropy.cpp
r1209 r1221 514 514 { 515 515 encodeIntraDirModeLuma ( pcCU, uiAbsPartIdx,true ); 516 #if H_3D_DIM_SDC 517 if(!pcCU->getSDCFlag(uiAbsPartIdx)) 518 #endif 516 519 517 if (pcCU->getPic()->getChromaFormat()!=CHROMA_400) 520 518 { … … 713 711 #endif 714 712 715 #if H_3D_DIM_SDC713 #if NH_3D_INTRA_SDC 716 714 if( pcCU->getSDCFlag( uiAbsPartIdx ) && pcCU->isIntra( uiAbsPartIdx ) ) 717 715 { 718 716 assert( pcCU->getPartitionSize(uiAbsPartIdx) == SIZE_2Nx2N ); 719 717 assert( pcCU->getTransformIdx(uiAbsPartIdx) == 0 ); 720 assert( pcCU->getCbf(uiAbsPartIdx, TEXT_LUMA) == 1 ); 721 assert( pcCU->getCbf(uiAbsPartIdx, TEXT_CHROMA_U) == 1 ); 722 assert( pcCU->getCbf(uiAbsPartIdx, TEXT_CHROMA_V) == 1 ); 718 assert( pcCU->getCbf(uiAbsPartIdx, COMPONENT_Y) == 1 ); 723 719 } 724 720 #endif … … 734 730 if( pcCU->getSlice()->getIsDepth() ) 735 731 { 736 #if H_3D_DIM_SDC || H_3D_INTER_SDC732 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 737 733 if( pcCU->getSDCFlag( uiAbsPartIdx ) ) 738 734 { … … 843 839 } 844 840 845 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC841 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 846 842 Void TEncEntropy::encodeDeltaDC ( TComDataCU* pcCU, UInt absPartIdx ) 847 843 { … … 849 845 } 850 846 #endif 851 #if H_3D_INTER_SDC847 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 852 848 Void TEncEntropy::encodeSDCFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, Bool bRD ) 853 849 { 850 if( bRD ) 851 { 852 uiAbsPartIdx = 0; 853 } 854 854 855 if( ( !pcCU->isIntra( uiAbsPartIdx ) && !pcCU->getSlice()->getInterSdcFlag() ) || 855 856 ( pcCU->isIntra( uiAbsPartIdx ) && !pcCU->getSlice()->getIntraSdcWedgeFlag() ) ) … … 863 864 } 864 865 865 assert( pcCU->getPartitionSize( uiAbsPartIdx ) == SIZE_2Nx2N || ( !pcCU->isIntra( uiAbsPartIdx ) && !pcCU->isSkipped( uiAbsPartIdx ) ) ); 866 867 if( bRD ) 868 { 869 uiAbsPartIdx = 0; 870 } 866 assert( pcCU->getPartitionSize( uiAbsPartIdx ) == SIZE_2Nx2N ); 871 867 872 868 m_pcEntropyCoderIf->codeSDCFlag( pcCU, uiAbsPartIdx ); -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncEntropy.h
r1209 r1221 84 84 virtual Void codeMergeFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ) = 0; 85 85 virtual Void codeMergeIndex ( TComDataCU* pcCU, UInt uiAbsPartIdx ) = 0; 86 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC86 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 87 87 virtual Void codeDeltaDC ( TComDataCU* pcCU, UInt uiAbsPartIdx ) = 0; 88 88 #endif … … 93 93 virtual Void codeICFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ) = 0; 94 94 #endif 95 #if H_3D_INTER_SDC95 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 96 96 virtual Void codeSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ) = 0; 97 97 #endif … … 181 181 Void encodeICFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, Bool bRD = false ); 182 182 #endif 183 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC183 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 184 184 Void encodeDeltaDC ( TComDataCU* pcCU, UInt absPartIdx ); 185 185 #endif 186 #if H_3D_INTER_SDC186 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 187 187 Void encodeSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, Bool bRD = false ); 188 188 #endif -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncSbac.cpp
r1209 r1221 106 106 , m_cDmmModeSCModel ( 1, 1, NUM_DMM_MODE_CTX , m_contextModels + m_numContextModels, m_numContextModels) 107 107 #endif 108 #if NH_3D_DMM || NH_3D_ SDC108 #if NH_3D_DMM || NH_3D_INTRA_SDC 109 109 , m_cDdcDataSCModel ( 1, 1, NUM_DDC_DATA_CTX , m_contextModels + m_numContextModels, m_numContextModels) 110 110 #endif 111 #if H_3D_DIM_SDC111 #if NH_3D_INTRA_SDC 112 112 , m_cSDCResidualFlagSCModel ( 1, 1, SDC_NUM_RESIDUAL_FLAG_CTX , m_contextModels + m_numContextModels, m_numContextModels) 113 113 , m_cSDCResidualSCModel ( 1, 1, SDC_NUM_RESIDUAL_CTX , m_contextModels + m_numContextModels, m_numContextModels) … … 187 187 m_cDmmModeSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_DMM_MODE ); 188 188 #endif 189 #if NH_3D_DMM || NH_3D_ SDC189 #if NH_3D_DMM || NH_3D_INTRA_SDC 190 190 m_cDdcDataSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_DDC_DATA ); 191 191 #endif 192 #if H_3D_DIM_SDC192 #if NH_3D_INTRA_SDC 193 193 m_cSDCResidualFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL_FLAG ); 194 194 m_cSDCResidualSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL ); … … 243 243 curCost += m_cCUICFlagSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_IC_FLAG ); 244 244 #endif 245 #if H_3D_DIM_SDC245 #if NH_3D_INTRA_SDC 246 246 curCost += m_cSDCFlagSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_SDC_FLAG ); 247 247 #endif … … 280 280 curCost += m_cDmmModeSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_DMM_MODE ); 281 281 #endif 282 #if NH_3D_DMM || NH_3D_ SDC282 #if NH_3D_DMM || NH_3D_INTRA_SDC 283 283 curCost += m_cDdcDataSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_DDC_DATA ); 284 284 #endif … … 307 307 #if H_3D_IC 308 308 m_cCUICFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_IC_FLAG ); 309 #endif310 #if H_3D_DIM_SDC311 m_cSDCResidualFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL_FLAG );312 m_cSDCResidualSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL );313 m_cSDCFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SDC_FLAG );314 m_cDdcFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_DDC_FLAG );315 309 #endif 316 310 #if H_3D_DBBP … … 799 793 Void TEncSbac::codePredMode( TComDataCU* pcCU, UInt uiAbsPartIdx ) 800 794 { 801 #if H_3D_DIM_SDC802 if ( pcCU->getSlice()->isIntra() )803 {804 assert( pcCU->isIntra(uiAbsPartIdx) );805 return;806 }807 #endif808 809 795 // get context function is here 810 796 m_pcBinIf->encodeBin( pcCU->isIntra( uiAbsPartIdx ) ? 1 : 0, m_cCUPredModeSCModel.get( 0, 0, 0 ) ); … … 2487 2473 } 2488 2474 2489 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC2475 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 2490 2476 Void TEncSbac::codeDeltaDC( TComDataCU* pcCU, UInt absPartIdx ) 2491 2477 { 2492 #if H_3D_DIM_SDC || H_3D_INTER_SDC2478 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 2493 2479 if( !(pcCU->getSDCFlag( absPartIdx )) ) 2494 2480 #endif … … 2504 2490 2505 2491 UInt hasDeltaDC = 1; 2506 #if H_3D_DIM_SDC2492 #if NH_3D_INTRA_SDC 2507 2493 if( pcCU->isIntra( absPartIdx ) && pcCU->getSDCFlag( absPartIdx )) 2508 2494 { … … 2526 2512 if( pcCU->isIntra( absPartIdx ) ) 2527 2513 { 2528 #if H_3D_DIM_SDC2514 #if NH_3D_INTRA_SDC 2529 2515 if( pcCU->getSDCFlag( absPartIdx ) ) 2530 2516 { … … 2537 2523 deltaDC = pcCU->getDmmDeltaDC( getDmmType( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, absPartIdx ) ), segment, absPartIdx ); 2538 2524 #endif 2539 #if H_3D_DIM_SDC2525 #if NH_3D_INTRA_SDC 2540 2526 } 2541 2527 #endif … … 2554 2540 Void TEncSbac::xCodeDeltaDC( Pel valDeltaDC, UInt uiNumSeg ) 2555 2541 { 2542 DTRACE_CU("delta_dc", valDeltaDC); 2556 2543 xWriteExGolombLevelDdc( UInt( abs( valDeltaDC ) - ( uiNumSeg > 1 ? 0 : 1 ) ) ); 2557 2544 if( valDeltaDC != 0 ) … … 2639 2626 #endif 2640 2627 2641 #if H_3D_INTER_SDC2628 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 2642 2629 Void TEncSbac::codeSDCFlag( TComDataCU* pcCU, UInt uiAbsPartIdx ) 2643 2630 { 2644 2631 UInt uiSymbol = pcCU->getSDCFlag( uiAbsPartIdx ) ? 1 : 0; 2645 UInt uiCtxSDCFlag = pcCU->getCtxSDCFlag( uiAbsPartIdx );2646 2632 DTRACE_CU("dc_only_flag", uiSymbol) 2647 m_pcBinIf->encodeBin( uiSymbol, m_cSDCFlagSCModel.get( 0, 0, uiCtxSDCFlag) );2633 m_pcBinIf->encodeBin( uiSymbol, m_cSDCFlagSCModel.get( 0, 0, 0 ) ); 2648 2634 } 2649 2635 -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncSbac.h
r1209 r1221 115 115 Void xWriteEpExGolomb ( UInt uiSymbol, UInt uiCount ); 116 116 Void xWriteCoefRemainExGolomb ( UInt symbol, UInt &rParam, const Bool useLimitedPrefixLength, const Int maxLog2TrDynamicRange ); 117 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC117 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 118 118 Void xWriteExGolombLevelDdc( UInt uiSymbol ); 119 119 Void xCodeDeltaDC ( Pel valDeltaDC, UInt uiNumSeg ); … … 149 149 Void codeICFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 150 150 #endif 151 #if NH_3D_DMM || H_3D_DIM_SDC || H_3D_INTER_SDC151 #if NH_3D_DMM || NH_3D_INTRA_SDC || H_3D_INTER_SDC 152 152 Void codeDeltaDC ( TComDataCU* pcCU, UInt absPartIdx ); 153 153 #endif 154 #if H_3D_INTER_SDC154 #if NH_3D_INTRA_SDC || H_3D_INTER_SDC 155 155 Void codeSDCFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx ); 156 156 #endif … … 252 252 ContextModel3DBuffer m_cDmmModeSCModel; 253 253 #endif 254 #if NH_3D_DMM || NH_3D_ SDC254 #if NH_3D_DMM || NH_3D_INTRA_SDC 255 255 ContextModel3DBuffer m_cDdcDataSCModel; 256 256 #endif 257 #if H_3D_DIM_SDC257 #if NH_3D_INTRA_SDC 258 258 ContextModel3DBuffer m_cSDCResidualFlagSCModel; 259 259 ContextModel3DBuffer m_cSDCResidualSCModel; -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncSearch.cpp
r1219 r1221 1031 1031 if ( pcCU->getIPCMFlag (0)) 1032 1032 { 1033 #if H_3D_DIM_SDC1033 #if NH_3D_INTRA_SDC 1034 1034 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); 1035 1035 #endif … … 1051 1051 { 1052 1052 m_pcEntropyCoder->encodeIntraDirModeLuma ( pcCU, 0 ); 1053 #if H_3D_DIM_SDC1053 #if NH_3D_INTRA_SDC 1054 1054 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); 1055 if( pcCU->getSlice()->getIsDepth() && ( !pcCU->getSDCFlag( 0 ) ) && isDmmMode( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, 0 ) ) ) 1055 if( pcCU->getSlice()->getIsDepth() && ( !pcCU->getSDCFlag( 0 ) ) && isDmmMode( pcCU->getIntraDir( CHANNEL_TYPE_LUMA, 0 ) ) ) 1056 1056 { 1057 1057 m_pcEntropyCoder->encodeDeltaDC( pcCU, 0 ); … … 1066 1066 { 1067 1067 m_pcEntropyCoder->encodeIntraDirModeLuma ( pcCU, uiAbsPartIdx ); 1068 #if H_3D_DIM_SDC1068 #if NH_3D_INTRA_SDC 1069 1069 } 1070 1070 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); … … 1076 1076 } 1077 1077 #endif 1078 #if H_3D_DIM_SDC1078 #if NH_3D_INTRA_SDC 1079 1079 if( uiAbsPartIdx == 0 ) 1080 1080 { … … 1974 1974 } 1975 1975 #endif 1976 #if H_3D_DIM_SDC1976 #if NH_3D_INTRA_SDC 1977 1977 Void TEncSearch::xIntraCodingSDC( TComDataCU* pcCU, UInt uiAbsPartIdx, TComYuv* pcOrgYuv, TComYuv* pcPredYuv, Dist& ruiDist, Double& dRDCost, Bool bZeroResidual, Int iSDCDeltaResi ) 1978 1978 { 1979 1979 #if TEMP_SDC_CLEANUP // PM: consider this cleanup for DMM and SDC 1980 Bool bAboveAvail = false;1981 Bool bLeftAvail = false;1982 1980 UInt uiWidth = pcCU->getWidth ( 0 ); 1983 1981 UInt uiHeight = pcCU->getHeight( 0 ); 1984 1982 UInt uiLumaPredMode = pcCU->getIntraDir( CHANNEL_TYPE_LUMA, uiAbsPartIdx ); 1983 const Int bitDepthY = pcCU->getSlice()->getSPS()->getBitDepth(CHANNEL_TYPE_LUMA); 1984 const TComSPS &sps = *(pcCU->getSlice()->getSPS()); 1985 const ChromaFormat chFmt = pcCU->getPic()->getChromaFormat(); 1985 1986 1986 1987 UInt sdcDepth = 0; … … 1990 1991 Pel* piReco; 1991 1992 1992 UInt uiZOrder; 1993 Pel* piRecIPred; 1993 Pel* piRecIPred; 1994 1994 UInt uiRecIPredStride; 1995 1995 … … 2001 2001 UInt uiMaskStride = 0; 2002 2002 #if NH_3D_DMM 2003 TComWedgelet* dmm4Segmentation = NULL;2004 2003 if( isDmmMode( uiLumaPredMode ) ) 2005 2004 { … … 2051 2050 #endif 2052 2051 uiNumSegments = 1; 2053 2054 UInt numParts = 1; 2055 UInt uiSubPartIdx = uiAbsPartIdx; 2056 2052 2057 2053 if( ( uiWidth >> pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize() ) > 1 ) 2058 2054 { 2059 numParts = uiWidth * uiWidth >> ( 2 * pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize() );2060 2055 sdcDepth = g_aucConvertToBit[uiWidth] + 2 - pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize(); 2061 uiWidth = uiHeight = ( 1 << pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize() ); 2062 } 2063 2064 for ( Int i = 0; i < numParts; i++ ) 2065 { 2066 uiStride = pcOrgYuv ->getStride (); 2067 piOrg = pcOrgYuv ->getLumaAddr( uiSubPartIdx ); 2068 piPred = pcPredYuv->getLumaAddr( uiSubPartIdx ); 2069 piReco = pcPredYuv->getLumaAddr( uiSubPartIdx ); 2070 2071 uiZOrder = pcCU->getZorderIdxInCU() + uiSubPartIdx; 2072 piRecIPred = pcCU->getPic()->getPicYuvRec()->getLumaAddr( pcCU->getAddr(), uiZOrder ); 2073 uiRecIPredStride = pcCU->getPic()->getPicYuvRec()->getStride (); 2074 2075 AOF( uiWidth == uiHeight ); 2076 2077 //===== init availability pattern ===== 2078 pcCU->getPattern()->initPattern ( pcCU, sdcDepth, uiSubPartIdx ); 2079 pcCU->getPattern()->initAdiPattern( pcCU, uiSubPartIdx, sdcDepth, m_piYuvExt, m_iYuvExtStride, m_iYuvExtHeight, bAboveAvail, bLeftAvail ); 2080 2081 predIntraLumaAng( pcCU->getPattern(), uiLumaPredMode, piPred, uiStride, uiWidth, uiHeight, bAboveAvail, bLeftAvail ); 2082 2083 if ( numParts > 1 ) 2084 { 2085 for( UInt uiY = 0; uiY < uiHeight; uiY++ ) 2086 { 2087 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 2088 { 2089 piPred [ uiX ] = ClipY( piPred[ uiX ] ); 2090 piRecIPred [ uiX ] = piPred[ uiX ]; 2091 } 2092 piPred += uiStride; 2093 piRecIPred += uiRecIPredStride; 2094 } 2095 } 2096 2097 uiSubPartIdx += ( ( uiWidth * uiWidth ) >> 4 ); 2098 } 2056 } 2057 2058 //===== loop over partitions ===== 2059 TComTURecurse tuRecurseCU(pcCU, 0); 2060 TComTURecurse tuRecurseWithPU(tuRecurseCU, false, (sdcDepth==0)?TComTU::DONT_SPLIT:TComTU::QUAD_SPLIT); 2061 2062 do 2063 { 2064 const TComRectangle &puRect = tuRecurseWithPU.getRect(COMPONENT_Y); 2065 const UInt uiAbsPartIdxTU = tuRecurseWithPU.GetAbsPartIdxTU(); 2066 2067 Pel* piOrgTU = pcOrgYuv ->getAddr ( COMPONENT_Y, uiAbsPartIdxTU ); 2068 Pel* piPredTU = pcPredYuv->getAddr ( COMPONENT_Y, uiAbsPartIdxTU ); 2069 UInt uiStrideTU = pcPredYuv->getStride ( COMPONENT_Y ); 2070 2071 //===== init pattern for luma prediction ===== 2072 Bool bAboveAvail = false; 2073 Bool bLeftAvail = false; 2074 2075 if (tuRecurseWithPU.ProcessComponentSection(COMPONENT_Y)) 2076 { 2077 initIntraPatternChType( tuRecurseWithPU, bAboveAvail, bLeftAvail, COMPONENT_Y, true DEBUG_STRING_PASS_INTO(sTemp2) ); 2078 } 2079 2080 const Bool bUseFilter = TComPrediction::filteringIntraReferenceSamples(COMPONENT_Y, uiLumaPredMode, puRect.width, puRect.height, chFmt, sps.getSpsRangeExtension().getIntraSmoothingDisabledFlag()); 2081 2082 predIntraAng( COMPONENT_Y, uiLumaPredMode, piOrgTU, uiStrideTU, piPredTU, uiStrideTU, tuRecurseWithPU, bAboveAvail, bLeftAvail, bUseFilter, TComPrediction::UseDPCMForFirstPassIntraEstimation(tuRecurseWithPU, uiLumaPredMode) ); 2083 2084 } while (tuRecurseWithPU.nextSection(tuRecurseCU)); 2099 2085 2100 2086 // reset to full block … … 2102 2088 uiHeight = pcCU->getHeight( 0 ); 2103 2089 2104 uiStride = pcOrgYuv ->getStride (); 2105 piOrg = pcOrgYuv ->getLumaAddr( uiAbsPartIdx ); 2106 piPred = pcPredYuv->getLumaAddr( uiAbsPartIdx ); 2107 piReco = pcPredYuv->getLumaAddr( uiAbsPartIdx ); 2108 2109 uiZOrder = pcCU->getZorderIdxInCU() + uiAbsPartIdx; 2110 piRecIPred = pcCU->getPic()->getPicYuvRec()->getLumaAddr( pcCU->getAddr(), uiZOrder ); 2111 uiRecIPredStride = pcCU->getPic()->getPicYuvRec()->getStride (); 2090 uiStride = pcOrgYuv ->getStride( COMPONENT_Y ); 2091 piOrg = pcOrgYuv ->getAddr ( COMPONENT_Y, uiAbsPartIdx ); 2092 piPred = pcPredYuv->getAddr ( COMPONENT_Y, uiAbsPartIdx ); 2093 piReco = pcPredYuv->getAddr ( COMPONENT_Y, uiAbsPartIdx ); 2094 2095 piRecIPred = pcCU->getPic()->getPicYuvRec()->getAddr ( COMPONENT_Y, pcCU->getCtuRsAddr(), pcCU->getZorderIdxInCtu() + uiAbsPartIdx ); 2096 uiRecIPredStride = pcCU->getPic()->getPicYuvRec()->getStride( COMPONENT_Y ); 2112 2097 2113 2098 // get predicted and original DC … … 2273 2258 if( !bZeroResidual ) 2274 2259 { 2260 #if NH_3D_DLT 2275 2261 Pel pPredIdx = pcCU->getSlice()->getPPS()->getDLT()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), apDCPredValues[uiSegment] ); 2276 2262 Int pTestIdx = pPredIdx + pResidualIdx + iSDCDeltaResi; … … 2279 2265 pResidualIdx += iSDCDeltaResi; 2280 2266 } 2267 #else 2268 pResidualIdx += iSDCDeltaResi; 2269 #endif 2281 2270 } 2282 2271 // save SDC DC offset … … 2314 2303 Pel pResiDC = apDCResiValues[ucSegment]; 2315 2304 2316 pReco [ uiX ] = Clip Y( pPred[ uiX ] + pResiDC);2305 pReco [ uiX ] = ClipBD( pPred[ uiX ] + pResiDC, bitDepthY); 2317 2306 pRecIPred[ uiX ] = pReco[ uiX ]; 2318 2307 } … … 2323 2312 } 2324 2313 2325 // clear UV2326 UInt uiStrideC = pcPredYuv->get CStride();2327 Pel *pRecCb = pcPredYuv->get CbAddr();2328 Pel *pRecCr = pcPredYuv->get CrAddr();2314 // clear chroma 2315 UInt uiStrideC = pcPredYuv->getStride( COMPONENT_Cb ); 2316 Pel *pRecCb = pcPredYuv->getAddr ( COMPONENT_Cb, uiAbsPartIdx ); 2317 Pel *pRecCr = pcPredYuv->getAddr ( COMPONENT_Cr, uiAbsPartIdx ); 2329 2318 2330 2319 for (Int y=0; y<uiHeight/2; y++) … … 2346 2335 #endif 2347 2336 2348 //===== determine distortion ===== 2349 #if H_3D_VSO 2350 if ( m_pcRdCost->getUseVSO() ) 2351 ruiDist = m_pcRdCost->getDistPartVSO ( pcCU, uiAbsPartIdx, piReco, uiStride, piOrg, uiStride, uiWidth, uiHeight, false ); 2337 //===== determine distortion ===== 2338 #if NH_3D_VSO 2339 if( m_pcRdCost->getUseVSO() ) 2340 { 2341 if( m_pcRdCost->getUseEstimatedVSD() ) 2342 { 2343 ruiDist = m_pcRdCost->getDistPartVSD( pcCU, uiAbsPartIdx, bitDepthY, piPred, uiStride, piOrg, uiStride, uiWidth, uiHeight, false ); 2344 } 2345 else 2346 { 2347 ruiDist = m_pcRdCost->getDistPartVSO( pcCU, uiAbsPartIdx, bitDepthY, piPred, uiStride, piOrg, uiStride, uiWidth, uiHeight, false ); 2348 } 2349 } 2352 2350 else 2353 2351 #endif 2354 ruiDist = m_pcRdCost->getDistPart(g_bitDepthY, piReco, uiStride, piOrg, uiStride, uiWidth, uiHeight ); 2352 { 2353 ruiDist = m_pcRdCost->getDistPart( bitDepthY, piPred, uiStride, piOrg, uiStride, uiWidth, uiHeight, COMPONENT_Y, DF_SAD ); 2354 } 2355 2355 2356 2356 //===== determine rate and r-d cost ===== … … 2371 2371 2372 2372 // encode pred direction + DC residual data 2373 m_pcEntropyCoder->encodePredInfo( pcCU, 0 , true);2373 m_pcEntropyCoder->encodePredInfo( pcCU, 0 ); 2374 2374 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); 2375 2375 2376 2376 Bool bDummy = false; 2377 m_pcEntropyCoder->encodeCoeff( pcCU, 0, pcCU->getDepth( 0 ), uiWidth, uiHeight, bDummy );2377 m_pcEntropyCoder->encodeCoeff( pcCU, 0, pcCU->getDepth( 0 ), bDummy, bDummy ); 2378 2378 UInt uiBits = m_pcEntropyCoder->getNumberOfWrittenBits(); 2379 2379 2380 #if H_3D_VSO2380 #if NH_3D_VSO 2381 2381 if ( m_pcRdCost->getUseLambdaScaleVSO()) 2382 2382 dRDCost = m_pcRdCost->calcRdCostVSO( uiBits, ruiDist ); … … 3239 3239 UInt rdSDC = m_pcEncCfg->getIsDepth() ? numModesForFullRD : 0; 3240 3240 #endif 3241 #if H_3D_DIM_SDC3241 #if NH_3D_INTRA_SDC 3242 3242 Bool bBestUseSDC = false; 3243 3243 Pel apBestDCOffsets[2] = {0,0}; … … 3290 3290 pcCU->setIntraDirSubParts ( CHANNEL_TYPE_LUMA, uiOrgMode, uiPartOffset, uiDepth + uiInitTrDepth ); 3291 3291 3292 #if H_3D_DIM_SDC3292 #if NH_3D_INTRA_SDC 3293 3293 #if H_3D_FAST_INTRA_SDC 3294 3294 Bool bTestSDC = ( ( m_pcEncCfg->getUseSDC() && pcCU->getSlice()->getIntraSdcWedgeFlag() ) && pcCU->getSDCAvailable(uiPartOffset) && uiMode >= numModesForFullRD); … … 3337 3337 #if NH_3D_ENC_DEPTH 3338 3338 UInt zeroResiTest = (pcCU->getSlice()->getIsDepth() && !pcCU->getSlice()->isIRAP()) ? 1 : 0; 3339 #if H_3D_DIM_SDC3340 bTestZeroResi|= pcCU->getSDCFlag(uiPartOffset);3339 #if NH_3D_INTRA_SDC 3340 zeroResiTest |= pcCU->getSDCFlag(uiPartOffset); 3341 3341 if( uiSDC != 0 && iSDCDeltaResi != 0 ) 3342 3342 { 3343 bTestZeroResi = false;3343 zeroResiTest = 0; 3344 3344 } 3345 3345 #endif … … 3364 3364 } 3365 3365 #endif 3366 #if H_3D_DIM_SDC3366 #if NH_3D_INTRA_SDC 3367 3367 if( pcCU->getSDCFlag(uiPartOffset) ) 3368 3368 { 3369 3369 pcCU->setTrIdxSubParts(0, uiPartOffset, uiDepth + uiInitTrDepth); 3370 pcCU->setCbfSubParts(1, 1, 1, uiPartOffset, uiDepth + uiInitTrDepth);3370 pcCU->setCbfSubParts(1, COMPONENT_Y, uiPartOffset, uiDepth + uiInitTrDepth); 3371 3371 3372 3372 // start encoding with SDC 3373 xIntraCodingSDC(pcCU, uiPartOffset, pcOrgYuv, pcPredYuv, uiPUDistY, dPUCost, ( testZeroResi != 0 ), iSDCDeltaResi );3374 if ( testZeroResi == 0 && iOffset <= 3 )3373 xIntraCodingSDC(pcCU, uiPartOffset, pcOrgYuv, pcPredYuv, uiPUDistY, dPUCost, ( zeroResi != 0 ), iSDCDeltaResi ); 3374 if ( zeroResi == 0 && iOffset <= 3 ) 3375 3375 { 3376 3376 dOffsetCost [iOffset -1] = dPUCost; … … 3403 3403 #endif 3404 3404 #endif 3405 #if H_3D_DIM_SDC3405 #if NH_3D_INTRA_SDC 3406 3406 } 3407 3407 #endif … … 3424 3424 dBestPUCost = dPUCost; 3425 3425 3426 #if H_3D_DIM_SDC3426 #if NH_3D_INTRA_SDC 3427 3427 if( pcCU->getSDCFlag(uiPartOffset) ) 3428 3428 { … … 3430 3430 3431 3431 // copy reconstruction 3432 pcPredYuv->copyPartToPartYuv(pcRecoYuv, uiPartOffset, uiWidth, uiHeight); 3432 UInt uiWidthPU = tuRecurseWithPU.getRect( COMPONENT_Y ).width; 3433 UInt uiHeightPU = tuRecurseWithPU.getRect( COMPONENT_Y ).height; 3434 UInt uiWidth = pcCU->getWidth (0) >> uiInitTrDepth; 3435 UInt uiHeight = pcCU->getHeight(0) >> uiInitTrDepth; 3436 AOF(uiWidth==uiWidthPU); 3437 AOF(uiHeight==uiHeightPU); 3438 pcPredYuv->copyPartToPartComponent(COMPONENT_Y, pcRecoYuv, uiPartOffset, uiWidth, uiHeight); 3433 3439 3434 3440 // copy DC values … … 3463 3469 ::memcpy( m_puhQTTempCbf[compID], pcCU->getCbf( compID ) + uiPartOffset, uiQPartNum * sizeof( UChar ) ); 3464 3470 ::memcpy( m_puhQTTempTransformSkipFlag[compID], pcCU->getTransformSkip(compID) + uiPartOffset, uiQPartNum * sizeof( UChar ) ); 3465 #if H_3D_DIM_SDC 3466 } 3467 #endif 3468 3469 } 3471 } 3472 #if NH_3D_INTRA_SDC 3473 } 3474 #endif 3470 3475 } 3471 3476 #if HHI_RQT_INTRA_SPEEDUP_MOD … … 3479 3484 } 3480 3485 #endif 3481 #if H_3D_DIM_SDC3486 #if NH_3D_INTRA_SDC 3482 3487 } // SDC residual loop 3483 3488 } // SDC loop … … 3510 3515 3511 3516 pcCU->setIntraDirSubParts ( CHANNEL_TYPE_LUMA, uiOrgMode, uiPartOffset, uiDepth + uiInitTrDepth ); 3512 #if H_3D_DIM_SDC3517 #if NH_3D_INTRA_SDC 3513 3518 pcCU->setSDCFlagSubParts(false, uiPartOffset, uiDepth + uiInitTrDepth); 3514 3519 #endif … … 3543 3548 uiBestPUDistY = uiPUDistY; 3544 3549 dBestPUCost = dPUCost; 3545 #if H_3D_DIM_SDC3550 #if NH_3D_INTRA_SDC 3546 3551 bBestUseSDC = false; 3547 3552 #endif … … 3580 3585 //--- update overall distortion --- 3581 3586 uiOverallDistY += uiBestPUDistY; 3582 #if H_3D_DIM_SDC3587 #if NH_3D_INTRA_SDC 3583 3588 if( bBestUseSDC ) 3584 3589 { 3585 3590 pcCU->setTrIdxSubParts(0, uiPartOffset, uiDepth + uiInitTrDepth); 3586 pcCU->setCbfSubParts(1, 1, 1, uiPartOffset, uiDepth + uiInitTrDepth);3591 pcCU->setCbfSubParts(1, COMPONENT_Y, uiPartOffset, uiDepth + uiInitTrDepth); 3587 3592 3588 3593 //=== copy best DC segment values back to CU ==== … … 3602 3607 ::memcpy( pcCU->getCbf( compID ) + uiPartOffset, m_puhQTTempCbf[compID], uiQPartNum * sizeof( UChar ) ); 3603 3608 ::memcpy( pcCU->getTransformSkip( compID ) + uiPartOffset, m_puhQTTempTransformSkipFlag[compID ], uiQPartNum * sizeof( UChar ) ); 3604 #if H_3D_DIM_SDC3609 #if NH_3D_INTRA_SDC 3605 3610 } 3606 3611 #endif … … 3639 3644 //=== update PU data ==== 3640 3645 pcCU->setIntraDirSubParts ( CHANNEL_TYPE_LUMA, uiBestPUMode, uiPartOffset, uiDepth + uiInitTrDepth ); 3641 #if H_3D_DIM_SDC3646 #if NH_3D_INTRA_SDC 3642 3647 pcCU->setSDCFlagSubParts ( bBestUseSDC, uiPartOffset, uiDepth + uiInitTrDepth ); 3643 3648 #endif … … 6162 6167 #endif 6163 6168 6164 #if H_3D_DIM_SDC6169 #if NH_3D_INTRA_SDC 6165 6170 Bool bNonSkip = false; 6166 6171 #else … … 7226 7231 m_pcEntropyCoder->encodePartSize( pcCU, 0, pcCU->getDepth(0), true ); 7227 7232 m_pcEntropyCoder->encodePredInfo( pcCU, 0 ); 7228 #if H_3D_DIM_SDC7233 #if NH_3D_INTRA_SDC 7229 7234 m_pcEntropyCoder->encodeSDCFlag( pcCU, 0, true ); 7230 7235 #endif … … 7769 7774 #endif 7770 7775 #if TEMP_SDC_CLEANUP // PM: consider this cleanup for SDC 7771 #if NH_3D_ SDC7776 #if NH_3D_INTRA_SDC 7772 7777 Void TEncSearch::xCalcConstantSDC( Pel* ptrSrc, UInt srcStride, UInt uiSize, Pel& valDC ) 7773 7778 { -
branches/HTM-14.1-update-dev1-RWTH/source/Lib/TLibEncoder/TEncSearch.h
r1209 r1221 356 356 Void xSearchDmm1Wedge ( TComDataCU* pcCU, UInt uiAbsPtIdx, Pel* piRef, UInt uiRefStride, UInt uiWidth, UInt uiHeight, UInt& ruiTabIdx ); 357 357 #endif 358 #if H_3D_DIM_SDC358 #if NH_3D_INTRA_SDC 359 359 Void xIntraCodingSDC ( TComDataCU* pcCU, UInt uiAbsPartIdx, TComYuv* pcOrgYuv, TComYuv* pcPredYuv, Dist& ruiDist, Double& dRDCost, Bool bZeroResidual, Int iSDCDeltaResi ); 360 360 #endif 361 361 #if TEMP_SDC_CLEANUP // PM: consider this cleanup for SDC 362 #if NH_3D_ SDC362 #if NH_3D_INTRA_SDC 363 363 Void xCalcConstantSDC ( Pel* ptrSrc, UInt srcStride, UInt uiSize, Pel& valDC ); 364 364 #endif
Note: See TracChangeset for help on using the changeset viewer.