Changeset 1285 in 3DVCSoftware
- Timestamp:
- 20 Jul 2015, 11:23:15 (9 years ago)
- Location:
- branches/HTM-14.1-update-dev1
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.1-update-dev1
- Property svn:mergeinfo changed
/branches/HTM-14.1-update-dev2 merged: 1284
- Property svn:mergeinfo changed
-
branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/TComDataCU.cpp
r1282 r1285 2936 2936 } 2937 2937 2938 #if NH_3D_FIX_PRUNING 2939 Bool TComDataCU::hasEqualMotion( Int dirA, const TComMvField* mvFieldA, Int dirB, const TComMvField* mvFieldB ) 2940 { 2941 return ( dirA == dirB && 2942 ( ( dirA & 1 ) == 0 || mvFieldA[0] == mvFieldB[0] ) && 2943 ( ( dirA & 2 ) == 0 || mvFieldA[1] == mvFieldB[1] ) 2944 ); 2945 } 2946 #endif 2947 2938 2948 #if NH_3D_VSP 2939 2949 /** Add a VSP merging candidate … … 3038 3048 if( !iLoop && ivCandDir[0] > 0) 3039 3049 { 3050 #if NH_3D_FIX_PRUNING 3051 if( hasEqualMotion(tmpDir, tmpMV, m_mergCands[MRG_IVMC].m_uDir, m_mergCands[MRG_IVMC].m_cMvField )) 3052 #else 3040 3053 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]) 3054 #endif 3041 3055 { 3042 3056 bRemove = true; … … 3487 3501 for(iCnloop = 0; iCnloop < 2; iCnloop ++) 3488 3502 { 3489 if ( !m_mergCands[MRG_A1+iCnloop].m_bAvailable ) // prun ning to A1, B13503 if ( !m_mergCands[MRG_A1+iCnloop].m_bAvailable ) // pruning to A1, B1 3490 3504 { 3491 3505 continue; 3492 3506 } 3507 #if NH_3D_FIX_PRUNING 3508 if (hasEqualMotion( tmpDir, tmpMV, m_mergCands[MRG_A1+iCnloop].m_uDir, m_mergCands[MRG_A1+iCnloop].m_cMvField ) ) 3509 #else 3493 3510 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]) 3511 #endif 3494 3512 { 3495 3513 m_mergCands[MRG_A1+iCnloop].m_bAvailable = false; … … 3561 3579 for(Int i = 0; i < 2; i ++) 3562 3580 { 3563 if ( !m_mergCands[MRG_A1 + i].m_bAvailable ) // prun ning to A1, B13581 if ( !m_mergCands[MRG_A1 + i].m_bAvailable ) // pruning to A1, B1 3564 3582 { 3565 3583 continue; 3566 3584 } 3567 3585 #if NH_3D_FIX_PRUNING 3568 if ( ivCandDir[0] == m_mergCands[MRG_A1+i].m_uDir && 3569 ( ( ivCandDir[0] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] ) && 3570 ( ( ivCandDir[0] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1] ) 3571 ) 3586 if (hasEqualMotion(ivCandDir[0], tmpMV, m_mergCands[MRG_A1+i].m_uDir, m_mergCands[MRG_A1+i].m_cMvField) ) 3572 3587 #else 3573 3588 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]) … … 3579 3594 } 3580 3595 } 3581 if (bIsDepth)3596 else 3582 3597 { 3583 3598 #if NH_3D_FIX_PRUNING 3584 if ( m_mergCands[MRG_T].m_bAvailable && ivCandDir[0] == m_mergCands[MRG_T].m_uDir && 3585 ( ( ivCandDir[0] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_T].m_cMvField[0] ) && 3586 ( ( ivCandDir[0] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_T].m_cMvField[1] ) 3587 ) 3599 if( hasEqualMotion( ivCandDir[0], tmpMV, m_mergCands[MRG_T].m_uDir, m_mergCands[MRG_T].m_cMvField ) ) 3588 3600 #else 3589 3601 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]) … … 3685 3697 } 3686 3698 #if NH_3D_FIX_PRUNING 3687 if ( ivCandDir[1] == m_mergCands[MRG_A1+i].m_uDir && 3688 ( ( ivCandDir[1] & 1 ) == 0 || tmpMV[0]==m_mergCands[MRG_A1+i].m_cMvField[0] ) && 3689 ( ( ivCandDir[1] & 2 ) == 0 || tmpMV[1]==m_mergCands[MRG_A1+i].m_cMvField[1] ) 3690 ) 3699 if ( hasEqualMotion(ivCandDir[1], tmpMV, m_mergCands[MRG_A1+i].m_uDir, m_mergCands[MRG_A1+i].m_cMvField) ) 3691 3700 #else 3692 3701 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-dev1/source/Lib/TLibCommon/TComDataCU.h
r1279 r1285 653 653 654 654 Bool hasEqualMotion ( UInt uiAbsPartIdx, TComDataCU* pcCandCU, UInt uiCandAbsPartIdx ); 655 655 #if NH_3D_FIX_PRUNING 656 Bool hasEqualMotion ( Int dirA, const TComMvField* mvFieldA, Int dirB, const TComMvField* mvFieldB ); 657 #endif 656 658 #if NH_3D_MLC 657 659 Bool getAvailableFlagA1() { return m_bAvailableFlagA1; } -
branches/HTM-14.1-update-dev1/source/Lib/TLibCommon/TComRom.cpp
r1282 r1285 686 686 } 687 687 Bool stopFlag = false; 688 if ( g_stopAtPos && poc == 6 && layerId == 2)688 if ( g_stopAtPos && poc == 16 && layerId == 5 ) 689 689 { 690 690 Bool stopAtCU = true; 691 691 if ( stopAtCU ) // Stop at CU with specific size 692 692 { 693 stopFlag = ( cuPelX == 128 ) && ( cuPelY == 160 ) && ( cuWidth == 32 ) && ( cuHeight == 32);693 stopFlag = ( cuPelX == 224 ) && ( cuPelY == 128 ) && ( cuWidth == 16 ) && ( cuHeight == 16 ); 694 694 } 695 695 else -
branches/HTM-14.1-update-dev1/source/Lib/TLibEncoder/TEncCu.cpp
r1282 r1285 2270 2270 for( Int nARPW = 0; nARPW <= nARPWMax; nARPW++ ) 2271 2271 { 2272 #if DEBUG_STRING && H_MV_ENC_DEC_TRAC 2273 sTest.clear(); 2274 #endif 2275 2272 2276 if( !bFirstTime && rpcTempCU->getSlice()->getIvResPredFlag() ) 2273 2277 {
Note: See TracChangeset for help on using the changeset viewer.