Changeset 1284 in 3DVCSoftware
- Timestamp:
- 20 Jul 2015, 11:03:38 (9 years ago)
- Location:
- branches/HTM-14.1-update-dev2/source/Lib
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.1-update-dev2/source/Lib/TLibCommon/TComDataCU.cpp
r1281 r1284 3041 3041 } 3042 3042 3043 #if NH_3D_FIX_PRUNING 3044 Bool TComDataCU::hasEqualMotion( Int dirA, const TComMvField* mvFieldA, Int dirB, const TComMvField* mvFieldB ) 3045 { 3046 return ( dirA == dirB && 3047 ( ( dirA & 1 ) == 0 || mvFieldA[0] == mvFieldB[0] ) && 3048 ( ( dirA & 2 ) == 0 || mvFieldA[1] == mvFieldB[1] ) 3049 ); 3050 } 3051 #endif 3052 3043 3053 #if NH_3D_VSP 3044 3054 /** Add a VSP merging candidate … … 3143 3153 if( !iLoop && ivCandDir[0] > 0) 3144 3154 { 3155 #if NH_3D_FIX_PRUNING 3156 if( hasEqualMotion(tmpDir, tmpMV, m_mergCands[MRG_IVMC].m_uDir, m_mergCands[MRG_IVMC].m_cMvField )) 3157 #else 3145 3158 if(tmpDir == m_mergCands[MRG_IVMC].m_uDir && m_mergCands[MRG_IVMC].m_cMvField[0]==tmpMV[0] && m_mergCands[MRG_IVMC].m_cMvField[1]==tmpMV[1]) 3159 #endif 3146 3160 { 3147 3161 bRemove = true; … … 3592 3606 for(iCnloop = 0; iCnloop < 2; iCnloop ++) 3593 3607 { 3594 if ( !m_mergCands[MRG_A1+iCnloop].m_bAvailable ) // prun ning to A1, B13608 if ( !m_mergCands[MRG_A1+iCnloop].m_bAvailable ) // pruning to A1, B1 3595 3609 { 3596 3610 continue; 3597 3611 } 3612 #if NH_3D_FIX_PRUNING 3613 if (hasEqualMotion( tmpDir, tmpMV, m_mergCands[MRG_A1+iCnloop].m_uDir, m_mergCands[MRG_A1+iCnloop].m_cMvField ) ) 3614 #else 3598 3615 if (tmpDir == m_mergCands[MRG_A1+iCnloop].m_uDir && tmpMV[0]==m_mergCands[MRG_A1+iCnloop].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_A1+iCnloop].m_cMvField[1]) 3616 #endif 3599 3617 { 3600 3618 m_mergCands[MRG_A1+iCnloop].m_bAvailable = false; … … 3666 3684 for(Int i = 0; i < 2; i ++) 3667 3685 { 3668 if ( !m_mergCands[MRG_A1 + i].m_bAvailable ) // prun ning to A1, B13686 if ( !m_mergCands[MRG_A1 + i].m_bAvailable ) // pruning to A1, B1 3669 3687 { 3670 3688 continue; 3671 3689 } 3672 3690 #if NH_3D_FIX_PRUNING 3673 if ( ivCandDir[0] == m_mergCands[MRG_A1+i].m_uDir && 3674 ( ( ivCandDir[0] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] ) && 3675 ( ( ivCandDir[0] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1] ) 3676 ) 3691 if (hasEqualMotion(ivCandDir[0], tmpMV, m_mergCands[MRG_A1+i].m_uDir, m_mergCands[MRG_A1+i].m_cMvField) ) 3677 3692 #else 3678 3693 if (ivCandDir[0] == m_mergCands[MRG_A1+i].m_uDir && tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1]) … … 3684 3699 } 3685 3700 } 3686 if (bIsDepth)3701 else 3687 3702 { 3688 3703 #if NH_3D_FIX_PRUNING 3689 if ( m_mergCands[MRG_T].m_bAvailable && ivCandDir[0] == m_mergCands[MRG_T].m_uDir && 3690 ( ( ivCandDir[0] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_T].m_cMvField[0] ) && 3691 ( ( ivCandDir[0] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_T].m_cMvField[1] ) 3692 ) 3704 if( hasEqualMotion( ivCandDir[0], tmpMV, m_mergCands[MRG_T].m_uDir, m_mergCands[MRG_T].m_cMvField ) ) 3693 3705 #else 3694 3706 if (m_mergCands[MRG_T].m_bAvailable && ivCandDir[0] == m_mergCands[MRG_T].m_uDir && tmpMV[0]==m_mergCands[MRG_T].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_T].m_cMvField[1]) … … 3790 3802 } 3791 3803 #if NH_3D_FIX_PRUNING 3792 if ( ivCandDir[1] == m_mergCands[MRG_A1+i].m_uDir && 3793 ( ( ivCandDir[1] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] ) && 3794 ( ( ivCandDir[1] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1] ) 3795 ) 3804 if ( hasEqualMotion(ivCandDir[1], tmpMV, m_mergCands[MRG_A1+i].m_uDir, m_mergCands[MRG_A1+i].m_cMvField) ) 3796 3805 #else 3797 3806 if (ivCandDir[1] == m_mergCands[MRG_A1+i].m_uDir && tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] && tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1]) -
branches/HTM-14.1-update-dev2/source/Lib/TLibCommon/TComDataCU.h
r1274 r1284 660 660 661 661 Bool hasEqualMotion ( UInt uiAbsPartIdx, TComDataCU* pcCandCU, UInt uiCandAbsPartIdx ); 662 662 #if NH_3D_FIX_PRUNING 663 Bool hasEqualMotion ( Int dirA, const TComMvField* mvFieldA, Int dirB, const TComMvField* mvFieldB ); 664 #endif 663 665 #if NH_3D_MLC 664 666 Bool getAvailableFlagA1() { return m_bAvailableFlagA1; } -
branches/HTM-14.1-update-dev2/source/Lib/TLibCommon/TComRom.cpp
r1281 r1284 704 704 } 705 705 Bool stopFlag = false; 706 if ( g_stopAtPos && poc == 6 && layerId == 2)706 if ( g_stopAtPos && poc == 16 && layerId == 5 ) 707 707 { 708 708 Bool stopAtCU = true; 709 709 if ( stopAtCU ) // Stop at CU with specific size 710 710 { 711 stopFlag = ( cuPelX == 128 ) && ( cuPelY == 160 ) && ( cuWidth == 32 ) && ( cuHeight == 32);711 stopFlag = ( cuPelX == 224 ) && ( cuPelY == 128 ) && ( cuWidth == 16 ) && ( cuHeight == 16 ); 712 712 } 713 713 else -
branches/HTM-14.1-update-dev2/source/Lib/TLibEncoder/TEncCu.cpp
r1280 r1284 2272 2272 for( Int nARPW = 0; nARPW <= nARPWMax; nARPW++ ) 2273 2273 { 2274 #if DEBUG_STRING && H_MV_ENC_DEC_TRAC 2275 sTest.clear(); 2276 #endif 2277 2274 2278 if( !bFirstTime && rpcTempCU->getSlice()->getIvResPredFlag() ) 2275 2279 {
Note: See TracChangeset for help on using the changeset viewer.