Changeset 936 in 3DVCSoftware
- Timestamp:
- 22 Apr 2014, 16:03:08 (11 years ago)
- Location:
- branches/HTM-10.2-dev0/source/Lib
- Files:
-
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-10.2-dev0/source/Lib/TLibCommon/ContextTables.h
r884 r936 430 430 431 431 #if H_3D_DBBP 432 #if MTK_DBBP_SIGNALING_H0094 432 433 static const UChar INIT_DBBP_FLAG[3][DBBP_NUM_FLAG_CTX] = 433 434 { 434 { CNU }, 435 { CNU }, 436 { CNU }, 437 }; 438 #endif 439 440 #endif 435 { 161 }, 436 { 161 }, 437 { 161 }, 438 }; 439 #else 440 static const UChar INIT_DBBP_FLAG[3][DBBP_NUM_FLAG_CTX] = 441 { 442 { CNU }, 443 { CNU }, 444 { CNU }, 445 }; 446 #endif 447 #endif 448 449 #endif -
branches/HTM-10.2-dev0/source/Lib/TLibCommon/TComDataCU.cpp
r935 r936 2352 2352 2353 2353 TComMv cDv = depthRefineFlag ? DvInfo.m_acDoNBDV : DvInfo.m_acNBDV; 2354 #if SEC_VER_DONBDV_H0103 2355 if( depthRefineFlag ) 2356 { 2357 cDv.setVer(0); 2358 } 2359 #endif 2354 2360 2355 2361 Int depthPosX = Clip3(0, iPictureWidth - iWidth, iBlkX + ((cDv.getHor()+2)>>2)); … … 4245 4251 && !bARPFlag 4246 4252 #endif 4253 #if RWTH_DBBP_NO_SPU_H0057 4254 && !bDBBPFlag 4255 #endif 4247 4256 ) 4248 4257 { … … 4268 4277 && !bARPFlag 4269 4278 #endif 4279 #if RWTH_DBBP_NO_SPU_H0057 4280 && !bDBBPFlag 4281 #endif 4270 4282 ) 4271 4283 { … … 4291 4303 && !bARPFlag 4292 4304 #endif 4305 #if RWTH_DBBP_NO_SPU_H0057 4306 && !bDBBPFlag 4307 #endif 4293 4308 ) 4294 4309 { … … 4311 4326 #if H_3D_ARP 4312 4327 && !bARPFlag 4328 #endif 4329 #if RWTH_DBBP_NO_SPU_H0057 4330 && !bDBBPFlag 4313 4331 #endif 4314 4332 ) … … 4334 4352 #if H_3D_ARP 4335 4353 && !bARPFlag 4354 #endif 4355 #if RWTH_DBBP_NO_SPU_H0057 4356 && !bDBBPFlag 4336 4357 #endif 4337 4358 ) … … 5194 5215 (nPSW + nPSH > 12) && 5195 5216 #endif 5217 #if RWTH_DBBP_NO_SPU_H0057 5218 !bDBBPFlag && 5219 #endif 5196 5220 #if ETRIKHU_CLEANUP_H0083 5197 5221 xAddVspCand( mrgCandIdx, &cDisInfo, iCount ) ) … … 7169 7193 7170 7194 TComMv cDv = depthRefineFlag ? pDInfo->m_acDoNBDV : pDInfo->m_acNBDV; 7195 #if SEC_VER_DONBDV_H0103 7196 if( depthRefineFlag ) 7197 { 7198 cDv.setVer(0); 7199 } 7200 #endif 7171 7201 7172 7202 Int iBasePosX = Clip3( 0, pcBaseRec->getWidth () - 1, iCurrPosX + ( (cDv.getHor() + 2 ) >> 2 ) ); … … 7308 7338 7309 7339 TComMv cDv = depthRefineFlag ? pDInfo->m_acDoNBDV : pDInfo->m_acNBDV; 7340 #if SEC_VER_DONBDV_H0103 7341 if( depthRefineFlag ) 7342 { 7343 cDv.setVer(0); 7344 } 7345 #endif 7310 7346 7311 7347 Bool abPdmAvailable[8] = {false, false, false, false, false, false, false, false}; -
branches/HTM-10.2-dev0/source/Lib/TLibCommon/TComDataCU.h
r935 r936 70 70 Bool abMergeFlag[2]; // for two segments 71 71 UChar auhMergeIndex[2]; // for two segments 72 #if !RWTH_DBBP_NO_SPU_H0057 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-dev0/source/Lib/TLibCommon/TComPrediction.cpp
r935 r936 643 643 644 644 // start mapping process 645 #if !MTK_DBBP_AMP_REM_H0072 645 646 Bool bAMPAvail = uiSize > 8; 646 647 Int matchedPartSum[6][2] = {{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}}; // counter for each part size and boolean option 647 648 PartSize virtualPartSizes[6] = { SIZE_Nx2N, SIZE_2NxN, SIZE_2NxnU, SIZE_2NxnD, SIZE_nLx2N, SIZE_nRx2N }; 649 #else 650 Int matchedPartSum[2][2] = {{0,0},{0,0}}; // counter for each part size and boolean option 651 PartSize virtualPartSizes[2] = { SIZE_Nx2N, SIZE_2NxN}; 652 #endif 648 653 649 654 UInt uiHalfSize = uiSize>>1; 655 #if !MTK_DBBP_AMP_REM_H0072 650 656 UInt uiQuarterSize = uiSize>>2; 657 #endif 651 658 652 659 for (Int y=0; y<uiSize; y+=iSubSample) … … 681 688 } 682 689 690 #if !MTK_DBBP_AMP_REM_H0072 683 691 if( bAMPAvail ) 684 692 { … … 723 731 } 724 732 } 733 #endif 725 734 } 726 735 … … 732 741 733 742 Int iMaxMatchSum = 0; 734 for(Int p=0; p<6; p++) // loop over partition sizes 743 #if !MTK_DBBP_AMP_REM_H0072 744 for(Int p=0; p<6; p++) // loop over partition 745 #else 746 for(Int p=0; p<2; p++) // loop over partition 747 #endif 735 748 { 736 749 for( Int b=0; b<=1; b++ ) // loop over boolean options … … 842 855 843 856 UInt uiMaskStride= MAX_CU_SIZE; 857 #if SEC_DBBP_FILTERING_H0104 858 Pel filSrc = 0; 859 Pel* tmpTar = 0; 860 tmpTar = (Pel *)xMalloc(Pel, uiWidth*uiHeight); 861 #endif 844 862 845 863 // backup pointer … … 855 873 856 874 // filtering 875 #if SEC_DBBP_FILTERING_H0104 876 tmpTar[y*uiWidth+x] = piSrc[ucSegment][x]; 877 #else 857 878 Bool t = (y==0)?pMaskStart[(y+1)*uiMaskStride+x]:pMaskStart[(y-1)*uiMaskStride+x]; 858 879 Bool l = (x==0)?pMaskStart[y*uiMaskStride+x+1]:pMaskStart[y*uiMaskStride+x-1]; … … 862 883 Bool bBlend = !((t&&l&&b&&r) || (!t&&!l&&!b&&!r)); 863 884 piDst[x] = bBlend?((piSrc[0][x]+piSrc[1][x]+1)>>1):piSrc[ucSegment][x]; 885 #endif 864 886 } 865 887 866 888 piSrc[0] += uiSrcStride; 867 889 piSrc[1] += uiSrcStride; 890 #if !SEC_DBBP_FILTERING_H0104 868 891 piDst += uiDstStride; 892 #endif 869 893 pMask += uiMaskStride; 870 894 } 895 896 #if SEC_DBBP_FILTERING_H0104 897 for (Int y=0; y<uiHeight; y++) 898 { 899 for (Int x=0; x<uiWidth; x++) 900 { 901 Bool t = (y==0)?pMaskStart[y*uiMaskStride+x]:pMaskStart[(y-1)*uiMaskStride+x]; 902 Bool l = (x==0)?pMaskStart[y*uiMaskStride+x]:pMaskStart[y*uiMaskStride+x-1]; 903 Bool b = (y==uiHeight-1)?pMaskStart[y*uiMaskStride+x]:pMaskStart[(y+1)*uiMaskStride+x]; 904 Bool r = (x==uiWidth-1)?pMaskStart[y*uiMaskStride+x]:pMaskStart[y*uiMaskStride+x+1]; 905 Bool c =pMaskStart[y*uiMaskStride+x]; 906 907 Pel left, right, top, bottom; 908 left = (x==0) ? tmpTar[y*uiWidth+x] : tmpTar[y*uiWidth+x-1]; 909 right = (x==uiWidth-1) ? tmpTar[y*uiWidth+x] : tmpTar[y*uiWidth+x+1]; 910 top = (y==0) ? tmpTar[y*uiWidth+x] : tmpTar[(y-1)*uiWidth+x]; 911 bottom = (y==uiHeight-1) ? tmpTar[y*uiWidth+x] : tmpTar[(y+1)*uiWidth+x]; 912 913 if(!((l&&r&&c) || (!l&&!r&&!c))) 914 { 915 filSrc = Clip3( Pel( 0 ), Pel( 255 ), Pel(( left + (tmpTar[y*uiWidth+x] << 1) + right ) >> 2 )); 916 } 917 else 918 { 919 filSrc = tmpTar[y*uiWidth+x]; 920 } 921 922 if(!((t&&b&&c) || (!t&&!b&&!c))) 923 { 924 filSrc = Clip3( Pel( 0 ), Pel( 255 ), Pel(( top + (filSrc << 1) + bottom ) >> 2 )); 925 } 926 piDst[x] = filSrc; 927 } 928 piDst += uiDstStride; 929 } 930 if ( tmpTar ) { xFree(tmpTar); tmpTar = NULL; } 931 #endif 871 932 872 933 // now combine chroma … … 879 940 UInt uiWidthC = uiWidth >> 1; 880 941 UInt uiHeightC = uiHeight >> 1; 942 #if SEC_DBBP_FILTERING_H0104 943 Pel filSrcU = 0, filSrcV = 0; 944 Pel* tmpTarU = 0, *tmpTarV = 0; 945 tmpTarU = (Pel *)xMalloc(Pel, uiWidthC*uiHeightC); 946 tmpTarV = (Pel *)xMalloc(Pel, uiWidthC*uiHeightC); 947 #endif 881 948 pMask = pMaskStart; 882 949 … … 889 956 890 957 // filtering 958 #if SEC_DBBP_FILTERING_H0104 959 tmpTarU[y*uiWidthC+x] = piSrcU[ucSegment][x]; 960 tmpTarV[y*uiWidthC+x] = piSrcV[ucSegment][x]; 961 #else 891 962 Bool t = (y==0)?pMaskStart[(y+1)*2*uiMaskStride+x*2]:pMaskStart[(y-1)*2*uiMaskStride+x*2]; 892 963 Bool l = (x==0)?pMaskStart[y*2*uiMaskStride+(x+1)*2]:pMaskStart[y*2*uiMaskStride+(x-1)*2]; … … 898 969 piDstU[x] = bBlend?((piSrcU[0][x]+piSrcU[1][x]+1)>>1):piSrcU[ucSegment][x]; 899 970 piDstV[x] = bBlend?((piSrcV[0][x]+piSrcV[1][x]+1)>>1):piSrcV[ucSegment][x]; 971 #endif 900 972 } 901 973 … … 904 976 piSrcV[0] += uiSrcStrideC; 905 977 piSrcV[1] += uiSrcStrideC; 978 #if !SEC_DBBP_FILTERING_H0104 906 979 piDstU += uiDstStrideC; 907 980 piDstV += uiDstStrideC; 981 #endif 908 982 pMask += 2*uiMaskStride; 909 983 } 984 985 #if SEC_DBBP_FILTERING_H0104 986 for (Int y=0; y<uiHeightC; y++) 987 { 988 for (Int x=0; x<uiWidthC; x++) 989 { 990 Bool t = (y==0)?pMaskStart[y*2*uiMaskStride+x*2]:pMaskStart[(y-1)*2*uiMaskStride+x*2]; 991 Bool l = (x==0)?pMaskStart[y*2*uiMaskStride+x*2]:pMaskStart[y*2*uiMaskStride+(x-1)*2]; 992 Bool b = (y==uiHeightC-1)?pMaskStart[y*2*uiMaskStride+x*2]:pMaskStart[(y+1)*2*uiMaskStride+x*2]; 993 Bool r = (x==uiWidthC-1)?pMaskStart[y*2*uiMaskStride+x*2]:pMaskStart[y*2*uiMaskStride+(x+1)*2]; 994 Bool c =pMaskStart[y*2*uiMaskStride+x*2]; 995 996 Pel leftU, rightU, topU, bottomU; 997 leftU = (x==0) ? tmpTarU[y*uiWidthC+x] : tmpTarU[y*uiWidthC+x-1]; 998 rightU = (x==uiWidthC-1) ? tmpTarU[y*uiWidthC+x] : tmpTarU[y*uiWidthC+x+1]; 999 topU = (y==0) ? tmpTarU[y*uiWidthC+x] : tmpTarU[(y-1)*uiWidthC+x]; 1000 bottomU = (y==uiHeightC-1) ? tmpTarU[y*uiWidthC+x] : tmpTarU[(y+1)*uiWidthC+x]; 1001 1002 Pel leftV, rightV, topV, bottomV; 1003 leftV = (x==0) ? tmpTarV[y*uiWidthC+x] : tmpTarV[y*uiWidthC+x-1]; 1004 rightV = (x==uiWidthC-1) ? tmpTarV[y*uiWidthC+x] : tmpTarV[y*uiWidthC+x+1]; 1005 topV = (y==0) ? tmpTarV[y*uiWidthC+x] : tmpTarV[(y-1)*uiWidthC+x]; 1006 bottomV = (y==uiHeightC-1) ? tmpTarV[y*uiWidthC+x] : tmpTarV[(y+1)*uiWidthC+x]; 1007 1008 if(!((l&&r&&c) || (!l&&!r&&!c))) 1009 { 1010 filSrcU = Clip3( Pel( 0 ), Pel( 255 ), Pel(( leftU + (tmpTarU[y*uiWidthC+x] << 1) + rightU ) >> 2 )); 1011 filSrcV = Clip3( Pel( 0 ), Pel( 255 ), Pel(( leftV + (tmpTarV[y*uiWidthC+x] << 1) + rightV ) >> 2 )); 1012 } 1013 else 1014 { 1015 filSrcU = tmpTarU[y*uiWidthC+x]; 1016 filSrcV = tmpTarV[y*uiWidthC+x]; 1017 } 1018 1019 if(!((t&&b&&c) || (!t&&!b&&!c))) 1020 { 1021 filSrcU = Clip3( Pel( 0 ), Pel( 255 ), Pel(( topU + (filSrcU << 1) + bottomU ) >> 2 )); 1022 filSrcV = Clip3( Pel( 0 ), Pel( 255 ), Pel(( topV + (filSrcV << 1) + bottomV ) >> 2 )); 1023 } 1024 1025 piDstU[x] = filSrcU; 1026 piDstV[x] = filSrcV; 1027 } 1028 piDstU += uiDstStrideC; 1029 piDstV += uiDstStrideC; 1030 } 1031 if ( tmpTarU ) { xFree(tmpTarU); tmpTarU = NULL; } 1032 if ( tmpTarV ) { xFree(tmpTarV); tmpTarV = NULL; } 1033 #endif 910 1034 } 911 1035 #endif -
branches/HTM-10.2-dev0/source/Lib/TLibCommon/TypeDef.h
r935 r936 260 260 #define DVFROM_ABOVE 1 261 261 #define IDV_CANDS 2 262 #define SEC_VER_DONBDV_H0103 1 // Vertical DV Restriction for DoNBDV 262 263 #endif 263 264 … … 275 276 #if H_3D_DIM_DLT 276 277 #define H_3D_DELTA_DLT 1 278 #define SEC_NO_RESI_DLT_H0105 1 279 #define MTK_DLT_CODING_FIX_H0091 1 277 280 #endif 278 281 #define H_3D_DIM_ENC 1 // Depth Intra encoder optimizations, includes: … … 303 306 #define DBBP_INVALID_SHORT (-4) 304 307 #define RWTH_DBBP_PACK_MODE SIZE_2NxN 308 #define MTK_DBBP_AMP_REM_H0072 1 309 #define RWTH_DBBP_NO_SPU_H0057 1 310 #define SEC_DBBP_FILTERING_H0104 1 311 #define MTK_DBBP_SIGNALING_H0094 1 305 312 #endif 306 313 -
branches/HTM-10.2-dev0/source/Lib/TLibDecoder/TDecCAVLC.cpp
r884 r936 440 440 441 441 READ_FLAG(uiCode, "inter_view_dlt_pred_enable_flag[ i ]"); 442 443 #if MTK_DLT_CODING_FIX_H0091 444 if( uiCode ) 445 { 446 assert( pcDLT->getUseDLTFlag( 1 )); 447 } 448 #endif 449 442 450 pcDLT->setInterViewDltPredEnableFlag( i, (uiCode == 1) ? true : false ); 443 451 -
branches/HTM-10.2-dev0/source/Lib/TLibDecoder/TDecCu.cpp
r935 r936 794 794 } 795 795 796 #if RWTH_DBBP_NO_SPU_H0057 797 AOF( pcCU->getARPW(uiPartAddr) == 0 ); 798 AOF( pcCU->getICFlag(uiPartAddr) == false ); 799 AOF( pcCU->getSPIVMPFlag(uiPartAddr) == false ); 800 AOF( pcCU->getVSPFlag(uiPartAddr) == 0 ); 801 #else 796 802 pDBBPTmpData->ahVSPFlag[uiSegment] = pcCU->getVSPFlag( uiPartAddr ); 797 803 pDBBPTmpData->acDvInfo[uiSegment] = pcCU->getDvInfo( uiPartAddr ); 804 #endif 798 805 } 799 806 … … 805 812 pcCU->setInterDirSubParts( pDBBPTmpData->auhInterDir[uiSegment], 0, 0, uiDepth ); 806 813 814 #if !RWTH_DBBP_NO_SPU_H0057 807 815 pcCU->setVSPFlagSubParts( pDBBPTmpData->ahVSPFlag[uiSegment], 0, 0, uiDepth ); 808 816 pcCU->setDvInfoSubParts( pDBBPTmpData->acDvInfo[uiSegment], 0, 0, uiDepth ); 817 #endif 809 818 810 819 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ ) … … 828 837 pcCU->setDBBPFlagSubParts(true, uiPartAddr, uiSegment, uiDepth); 829 838 839 #if !RWTH_DBBP_NO_SPU_H0057 830 840 pcCU->setVSPFlagSubParts( pDBBPTmpData->ahVSPFlag[uiSegment], uiPartAddr, uiSegment, uiDepth ); 831 841 pcCU->setDvInfoSubParts( pDBBPTmpData->acDvInfo[uiSegment], uiPartAddr, uiSegment, uiDepth ); 842 #endif 832 843 833 844 pcCU->setInterDirSubParts(pDBBPTmpData->auhInterDir[uiSegment], uiPartAddr, uiSegment, uiDepth); // interprets depth relative to LCU level … … 932 943 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 933 944 { 934 #if H_3D 945 #if H_3D && !SEC_NO_RESI_DLT_H0105 935 946 if ( useDltFlag ) 936 947 { -
branches/HTM-10.2-dev0/source/Lib/TLibDecoder/TDecEntropy.cpp
r935 r936 139 139 140 140 #if H_3D_DBBP 141 142 #if MTK_DBBP_SIGNALING_H0094 143 if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) ) 144 #else 141 145 if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) && pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE ) 146 #endif 142 147 { 143 148 decodeDBBPFlag(pcCU, uiAbsPartIdx, uiDepth); … … 145 150 if( pcCU->getDBBPFlag(uiAbsPartIdx) ) 146 151 { 152 #if !MTK_DBBP_SIGNALING_H0094 147 153 AOF( pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE ); 154 #endif 148 155 149 156 // get collocated depth block … … 161 168 162 169 pcCU->setPartSizeSubParts(eVirtualPartSize, uiAbsPartIdx, uiDepth); 170 171 #if RWTH_DBBP_NO_SPU_H0057 172 // make sure that DBBP flag is set for both segments 173 UInt uiPUOffset = ( g_auiPUOffset[UInt( eVirtualPartSize )] << ( ( pcCU->getSlice()->getSPS()->getMaxCUDepth() - uiDepth ) << 1 ) ) >> 4; 174 pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx, 0, uiDepth); 175 pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx+uiPUOffset, 1, uiDepth); 176 #endif 163 177 } 164 178 } -
branches/HTM-10.2-dev0/source/Lib/TLibDecoder/TDecSbac.cpp
r935 r936 2141 2141 Void TDecSbac::parseDBBPFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 2142 2142 { 2143 #if !MTK_DBBP_SIGNALING_H0094 2143 2144 PartSize ePartSize = pcCU->getPartitionSize( uiAbsPartIdx ); 2145 #endif 2144 2146 AOF( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) ); 2145 2147 AOF( !pcCU->getSlice()->getIsDepth() ); 2148 #if !MTK_DBBP_SIGNALING_H0094 2146 2149 AOF( ePartSize == RWTH_DBBP_PACK_MODE ); 2150 #endif 2147 2151 2148 2152 UInt uiSymbol = 0; -
branches/HTM-10.2-dev0/source/Lib/TLibDecoder/TDecSlice.cpp
r872 r936 221 221 } 222 222 } 223 #if MTK_DLT_CODING_FIX_H0091 224 if( pcSlice->getPPS()->getDLT() != NULL ) 225 { 226 assert( pcSlice->getSPS()->getBitDepthY() == pcSlice->getPPS()->getDLT()->getDepthViewBitDepth() ); 227 } 228 #endif 223 229 for( Int iCUAddr = iStartCUAddr; !uiIsLast && iCUAddr < rpcPic->getNumCUsInFrame(); iCUAddr = rpcPic->getPicSym()->xCalculateNxtCUAddr(iCUAddr) ) 224 230 { -
branches/HTM-10.2-dev0/source/Lib/TLibEncoder/TEncCavlc.cpp
r884 r936 272 272 WRITE_FLAG( pcPPS->getSliceHeaderExtensionPresentFlag() ? 1 : 0, "slice_segment_header_extension_present_flag"); 273 273 274 #if MTK_DLT_CODING_FIX_H0091 275 if(( !pcPPS->getSPS()->getVPS()->getDepthId( pcPPS->getSPS()->getLayerId() ) )|| 276 pcPPS->getLayerId() != 1 ) 277 { 278 pcPPS->setPpsExtensionTypeFlag( PPS_EX_T_3D, false ); 279 } 280 #endif 281 274 282 #if !H_MV 275 283 WRITE_FLAG( 0, "pps_extension_flag" ); -
branches/HTM-10.2-dev0/source/Lib/TLibEncoder/TEncCu.cpp
r935 r936 2397 2397 pDBBPTmpData->auhMergeIndex[uiSegment] = rpcTempCU->getMergeIndex(0); 2398 2398 2399 #if RWTH_DBBP_NO_SPU_H0057 2400 AOF( rpcTempCU->getSPIVMPFlag(0) == false ); 2401 AOF( rpcTempCU->getVSPFlag(0) == 0 ); 2402 #else 2399 2403 pDBBPTmpData->ahVSPFlag[uiSegment] = rpcTempCU->getVSPFlag(0); 2400 2404 pDBBPTmpData->acDvInfo[uiSegment] = rpcTempCU->getDvInfo(0); 2405 #endif 2401 2406 2402 2407 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ ) … … 2430 2435 rpcTempCU->setMergeIndexSubParts(pDBBPTmpData->auhMergeIndex[uiSegment], uiPartAddr, uiSegment, uhDepth); 2431 2436 2437 #if !RWTH_DBBP_NO_SPU_H0057 2432 2438 rpcTempCU->setVSPFlagSubParts(pDBBPTmpData->ahVSPFlag[uiSegment], uiPartAddr, uiSegment, uhDepth); 2433 2439 rpcTempCU->setDvInfoSubParts(pDBBPTmpData->acDvInfo[uiSegment], uiPartAddr, uiSegment, uhDepth); 2440 #endif 2434 2441 2435 2442 for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ ) -
branches/HTM-10.2-dev0/source/Lib/TLibEncoder/TEncEntropy.cpp
r884 r936 246 246 247 247 #if H_3D_DBBP 248 249 #if MTK_DBBP_SIGNALING_H0094 250 if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) ) 251 #else 248 252 if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) && pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE ) 253 #endif 249 254 { 250 255 encodeDBBPFlag(pcCU, uiAbsPartIdx, bRD); … … 252 257 if( pcCU->getDBBPFlag(uiAbsPartIdx) ) 253 258 { 259 #if !MTK_DBBP_SIGNALING_H0094 254 260 AOF( pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE ); 261 #endif 255 262 // restore virtual partition size for DBBP blocks 256 263 pcCU->setPartSizeSubParts(eVirtualPartSize, uiAbsPartIdx, uiDepth); -
branches/HTM-10.2-dev0/source/Lib/TLibEncoder/TEncSbac.cpp
r884 r936 2356 2356 Void TEncSbac::codeDBBPFlag( TComDataCU* pcCU, UInt uiAbsPartIdx ) 2357 2357 { 2358 #if !MTK_DBBP_SIGNALING_H0094 2358 2359 PartSize ePartSize = pcCU->getPartitionSize( uiAbsPartIdx ); 2359 2360 AOF( ePartSize == RWTH_DBBP_PACK_MODE ); 2361 #endif 2360 2362 AOF( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) ); 2361 2363 AOF( !pcCU->getSlice()->getIsDepth() ); -
branches/HTM-10.2-dev0/source/Lib/TLibEncoder/TEncSearch.cpp
r935 r936 1146 1146 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 1147 1147 { 1148 #if H_3D_DIM 1148 #if H_3D_DIM && !SEC_NO_RESI_DLT_H0105 1149 1149 if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getPPS()->getDLT()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) ) 1150 1150 { … … 1221 1221 for( UInt uiX = 0; uiX < uiWidth; uiX++ ) 1222 1222 { 1223 #if H_3D_DIM 1223 #if H_3D_DIM && !SEC_NO_RESI_DLT_H0105 1224 1224 if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getPPS()->getDLT()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) ) 1225 1225 { … … 3666 3666 pcCU->setInterDirSubParts(pDBBPTmpData->auhInterDir[0], 0, 0, pcCU->getDepth(0)); // interprets depth relative to LCU level 3667 3667 3668 #if !RWTH_DBBP_NO_SPU_H0057 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.