Changeset 254 in 3DVCSoftware for branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibCommon
- Timestamp:
- 4 Feb 2013, 02:58:35 (12 years ago)
- Location:
- branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibCommon
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibCommon/TComDataCU.cpp
r244 r254 3624 3624 { 3625 3625 #if HHI_INTER_VIEW_MOTION_PRED 3626 #if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137 3627 const Int extraMergeCand = ( ( getSlice()->getIsDepth() || getSlice()->getSPS()->getMultiviewMvPredMode() )? 1 : 0 ); 3628 #else 3626 3629 const Int extraMergeCand = ( getSlice()->getSPS()->getMultiviewMvPredMode() ? 1 : 0 ); 3630 #endif 3627 3631 #endif 3628 3632 … … 3651 3655 deriveLeftRightTopIdxGeneral( cCurPS, uiAbsPartIdx, uiPUIdx, uiPartIdxLT, uiPartIdxRT ); 3652 3656 deriveLeftBottomIdxGeneral( cCurPS, uiAbsPartIdx, uiPUIdx, uiPartIdxLB ); 3657 3658 #if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137 3659 if( m_pcSlice->getIsDepth()) 3660 { 3661 UInt uiPartIdxCenter; 3662 xDeriveCenterIdx( cCurPS, uiPUIdx, uiPartIdxCenter ); 3663 TComDataCU *pcTextureCU = m_pcSlice->getTexturePic()->getCU( getAddr() ); 3664 if ( pcTextureCU && !pcTextureCU->isIntra( uiPartIdxCenter ) ) 3665 { 3666 abCandIsInter[iCount] = true; 3667 puhInterDirNeighbours[iCount] = pcTextureCU->getInterDir( uiPartIdxCenter ); 3668 if( ( puhInterDirNeighbours[iCount] & 1 ) == 1 ) 3669 { 3670 pcTextureCU->getMvField( pcTextureCU, uiPartIdxCenter, REF_PIC_LIST_0, pcMvFieldNeighbours[iCount<<1] ); 3671 TComMv cMvPred = pcMvFieldNeighbours[iCount<<1].getMv(); 3672 const TComMv cAdd( 1 << ( 2 - 1 ), 1 << ( 2 - 1 ) ); 3673 cMvPred+=cAdd; 3674 cMvPred>>=2; 3675 clipMv(cMvPred); 3676 pcMvFieldNeighbours[iCount<<1].setMvField(cMvPred,pcMvFieldNeighbours[iCount<<1].getRefIdx()); 3677 } 3678 if ( getSlice()->isInterB() ) 3679 { 3680 if( ( puhInterDirNeighbours[iCount] & 2 ) == 2 ) 3681 { 3682 pcTextureCU->getMvField( pcTextureCU, uiPartIdxCenter, REF_PIC_LIST_1, pcMvFieldNeighbours[(iCount<<1)+1] ); 3683 TComMv cMvPred = pcMvFieldNeighbours[(iCount<<1)+1].getMv(); 3684 const TComMv cAdd( 1 << ( 2 - 1 ), 1 << ( 2 - 1 ) ); 3685 cMvPred+=cAdd; 3686 cMvPred>>=2; 3687 clipMv(cMvPred); 3688 pcMvFieldNeighbours[(iCount<<1)+1].setMvField(cMvPred,pcMvFieldNeighbours[(iCount<<1)+1].getRefIdx()); 3689 } 3690 } 3691 #if SIMP_MRG_PRUN 3692 if ( mrgCandIdx == iCount ) 3693 { 3694 return; 3695 } 3696 #endif 3697 iCount ++; 3698 } 3699 } 3700 #endif 3653 3701 3654 3702 #if HHI_INTER_VIEW_MOTION_PRED -
branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibCommon/TypeDef.h
r244 r254 115 115 116 116 ///// ***** MOTION PARAMETER INHERITANCE ********* 117 #define HHI_MPI 1 // motion parameter inheritance from texture picture for depth map coding 117 #define MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137 1 // JCT3V-C0137 118 #define HHI_MPI 0 // motion parameter inheritance from texture picture for depth map coding 118 119 #if HHI_MPI 119 120 #define FIX_MPI_B0065 1 // JCT3V-B0065, fix the MPI bug when RQT is off
Note: See TracChangeset for help on using the changeset viewer.