- Timestamp:
- 8 Aug 2012, 14:04:37 (12 years ago)
- Location:
- branches/HTM-3.1-LG/source/Lib/TLibCommon
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-3.1-LG/source/Lib/TLibCommon/TComDataCU.cpp
r97 r99 3467 3467 TComMv acPdmMv [2]; 3468 3468 Int aiPdmRefIdx [2] = {-1, -1}; 3469 3470 #if LGE_DVMCP 3471 acPdmMv[0].m_bDvMcp = acPdmMv[1].m_bDvMcp = false; 3472 #endif 3473 3469 3474 #if QC_MULTI_DIS_CAN 3470 3475 DisInfo cDisInfo; … … 3472 3477 if(!bNoPdmMerge) 3473 3478 { 3474 #if USE_DVMCP3479 #if LGE_DVMCP 3475 3480 getDisMvpCand2(uiPUIdx, uiAbsPartIdx, &cDisInfo, true ); 3476 3481 #else … … 3543 3548 pcCULeft->getMvField( pcCULeft, uiLeftPartIdx, REF_PIC_LIST_1, pcMvFieldNeighbours[(iCount<<1)+1] ); 3544 3549 } 3545 #if USE_DVMCP3550 #if LGE_DVMCP 3546 3551 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3547 3552 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3619 3624 pcCUAbove->getMvField( pcCUAbove, uiAbovePartIdx, REF_PIC_LIST_1, pcMvFieldNeighbours[(iCount<<1)+1] ); 3620 3625 } 3621 #if USE_DVMCP3626 #if LGE_DVMCP 3622 3627 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3623 3628 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3690 3695 pcCUAboveRight->getMvField( pcCUAboveRight, uiAboveRightPartIdx, REF_PIC_LIST_1, pcMvFieldNeighbours[(iCount<<1)+1] ); 3691 3696 } 3692 #if USE_DVMCP3697 #if LGE_DVMCP 3693 3698 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3694 3699 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3758 3763 pcCULeftBottom->getMvField( pcCULeftBottom, uiLeftBottomPartIdx, REF_PIC_LIST_1, pcMvFieldNeighbours[(iCount<<1)+1] ); 3759 3764 } 3760 #if USE_DVMCP3765 #if LGE_DVMCP 3761 3766 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3762 3767 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3835 3840 pcCUAboveLeft->getMvField( pcCUAboveLeft, uiAboveLeftPartIdx, REF_PIC_LIST_1, pcMvFieldNeighbours[(iCount<<1)+1] ); 3836 3841 } 3837 #if USE_DVMCP3842 #if LGE_DVMCP 3838 3843 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3839 3844 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3955 3960 puhInterDirNeighbours[uiArrayAddr] = 1; 3956 3961 } 3957 #if USE_DVMCP3962 #if LGE_DVMCP 3958 3963 pcMvFieldNeighbours[uiArrayAddr<<1 ].getMv().m_bDvMcp = false; 3959 3964 pcMvFieldNeighbours[(uiArrayAddr<<1)+1].getMv().m_bDvMcp = false; … … 4754 4759 } 4755 4760 4756 #if USE_DVMCP4761 #if LGE_DVMCP 4757 4762 Void TComDataCU::getDisMvpCand2( UInt uiPartIdx, UInt uiPartAddr,DisInfo* pDInfo, Bool bMerge, RefPicList eRefPicList0, Int iRefIdx0 ) 4758 4763 { … … 4813 4818 bDvMcpIsFound = true; 4814 4819 } 4815 #if USE_DVMCP_MSG4816 //printf("skipped %d =%d, curCUAddr=%d, leftCUAddr=%d\n",DVFROM_LEFT, iList, getAddr(), pcTmpCU->getAddr() );4817 aiRefPOC [iList][DVFROM_LEFT] = pcTmpCU->getCUMvField(eRefPicList)->getRefIdx(uiIdx);4818 if( aiRefPOC[iList][DVFROM_LEFT]<0 )4819 {4820 printf("error\n");4821 }4822 //aiRefPOC [iList][DVFROM_LEFT] = pcTmpCU->getSlice()->getRefPOC( eRefPicList, );4823 #endif4824 4820 } 4825 4821 } … … 4860 4856 bDvMcpIsFound = true; 4861 4857 } 4862 #if USE_DVMCP_MSG4863 //printf("skipped %d =%d, curCUAddr=%d, leftCUAddr=%d\n",DVFROM_ABOVE, iList, getAddr(), pcTmpCU->getAddr() );4864 aiRefPOC [iList][DVFROM_ABOVE] = pcTmpCU->getCUMvField(eRefPicList)->getRefIdx(uiIdx);4865 if( aiRefPOC[iList][DVFROM_ABOVE]<0 )4866 {4867 printf("error\n");4868 }4869 #endif4870 4858 } 4871 4859 } … … 4905 4893 bDvMcpIsFound = true; 4906 4894 } 4907 #if USE_DVMCP_MSG4908 //printf("skipped %d =%d, curCUAddr=%d, leftCUAddr=%d\n",DVFROM_ABOVERIGHT, iList, getAddr(), pcTmpCU->getAddr() );4909 aiRefPOC [iList][DVFROM_ABOVERIGHT] = pcTmpCU->getCUMvField(eRefPicList)->getRefIdx(uiIdx);4910 #endif4911 4895 } 4912 4896 } … … 4946 4930 bDvMcpIsFound = true; 4947 4931 } 4948 #if USE_DVMCP_MSG4949 //printf("skipped %d =%d, curCUAddr=%d, leftCUAddr=%d\n",DVFROM_LEFTBELOW, iList, getAddr(), pcTmpCU->getAddr() );4950 aiRefPOC [iList][DVFROM_LEFTBELOW] = pcTmpCU->getCUMvField(eRefPicList)->getRefIdx(uiIdx);4951 #endif4952 4932 } 4953 4933 } … … 4989 4969 bDvMcpIsFound = true; 4990 4970 } 4991 #if USE_DVMCP_MSG4992 aiRefPOC [iList][DVFROM_ABOVELEFT] = pcTmpCU->getCUMvField(eRefPicList)->getRefIdx(uiIdx);4993 //printf("skipped %d =%d, curCUAddr=%d, leftCUAddr=%d\n",DVFROM_ABOVELEFT, iList, getAddr(), pcTmpCU->getAddr() );4994 #endif4995 4971 } 4996 4972 } … … 5211 5187 if(m_pcSlice->getSPS()->getViewId() && m_pcSlice->getSPS()->getMultiviewMvPredMode()) 5212 5188 { 5213 #if USE_DVMCP5189 #if LGE_DVMCP 5214 5190 getDisMvpCand2(uiPartIdx, uiPartAddr, &cDisInfo, false, eRefPicList, iRefIdx ); 5215 5191 #else … … 5640 5616 { 5641 5617 TComMv cMvPred = pcTmpCU->getCUMvField(eRefPicList)->getMv(uiIdx); 5642 #if USE_DVMCP5618 #if LGE_DVMCP 5643 5619 cMvPred.m_bDvMcp = false; 5644 5620 #endif … … 5677 5653 { 5678 5654 TComMv cMvPred = pcTmpCU->getCUMvField(eRefPicList2nd)->getMv(uiIdx); 5679 #if USE_DVMCP5655 #if LGE_DVMCP 5680 5656 cMvPred.m_bDvMcp = false; 5681 5657 #endif … … 5820 5796 { 5821 5797 TComMv cMvPred = pcTmpCU->getCUMvField(eRefPicList2nd)->getMv(uiIdx); 5822 #if USE_DVMCP5798 #if LGE_DVMCP 5823 5799 cMvPred.m_bDvMcp = false; 5824 5800 #endif … … 5850 5826 rcMv = cMvPred.scaleMv( iScale ); 5851 5827 } 5852 #if USE_DVMCP5828 #if LGE_DVMCP 5853 5829 rcMv.m_bDvMcp = false; 5854 5830 #endif … … 5877 5853 rcMv = cMvPred.scaleMv( iScale ); 5878 5854 } 5879 #if USE_DVMCP5855 #if LGE_DVMCP 5880 5856 rcMv.m_bDvMcp = false; 5881 5857 #endif … … 5890 5866 Bool TComDataCU::xGetColDisMV( RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv , Int & iTargetViewIdx, Int & iStartViewIdx ) 5891 5867 { 5892 #if USE_DVMCP5868 #if LGE_DVMCP 5893 5869 Int iDvMcpDispX[2] = {-1,}; 5894 5870 Bool bDvMcpFlag [2] = { false, }; … … 5909 5885 return false; 5910 5886 } 5911 #if USE_DVMCP5887 #if LGE_DVMCP 5912 5888 Bool bColIsSkipped = pColCU->isSkipped( uiAbsPartAddr ); 5913 5889 #endif … … 5929 5905 if ( iColViewIdx == iColRefViewIdx ) // temporal vector 5930 5906 { 5931 #if USE_DVMCP5907 #if LGE_DVMCP 5932 5908 if( iColViewIdx >0 ) 5933 5909 { … … 5947 5923 { 5948 5924 rcMv = pColCU->getCUMvField(eColRefPicList)->getMv(uiAbsPartAddr); 5949 #if USE_DVMCP5925 #if LGE_DVMCP 5950 5926 rcMv.m_bDvMcp = false; 5951 5927 #endif … … 5956 5932 } 5957 5933 5958 #if USE_DVMCP5934 #if LGE_DVMCP 5959 5935 for( Int ilist=0 ; ilist<2 ; ilist++ ) 5960 5936 { … … 7078 7054 PartSize m_peSaved = getPartitionSize( 0 ); 7079 7055 m_pePartSize[0] = SIZE_2Nx2N; 7080 #if USE_DVMCP7056 #if LGE_DVMCP 7081 7057 getDisMvpCand2( 0, 0, &cDisInfo, true ); 7082 7058 #else -
branches/HTM-3.1-LG/source/Lib/TLibCommon/TComDataCU.h
r97 r99 525 525 Int getPdmMergeCandidateDisCan( UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv, DisInfo* pDInfo ); 526 526 Void getDisMvpCand ( UInt uiPartIdx, UInt uiPartAddr, DisInfo* pDInfo ); 527 #if USE_DVMCP527 #if LGE_DVMCP 528 528 Void getDisMvpCand2( UInt uiPartIdx, UInt uiPartAddr, DisInfo* pDInfo, Bool bMerge=false, RefPicList eRefPicList=REF_PIC_LIST_X, Int iRefIdx=-1 ); 529 529 #endif -
branches/HTM-3.1-LG/source/Lib/TLibCommon/TComDepthMapGenerator.cpp
r97 r99 726 726 paiPdmRefIdx [ uiBaseRefListId ] = iPdmRefIdx; 727 727 TComMv cMv(cBaseMvField.getHor(), cBaseMvField.getVer()); 728 #if LGE_DVMCP 729 cMv.m_bDvMcp = true; 730 cMv.m_iDvMcpDispX = pDInfo->m_acMvCand[0].getHor(); 731 #endif 728 732 pcCU->clipMv( cMv ); 729 733 pacPdmMv [ uiBaseRefListId ] = cMv; … … 831 835 TComDepthMapGenerator::getDisCanPdmMvPred ( TComDataCU* pcCU, UInt uiPartIdx, RefPicList eRefPicList, Int iRefIdx, TComMv& rcMv, DisInfo* pDInfo, Bool bMerge ) 832 836 { 833 #if USE_DVMCP837 #if LGE_DVMCP 834 838 rcMv.m_bDvMcp = false; 835 839 #endif … … 895 899 { 896 900 rcMv.set( cBaseMvField.getHor(), cBaseMvField.getVer() ); 897 #if USE_DVMCP901 #if LGE_DVMCP 898 902 // save disparity vector when a merge candidate for IVMP is set as DV-MCP 899 903 if( bMerge ) -
branches/HTM-3.1-LG/source/Lib/TLibCommon/TComMv.h
r97 r99 57 57 public: 58 58 59 #if USE_DVMCP59 #if LGE_DVMCP 60 60 Bool m_bDvMcp; // is dv-mcp ? 61 61 Int m_iDvMcpDispX; // disparity for dv-mcp … … 69 69 m_iHor(0), 70 70 m_iVer(0) 71 #if USE_DVMCP71 #if LGE_DVMCP 72 72 , m_bDvMcp(false) 73 73 , m_iDvMcpDispX(0) … … 79 79 m_iHor(iHor), 80 80 m_iVer(iVer) 81 #if USE_DVMCP81 #if LGE_DVMCP 82 82 , m_bDvMcp(false) 83 83 , m_iDvMcpDispX(0) -
branches/HTM-3.1-LG/source/Lib/TLibCommon/TypeDef.h
r97 r99 66 66 #define MTK_INTERVIEW_MERGE_A0049 1 // JCT2-A0049 second part 67 67 68 #if QC_MULTI_DIS_CAN // JCT2-A0126 69 #define USE_DVMCP 0 70 71 #define DVFROM_LEFTBELOW 1 72 #define DVFROM_LEFT 2 73 #define DVFROM_ABOVERIGHT 3 74 #define DVFROM_ABOVE 4 75 #define DVFROM_ABOVELEFT 5 76 #define DVFROM_COL 6 68 #define LGE_DVMCP 1 // JCT2-A0126 69 #if LGE_DVMCP 70 #define DVFROM_LEFTBELOW 1 71 #define DVFROM_LEFT 2 72 #define DVFROM_ABOVERIGHT 3 73 #define DVFROM_ABOVE 4 74 #define DVFROM_ABOVELEFT 5 75 #define DVFROM_COL 6 77 76 #endif 78 77
Note: See TracChangeset for help on using the changeset viewer.