Changeset 597 in 3DVCSoftware for branches/HTM-DEV-2.0-dev0/source/Lib/TLibDecoder
- Timestamp:
- 29 Aug 2013, 12:25:20 (11 years ago)
- Location:
- branches/HTM-DEV-2.0-dev0/source/Lib/TLibDecoder
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-DEV-2.0-dev0/source/Lib/TLibDecoder/TDecCu.cpp
r531 r597 366 366 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 367 367 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 368 368 #if MTK_VSP_FIX_ALIGN_WD_E0172 369 InheritedVSPDisInfo inheritedVSPDisInfo[MRG_MAX_NUM_CANDS_MEM]; 370 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, inheritedVSPDisInfo, numValidMergeCand, uiMergeIndex ); 371 #else 372 #if MTK_VSP_FIX_E0172 373 Int vspDir[MRG_MAX_NUM_CANDS_MEM]; 374 memset(vspDir, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 375 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag,vspDir, numValidMergeCand, uiMergeIndex ); 376 pcCU->setVSPDirSubParts( vspDir[uiMergeIndex], uiAbsPartIdx, 0, uiDepth ); 377 #else 369 378 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, numValidMergeCand, uiMergeIndex ); 379 #endif 380 #endif// end of MTK_VSP_FIX_ALIGN_WD_E0172 370 381 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiAbsPartIdx, 0, uiDepth ); 371 382 #else 372 383 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); 373 384 #endif 374 385 #if MTK_VSP_FIX_ALIGN_WD_E0172 386 if(vspFlag[uiMergeIndex]) 387 { 388 pcCU->setDvInfoSubParts(inheritedVSPDisInfo[uiMergeIndex].m_acDvInfo, uiAbsPartIdx, 0, uiDepth); 389 } 390 #endif 375 391 pcCU->setInterDirSubParts( uhInterDirNeighbours[uiMergeIndex], uiAbsPartIdx, 0, uiDepth ); 376 392 -
branches/HTM-DEV-2.0-dev0/source/Lib/TLibDecoder/TDecEntropy.cpp
r531 r597 243 243 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 244 244 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 245 #if MTK_VSP_FIX_ALIGN_WD_E0172 246 InheritedVSPDisInfo inheritedVSPDisInfo[MRG_MAX_NUM_CANDS_MEM]; 247 pcSubCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, inheritedVSPDisInfo, numValidMergeCand ); 248 #else 249 #if MTK_VSP_FIX_E0172 250 Int vspDir[MRG_MAX_NUM_CANDS_MEM]; 251 memset(vspDir, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 252 pcSubCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, vspDir, numValidMergeCand ); 253 pcCU->setVSPDirSubParts( vspDir[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 254 #else 245 255 pcSubCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, numValidMergeCand ); 256 #endif 257 #endif//end of MTK_VSP_FIX_ALIGN_WD_E0172 246 258 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 259 #if MTK_VSP_FIX_ALIGN_WD_E0172 260 if(vspFlag[uiMergeIndex]) 261 { 262 pcCU->setDvInfoSubParts(inheritedVSPDisInfo[uiMergeIndex].m_acDvInfo, uiSubPartIdx, uiPartIdx, uiDepth); 263 } 264 #endif 247 265 #else 248 266 pcSubCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand ); … … 258 276 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 259 277 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 278 #if MTK_VSP_FIX_ALIGN_WD_E0172 279 InheritedVSPDisInfo inheritedVSPDisInfo[MRG_MAX_NUM_CANDS_MEM]; 280 pcSubCU->getInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, inheritedVSPDisInfo,numValidMergeCand, uiMergeIndex ); 281 #else 282 #if MTK_VSP_FIX_E0172 283 Int vspDir[MRG_MAX_NUM_CANDS_MEM]; 284 memset(vspDir, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 285 pcSubCU->getInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, vspDir,numValidMergeCand, uiMergeIndex ); 286 pcCU->setVSPDirSubParts( vspDir[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 287 #else 260 288 pcSubCU->getInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours, vspFlag, numValidMergeCand, uiMergeIndex ); 289 #endif 290 #endif//end of MTK_VSP_FIX_ALIGN_WD_E0172 261 291 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 292 #if MTK_VSP_FIX_ALIGN_WD_E0172 293 if(vspFlag[uiMergeIndex]) 294 { 295 pcCU->setDvInfoSubParts(inheritedVSPDisInfo[uiMergeIndex].m_acDvInfo, uiSubPartIdx, uiPartIdx, uiDepth); 296 } 297 #endif 262 298 #else 263 299 pcSubCU->getInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); … … 291 327 } 292 328 } 329 #if MTK_VSP_FIX_E0172 || MTK_VSP_FIX_ALIGN_WD_E0172 330 if ( (pcCU->getInterDir(uiSubPartIdx) == 3) && pcSubCU->isBipredRestriction(uiPartIdx) && (pcCU->getVSPFlag(uiSubPartIdx) == false)) 331 #else 293 332 if ( (pcCU->getInterDir(uiSubPartIdx) == 3) && pcSubCU->isBipredRestriction(uiPartIdx) ) 333 #endif 294 334 { 295 335 pcCU->getCUMvField( REF_PIC_LIST_1 )->setAllMv( TComMv(0,0), ePartSize, uiSubPartIdx, uiDepth, uiPartIdx); -
branches/HTM-DEV-2.0-dev0/source/Lib/TLibDecoder/TDecGop.cpp
r542 r597 159 159 } 160 160 #endif 161 #if MTK_NBDV_TN_FIX_E0172 162 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. 163 { 164 rpcPic->checkTemporalIVRef(); 165 } 166 #endif 167 #if MTK_TEXTURE_MRGCAND_BUGFIX_E0182 168 if(pcSlice->getIsDepth()) 169 { 170 rpcPic->checkTextureRef(); 171 } 172 #endif 161 173 #if H_3D 162 174 pcSlice->setDepthToDisparityLUTs();
Note: See TracChangeset for help on using the changeset viewer.