- Timestamp:
- 15 Nov 2012, 17:09:52 (12 years ago)
- Location:
- branches/HTM-4.1-dev0/source
- Files:
-
- 30 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-4.1-dev0/source/App/TAppEncoder/TAppEncCfg.cpp
r185 r187 349 349 ("LambdaScaleVSO", m_dLambdaScaleVSO , (Double) 1 , "Lambda Scaling for VSO") 350 350 351 #if HHI_VSO_LS_TABLE 351 #if HHI_VSO_LS_TABLE_M23714 352 352 ("VSOLSTable", m_bVSOLSTable , true , "Depth QP dependent video/depth rate allocation by Lagrange multiplier" ) 353 353 #endif … … 732 732 #if HHI_VSO 733 733 734 #if HHI_VSO_LS_TABLE 734 #if HHI_VSO_LS_TABLE_M23714 735 735 // Q&D 736 736 Double adLambdaScaleTable[] = … … 1640 1640 printf("VSO Negative Distortion : %d\n", m_bAllowNegDist ? 1 : 0); 1641 1641 #endif 1642 #if HHI_VSO_LS_TABLE 1642 #if HHI_VSO_LS_TABLE_M23714 1643 1643 printf("VSO LS Table : %d\n", m_bVSOLSTable ? 1 : 0); 1644 1644 #endif -
branches/HTM-4.1-dev0/source/App/TAppEncoder/TAppEncCfg.h
r185 r187 292 292 Char* m_pchVSOConfig; 293 293 Bool m_bUseVSO; ///< flag for using View Synthesis Optimization 294 #if HHI_VSO_LS_TABLE 294 #if HHI_VSO_LS_TABLE_M23714 295 295 Bool m_bVSOLSTable; ///< Depth QP dependent Lagrange parameter optimization (m23714) 296 296 #endif -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/CommonDef.h
r185 r187 148 148 #endif 149 149 150 #if SAIT_IMPROV_MOTION_PRED_M24829&!QC_MULTI_DIS_CAN 150 #if SAIT_IMPROV_MOTION_PRED_M24829&!QC_MULTI_DIS_CAN_A0097 151 151 #define PDM_AMVP_POS 0 // position of pdm in amvp list (0..3) 152 152 #else -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/ContextTables.h
r177 r187 156 156 #endif 157 157 158 #if LGE_EDGE_INTRA 158 #if LGE_EDGE_INTRA_A0070 159 159 #define NUM_EDGE_INTRA_CTX 1 160 160 #if LGE_EDGE_INTRA_DELTA_DC … … 1303 1303 }; 1304 1304 1305 #if LGE_EDGE_INTRA 1305 #if LGE_EDGE_INTRA_A0070 1306 1306 static const Short 1307 1307 INIT_EDGE_INTRA[3][NUM_EDGE_INTRA_CTX] = -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComDataCU.cpp
r185 r187 147 147 m_pbResPredFlag = NULL; 148 148 #endif 149 #if LGE_EDGE_INTRA 149 #if LGE_EDGE_INTRA_A0070 150 150 m_pucEdgeCode = NULL; 151 151 m_pucEdgeNumber = NULL; … … 293 293 m_piContourPredTexDeltaDC2 = (Int* )xMalloc(Int, uiNumPartition); 294 294 #endif 295 #if LGE_EDGE_INTRA 295 #if LGE_EDGE_INTRA_A0070 296 296 m_pucEdgeCode = (UChar*)xMalloc(UChar, uiNumPartition * LGE_EDGE_INTRA_MAX_EDGE_NUM_PER_4x4); 297 297 m_pucEdgeNumber = (UChar*)xMalloc(UChar, uiNumPartition); … … 420 420 if ( m_piContourPredTexDeltaDC2 ) { xFree(m_piContourPredTexDeltaDC2); m_piContourPredTexDeltaDC2 = NULL; } 421 421 #endif 422 #if LGE_EDGE_INTRA 422 #if LGE_EDGE_INTRA_A0070 423 423 if ( m_pbEdgeLeftFirst ) { xFree(m_pbEdgeLeftFirst); m_pbEdgeLeftFirst = NULL; } 424 424 if ( m_pucEdgeStartPos ) { xFree(m_pucEdgeStartPos); m_pucEdgeStartPos = NULL; } … … 1205 1205 m_piContourPredTexDeltaDC2 = pcCU->getContourPredTexDeltaDC2() + uiPart; 1206 1206 #endif 1207 #if LGE_EDGE_INTRA 1207 #if LGE_EDGE_INTRA_A0070 1208 1208 if( pcCU->getSlice()->getSPS()->isDepth() ) 1209 1209 { … … 1388 1388 #endif 1389 1389 1390 #if LGE_EDGE_INTRA 1390 #if LGE_EDGE_INTRA_A0070 1391 1391 if( getSlice()->getSPS()->isDepth() ) 1392 1392 { … … 1514 1514 #endif 1515 1515 1516 #if LGE_EDGE_INTRA 1516 #if LGE_EDGE_INTRA_A0070 1517 1517 if( rpcCU->getSlice()->getSPS()->isDepth() ) 1518 1518 { … … 1641 1641 #endif 1642 1642 1643 #if LGE_EDGE_INTRA 1643 #if LGE_EDGE_INTRA_A0070 1644 1644 if( rpcCU->getSlice()->getSPS()->isDepth() ) 1645 1645 { … … 2542 2542 mapDMMtoIntraMode( iLeftIntraDir ); 2543 2543 #endif 2544 #if LGE_EDGE_INTRA 2544 #if LGE_EDGE_INTRA_A0070 2545 2545 mapEdgeIntratoDC( iLeftIntraDir ); 2546 2546 #endif … … 2557 2557 mapDMMtoIntraMode( iAboveIntraDir ); 2558 2558 #endif 2559 #if LGE_EDGE_INTRA 2559 #if LGE_EDGE_INTRA_A0070 2560 2560 mapEdgeIntratoDC( iAboveIntraDir ); 2561 2561 #endif … … 2643 2643 } 2644 2644 2645 #if LGE_EDGE_INTRA 2645 #if LGE_EDGE_INTRA_A0070 2646 2646 UInt TComDataCU::getCtxEdgeIntra( UInt uiAbsPartIdx ) 2647 2647 { … … 3676 3676 #endif 3677 3677 3678 #if LGE_DVMCP 3678 #if LGE_DVMCP_A0126 3679 3679 #if QC_MRG_CANS_B0048 3680 3680 acPdmMv[0].m_bDvMcp = acPdmMv[1].m_bDvMcp = acPdmMv[2].m_bDvMcp = acPdmMv[3].m_bDvMcp = false; … … 3684 3684 #endif 3685 3685 3686 #if QC_MULTI_DIS_CAN 3686 #if QC_MULTI_DIS_CAN_A0097 3687 3687 DisInfo cDisInfo; 3688 3688 cDisInfo.iN = 0; 3689 3689 if(!bNoPdmMerge) 3690 3690 { 3691 #if LGE_DVMCP 3691 #if LGE_DVMCP_A0126 3692 3692 #if LGE_IVMP_PARALLEL_MERGE_B0136 && !QC_SIMPLE_NBDV_B0047 3693 3693 getDisMvpCand2(uiPUIdx, uiAbsPartIdx, &cDisInfo, true, REF_PIC_LIST_X, -1, true ); … … 3781 3781 pcMvFieldNeighbours[(iCount<<1)+1 ].setMvField( acPdmMv[ 3 ], aiPdmRefIdx[ 3 ] ); 3782 3782 } 3783 #if LGE_DVMCP 3783 #if LGE_DVMCP_A0126 3784 3784 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3785 3785 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3848 3848 #endif 3849 3849 #endif 3850 #if LGE_DVMCP 3850 #if LGE_DVMCP_A0126 3851 3851 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3852 3852 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 3966 3966 #endif 3967 3967 #endif 3968 #if LGE_DVMCP 3968 #if LGE_DVMCP_A0126 3969 3969 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 3970 3970 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 4062 4062 } 4063 4063 #endif 4064 #if LGE_DVMCP 4064 #if LGE_DVMCP_A0126 4065 4065 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 4066 4066 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 4144 4144 if(!bRemoveSpa) 4145 4145 { 4146 #if LGE_DVMCP 4146 #if LGE_DVMCP_A0126 4147 4147 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 4148 4148 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 4195 4195 } 4196 4196 #endif 4197 #if LGE_DVMCP 4197 #if LGE_DVMCP_A0126 4198 4198 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 4199 4199 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 4294 4294 } 4295 4295 #endif 4296 #if LGE_DVMCP 4296 #if LGE_DVMCP_A0126 4297 4297 pcMvFieldNeighbours[iCount<<1 ].getMv().m_bDvMcp = false; 4298 4298 pcMvFieldNeighbours[(iCount<<1)+1].getMv().m_bDvMcp = false; … … 4424 4424 #endif 4425 4425 } 4426 #if LGE_DVMCP 4426 #if LGE_DVMCP_A0126 4427 4427 pcMvFieldNeighbours[uiArrayAddr<<1 ].getMv().m_bDvMcp = false; 4428 4428 pcMvFieldNeighbours[(uiArrayAddr<<1)+1].getMv().m_bDvMcp = false; … … 4903 4903 return m_pcSlice->getSPS()->getAMVPMode(m_puhDepth[uiIdx]); 4904 4904 } 4905 #if QC_MULTI_DIS_CAN 4905 #if QC_MULTI_DIS_CAN_A0097 4906 4906 /** construct a list of disparity motion vectors from the neighbouring PUs **/ 4907 4907 Void TComDataCU::getDisMvpCand ( UInt uiPartIdx, UInt uiPartAddr,DisInfo* pDInfo ) … … 5229 5229 } 5230 5230 5231 #if LGE_DVMCP 5231 #if LGE_DVMCP_A0126 5232 5232 #if QC_SIMPLE_NBDV_B0047 5233 5233 Void TComDataCU::getDisMvpCand2( UInt uiPartIdx, UInt uiPartAddr,DisInfo* pDInfo … … 5873 5873 DisInfo cDisInfo; 5874 5874 cDisInfo.iN = 0; 5875 #if LGE_DVMCP 5875 #if LGE_DVMCP_A0126 5876 5876 #if QC_SIMPLE_NBDV_B0047 5877 5877 #if FIX_LGE_IVMP_PARALLEL_MERGE_B0136 … … 5894 5894 } 5895 5895 TComMv cPdmMvPred; 5896 #if QC_MULTI_DIS_CAN 5896 #if QC_MULTI_DIS_CAN_A0097 5897 5897 if( getPdmMvPredDisCan( uiPartIdx, eRefPicList, iRefIdx, cPdmMvPred, &cDisInfo ) ) 5898 5898 #else … … 5928 5928 } 5929 5929 5930 #if QC_MULTI_DIS_CAN && !SHARP_INTERVIEW_DECOUPLE_B01115930 #if QC_MULTI_DIS_CAN_A0097 && !SHARP_INTERVIEW_DECOUPLE_B0111 5931 5931 DisInfo cDisInfo; 5932 5932 cDisInfo.iN = 0; 5933 5933 if(m_pcSlice->getSPS()->getViewId() && m_pcSlice->getSPS()->getMultiviewMvPredMode()) 5934 5934 { 5935 #if LGE_DVMCP 5935 #if LGE_DVMCP_A0126 5936 5936 #if QC_SIMPLE_NBDV_B0047 5937 5937 #if FIX_LGE_IVMP_PARALLEL_MERGE_B0136 … … 5959 5959 // get inter-view mv predictor (at position 0) 5960 5960 TComMv cPdmMvPred; 5961 #if QC_MULTI_DIS_CAN 5961 #if QC_MULTI_DIS_CAN_A0097 5962 5962 if( getPdmMvPredDisCan( uiPartIdx, eRefPicList, iRefIdx, cPdmMvPred, &cDisInfo ) ) 5963 5963 #else … … 6018 6018 // get inter-view mv predictor (at position 1) 6019 6019 TComMv cPdmMvPred; 6020 #if QC_MULTI_DIS_CAN 6020 #if QC_MULTI_DIS_CAN_A0097 6021 6021 if( getPdmMvPredDisCan( uiPartIdx, eRefPicList, iRefIdx, cPdmMvPred, &cDisInfo ) ) 6022 6022 #else … … 6070 6070 // get inter-view mv predictor (at position 2) 6071 6071 TComMv cPdmMvPred; 6072 #if QC_MULTI_DIS_CAN 6072 #if QC_MULTI_DIS_CAN_A0097 6073 6073 if( getPdmMvPredDisCan( uiPartIdx, eRefPicList, iRefIdx, cPdmMvPred, &cDisInfo ) ) 6074 6074 #else … … 6090 6090 } 6091 6091 } 6092 #if QC_MULTI_DIS_CAN && !SHARP_INTERVIEW_DECOUPLE_B01116092 #if QC_MULTI_DIS_CAN_A0097 && !SHARP_INTERVIEW_DECOUPLE_B0111 6093 6093 if ( getSlice()->getViewId()!=0 && pInfo->iN == 3 ) 6094 6094 { … … 6189 6189 // get inter-view mv predictor (at position 3) 6190 6190 TComMv cPdmMvPred; 6191 #if QC_MULTI_DIS_CAN 6191 #if QC_MULTI_DIS_CAN_A0097 6192 6192 if( getPdmMvPredDisCan( uiPartIdx, eRefPicList, iRefIdx, cPdmMvPred, &cDisInfo ) ) 6193 6193 #else … … 6379 6379 { 6380 6380 TComMv cMvPred = pcTmpCU->getCUMvField(eRefPicList)->getMv(uiIdx); 6381 #if LGE_DVMCP 6381 #if LGE_DVMCP_A0126 6382 6382 cMvPred.m_bDvMcp = false; 6383 6383 #endif … … 6416 6416 { 6417 6417 TComMv cMvPred = pcTmpCU->getCUMvField(eRefPicList2nd)->getMv(uiIdx); 6418 #if LGE_DVMCP 6418 #if LGE_DVMCP_A0126 6419 6419 cMvPred.m_bDvMcp = false; 6420 6420 #endif … … 6558 6558 { 6559 6559 TComMv cMvPred = pcTmpCU->getCUMvField(eRefPicList2nd)->getMv(uiIdx); 6560 #if LGE_DVMCP 6560 #if LGE_DVMCP_A0126 6561 6561 cMvPred.m_bDvMcp = false; 6562 6562 #endif … … 6588 6588 rcMv = cMvPred.scaleMv( iScale ); 6589 6589 } 6590 #if LGE_DVMCP 6590 #if LGE_DVMCP_A0126 6591 6591 rcMv.m_bDvMcp = false; 6592 6592 #endif … … 6615 6615 rcMv = cMvPred.scaleMv( iScale ); 6616 6616 } 6617 #if LGE_DVMCP 6617 #if LGE_DVMCP_A0126 6618 6618 rcMv.m_bDvMcp = false; 6619 6619 #endif … … 6625 6625 } 6626 6626 6627 #if QC_MULTI_DIS_CAN 6627 #if QC_MULTI_DIS_CAN_A0097 6628 6628 Bool TComDataCU::xGetColDisMV( RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv , Int & iTargetViewIdx, Int & iStartViewIdx ) 6629 6629 { 6630 #if LGE_DVMCP && !QC_SIMPLE_NBDV_B00476630 #if LGE_DVMCP_A0126 && !QC_SIMPLE_NBDV_B0047 6631 6631 Int iDvMcpDispX[2] = {-1,}; 6632 6632 Bool bDvMcpFlag [2] = { false, }; … … 6647 6647 return false; 6648 6648 } 6649 #if LGE_DVMCP && !QC_SIMPLE_NBDV_B00476649 #if LGE_DVMCP_A0126 && !QC_SIMPLE_NBDV_B0047 6650 6650 Bool bColIsSkipped = pColCU->isSkipped( uiAbsPartAddr ); 6651 6651 #endif … … 6671 6671 if ( iColViewIdx == iColRefViewIdx ) // temporal vector 6672 6672 { 6673 #if LGE_DVMCP && !QC_SIMPLE_NBDV_B00476673 #if LGE_DVMCP_A0126 && !QC_SIMPLE_NBDV_B0047 6674 6674 if( iColViewIdx >0 ) 6675 6675 { … … 6689 6689 { 6690 6690 rcMv = pColCU->getCUMvField(eColRefPicList)->getMv(uiAbsPartAddr); 6691 #if LGE_DVMCP 6691 #if LGE_DVMCP_A0126 6692 6692 rcMv.m_bDvMcp = false; 6693 6693 #endif … … 6698 6698 } 6699 6699 6700 #if LGE_DVMCP && !QC_SIMPLE_NBDV_B00476700 #if LGE_DVMCP_A0126 && !QC_SIMPLE_NBDV_B0047 6701 6701 for( Int ilist=0 ; ilist<2 ; ilist++ ) 6702 6702 { … … 7735 7735 memcpy( m_puhInterDir + uiAbsPartIdxDst, pcCU->getInterDir() + uiAbsPartIdxSrc, sizeof( m_puhInterDir[0] ) * uiNumPartition ); 7736 7736 7737 #if !MTK_UNCONSTRAINED_MVI 7737 #if !MTK_UNCONSTRAINED_MVI_B0083 7738 7738 memcpy( m_apiMVPIdx[0] + uiAbsPartIdxDst, pcCU->getMVPIdx(REF_PIC_LIST_0) + uiAbsPartIdxSrc, sizeof(*m_apiMVPIdx[0]) * uiNumPartition ); 7739 7739 memcpy( m_apiMVPIdx[1] + uiAbsPartIdxDst, pcCU->getMVPIdx(REF_PIC_LIST_1) + uiAbsPartIdxSrc, sizeof(*m_apiMVPIdx[0]) * uiNumPartition ); … … 7745 7745 pcCU->getCUMvField( REF_PIC_LIST_1 )->copyTo( &m_acCUMvField[1], -Int(uiAbsPartIdxSrc) + uiAbsPartIdxDst, uiAbsPartIdxSrc, uiNumPartition ); 7746 7746 7747 #if MTK_UNCONSTRAINED_MVI 7747 #if MTK_UNCONSTRAINED_MVI_B0083 7748 7748 if( pcCU->getSlice()->getSliceType() == P_SLICE) 7749 7749 { … … 7770 7770 // ------------------------------------------------------------------------------------------------------------------- 7771 7771 #if HHI_INTER_VIEW_MOTION_PRED 7772 #if !QC_MULTI_DIS_CAN 7772 #if !QC_MULTI_DIS_CAN_A0097 7773 7773 Int 7774 7774 TComDataCU::getPdmMergeCandidate( UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv ) … … 7834 7834 TComResidualGenerator* pcResidualGenerator = m_pcSlice->getSPS()->getResidualGenerator(); 7835 7835 ROFRS( pcResidualGenerator, false ); 7836 #if QC_MULTI_DIS_CAN 7836 #if QC_MULTI_DIS_CAN_A0097 7837 7837 DisInfo cDisInfo; 7838 7838 cDisInfo.iN = 0; 7839 7839 PartSize m_peSaved = getPartitionSize( 0 ); 7840 7840 m_pePartSize[0] = SIZE_2Nx2N; 7841 #if LGE_DVMCP 7841 #if LGE_DVMCP_A0126 7842 7842 #if QC_SIMPLE_NBDV_B0047 7843 7843 #if FIX_LGE_IVMP_PARALLEL_MERGE_B0136 … … 7877 7877 #endif 7878 7878 7879 #if LGE_EDGE_INTRA 7879 #if LGE_EDGE_INTRA_A0070 7880 7880 Void TComDataCU::reconPartition( UInt uiAbsPartIdx, UInt uiDepth, Bool bLeft, UChar ucStartPos, UChar ucNumEdge, UChar* pucEdgeCode, Bool* pbRegion ) 7881 7881 { -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComDataCU.h
r185 r187 221 221 #endif 222 222 223 #if LGE_EDGE_INTRA 223 #if LGE_EDGE_INTRA_A0070 224 224 UChar* m_pucEdgeCode; ///< array of edge code 225 225 UChar* m_pucEdgeNumber; ///< total number of edge … … 284 284 Void deriveRightBottomIdx ( PartSize eCUMode, UInt uiPartIdx, UInt& ruiPartIdxRB ); 285 285 Bool xGetColMVP( RefPicList eRefPicList, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv, Int& riRefIdx ); 286 #if QC_MULTI_DIS_CAN 286 #if QC_MULTI_DIS_CAN_A0097 287 287 Bool xGetColDisMV( RefPicList eRefPicList, Int refidx, Int uiCUAddr, Int uiPartUnitIdx, TComMv& rcMv, Int & iTargetViewIdx, Int & iStartViewIdx ); 288 288 #endif … … 542 542 543 543 #if HHI_INTER_VIEW_MOTION_PRED 544 #if !QC_MULTI_DIS_CAN 544 #if !QC_MULTI_DIS_CAN_A0097 545 545 Int getPdmMergeCandidate( UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv ); 546 546 Bool getPdmMvPred( UInt uiPartIdx, RefPicList eRefPicList, Int iRefIdx, TComMv& rcMv, Bool bMerge = false ); … … 553 553 ); 554 554 Void getDisMvpCand ( UInt uiPartIdx, UInt uiPartAddr, DisInfo* pDInfo ); 555 #if LGE_DVMCP 555 #if LGE_DVMCP_A0126 556 556 #if QC_SIMPLE_NBDV_B0047 557 557 Void getDisMvpCand2( UInt uiPartIdx, UInt uiPartAddr, DisInfo* pDInfo … … 733 733 UInt& getTotalBins () { return m_uiTotalBins; } 734 734 735 #if LGE_EDGE_INTRA 735 #if LGE_EDGE_INTRA_A0070 736 736 UInt getCtxEdgeIntra ( UInt uiAbsPartIdx ); 737 737 #endif … … 817 817 #endif 818 818 819 #if LGE_EDGE_INTRA 819 #if LGE_EDGE_INTRA_A0070 820 820 UChar* getEdgeCode( UInt uiIdx ) { return &m_pucEdgeCode[uiIdx * LGE_EDGE_INTRA_MAX_EDGE_NUM_PER_4x4]; } 821 821 UChar* getEdgeNumber( ) { return m_pucEdgeNumber; } -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComDepthMapGenerator.cpp
r185 r187 78 78 m_uiSubSampExpX = uiSubSampExpX; 79 79 m_uiSubSampExpY = uiSubSampExpY; 80 #if !QC_MULTI_DIS_CAN 80 #if !QC_MULTI_DIS_CAN_A0097 81 81 m_ppcYuv = new TComYuv* [ m_uiMaxDepth ]; 82 82 m_ppcCU = new TComDataCU* [ m_uiMaxDepth ]; … … 102 102 { 103 103 m_bCreated = false; 104 #if !QC_MULTI_DIS_CAN 104 #if !QC_MULTI_DIS_CAN_A0097 105 105 for( UInt uiDepth = 0; uiDepth < m_uiMaxDepth; uiDepth++ ) 106 106 { … … 377 377 } 378 378 379 #if !QC_MULTI_DIS_CAN 379 #if !QC_MULTI_DIS_CAN_A0097 380 380 Bool 381 381 TComDepthMapGenerator::predictDepthMap( TComPic* pcPic ) … … 605 605 606 606 #if HHI_INTER_VIEW_MOTION_PRED 607 #if QC_MULTI_DIS_CAN 607 #if QC_MULTI_DIS_CAN_A0097 608 608 Int 609 609 TComDepthMapGenerator::getPdmMergeCandidate( TComDataCU* pcCU, UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv, DisInfo* pDInfo … … 620 620 AOF ( m_bCreated && m_bInit ); 621 621 622 #if !QC_MULTI_DIS_CAN 622 #if !QC_MULTI_DIS_CAN_A0097 623 623 ROFRS( m_bPDMAvailable, 0 ); 624 624 #endif … … 665 665 TComPicYuv* pcBaseRec = pcBasePic->getPicYuvRec (); 666 666 667 #if QC_MULTI_DIS_CAN 667 #if QC_MULTI_DIS_CAN_A0097 668 668 Int iCurrPosX, iCurrPosY; 669 669 UInt uiPartAddr; … … 719 719 paiPdmRefIdx [ uiBaseRefListId ] = iPdmRefIdx; 720 720 TComMv cMv(cBaseMvField.getHor(), cBaseMvField.getVer()); 721 #if LGE_DVMCP 721 #if LGE_DVMCP_A0126 722 722 cMv.m_bDvMcp = true; 723 723 cMv.m_iDvMcpDispX = pDInfo->m_acMvCand[0].getHor(); … … 754 754 paiPdmRefIdx [ iRefListId ] = iPdmRefIdx; 755 755 #endif 756 #if QC_MULTI_DIS_CAN 756 #if QC_MULTI_DIS_CAN_A0097 757 757 TComMv cMv = pDInfo->m_acMvCand[0]; 758 758 cMv.setVer(0); … … 795 795 if( pcCU->getSlice()->getRefPOC( eRefPicList, iPdmRefIdx ) != pcCU->getSlice()->getPOC() ) 796 796 { 797 #if QC_MULTI_DIS_CAN 797 #if QC_MULTI_DIS_CAN_A0097 798 798 if( getDisCanPdmMvPred (pcCU, uiPartIdx, eRefPicList, iPdmRefIdx, cMv, pDInfo, true ) ) 799 799 #else … … 821 821 for( Int iPdmRefIdx = 0; iPdmRefIdx < iNumRefPics; iPdmRefIdx++ ) 822 822 { 823 #if QC_MULTI_DIS_CAN 823 #if QC_MULTI_DIS_CAN_A0097 824 824 if ( getDisCanPdmMvPred (pcCU, uiPartIdx, eRefPicList, iPdmRefIdx, cMv, pDInfo, true ) ) 825 825 #else … … 841 841 } 842 842 843 #if QC_MULTI_DIS_CAN 843 #if QC_MULTI_DIS_CAN_A0097 844 844 Bool 845 845 TComDepthMapGenerator::getDisCanPdmMvPred ( TComDataCU* pcCU, UInt uiPartIdx, RefPicList eRefPicList, Int iRefIdx, TComMv& rcMv, DisInfo* pDInfo, Bool bMerge ) 846 846 { 847 #if LGE_DVMCP 847 #if LGE_DVMCP_A0126 848 848 rcMv.m_bDvMcp = false; 849 849 #endif … … 913 913 { 914 914 rcMv.set( cBaseMvField.getHor(), cBaseMvField.getVer() ); 915 #if LGE_DVMCP 915 #if LGE_DVMCP_A0126 916 916 // save disparity vector when a merge candidate for IVMP is set as DV-MCP 917 917 if( bMerge ) … … 1062 1062 1063 1063 1064 #if !QC_MULTI_DIS_CAN 1064 #if !QC_MULTI_DIS_CAN_A0097 1065 1065 /*=======================================================* 1066 1066 *===== =====* -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComDepthMapGenerator.h
r185 r187 136 136 137 137 Void initViewComponent ( TComPic* pcPic ); 138 #if !QC_MULTI_DIS_CAN 138 #if !QC_MULTI_DIS_CAN_A0097 139 139 Bool predictDepthMap ( TComPic* pcPic ); 140 140 Void updateDepthMap ( TComPic* pcPic ); … … 151 151 Int getDisparity ( TComPic* pcPic, Int iPosX, Int iPosY, UInt uiRefViewId ); 152 152 #if HHI_INTER_VIEW_MOTION_PRED 153 #if QC_MULTI_DIS_CAN 153 #if QC_MULTI_DIS_CAN_A0097 154 154 Int getPdmMergeCandidate ( TComDataCU* pcCU, UInt uiPartIdx, Int* paiPdmRefIdx, TComMv* pacPdmMv, DisInfo* pDInfo 155 155 #if QC_MRG_CANS_B0048 … … 176 176 private: 177 177 // picture operations 178 #if !QC_MULTI_DIS_CAN 178 #if !QC_MULTI_DIS_CAN_A0097 179 179 Bool xConvertDepthMapCurr2Ref ( TComPic* pcRef, TComPic* pcCur ); 180 180 Bool xConvertDepthMapRef2Curr ( TComPic* pcCur, TComPic* pcRef ); -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComMotionInfo.cpp
r161 r187 377 377 378 378 379 #if MTK_UNCONSTRAINED_MVI 379 #if MTK_UNCONSTRAINED_MVI_B0083 380 380 Void TComCUMvField::setUndefinedMv( Int iPartAddr, Int iNumPart, Char* pePredMode, UChar* puhInterDir, Int refIdx, Int InterDir ) 381 381 { -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComMotionInfo.h
r185 r187 59 59 60 60 // ==================================================================================================================== 61 #if QC_MULTI_DIS_CAN 61 #if QC_MULTI_DIS_CAN_A0097 62 62 typedef struct _DisCand 63 63 { … … 176 176 #endif 177 177 178 #if MTK_UNCONSTRAINED_MVI 178 #if MTK_UNCONSTRAINED_MVI_B0083 179 179 Void setUndefinedMv( Int iPartAddr, Int iNumPart, Char* pePredMode, UChar* puhInterDir, Int refIdx, Int InterDir ); 180 180 #endif -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComMv.h
r100 r187 57 57 public: 58 58 59 #if LGE_DVMCP 59 #if LGE_DVMCP_A0126 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 LGE_DVMCP 71 #if LGE_DVMCP_A0126 72 72 , m_bDvMcp(false) 73 73 , m_iDvMcpDispX(0) … … 79 79 m_iHor(iHor), 80 80 m_iVer(iVer) 81 #if LGE_DVMCP 81 #if LGE_DVMCP_A0126 82 82 , m_bDvMcp(false) 83 83 , m_iDvMcpDispX(0) -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComPattern.cpp
r100 r187 675 675 { 676 676 Int* piSrc; 677 #if LGE_EDGE_INTRA 677 #if LGE_EDGE_INTRA_A0070 678 678 mapEdgeIntratoDC( uiDirMode ); 679 679 #endif -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComPic.h
r185 r187 73 73 #endif 74 74 75 #if LG_ZEROINTRADEPTHRESI_ M2603975 #if LG_ZEROINTRADEPTHRESI_A0087 76 76 Int m_uiIntraPeriod; 77 77 #endif … … 79 79 #if HHI_INTER_VIEW_MOTION_PRED 80 80 TComPicYuv* m_pcOrgDepthMap; // original depth map 81 #if QC_MULTI_DIS_CAN 81 #if QC_MULTI_DIS_CAN_A0097 82 82 Bool m_checked; 83 83 #endif … … 143 143 TComVPS* getVPS() { return m_apcPicSym->getSlice(m_uiCurrSliceIdx)->getVPS(); } 144 144 #endif 145 #if LG_ZEROINTRADEPTHRESI_ M26039145 #if LG_ZEROINTRADEPTHRESI_A0087 146 146 Int getIntraPeriod() { return m_uiIntraPeriod; } 147 147 Void setIntraPeriod(Int uiIntraPeriod) { m_uiIntraPeriod = uiIntraPeriod; } … … 169 169 #if HHI_INTER_VIEW_MOTION_PRED 170 170 TComPicYuv* getOrgDepthMap() { return m_pcOrgDepthMap; } 171 #if QC_MULTI_DIS_CAN 171 #if QC_MULTI_DIS_CAN_A0097 172 172 Void setCandPicCheckedFlag (Bool bchecked) { m_checked = bchecked; } 173 173 Bool getCandPicCheckedFlag () { return m_checked;} -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComPrediction.cpp
r158 r187 46 46 // ==================================================================================================================== 47 47 48 #if LGE_EDGE_INTRA 48 #if LGE_EDGE_INTRA_A0070 49 49 #define MAX_DISTANCE_EDGEINTRA 255 50 50 #endif … … 423 423 } 424 424 425 #if LGE_EDGE_INTRA 425 #if LGE_EDGE_INTRA_A0070 426 426 Void TComPrediction::predIntraLumaEdge ( TComDataCU* pcCU, TComPattern* pcTComPattern, UInt uiAbsPartIdx, Int iWidth, Int iHeight, Pel* piPred, UInt uiStride, Bool bDelta ) 427 427 { -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComPrediction.h
r152 r187 133 133 #endif 134 134 135 #if LGE_EDGE_INTRA 135 #if LGE_EDGE_INTRA_A0070 136 136 Pel xGetNearestNeighbor ( Int x, Int y, Int* pSrc, Int srcStride, Int iWidth, Int iHeight, Bool* bpRegion ); 137 137 Void xPredIntraEdge ( TComDataCU* pcCU, UInt uiAbsPartIdx, Int iWidth, Int iHeight, Int* pSrc, Int srcStride, Pel*& rpDst, Int dstStride, Bool bDelta = false ); … … 183 183 Bool getWedgePatternIdx ( WedgeRefList* pcWedgeRefList, UInt& ruiTabIdx, UChar uhXs, UChar uhYs, UChar uhXe, UChar uhYe ); 184 184 #endif 185 #if LGE_EDGE_INTRA 185 #if LGE_EDGE_INTRA_A0070 186 186 Void predIntraLumaEdge ( TComDataCU* pcCU, TComPattern* pcTComPattern, UInt uiAbsPartIdx, Int iWidth, Int iHeight, Pel* piPred, UInt uiStride, Bool bDelta = false ); 187 187 #endif -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComResidualGenerator.cpp
r100 r187 219 219 } 220 220 221 #if QC_MULTI_DIS_CAN 221 #if QC_MULTI_DIS_CAN_A0097 222 222 Bool 223 223 TComResidualGenerator::getResidualSamples( TComDataCU* pcCU, UInt uiPUIdx, TComYuv* pcYuv, Int iDisp … … 243 243 iBlkHeight = pcCU->getHeight ( 0 ); 244 244 pcCU->getPic()->getPicYuvRec()->getTopLeftSamplePos( pcCU->getAddr(), pcCU->getZorderIdxInCU() + uiPartAddr, iXPos, iYPos ); 245 #if QC_MULTI_DIS_CAN 245 #if QC_MULTI_DIS_CAN_A0097 246 246 return getResidualSamples( pcCU->getPic(), (UInt)iXPos, (UInt)iYPos, (UInt)iBlkWidth, (UInt)iBlkHeight, pcYuv, iDisp 247 247 #if QC_SIMPLIFIEDIVRP_M24938 … … 258 258 } 259 259 260 #if QC_MULTI_DIS_CAN 260 #if QC_MULTI_DIS_CAN_A0097 261 261 Bool 262 262 TComResidualGenerator::getResidualSamples( TComPic* pcPic, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, Int iDisp … … 283 283 UInt uiXPosInRefView = uiXPos , uiYPosInRefView = uiYPos; 284 284 #endif 285 #if QC_MULTI_DIS_CAN 285 #if QC_MULTI_DIS_CAN_A0097 286 286 xSetPredResidualBlock( pcPic, uiBaseViewId, uiXPos, uiYPos, uiBlkWidth, uiBlkHeight, pcYuv, iDisp 287 287 #if QC_SIMPLIFIEDIVRP_M24938 … … 517 517 518 518 519 #if QC_MULTI_DIS_CAN 519 #if QC_MULTI_DIS_CAN_A0097 520 520 Void 521 521 TComResidualGenerator::xSetPredResidualBlock( TComPic* pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, Int iDisp … … 548 548 549 549 //===== get disparity ===== 550 #if QC_MULTI_DIS_CAN 550 #if QC_MULTI_DIS_CAN_A0097 551 551 Int iDisparity = iDisp; 552 552 #else -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComResidualGenerator.h
r100 r187 69 69 Void setRecResidualPic ( TComPic* pcPic ); 70 70 71 #if QC_MULTI_DIS_CAN 71 #if QC_MULTI_DIS_CAN_A0097 72 72 Bool getResidualSamples ( TComDataCU* pcCU, UInt uiPUIdx, TComYuv* pcYuv, Int iDisp 73 73 #if QC_SIMPLIFIEDIVRP_M24938 … … 100 100 Void xClearIntViewResidual ( TComDataCU* pcCU, TComYuv* pcCUResidual, UInt uiPartIdx ); 101 101 Void xClearResidual ( TComYuv* pcCUResidual, UInt uiAbsPartIdx, UInt uiWidth, UInt uiHeight ); 102 #if QC_MULTI_DIS_CAN 102 #if QC_MULTI_DIS_CAN_A0097 103 103 Void xSetPredResidualBlock ( TComPic* pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, Int iDisp 104 104 #if QC_SIMPLIFIEDIVRP_M24938 -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TComRom.h
r177 r187 216 216 #endif 217 217 218 #if LGE_EDGE_INTRA 218 #if LGE_EDGE_INTRA_A0070 219 219 __inline Void mapEdgeIntratoDC( UChar& curDir ) { curDir = (curDir >= EDGE_INTRA_IDX) ? DC_IDX : curDir; } 220 220 __inline Void mapEdgeIntratoDC( UInt& curDir ) { curDir = (curDir >= EDGE_INTRA_IDX) ? DC_IDX : curDir; } -
branches/HTM-4.1-dev0/source/Lib/TLibCommon/TypeDef.h
r186 r187 42 42 //! \{ 43 43 44 #define OL_QTLIMIT_PREDCODING_B0068 1 //JCT3V-B006845 46 #define MTK_UNCONSTRAINED_MVI 1 //JCT3V-B008347 48 49 44 ///// ***** FIXES ********* 50 45 // A … … 75 70 #define HHI_DMM_WEDGE_INTRA 1 // depth model modes independent on texture (explicit and intra-predicted Wedgelet prediction) 76 71 #define HHI_DMM_PRED_TEX 1 // depth model modes dependent on texture (inter-component Wedgelet and Contour prediction ) 77 #define LGE_EDGE_INTRA 72 #define LGE_EDGE_INTRA_A0070 1 // JCT2-A0070 78 73 #define RWTH_SDC_DLT_B0036 1 // JCT3V-B0036: Simplified Depth Coding + Depth Lookup Table 79 74 #define HHIQC_DMMFASTSEARCH_B0039 1 // JCT3V-B0039: fast Wedgelet search for DMM modes 1 and 3 … … 82 77 #define HHI_INTER_VIEW_MOTION_PRED 1 // inter-view motion parameter prediction 83 78 #define SHARP_INTERVIEW_DECOUPLE_B0111 1 // JCT3V-B0111 decoupling inter-view candidate 84 #define QC_MRG_CANS_B0048 1 // JCT 2-B0048, B0086, B006979 #define QC_MRG_CANS_B0048 1 // JCT3V-B0048, B0086, B0069 85 80 #if QC_MRG_CANS_B0048 86 81 #define OL_DISMV_POS_B0069 1 // different pos for dispairty MV candidate, B0069 … … 104 99 105 100 ///// ***** DISPARITY VECTOR DERIVATION ********* 106 #define QC_MULTI_DIS_CAN 1 // JCT2-A0097107 #define LGE_DVMCP 1 // JCT2-A0126108 #define LGE_DVMCP_MEM_REDUCTION_B0135 1 101 #define QC_MULTI_DIS_CAN_A0097 1 // JCT3V-A0097 102 #define LGE_DVMCP_A0126 1 // JCT3V-A0126 103 #define LGE_DVMCP_MEM_REDUCTION_B0135 1 // JCT3V-B0135 109 104 #define DV_DERIVATION_PARALLEL_B0096 1 // JCT3V-B0096, enable parallel derivation of disparity vector 110 #define QC_SIMPLE_NBDV_B0047 1 // JCT 2-B0047105 #define QC_SIMPLE_NBDV_B0047 1 // JCT3V-B0047 111 106 112 107 ///// ***** MOTION PARAMETER INHERITANCE ********* … … 115 110 #define FIX_MPI_B0065 1 // JCT3V-B0065, fix the MPI bug when RQT is off 116 111 #endif 112 #define MTK_UNCONSTRAINED_MVI_B0083 1 //JCT3V-B0083 117 113 118 114 ///// ***** VIEW SYNTHESIS OPTIMIZAION ********* 119 115 #define HHI_VSO 1 120 #define HHI_VSO_LS_TABLE 116 #define HHI_VSO_LS_TABLE_M23714 1 // m23714, enable table base Lagrange multiplier optimization 121 117 #define HHI_VSO_DIST_INT 1 // Allow negative synthesized view distortion change 122 118 #define HHI_VSO_SYNTH_DIST_OUT 0 // Output of synthesized view distortion instead of depth distortion in encoder output … … 140 136 #define HHI_INTERVIEW_SKIP 1 141 137 138 ///// ***** QUADTREE LIMITATION ********* 139 #define OL_QTLIMIT_PREDCODING_B0068 1 //JCT3V-B0068 140 142 141 ///// ***** OTHERS ********* 143 #define LG_ZEROINTRADEPTHRESI_ M260391 // JCT2-A0087142 #define LG_ZEROINTRADEPTHRESI_A0087 1 // JCT2-A0087 144 143 #define SONY_COLPIC_AVAILABILITY 1 145 144 #define HHI_FULL_PEL_DEPTH_MAP_MV_ACC 1 // full-pel mv accuracy for depth maps … … 149 148 150 149 ///// ***** DEFINED PARAMETERS ********* 151 #if QC_MULTI_DIS_CAN 150 #if QC_MULTI_DIS_CAN_A0097 152 151 #define DIS_CANS 1 153 152 #endif … … 161 160 #endif 162 161 163 #if LGE_EDGE_INTRA 162 #if LGE_EDGE_INTRA_A0070 164 163 #define LGE_EDGE_INTRA_MIN_SIZE 4 165 164 #define LGE_EDGE_INTRA_MAX_SIZE 32 … … 171 170 172 171 173 #if LGE_DVMCP 172 #if LGE_DVMCP_A0126 174 173 #define DVFROM_LEFTBELOW 1 175 174 #define DVFROM_LEFT 2 … … 336 335 #define LOG2_SCAN_SET_SIZE 4 337 336 338 #if LGE_EDGE_INTRA 337 #if LGE_EDGE_INTRA_A0070 339 338 #if LGE_EDGE_INTRA_DELTA_DC 340 339 #define FAST_UDI_MAX_RDMODE_NUM 37 ///< maximum number of RD comparison in fast-UDI estimation loop … … 384 383 #endif 385 384 386 #if LGE_EDGE_INTRA 385 #if LGE_EDGE_INTRA_A0070 387 386 #if HHI_DMM_WEDGE_INTRA && HHI_DMM_PRED_TEX 388 387 #define EDGE_INTRA_IDX (NUM_INTRA_MODE+NUM_DMM_MODE) -
branches/HTM-4.1-dev0/source/Lib/TLibDecoder/TDecCu.cpp
r185 r187 738 738 m_pcPrediction->getPredicBufHeight (), 739 739 bAboveAvail, bLeftAvail ); 740 #if LGE_EDGE_INTRA 740 #if LGE_EDGE_INTRA_A0070 741 741 if( uiLumaPredMode >= EDGE_INTRA_IDX ) 742 742 { -
branches/HTM-4.1-dev0/source/Lib/TLibDecoder/TDecGop.cpp
r185 r187 303 303 { 304 304 m_pcDepthMapGenerator->initViewComponent( rpcPic ); 305 #if !QC_MULTI_DIS_CAN 305 #if !QC_MULTI_DIS_CAN_A0097 306 306 m_pcDepthMapGenerator->predictDepthMap ( rpcPic ); 307 307 #endif … … 348 348 #endif 349 349 #if DEPTH_MAP_GENERATION 350 #if !QC_MULTI_DIS_CAN 350 #if !QC_MULTI_DIS_CAN_A0097 351 351 // update virtual depth map 352 352 m_pcDepthMapGenerator->updateDepthMap( rpcPic ); -
branches/HTM-4.1-dev0/source/Lib/TLibDecoder/TDecSbac.cpp
r181 r187 106 106 , m_cDmmDataSCModel ( 1, 1, NUM_DMM_DATA_CTX , m_contextModels + m_numContextModels, m_numContextModels) 107 107 #endif 108 #if LGE_EDGE_INTRA 108 #if LGE_EDGE_INTRA_A0070 109 109 , m_cEdgeIntraSCModel ( 1, 1, NUM_EDGE_INTRA_CTX , m_contextModels + m_numContextModels, m_numContextModels) 110 110 #if LGE_EDGE_INTRA_DELTA_DC … … 206 206 207 207 m_cCUTransSubdivFlagSCModel.initBuffer ( sliceType, qp, (UChar*)INIT_TRANS_SUBDIV_FLAG ); 208 #if LGE_EDGE_INTRA 208 #if LGE_EDGE_INTRA_A0070 209 209 m_cEdgeIntraSCModel.initBuffer ( sliceType, qp, (UChar*)INIT_EDGE_INTRA ); 210 210 #if LGE_EDGE_INTRA_DELTA_DC … … 980 980 #endif 981 981 982 #if LGE_EDGE_INTRA 982 #if LGE_EDGE_INTRA_A0070 983 983 Bool bCodeEdgeIntra = false; 984 984 if( pcCU->getSlice()->getSPS()->isDepth() ) … … 996 996 #endif 997 997 Int uiPredNum = pcCU->getIntraDirLumaPredictor(uiAbsPartIdx, uiPreds); 998 #if LGE_EDGE_INTRA 998 #if LGE_EDGE_INTRA_A0070 999 999 UInt uiCheckBit = 0; 1000 1000 #endif … … 1021 1021 1022 1022 m_pcTDecBinIf->decodeBinsEP( uiSymbol, 5 ); 1023 #if LGE_EDGE_INTRA 1023 #if LGE_EDGE_INTRA_A0070 1024 1024 if (bCodeEdgeIntra) 1025 1025 { … … 1057 1057 } 1058 1058 #endif 1059 #if LGE_EDGE_INTRA 1059 #if LGE_EDGE_INTRA_A0070 1060 1060 if ( intraPredMode != EDGE_INTRA_IDX) 1061 1061 { … … 1065 1065 intraPredMode += ( intraPredMode >= uiPreds[i] ); 1066 1066 } 1067 #if LGE_EDGE_INTRA 1068 } 1069 #endif 1070 } 1071 1072 #if LGE_EDGE_INTRA 1067 #if LGE_EDGE_INTRA_A0070 1068 } 1069 #endif 1070 } 1071 1072 #if LGE_EDGE_INTRA_A0070 1073 1073 if( intraPredMode == EDGE_INTRA_IDX ) 1074 1074 { … … 2214 2214 #endif 2215 2215 2216 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX || (LGE_EDGE_INTRA && LGE_EDGE_INTRA_DELTA_DC)2216 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX || (LGE_EDGE_INTRA_A0070 && LGE_EDGE_INTRA_DELTA_DC) 2217 2217 Void TDecSbac::xReadExGolombLevel( UInt& ruiSymbol, ContextModel& rcSCModel ) 2218 2218 { … … 2473 2473 #endif 2474 2474 2475 #if LGE_EDGE_INTRA 2475 #if LGE_EDGE_INTRA_A0070 2476 2476 Void TDecSbac::xParseEdgeIntraInfo( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 2477 2477 { -
branches/HTM-4.1-dev0/source/Lib/TLibDecoder/TDecSbac.h
r177 r187 152 152 #endif 153 153 154 #if LGE_EDGE_INTRA 154 #if LGE_EDGE_INTRA_A0070 155 155 Void xParseEdgeIntraInfo ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 156 156 #endif … … 269 269 ContextModel3DBuffer m_cDmmDataSCModel; 270 270 #endif 271 #if LGE_EDGE_INTRA 271 #if LGE_EDGE_INTRA_A0070 272 272 ContextModel3DBuffer m_cEdgeIntraSCModel; 273 273 #if LGE_EDGE_INTRA_DELTA_DC -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncCu.cpp
r185 r187 2663 2663 assert( bRecursiveCall == ( uhDepth != uhTextureModeDepth ) ); 2664 2664 2665 #if !MTK_UNCONSTRAINED_MVI 2665 #if !MTK_UNCONSTRAINED_MVI_B0083 2666 2666 if( uhDepth == uhTextureModeDepth ) 2667 2667 { -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncGOP.cpp
r185 r187 708 708 // init view component and predict virtual depth map 709 709 m_pcDepthMapGenerator->initViewComponent( pcPic ); 710 #if !QC_MULTI_DIS_CAN 710 #if !QC_MULTI_DIS_CAN_A0097 711 711 m_pcDepthMapGenerator->predictDepthMap ( pcPic ); 712 712 #endif … … 784 784 #endif 785 785 #if DEPTH_MAP_GENERATION 786 #if !QC_MULTI_DIS_CAN 786 #if !QC_MULTI_DIS_CAN_A0097 787 787 // update virtual depth map 788 788 m_pcDepthMapGenerator->updateDepthMap( pcPic ); -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSbac.cpp
r181 r187 114 114 , m_cDmmDataSCModel ( 1, 1, NUM_DMM_DATA_CTX , m_contextModels + m_numContextModels, m_numContextModels) 115 115 #endif 116 #if LGE_EDGE_INTRA 116 #if LGE_EDGE_INTRA_A0070 117 117 , m_cEdgeIntraSCModel ( 1, 1, NUM_EDGE_INTRA_CTX , m_contextModels + m_numContextModels, m_numContextModels) 118 118 #if LGE_EDGE_INTRA_DELTA_DC … … 205 205 m_cDmmDataSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_DMM_DATA ); 206 206 #endif 207 #if LGE_EDGE_INTRA 207 #if LGE_EDGE_INTRA_A0070 208 208 m_cEdgeIntraSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_EDGE_INTRA ); 209 209 #if LGE_EDGE_INTRA_DELTA_DC … … 957 957 } 958 958 959 #if LGE_EDGE_INTRA 959 #if LGE_EDGE_INTRA_A0070 960 960 Void TEncSbac::xCodeEdgeIntraInfo( TComDataCU* pcCU, UInt uiPartIdx ) 961 961 { … … 1038 1038 if( pcCU->getSlice()->getSPS()->getUseDMM() && pcCU->getWidth( uiAbsPartIdx ) <= DMM_WEDGEMODEL_MAX_SIZE ) 1039 1039 { 1040 #if LGE_EDGE_INTRA 1040 #if LGE_EDGE_INTRA_A0070 1041 1041 m_pcBinIf->encodeBin( uiDir >= NUM_INTRA_MODE && uiDir < EDGE_INTRA_IDX, m_cDmmFlagSCModel.get(0, 0, 0) ); 1042 1042 #else … … 1044 1044 #endif 1045 1045 } 1046 #if LGE_EDGE_INTRA 1046 #if LGE_EDGE_INTRA_A0070 1047 1047 if( uiDir >= NUM_INTRA_MODE && uiDir < EDGE_INTRA_IDX ) 1048 1048 #else … … 1081 1081 } 1082 1082 else 1083 #if LGE_EDGE_INTRA 1083 #if LGE_EDGE_INTRA_A0070 1084 1084 if ( uiDir >= EDGE_INTRA_IDX) 1085 1085 { … … 1116 1116 Int iIntraIdx = pcCU->getIntraSizeIdx(uiAbsPartIdx); 1117 1117 #endif 1118 #if LGE_EDGE_INTRA 1118 #if LGE_EDGE_INTRA_A0070 1119 1119 Bool bCodeEdgeIntra = false; 1120 1120 if( pcCU->getSlice()->getSPS()->isDepth() ) … … 1182 1182 #if LOGI_INTRA_NAME_3MPM 1183 1183 m_pcBinIf->encodeBinsEP( uiDir, 5 ); 1184 #if LGE_EDGE_INTRA 1184 #if LGE_EDGE_INTRA_A0070 1185 1185 if (bCodeEdgeIntra) 1186 1186 if (uiDir == 31) m_pcBinIf->encodeBinsEP(0,1); … … 2524 2524 } 2525 2525 2526 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX || (LGE_EDGE_INTRA && LGE_EDGE_INTRA_DELTA_DC)2526 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX || (LGE_EDGE_INTRA_A0070 && LGE_EDGE_INTRA_DELTA_DC) 2527 2527 Void TEncSbac::xWriteExGolombLevel( UInt uiSymbol, ContextModel& rcSCModel ) 2528 2528 { -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSbac.h
r177 r187 181 181 Void xCodeContourPredTexDeltaInfo( TComDataCU* pcCU, UInt uiAbsPartIdx ); 182 182 #endif 183 #if LGE_EDGE_INTRA 183 #if LGE_EDGE_INTRA_A0070 184 184 Void xCodeEdgeIntraInfo( TComDataCU* pcCU, UInt uiPartIdx ); 185 185 #endif … … 322 322 ContextModel3DBuffer m_cDmmDataSCModel; 323 323 #endif 324 #if LGE_EDGE_INTRA 324 #if LGE_EDGE_INTRA_A0070 325 325 ContextModel3DBuffer m_cEdgeIntraSCModel; 326 326 #if LGE_EDGE_INTRA_DELTA_DC -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSearch.cpp
r185 r187 965 965 TComYuv* pcResiYuv, 966 966 Dist& ruiDist 967 #if LG_ZEROINTRADEPTHRESI_ M26039967 #if LG_ZEROINTRADEPTHRESI_A0087 968 968 ,Bool bZeroResi 969 969 #endif … … 1000 1000 pcCU->getPattern()->initAdiPattern( pcCU, uiAbsPartIdx, uiTrDepth, m_piYuvExt, m_iYuvExtStride, m_iYuvExtHeight, bAboveAvail, bLeftAvail ); 1001 1001 1002 #if LGE_EDGE_INTRA 1002 #if LGE_EDGE_INTRA_A0070 1003 1003 if( uiLumaPredMode >= EDGE_INTRA_IDX ) 1004 1004 { … … 1048 1048 } 1049 1049 } 1050 #if LG_ZEROINTRADEPTHRESI_ M260391050 #if LG_ZEROINTRADEPTHRESI_A0087 1051 1051 if(bZeroResi) 1052 1052 { … … 1365 1365 #endif 1366 1366 Double& dRDCost 1367 #if LG_ZEROINTRADEPTHRESI_ M260391367 #if LG_ZEROINTRADEPTHRESI_A0087 1368 1368 ,Bool bZeroResi 1369 1369 #endif … … 1387 1387 } 1388 1388 #endif 1389 #if LGE_EDGE_INTRA 1389 #if LGE_EDGE_INTRA_A0070 1390 1390 if( pcCU->getLumaIntraDir( uiAbsPartIdx ) >= EDGE_INTRA_IDX ) 1391 1391 { … … 1409 1409 //----- code luma block with given intra prediction mode and store Cbf----- 1410 1410 dSingleCost = 0.0; 1411 #if LG_ZEROINTRADEPTHRESI_ M260391411 #if LG_ZEROINTRADEPTHRESI_A0087 1412 1412 xIntraCodingLumaBlk( pcCU, uiTrDepth, uiAbsPartIdx, pcOrgYuv, pcPredYuv, pcResiYuv, uiSingleDistY, bZeroResi ); 1413 1413 #else … … 2048 2048 Int numModesForFullRD = g_aucIntraModeNumFast[ uiWidthBit ]; 2049 2049 2050 #if LGE_EDGE_INTRA 2050 #if LGE_EDGE_INTRA_A0070 2051 2051 Bool bTestEdgeIntra = false; 2052 2052 if ( m_pcEncCfg->isDepthCoder() && uiWidth >= LGE_EDGE_INTRA_MIN_SIZE && uiWidth <= LGE_EDGE_INTRA_MAX_SIZE && uiWidth == uiHeight ) … … 2152 2152 if( bTestDmm ) bTestDmm = uiSad ? true : false; 2153 2153 #endif 2154 #if LGE_EDGE_INTRA 2154 #if LGE_EDGE_INTRA_A0070 2155 2155 if ( bTestEdgeIntra ) bTestEdgeIntra = uiSad ? true : false; 2156 2156 #endif … … 2262 2262 } 2263 2263 #endif 2264 #if LGE_EDGE_INTRA 2264 #if LGE_EDGE_INTRA_A0070 2265 2265 if( bTestEdgeIntra ) 2266 2266 { … … 2293 2293 for( UInt uiMode = 0; uiMode < numModesForFullRD; uiMode++ ) 2294 2294 { 2295 #if LG_ZEROINTRADEPTHRESI_ M260392295 #if LG_ZEROINTRADEPTHRESI_A0087 2296 2296 Bool bAllowZeroResi = pcCU->getSlice()->getIsDepth() && (pcCU->getSlice()->getPOC()%pcCU->getPic()->getIntraPeriod());// && (uiMode < NUM_INTRA_MODE); 2297 2297 for(UInt uiCnt = 0; uiCnt < (bAllowZeroResi ? 2 : 1); uiCnt++) … … 2304 2304 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX 2305 2305 if( m_pcEncCfg->getIsDepth() && !predIntraLumaDMMAvailable( uiOrgMode, uiWidth, uiHeight ) 2306 #if LGE_EDGE_INTRA 2306 #if LGE_EDGE_INTRA_A0070 2307 2307 && uiOrgMode < EDGE_INTRA_IDX 2308 2308 #endif … … 2362 2362 #endif 2363 2363 #if HHI_RQT_INTRA_SPEEDUP 2364 #if LG_ZEROINTRADEPTHRESI_ M260392364 #if LG_ZEROINTRADEPTHRESI_A0087 2365 2365 xRecurIntraCodingQT( pcCU, uiInitTrDepth, uiPartOffset, bLumaOnly, pcOrgYuv, pcPredYuv, pcResiYuv, uiPUDistY, uiPUDistC, true, dPUCost, bZeroResi ); 2366 2366 #else … … 2421 2421 } 2422 2422 #endif 2423 #if LG_ZEROINTRADEPTHRESI_ M260392423 #if LG_ZEROINTRADEPTHRESI_A0087 2424 2424 } 2425 2425 #endif … … 6991 6991 #endif 6992 6992 6993 #if LGE_EDGE_INTRA 6993 #if LGE_EDGE_INTRA_A0070 6994 6994 Bool TEncSearch::xCheckTerminatedEdge( Bool* pbEdge, Int iX, Int iY, Int iWidth, Int iHeight ) 6995 6995 { -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSearch.h
r177 r187 260 260 TComYuv* pcResiYuv, 261 261 Dist& ruiDist 262 #if LG_ZEROINTRADEPTHRESI_ M26039262 #if LG_ZEROINTRADEPTHRESI_A0087 263 263 ,Bool bZeroResi = false 264 264 #endif … … 285 285 #endif 286 286 Double& dRDCost 287 #if LG_ZEROINTRADEPTHRESI_ M26039287 #if LG_ZEROINTRADEPTHRESI_A0087 288 288 ,Bool bZeroResi = false 289 289 #endif … … 342 342 #endif 343 343 344 #if LGE_EDGE_INTRA 344 #if LGE_EDGE_INTRA_A0070 345 345 Bool xEdgePartition ( TComDataCU* pcCU, UInt uiPartIdx, Bool bPU4x4 ); 346 346 Bool xCheckTerminatedEdge ( Bool* pbEdge, Int iX, Int iY, Int iWidth, Int iHeight ); -
branches/HTM-4.1-dev0/source/Lib/TLibEncoder/TEncSlice.cpp
r181 r187 650 650 TComSlice* pcSlice = rpcPic->getSlice(getSliceIdx()); 651 651 xDetermineStartAndBoundingCUAddr ( uiStartCUAddr, uiBoundingCUAddr, rpcPic, false ); 652 #if LG_ZEROINTRADEPTHRESI_ M26039652 #if LG_ZEROINTRADEPTHRESI_A0087 653 653 rpcPic->setIntraPeriod(this->m_pcCfg->getIntraPeriod()); 654 654 #endif
Note: See TracChangeset for help on using the changeset viewer.