Changeset 566 in 3DVCSoftware for branches/HTM-DEV-2.0-dev1-Mediatek/source/Lib/TLibEncoder
- Timestamp:
- 12 Aug 2013, 11:11:06 (11 years ago)
- Location:
- branches/HTM-DEV-2.0-dev1-Mediatek/source/Lib/TLibEncoder
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-DEV-2.0-dev1-Mediatek/source/Lib/TLibEncoder/TEncCu.cpp
r541 r566 1615 1615 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 1616 1616 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 1617 #if MTK_VSP_FIX_E0172 1618 Int vspDir[MRG_MAX_NUM_CANDS_MEM]; 1619 memset(vspDir, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 1620 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag,vspDir, numValidMergeCand ); 1621 #else 1617 1622 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag, numValidMergeCand ); 1623 #endif 1618 1624 #else 1619 1625 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand ); … … 1683 1689 #if H_3D_VSP 1684 1690 rpcTempCU->setVSPFlagSubParts( vspFlag[uiMergeCand], 0, 0, uhDepth ); 1691 #if MTK_VSP_FIX_E0172 1692 rpcTempCU->setVSPDirSubParts( vspDir[uiMergeCand], 0, 0, uhDepth ); 1693 #endif 1685 1694 #endif 1686 1695 rpcTempCU->setInterDirSubParts( uhInterDirNeighbours[uiMergeCand], 0, 0, uhDepth ); // interprets depth relative to LCU level -
branches/HTM-DEV-2.0-dev1-Mediatek/source/Lib/TLibEncoder/TEncGOP.cpp
r542 r566 1078 1078 #endif 1079 1079 #endif 1080 #if MTK_NBDV_TN_FIX_E0172 1081 if(pcSlice->getViewIndex() && !pcSlice->getIsDepth() && !pcSlice->isIntra()) //Notes from QC: this condition shall be changed once the configuration is completed, e.g. in pcSlice->getSPS()->getMultiviewMvPredMode() || ARP in prev. HTM. Remove this comment once it is done. 1082 { 1083 pcPic->checkTemporalIVRef(); 1084 } 1085 #endif 1080 1086 while(nextCUAddr<uiRealEndAddress) // determine slice boundaries 1081 1087 { -
branches/HTM-DEV-2.0-dev1-Mediatek/source/Lib/TLibEncoder/TEncSearch.cpp
r537 r566 3550 3550 #if H_3D_VSP 3551 3551 , Int* vspFlag 3552 #if MTK_VSP_FIX_E0172 3553 , Int* vspDir 3554 #endif 3552 3555 #endif 3553 3556 , Int& numValidMergeCand … … 3569 3572 #if H_3D_VSP 3570 3573 , vspFlag 3574 #if MTK_VSP_FIX_E0172 3575 , vspDir 3576 #endif 3571 3577 #endif 3572 3578 , numValidMergeCand … … 3580 3586 #if H_3D_VSP 3581 3587 , vspFlag 3588 #if MTK_VSP_FIX_E0172 3589 , vspDir 3590 #endif 3582 3591 #endif 3583 3592 , numValidMergeCand 3584 3593 ); 3585 3594 } 3595 #if MTK_VSP_FIX_E0172 3596 xRestrictBipredMergeCand( pcCU, iPUIdx, cMvFieldNeighbours, uhInterDirNeighbours,vspFlag, numValidMergeCand ); 3597 #else 3586 3598 xRestrictBipredMergeCand( pcCU, iPUIdx, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand ); 3599 #endif 3587 3600 3588 3601 ruiCost = MAX_UINT; … … 3600 3613 #if H_3D_VSP 3601 3614 pcCU->setVSPFlagSubParts( vspFlag[uiMergeCand], uiAbsPartIdx, iPUIdx, pcCU->getDepth( uiAbsPartIdx ) ); 3615 #if MTK_VSP_FIX_E0172 3616 pcCU->setVSPDirSubParts( vspDir[uiMergeCand], uiAbsPartIdx, iPUIdx, pcCU->getDepth( uiAbsPartIdx ) ); 3617 #endif 3602 3618 #endif 3603 3619 … … 3629 3645 * \returns Void 3630 3646 */ 3647 #if MTK_VSP_FIX_E0172 3648 Void TEncSearch::xRestrictBipredMergeCand( TComDataCU* pcCU, UInt puIdx, TComMvField* mvFieldNeighbours, UChar* interDirNeighbours, Int* vspFlag, Int numValidMergeCand ) 3649 #else 3631 3650 Void TEncSearch::xRestrictBipredMergeCand( TComDataCU* pcCU, UInt puIdx, TComMvField* mvFieldNeighbours, UChar* interDirNeighbours, Int numValidMergeCand ) 3651 #endif 3632 3652 { 3633 3653 if ( pcCU->isBipredRestriction(puIdx) ) … … 3635 3655 for( UInt mergeCand = 0; mergeCand < numValidMergeCand; ++mergeCand ) 3636 3656 { 3657 #if MTK_VSP_FIX_E0172 3658 if ( (interDirNeighbours[mergeCand] == 3) && (vspFlag[mergeCand] == false) ) 3659 #else 3637 3660 if ( interDirNeighbours[mergeCand] == 3 ) 3661 #endif 3638 3662 { 3639 3663 interDirNeighbours[mergeCand] = 1; … … 3758 3782 #if H_3D_VSP 3759 3783 pcCU->setVSPFlagSubParts( 0, uiPartAddr, iPartIdx, pcCU->getDepth(uiPartAddr) ); 3784 #if MTK_VSP_FIX_E0172 3785 pcCU->setVSPDirSubParts( 0, uiPartAddr, iPartIdx, pcCU->getDepth(uiPartAddr) ); 3786 #endif 3760 3787 #endif 3761 3788 … … 4250 4277 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 4251 4278 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 4279 #if MTK_VSP_FIX_E0172 4280 Int vspDir[MRG_MAX_NUM_CANDS_MEM]; 4281 memset(vspDir, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 4282 #endif 4252 4283 #endif 4253 4284 … … 4255 4286 #if H_3D_VSP 4256 4287 , vspFlag 4288 #if MTK_VSP_FIX_E0172 4289 , vspDir 4290 #endif 4257 4291 #endif 4258 4292 , numValidMergeCand … … 4265 4299 #if H_3D_VSP 4266 4300 pcCU->setVSPFlagSubParts( vspFlag[uiMRGIndex], uiPartAddr, iPartIdx, pcCU->getDepth( uiPartAddr ) ); 4301 #if MTK_VSP_FIX_E0172 4302 pcCU->setVSPDirSubParts( vspDir[uiMRGIndex], uiPartAddr, iPartIdx, pcCU->getDepth( uiPartAddr ) ); 4303 #endif 4267 4304 #endif 4268 4305 pcCU->setInterDirSubParts ( uiMRGInterDir, uiPartAddr, iPartIdx, pcCU->getDepth( uiPartAddr ) ); … … 4287 4324 #if H_3D_VSP 4288 4325 pcCU->setVSPFlagSubParts ( 0, uiPartAddr, iPartIdx, pcCU->getDepth( uiPartAddr ) ); 4326 #if MTK_VSP_FIX_E0172 4327 pcCU->setVSPDirSubParts ( 0, uiPartAddr, iPartIdx, pcCU->getDepth( uiPartAddr ) ); 4328 #endif 4289 4329 #endif 4290 4330 { -
branches/HTM-DEV-2.0-dev1-Mediatek/source/Lib/TLibEncoder/TEncSearch.h
r531 r566 415 415 #if H_3D_VSP 416 416 , Int* vspFlag 417 #if MTK_VSP_FIX_E0172 418 , Int* vspDir 419 #endif 417 420 #endif 418 421 , Int& numValidMergeCand … … 423 426 TComMvField* mvFieldNeighbours, 424 427 UChar* interDirNeighbours, 428 #if MTK_VSP_FIX_E0172 429 Int* vspFlag, 430 #endif 425 431 Int numValidMergeCand ); 426 432
Note: See TracChangeset for help on using the changeset viewer.