Changeset 895 in 3DVCSoftware
- Timestamp:
- 4 Apr 2014, 16:15:09 (11 years ago)
- Location:
- branches/HTM-10.2-dev2-RWTH/source/Lib
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibCommon/TComDataCU.cpp
r888 r895 3940 3940 && !bARPFlag 3941 3941 #endif 3942 #if RWTH_H0057_DBBP_NO_SPU 3943 && !bDBBPFlag 3944 #endif 3942 3945 ) 3943 3946 { … … 3963 3966 && !bARPFlag 3964 3967 #endif 3968 #if RWTH_H0057_DBBP_NO_SPU 3969 && !bDBBPFlag 3970 #endif 3965 3971 ) 3966 3972 { … … 3986 3992 && !bARPFlag 3987 3993 #endif 3994 #if RWTH_H0057_DBBP_NO_SPU 3995 && !bDBBPFlag 3996 #endif 3988 3997 ) 3989 3998 { … … 4006 4015 #if H_3D_ARP 4007 4016 && !bARPFlag 4017 #endif 4018 #if RWTH_H0057_DBBP_NO_SPU 4019 && !bDBBPFlag 4008 4020 #endif 4009 4021 ) … … 4029 4041 #if H_3D_ARP 4030 4042 && !bARPFlag 4043 #endif 4044 #if RWTH_H0057_DBBP_NO_SPU 4045 && !bDBBPFlag 4031 4046 #endif 4032 4047 ) … … 4689 4704 #if H_3D_ARP 4690 4705 !bARPFlag && 4706 #endif 4707 #if RWTH_H0057_DBBP_NO_SPU 4708 !bDBBPFlag && 4691 4709 #endif 4692 4710 xAddVspCand( mrgCandIdx, &cDisInfo, iCount, abCandIsInter, pcMvFieldNeighbours, puhInterDirNeighbours, vspFlag, iCount3DV, inheritedVSPDisInfo ) ) -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibCommon/TComDataCU.h
r884 r895 70 70 Bool abMergeFlag[2]; // for two segments 71 71 UChar auhMergeIndex[2]; // for two segments 72 #if !RWTH_H0057_DBBP_NO_SPU 72 73 Char ahVSPFlag[2]; // for two segments 73 74 DisInfo acDvInfo[2]; // for two segments 75 #endif 74 76 75 77 PartSize eVirtualPartSize; -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibCommon/TComPrediction.cpp
r888 r895 639 639 640 640 // start mapping process 641 #if !MTK_H0072_DBBP_AMP_REM 641 642 Bool bAMPAvail = uiSize > 8; 642 643 Int matchedPartSum[6][2] = {{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}}; // counter for each part size and boolean option 643 644 PartSize virtualPartSizes[6] = { SIZE_Nx2N, SIZE_2NxN, SIZE_2NxnU, SIZE_2NxnD, SIZE_nLx2N, SIZE_nRx2N }; 645 #else 646 Int matchedPartSum[2][2] = {{0,0},{0,0}}; // counter for each part size and boolean option 647 PartSize virtualPartSizes[2] = { SIZE_Nx2N, SIZE_2NxN}; 648 #endif 644 649 645 650 UInt uiHalfSize = uiSize>>1; 651 #if !MTK_H0072_DBBP_AMP_REM 646 652 UInt uiQuarterSize = uiSize>>2; 653 #endif 647 654 648 655 for (Int y=0; y<uiSize; y+=iSubSample) … … 677 684 } 678 685 686 #if !MTK_H0072_DBBP_AMP_REM 679 687 if( bAMPAvail ) 680 688 { … … 719 727 } 720 728 } 729 #endif 721 730 } 722 731 … … 728 737 729 738 Int iMaxMatchSum = 0; 730 for(Int p=0; p<6; p++) // loop over partition sizes 739 #if !MTK_H0072_DBBP_AMP_REM 740 for(Int p=0; p<6; p++) // loop over partition 741 #else 742 for(Int p=0; p<2; p++) // loop over partition 743 #endif 731 744 { 732 745 for( Int b=0; b<=1; b++ ) // loop over boolean options -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibCommon/TypeDef.h
r888 r895 295 295 #define DBBP_INVALID_SHORT (-4) 296 296 #define RWTH_DBBP_PACK_MODE SIZE_2NxN 297 #define MTK_H0072_DBBP_AMP_REM 1 298 #define RWTH_H0057_DBBP_NO_SPU 1 297 299 #endif 298 300 -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibDecoder/TDecCu.cpp
r884 r895 782 782 } 783 783 784 AOF( pcCU->getARPW(uiPartAddr) == 0 ); 785 AOF( pcCU->getICFlag(uiPartAddr) == false ); 786 787 #if RWTH_H0057_DBBP_NO_SPU 788 AOF( pcCU->getSPIVMPFlag(uiPartAddr) == false ); 789 AOF( pcCU->getVSPFlag(uiPartAddr) == 0 ); 790 #else 784 791 pDBBPTmpData->ahVSPFlag[uiSegment] = pcCU->getVSPFlag( uiPartAddr ); 785 792 pDBBPTmpData->acDvInfo[uiSegment] = pcCU->getDvInfo( uiPartAddr ); 793 #endif 786 794 } 787 795 … … 793 801 pcCU->setInterDirSubParts( pDBBPTmpData->auhInterDir[uiSegment], 0, 0, uiDepth ); 794 802 803 #if !RWTH_H0057_DBBP_NO_SPU 795 804 pcCU->setVSPFlagSubParts( pDBBPTmpData->ahVSPFlag[uiSegment], 0, 0, uiDepth ); 796 805 pcCU->setDvInfoSubParts( pDBBPTmpData->acDvInfo[uiSegment], 0, 0, uiDepth ); 806 #endif 797 807 798 808 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ ) … … 816 826 pcCU->setDBBPFlagSubParts(true, uiPartAddr, uiSegment, uiDepth); 817 827 828 #if !RWTH_H0057_DBBP_NO_SPU 818 829 pcCU->setVSPFlagSubParts( pDBBPTmpData->ahVSPFlag[uiSegment], uiPartAddr, uiSegment, uiDepth ); 819 830 pcCU->setDvInfoSubParts( pDBBPTmpData->acDvInfo[uiSegment], uiPartAddr, uiSegment, uiDepth ); 831 #endif 820 832 821 833 pcCU->setInterDirSubParts(pDBBPTmpData->auhInterDir[uiSegment], uiPartAddr, uiSegment, uiDepth); // interprets depth relative to LCU level -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibDecoder/TDecEntropy.cpp
r884 r895 161 161 162 162 pcCU->setPartSizeSubParts(eVirtualPartSize, uiAbsPartIdx, uiDepth); 163 164 #if RWTH_H0057_DBBP_NO_SPU 165 // make sure that DBBP flag is set for both segments 166 UInt uiPUOffset = ( g_auiPUOffset[UInt( eVirtualPartSize )] << ( ( pcCU->getSlice()->getSPS()->getMaxCUDepth() - uiDepth ) << 1 ) ) >> 4; 167 pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx, 0, uiDepth); 168 pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx+uiPUOffset, 1, uiDepth); 169 #endif 163 170 } 164 171 } -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibEncoder/TEncCu.cpp
r884 r895 2383 2383 pDBBPTmpData->auhMergeIndex[uiSegment] = rpcTempCU->getMergeIndex(0); 2384 2384 2385 #if RWTH_H0057_DBBP_NO_SPU 2386 AOF( rpcTempCU->getSPIVMPFlag(0) == false ); 2387 AOF( rpcTempCU->getVSPFlag(0) == 0 ); 2388 #else 2385 2389 pDBBPTmpData->ahVSPFlag[uiSegment] = rpcTempCU->getVSPFlag(0); 2386 2390 pDBBPTmpData->acDvInfo[uiSegment] = rpcTempCU->getDvInfo(0); 2391 #endif 2387 2392 2388 2393 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ ) … … 2416 2421 rpcTempCU->setMergeIndexSubParts(pDBBPTmpData->auhMergeIndex[uiSegment], uiPartAddr, uiSegment, uhDepth); 2417 2422 2423 #if !RWTH_H0057_DBBP_NO_SPU 2418 2424 rpcTempCU->setVSPFlagSubParts(pDBBPTmpData->ahVSPFlag[uiSegment], uiPartAddr, uiSegment, uhDepth); 2419 2425 rpcTempCU->setDvInfoSubParts(pDBBPTmpData->acDvInfo[uiSegment], uiPartAddr, uiSegment, uhDepth); 2426 #endif 2420 2427 2421 2428 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ ) -
branches/HTM-10.2-dev2-RWTH/source/Lib/TLibEncoder/TEncSearch.cpp
r884 r895 3666 3666 pcCU->setInterDirSubParts(pDBBPTmpData->auhInterDir[0], 0, 0, pcCU->getDepth(0)); // interprets depth relative to LCU level 3667 3667 3668 #if !RWTH_H0057_DBBP_NO_SPU 3668 3669 pcCU->setVSPFlagSubParts(pDBBPTmpData->ahVSPFlag[0], 0, 0, pcCU->getDepth(0)); 3669 3670 pcCU->setDvInfoSubParts(pDBBPTmpData->acDvInfo[0], 0, 0, pcCU->getDepth(0)); 3671 #endif 3670 3672 3671 3673 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ )
Note: See TracChangeset for help on using the changeset viewer.