Changeset 888 in 3DVCSoftware
- Timestamp:
- 30 Mar 2014, 19:00:36 (11 years ago)
- Location:
- branches/HTM-10.2-dev0/source/Lib/TLibCommon
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-10.2-dev0/source/Lib/TLibCommon/TComDataCU.cpp
r884 r888 3334 3334 cMv.setVer(0); 3335 3335 } 3336 #if !(NTT_BUG_FIX_TK54) 3336 3337 clipMv( cMv ); 3338 #endif 3337 3339 3338 3340 rightShiftMergeCandList( pcMvFieldNeighbours, puhInterDirNeighbours, vspFlag, inheritedVSPDisInfo, iCount, (5-iCount), iCount3DV); … … 4110 4112 { 4111 4113 TComMv cMv = cTexMvField.getMv() + cMvRounding; 4112 cMv >>=2; 4114 cMv >>=2; 4115 #if !(NTT_BUG_FIX_TK54) 4113 4116 this->clipMv( cMv ); 4117 #endif 4114 4118 pcMvFieldSP[2*iPartition + uiCurrRefListId].setMvField(cMv, iValidDepRef); 4115 4119 } … … 4261 4265 cMVField.getMv() += cAdd; 4262 4266 cMVField.getMv() >>= 2; 4267 #if !(NTT_BUG_FIX_TK54) 4263 4268 clipMv( cMVField.getMv() ); 4269 #endif 4264 4270 tmpMV[ 0 ].setMvField( cMVField.getMv(), iValidDepRef ); 4265 4271 tmpDir = 1; … … 4284 4290 cMVField.getMv() += cAdd; 4285 4291 cMVField.getMv() >>= 2; 4292 #if !(NTT_BUG_FIX_TK54) 4286 4293 clipMv( cMVField.getMv() ); 4294 #endif 4287 4295 tmpMV[ 1 ].setMvField( cMVField.getMv(), iValidDepRef ); 4288 4296 tmpDir = 2; … … 6227 6235 if( bCheck ) 6228 6236 { 6237 #if !(NTT_BUG_FIX_TK54) 6229 6238 clipMv(cColMv); 6239 #endif 6230 6240 pDInfo->m_acNBDV = cColMv; 6231 6241 pDInfo->m_aVIdxCan = iTargetViewIdx; … … 6296 6306 { 6297 6307 TComMv cDispVec = cIDVInfo.m_acMvCand[iList][ curPos ]; 6308 #if !(NTT_BUG_FIX_TK54) 6298 6309 clipMv( cDispVec ); 6310 #endif 6299 6311 pDInfo->m_acNBDV = cDispVec; 6300 6312 pDInfo->m_aVIdxCan = cIDVInfo.m_aVIdxCan[iList][ curPos ]; … … 6426 6438 Pel iDisp = getMcpFromDM( pcBaseViewDepthPicYuv, cMvPred, iBlkX, iBlkY, iWidth, iHeight, aiShiftLUT ); 6427 6439 cMvPred->setHor( iDisp ); 6440 #if !(NTT_BUG_FIX_TK54) 6428 6441 clipMv(*cMvPred); 6442 #endif 6429 6443 } 6430 6444 } … … 6452 6466 if (refViewIdx != m_pcSlice->getViewIndex()) 6453 6467 { 6468 #if !(NTT_BUG_FIX_TK54) 6454 6469 clipMv(cMvPred); 6470 #endif 6455 6471 pNbDvInfo->m_acNBDV = cMvPred; 6456 6472 pNbDvInfo->m_aVIdxCan = refViewIdx; … … 6859 6875 #endif 6860 6876 #endif 6877 #if !(NTT_BUG_FIX_TK54) 6861 6878 clipMv( cMv ); 6879 #endif 6862 6880 paiPdmRefIdx [ uiCurrRefListId ] = iPdmRefIdx; 6863 6881 pacPdmMv [ uiCurrRefListId ] = cMv; … … 6917 6935 cMv.setIDVVId (iViewIndex); 6918 6936 } 6919 6937 6938 #if !(NTT_BUG_FIX_TK54) 6920 6939 clipMv( cMv ); 6940 #endif 6921 6941 bLoop_stop = true; 6922 6942 … … 7018 7038 #endif 7019 7039 #endif 7040 #if !(NTT_BUG_FIX_TK54) 7020 7041 clipMv( cMv ); 7042 #endif 7021 7043 paiPdmRefIdx [ (uiCurrRefListId + (iLoopCan<<2)) ] = iPdmRefIdx; 7022 7044 pacPdmMv [ (uiCurrRefListId + (iLoopCan<<2)) ] = cMv; … … 7071 7093 #endif 7072 7094 cMv.setVer( 0 ); 7095 #if !(NTT_BUG_FIX_TK54) 7073 7096 clipMv( cMv ); 7097 #endif 7074 7098 pacPdmMv [iRefListId + 2 + (iLoopCan<<2)] = cMv; 7075 7099 } -
branches/HTM-10.2-dev0/source/Lib/TLibCommon/TComPrediction.cpp
r884 r888 1286 1286 1287 1287 assert ( cDistparity.bDV ); 1288 1288 1289 #if NTT_BUG_FIX_TK54 1290 TComMv cNBDV = cDistparity.m_acNBDV; 1291 pcCU->clipMv( cNBDV ); 1292 1293 pcPicYuvRef = pcPicYuvBaseCol->getPicYuvRec(); 1294 xPredInterLumaBlk ( pcCU, pcPicYuvRef, uiPartAddr, &cNBDV, iWidth, iHeight, pYuvB0, bi, true ); 1295 xPredInterChromaBlk( pcCU, pcPicYuvRef, uiPartAddr, &cNBDV, iWidth, iHeight, pYuvB0, bi, true ); 1296 #else 1289 1297 pcPicYuvRef = pcPicYuvBaseCol->getPicYuvRec(); 1290 1298 xPredInterLumaBlk ( pcCU, pcPicYuvRef, uiPartAddr, &cDistparity.m_acNBDV, iWidth, iHeight, pYuvB0, bi, true ); 1291 1299 xPredInterChromaBlk( pcCU, pcPicYuvRef, uiPartAddr, &cDistparity.m_acNBDV, iWidth, iHeight, pYuvB0, bi, true ); 1300 #endif 1292 1301 1293 1302 pcPicYuvRef = pcPicYuvBaseRef->getPicYuvRec(); -
branches/HTM-10.2-dev0/source/Lib/TLibCommon/TypeDef.h
r884 r888 65 65 #define H_3D ( HEVC_EXT == 2) 66 66 67 #define NTT_BUG_FIX_TK54 1 68 67 69 68 70 ///////////////////////////////////////////////////////////////////////////////////////// … … 313 315 // #define H_MV_HLS_7_POC_P0041_3 0 // (POC/P0041/POC reset) #3 It was remarked that we should require each non-IRAP picture that has discardable_flag equal to 1 to have NUT value indicating that it is a sub-layer non-reference picture. This was agreed. Decision: Adopt (with constraint for discardable_flag as described above) 314 316 // #define H_MV_HLS_7_POC_P0041_FIXES 0 // (POC/P0041/Fixes) For each non-IRAP picture that has discardable_flag equal to 1 to have NUT value indicating that it is a sub-layer non-reference picture. 315 // #define H_MV_HLS_7_POC_P0056_4 0 // (POC/P0056/layer tree poc) #4 Proposal 1: If the POC reset approach is adopted as the basis for multi-layer POC derivation, it is proposed to derive the POC anchor picture from the previous TID0 picture (that is not a RASL picture, a RADL picture or a sub-layer non-reference picture and not with discardable_flag equal to 1) of the current layer or any of its reference layer. This is asserted to improve loss resilience and reduce bit rate overhead. Decision: Adopt Proposal 1 (with the suggested modifications with text provided as P0297).317 // #define H_MV_HLS_7_POC_P0056_4 0 // (POC/P0056/layer tree poc) #4 Proposal 1: If the POC reset approach is adopted as the basis for multi-layer POC derivation, it is proposed to derive the POC anchor picture from the previous TID0 picture (that is not a RASL picture, a RADL picture or a sub-layer non-reference picture and not with discardable_flag equal to 1) of the current layer or any of its reference layer. This is asserted to improve loss resilience and reduce bit rate overhead. Decision: Adopt Proposal 1 (with the suggested modifications Ewith text provided as P0297). 316 318 317 319 // #define H_MV_HLS_7_SEI_P0133_28 0 // (SEI/P0133/Recovery point SEI) #28 Decision: Adopt change to recover point semantics only (-v3)
Note: See TracChangeset for help on using the changeset viewer.