Index: branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComDataCU.cpp
===================================================================
--- branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComDataCU.cpp	(revision 246)
+++ branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComDataCU.cpp	(revision 247)
@@ -5608,5 +5608,10 @@
 #if QC_SIMPLE_NBDV_B0047
   const Int iNumofDvMCP = 7;
+#if MTK_RELEASE_DV_CONSTRAINT
+  Int   aiDvMcpDvCandX[2][iNumofDvMCP] = {{0,},    {0,}}; // dummy, 5 spatial + 1 temporal
+  Int   aiDvMcpDvCandY[2][iNumofDvMCP] = {{0,},    {0,}}; // dummy, 5 spatial + 1 temporal
+#else
   Int   aiDvMcpDvCand[2][iNumofDvMCP] = {{0,},    {0,}}; // dummy, 5 spatial + 1 temporal
+#endif
   Bool  abDvMcpFlag  [2][iNumofDvMCP] = {{false,},{false,}}; 
 #else
@@ -6007,5 +6012,10 @@
           if( cTmpMvPred.m_bDvMcp && bTmpIsSkipped )
           {
+#if MTK_RELEASE_DV_CONSTRAINT
+            aiDvMcpDvCandX[iList][DVFROM_LEFT] = cTmpMvPred.m_iDvMcpDispX;
+            aiDvMcpDvCandY[iList][DVFROM_LEFT] = cTmpMvPred.m_iDvMcpDispY;
+#else
             aiDvMcpDvCand[iList][DVFROM_LEFT] = cTmpMvPred.m_iDvMcpDispX;
+#endif
             abDvMcpFlag  [iList][DVFROM_LEFT] = true; 
             bDvMcpIsFound = true;
@@ -6093,5 +6103,10 @@
           if( cTmpMvPred.m_bDvMcp  && bTmpIsSkipped )
           {
+#if MTK_RELEASE_DV_CONSTRAINT
+            aiDvMcpDvCandX[iList][DVFROM_ABOVE] = cTmpMvPred.m_iDvMcpDispX;
+            aiDvMcpDvCandY[iList][DVFROM_ABOVE] = cTmpMvPred.m_iDvMcpDispY;
+#else
             aiDvMcpDvCand[iList][DVFROM_ABOVE] = cTmpMvPred.m_iDvMcpDispX;
+#endif
             abDvMcpFlag  [iList][DVFROM_ABOVE] = true; 
             bDvMcpIsFound = true;
@@ -6173,5 +6188,10 @@
           if( cTmpMvPred.m_bDvMcp && bTmpIsSkipped )
           {
+#if MTK_RELEASE_DV_CONSTRAINT
+            aiDvMcpDvCandX[iList][DVFROM_ABOVERIGHT] = cTmpMvPred.m_iDvMcpDispX;
+            aiDvMcpDvCandY[iList][DVFROM_ABOVERIGHT] = cTmpMvPred.m_iDvMcpDispY;
+#else
             aiDvMcpDvCand[iList][DVFROM_ABOVERIGHT] = cTmpMvPred.m_iDvMcpDispX;
+#endif
             abDvMcpFlag  [iList][DVFROM_ABOVERIGHT] = true; 
             bDvMcpIsFound = true;
@@ -6245,5 +6265,10 @@
           if( cTmpMvPred.m_bDvMcp && bTmpIsSkipped )
           {
+#if MTK_RELEASE_DV_CONSTRAINT
+            aiDvMcpDvCandX[iList][DVFROM_LEFTBELOW] = cTmpMvPred.m_iDvMcpDispX;
+            aiDvMcpDvCandY[iList][DVFROM_LEFTBELOW] = cTmpMvPred.m_iDvMcpDispY;
+#else
             aiDvMcpDvCand[iList][DVFROM_LEFTBELOW] = cTmpMvPred.m_iDvMcpDispX;
+#endif
             abDvMcpFlag  [iList][DVFROM_LEFTBELOW] = true; 
             bDvMcpIsFound = true;
@@ -6327,5 +6352,10 @@
           if( cTmpMvPred.m_bDvMcp && bTmpIsSkipped )
           {
+#if MTK_RELEASE_DV_CONSTRAINT
+            aiDvMcpDvCandX[iList][DVFROM_ABOVELEFT] = cTmpMvPred.m_iDvMcpDispX;
+            aiDvMcpDvCandY[iList][DVFROM_ABOVELEFT] = cTmpMvPred.m_iDvMcpDispY;
+#else
             aiDvMcpDvCand[iList][DVFROM_ABOVELEFT] = cTmpMvPred.m_iDvMcpDispX;
+#endif
             abDvMcpFlag  [iList][DVFROM_ABOVELEFT] = true; 
             bDvMcpIsFound = true;
@@ -6678,5 +6708,9 @@
         if( abDvMcpFlag[iList][i]==true )
         {
+#if MTK_RELEASE_DV_CONSTRAINT
+          TComMv dv( aiDvMcpDvCandX[iList][ i ], aiDvMcpDvCandY[iList][ i ] );
+#else
           TComMv dv( aiDvMcpDvCand[iList][ i ], 0 );
+#endif
           clipMv( dv );
 #if !MERL_MTK_VSP_DVP_REFINE_C0152_C0131
@@ -8843,4 +8877,11 @@
   else
   {
+#if MTK_RELEASE_DV_CONSTRAINT
+    Bool bAvailable = pcResidualGenerator->getResidualSamples( this, uiPartIdx, pcYuv, cDisInfo.m_acMvCand[0] 
+#if QC_SIMPLIFIEDIVRP_M24938
+     , bRecon 
+#endif
+     );
+#else
     Bool bAvailable = pcResidualGenerator->getResidualSamples( this, uiPartIdx, pcYuv, cDisInfo.m_acMvCand[0].getHor() 
 #if QC_SIMPLIFIEDIVRP_M24938
@@ -8848,4 +8889,5 @@
 #endif
       );
+#endif
     m_pePartSize[0] = m_peSaved;
     return bAvailable;
Index: branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComDepthMapGenerator.cpp
===================================================================
--- branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComDepthMapGenerator.cpp	(revision 246)
+++ branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComDepthMapGenerator.cpp	(revision 247)
@@ -723,4 +723,7 @@
               cMv.m_bDvMcp = true;
               cMv.m_iDvMcpDispX = pDInfo->m_acMvCand[0].getHor();
+#if MTK_RELEASE_DV_CONSTRAINT
+              cMv.m_iDvMcpDispY = pDInfo->m_acMvCand[0].getVer();
+#endif
 #endif
               pcCU->clipMv( cMv );
@@ -920,4 +923,7 @@
           rcMv.m_bDvMcp = true;
           rcMv.m_iDvMcpDispX = pDInfo->m_acMvCand[0].getHor(); 
+#if MTK_RELEASE_DV_CONSTRAINT
+          rcMv.m_iDvMcpDispY = pDInfo->m_acMvCand[0].getVer();
+#endif
         }
         else { // AMVP ?
Index: branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComMv.h
===================================================================
--- branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComMv.h	(revision 246)
+++ branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComMv.h	(revision 247)
@@ -60,4 +60,7 @@
   Bool  m_bDvMcp;       // is dv-mcp ?
   Int   m_iDvMcpDispX;  // disparity for dv-mcp
+#if MTK_RELEASE_DV_CONSTRAINT
+  Int   m_iDvMcpDispY;  // disparity for dv-mcp
+#endif
 #endif
 
@@ -72,4 +75,7 @@
   , m_bDvMcp(false)
   , m_iDvMcpDispX(0)
+#if MTK_RELEASE_DV_CONSTRAINT
+  , m_iDvMcpDispY(0)
+#endif
 #endif
   {
@@ -82,4 +88,7 @@
   , m_bDvMcp(false)
   , m_iDvMcpDispX(0)
+#if MTK_RELEASE_DV_CONSTRAINT
+  , m_iDvMcpDispY(0)
+#endif
 #endif
   {
Index: branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComResidualGenerator.cpp
===================================================================
--- branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComResidualGenerator.cpp	(revision 246)
+++ branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComResidualGenerator.cpp	(revision 247)
@@ -220,4 +220,12 @@
 
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+Bool
+TComResidualGenerator::getResidualSamples( TComDataCU* pcCU, UInt uiPUIdx, TComYuv* pcYuv, TComMv iDisp
+#if QC_SIMPLIFIEDIVRP_M24938
+  , Bool bRecon
+#endif
+  ) 
+#else
 Bool
 TComResidualGenerator::getResidualSamples( TComDataCU* pcCU, UInt uiPUIdx, TComYuv* pcYuv, Int iDisp
@@ -226,4 +234,5 @@
 #endif
  ) 
+#endif
 #else
 Bool
@@ -244,4 +253,5 @@
   pcCU->getPic()->getPicYuvRec()->getTopLeftSamplePos( pcCU->getAddr(), pcCU->getZorderIdxInCU() + uiPartAddr, iXPos, iYPos );
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
   return getResidualSamples( pcCU->getPic(), (UInt)iXPos, (UInt)iYPos, (UInt)iBlkWidth, (UInt)iBlkHeight, pcYuv, iDisp 
 #if QC_SIMPLIFIEDIVRP_M24938
@@ -249,4 +259,11 @@
 #endif
   );
+#else
+  return getResidualSamples( pcCU->getPic(), (UInt)iXPos, (UInt)iYPos, (UInt)iBlkWidth, (UInt)iBlkHeight, pcYuv, iDisp 
+#if QC_SIMPLIFIEDIVRP_M24938
+    , bRecon
+#endif
+  );
+#endif
 #else
   return getResidualSamples( pcCU->getPic(), (UInt)iXPos, (UInt)iYPos, (UInt)iBlkWidth, (UInt)iBlkHeight, pcYuv 
@@ -259,4 +276,12 @@
   
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+Bool
+TComResidualGenerator::getResidualSamples( TComPic* pcPic, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, TComMv iDisp  
+#if QC_SIMPLIFIEDIVRP_M24938
+  , Bool bRecon
+#endif
+)
+#else
 Bool
 TComResidualGenerator::getResidualSamples( TComPic* pcPic, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, Int iDisp 
@@ -265,4 +290,5 @@
 #endif
 )
+#endif
 #else
 Bool
@@ -284,4 +310,11 @@
 #endif
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+  xSetPredResidualBlock( pcPic, uiBaseViewId, uiXPos, uiYPos, uiBlkWidth, uiBlkHeight, pcYuv, iDisp
+#if QC_SIMPLIFIEDIVRP_M24938
+   , &uiXPosInRefView , &uiYPosInRefView , bRecon
+#endif  
+  );
+#else
   xSetPredResidualBlock( pcPic, uiBaseViewId, uiXPos, uiYPos, uiBlkWidth, uiBlkHeight, pcYuv, iDisp
 #if QC_SIMPLIFIEDIVRP_M24938
@@ -289,4 +322,5 @@
 #endif  
   );
+#endif
 #else
   xSetPredResidualBlock( pcPic, uiBaseViewId, uiXPos, uiYPos, uiBlkWidth, uiBlkHeight, pcYuv 
@@ -518,4 +552,12 @@
 
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+Void  
+TComResidualGenerator::xSetPredResidualBlock( TComPic* pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, TComMv iDisp
+#if QC_SIMPLIFIEDIVRP_M24938
+  , UInt * puiXPosInRefView , UInt * puiYPosInRefView , Bool bRecon
+#endif
+)
+#else
 Void  
 TComResidualGenerator::xSetPredResidualBlock( TComPic* pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, Int iDisp 
@@ -524,4 +566,5 @@
 #endif
 )
+#endif
 #else
 Void  
@@ -549,5 +592,10 @@
   //===== get disparity =====
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+  Int iDisparity_y = iDisp.getVer();
+  Int iDisparity   = iDisp.getHor();
+#else
   Int iDisparity = iDisp;
+#endif
 #else
   Int           iMidPosX    = Int( uiXPos + ( ( uiBlkWidth  - 1 ) >> 1 ) ) >> m_pcDepthMapGenerator->getSubSampExpX();
@@ -562,8 +610,20 @@
   Int           iYRefPosX0  = Int( uiXPos )     + ( iDisparity >> 2 );
   Int           iYRefPosX1  = iYRefPosX0        + 1;
+#if MTK_RELEASE_DV_CONSTRAINT
+  Int           iYMaxPosY   = Int( uiPicHeight ) - 1;
+  Int           iYWeight3   = ( iDisparity_y & 3 );
+  Int           iYWeight2   = 4 - iYWeight3;
+  Int           iYRefPosY0  = Max( 0, Min( iYMaxPosY, Int( uiYPos )     + ( iDisparity_y >> 2 )) );
+  Int           iYRefPosY1  = Max( 0, Min( iYMaxPosY, iYRefPosY0 + 1 ));
+#endif
   Int           iYMaxPosX   = Int( uiPicWidth ) - 1;
   Int           iSrcStrideY = pcBaseRes->getStride   ();
   Int           iDesStrideY = pcYuv    ->getStride   ();
+#if MTK_RELEASE_DV_CONSTRAINT
+  Pel*          pSrcSamplesY0= pcBaseRes->getLumaAddr ( 0 ) + iYRefPosY0 * iSrcStrideY;
+  Pel*          pSrcSamplesY1= pcBaseRes->getLumaAddr ( 0 ) + iYRefPosY1 * iSrcStrideY;
+#else
   Pel*          pSrcSamplesY= pcBaseRes->getLumaAddr ( 0 ) + uiYPos * iSrcStrideY;
+#endif
   Pel*          pDesSamplesY= pcYuv    ->getLumaAddr ();
 
@@ -576,6 +636,9 @@
     return;
 #endif
-
+#if MTK_RELEASE_DV_CONSTRAINT
+  for(   Int iY = 0; iY < iYHeight; iY++, pSrcSamplesY0 += iSrcStrideY, pSrcSamplesY1 += iSrcStrideY, pDesSamplesY += iDesStrideY )
+#else
   for(   Int iY = 0; iY < iYHeight; iY++, pSrcSamplesY += iSrcStrideY, pDesSamplesY += iDesStrideY )
+#endif
   {
     for( Int iX = 0; iX < iYWidth; iX++ )
@@ -583,5 +646,12 @@
       Int iXPic0        = Max( 0, Min( iYMaxPosX, iYRefPosX0 + iX ) );
       Int iXPic1        = Max( 0, Min( iYMaxPosX, iYRefPosX1 + iX ) );
+#if MTK_RELEASE_DV_CONSTRAINT
+      Pel Temp1,Temp2;
+      Temp1 =( iYWeight0 * pSrcSamplesY0[iXPic0] + iYWeight1 * pSrcSamplesY0[iXPic1] + 2 ) >> 2;
+      Temp2 =( iYWeight0 * pSrcSamplesY1[iXPic0] + iYWeight1 * pSrcSamplesY1[iXPic1] + 2 ) >> 2;
+      pDesSamplesY[iX]  = ( iYWeight2 * Temp1 + iYWeight3 * Temp2 + 2 ) >> 2;
+#else
       pDesSamplesY[iX]  = ( iYWeight0 * pSrcSamplesY[iXPic0] + iYWeight1 * pSrcSamplesY[iXPic1] + 2 ) >> 2;
+#endif
     }
   }
@@ -594,13 +664,32 @@
   Int           iCRefPosX0  = Int( uiXPos     >> 1 ) + ( iDisparity >> 3 );
   Int           iCRefPosX1  = iCRefPosX0             + 1;
+#if MTK_RELEASE_DV_CONSTRAINT
+  Int           iCMaxPosY   = Int( uiPicHeight >> 1 ) - 1;
+  Int           iCWeight3   = ( iDisparity_y & 7 );
+  Int           iCWeight2   = 8 - iCWeight3;
+  Int           iCRefPosY0  = Max( 0, Min( iCMaxPosY, Int( uiYPos )     + ( iDisparity_y >> 3 )) );
+  Int           iCRefPosY1  = Max( 0, Min( iCMaxPosY, iCRefPosY0 + 1 ));
+#endif
   Int           iCMaxPosX   = Int( uiPicWidth >> 1 ) - 1;
   Int           iSrcStrideC = pcBaseRes->getCStride();
   Int           iDesStrideC = pcYuv    ->getCStride();
+#if MTK_RELEASE_DV_CONSTRAINT
+  Pel*          pSrcSamplesU0= pcBaseRes->getCbAddr ( 0 ) + ( iYRefPosY0 >> 1 ) * iSrcStrideC;
+  Pel*          pSrcSamplesU1= pcBaseRes->getCbAddr ( 0 ) + ( iYRefPosY1 >> 1 ) * iSrcStrideC;
+  Pel*          pSrcSamplesV0= pcBaseRes->getCrAddr ( 0 ) + ( iYRefPosY0 >> 1 ) * iSrcStrideC;
+  Pel*          pSrcSamplesV1= pcBaseRes->getCrAddr ( 0 ) + ( iYRefPosY1 >> 1 ) * iSrcStrideC;
+#else
   Pel*          pSrcSamplesU= pcBaseRes->getCbAddr ( 0 ) + ( uiYPos >> 1 ) * iSrcStrideC;
   Pel*          pSrcSamplesV= pcBaseRes->getCrAddr ( 0 ) + ( uiYPos >> 1 ) * iSrcStrideC;
+#endif
   Pel*          pDesSamplesU= pcYuv    ->getCbAddr ();
   Pel*          pDesSamplesV= pcYuv    ->getCrAddr ();
+#if MTK_RELEASE_DV_CONSTRAINT
+  for(   Int iY = 0; iY < iCHeight; iY++, pSrcSamplesU0 += iSrcStrideC, pSrcSamplesU1 += iSrcStrideC, pDesSamplesU += iDesStrideC,
+                                          pSrcSamplesV0 += iSrcStrideC, pSrcSamplesV1 += iSrcStrideC, pDesSamplesV += iDesStrideC )
+#else
   for(   Int iY = 0; iY < iCHeight; iY++, pSrcSamplesU += iSrcStrideC, pDesSamplesU += iDesStrideC,
                                           pSrcSamplesV += iSrcStrideC, pDesSamplesV += iDesStrideC )
+#endif
   {
     for( Int iX = 0; iX < iCWidth; iX++ )
@@ -608,6 +697,16 @@
       Int iXPic0        = Max( 0, Min( iCMaxPosX, iCRefPosX0 + iX ) );
       Int iXPic1        = Max( 0, Min( iCMaxPosX, iCRefPosX1 + iX ) );
+#if MTK_RELEASE_DV_CONSTRAINT
+      Pel Temp1,Temp2;
+      Temp1 =( iCWeight0 * pSrcSamplesU0[iXPic0] + iCWeight1 * pSrcSamplesU0[iXPic1] + 4 ) >> 3;
+      Temp2 =( iCWeight0 * pSrcSamplesU1[iXPic0] + iCWeight1 * pSrcSamplesU1[iXPic1] + 4 ) >> 3;
+      pDesSamplesU[iX]  = ( iYWeight2 * Temp1 + iYWeight3 * Temp2 + 2 ) >> 2;
+      Temp1 =( iCWeight0 * pSrcSamplesV0[iXPic0] + iCWeight1 * pSrcSamplesV0[iXPic1] + 4 ) >> 3;
+      Temp2 =( iCWeight0 * pSrcSamplesV1[iXPic0] + iCWeight1 * pSrcSamplesV1[iXPic1] + 4 ) >> 3;
+      pDesSamplesV[iX]  = ( iYWeight2 * Temp1 + iYWeight3 * Temp2 + 2 ) >> 2;
+#else
       pDesSamplesU[iX]  = ( iCWeight0 * pSrcSamplesU[iXPic0] + iCWeight1 * pSrcSamplesU[iXPic1] + 4 ) >> 3;
       pDesSamplesV[iX]  = ( iCWeight0 * pSrcSamplesV[iXPic0] + iCWeight1 * pSrcSamplesV[iXPic1] + 4 ) >> 3;
+#endif
     }
   }
Index: branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComResidualGenerator.h
===================================================================
--- branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComResidualGenerator.h	(revision 246)
+++ branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TComResidualGenerator.h	(revision 247)
@@ -70,4 +70,16 @@
 
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+  Bool  getResidualSamples    ( TComDataCU*   pcCU,  UInt uiPUIdx, TComYuv* pcYuv, TComMv iDisp_x
+#if QC_SIMPLIFIEDIVRP_M24938
+    , Bool bRecon
+#endif
+);
+  Bool  getResidualSamples    ( TComPic* pcPic, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv , TComMv iDisp_x
+#if QC_SIMPLIFIEDIVRP_M24938
+    , Bool bRecon
+#endif  
+  );
+#else
   Bool  getResidualSamples    ( TComDataCU*   pcCU,  UInt uiPUIdx, TComYuv* pcYuv, Int iDisp 
 #if QC_SIMPLIFIEDIVRP_M24938
@@ -80,4 +92,5 @@
 #endif  
   );
+#endif
 #else
   Bool  getResidualSamples    ( TComDataCU*   pcCU,  UInt uiPUIdx, TComYuv* pcYuv 
@@ -101,4 +114,11 @@
   Void  xClearResidual        (                      TComYuv* pcCUResidual, UInt uiAbsPartIdx, UInt uiWidth, UInt uiHeight );
 #if QC_MULTI_DIS_CAN_A0097
+#if MTK_RELEASE_DV_CONSTRAINT
+  Void  xSetPredResidualBlock ( TComPic*      pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, TComMv iDisp
+#if QC_SIMPLIFIEDIVRP_M24938
+    , UInt * puiXPosInRefView , UInt * puiYPosInRefView , Bool bRecon
+#endif
+  );
+#else
   Void  xSetPredResidualBlock ( TComPic*      pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv, Int iDisp 
 #if QC_SIMPLIFIEDIVRP_M24938
@@ -106,4 +126,5 @@
 #endif
   );
+#endif
 #else
   Void  xSetPredResidualBlock ( TComPic*      pcPic, UInt uiBaseViewId, UInt uiXPos, UInt uiYPos, UInt uiBlkWidth, UInt uiBlkHeight, TComYuv* pcYuv 
Index: branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TypeDef.h
===================================================================
--- branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TypeDef.h	(revision 246)
+++ branches/HTM-5.1-dev3-Mediatek/source/Lib/TLibCommon/TypeDef.h	(revision 247)
@@ -145,4 +145,5 @@
 #define MTK_SAIT_TEMPORAL_FIRST_ORDER     1   // JCT3V-C00141/C0097
 #define MTK_SIMPLIFY_DVTC                 1   // JCT3V-C00135
+#define MTK_RELEASE_DV_CONSTRAINT         1   // JCT3V-C00129
 ///// ***** MOTION PARAMETER INHERITANCE  *********
 #define HHI_MPI                           1   // motion parameter inheritance from texture picture for depth map coding
