Changeset 1255 in 3DVCSoftware for branches/HTM-14.1-update-dev3-NTT/source/Lib/TLibDecoder
- Timestamp:
- 11 Jun 2015, 01:07:43 (10 years ago)
- Location:
- branches/HTM-14.1-update-dev3-NTT/source/Lib/TLibDecoder
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.1-update-dev3-NTT/source/Lib/TLibDecoder/TDecCu.cpp
r1233 r1255 152 152 setIsChromaQpAdjCoded(true); 153 153 } 154 154 155 155 // start from the top level CU 156 156 xDecodeCU( pCtu, 0, 0, isLastCtuOfSliceSegment); … … 293 293 if(!pcCU->getSlice()->isIntra()) 294 294 { 295 #if H_3D_ARP && H_3D_IV_MERGE296 if( pcCU->getSlice()->getIvResPredFlag() || pcCU->getSlice()->getIvMvPredFlag() )295 #if NH_3D_ARP && NH_3D_IV_MERGE && NH_3D_VSP 296 if( pcCU->getSlice()->getIvResPredFlag() || pcCU->getSlice()->getIvMvPredFlag() || pcCU->getSlice()->getViewSynthesisPredFlag() ) 297 297 #else 298 #if NH_3D_IV_MERGE && NH_3D_VSP 299 if( pcCU->getSlice()->getIvMvPredFlag() || pcCU->getSlice()->getViewSynthesisPredFlag() ) 300 #else 301 #if NH_3D_ARP && NH_3D_VSP 302 if( pcCU->getSlice()->getIvResPredFlag() || pcCU->getSlice()->getViewSynthesisPredFlag() ) 303 #else 304 #if NH_3D_VSP 305 if( pcCU->getSlice()->getViewSynthesisPredFlag() ) 306 #else 298 307 #if H_3D_ARP 299 308 if( pcCU->getSlice()->getVPS()->getUseAdvRP(pcCU->getSlice()->getLayerId()) ) … … 303 312 #else 304 313 if (0) 314 #endif 315 #endif 316 #endif 305 317 #endif 306 318 #endif … … 408 420 409 421 410 #if H_3D_VSP422 #if NH_3D_VSP 411 423 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 412 424 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); … … 433 445 434 446 m_ppcCU[uiDepth]->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours 435 #if H_3D_VSP447 #if NH_3D_VSP 436 448 , vspFlag 437 449 #endif … … 441 453 , numValidMergeCand ); 442 454 #endif 443 #if H_3D_VSP455 #if NH_3D_VSP 444 456 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiAbsPartIdx, 0, uiDepth ); 445 457 #endif … … 456 468 pcCU->getCUMvField( RefPicList( uiRefListIdx ) )->setAllMvd( cTmpMv, SIZE_2Nx2N, uiAbsPartIdx, uiDepth ); 457 469 pcCU->getCUMvField( RefPicList( uiRefListIdx ) )->setAllMvField( cMvFieldNeighbours[ 2*uiMergeIndex + uiRefListIdx ], SIZE_2Nx2N, uiAbsPartIdx, uiDepth ); 458 #if H_3D_VSP470 #if NH_3D_VSP 459 471 if( pcCU->getVSPFlag( uiAbsPartIdx ) != 0 ) 460 472 { -
branches/HTM-14.1-update-dev3-NTT/source/Lib/TLibDecoder/TDecEntropy.cpp
r1233 r1255 318 318 if ( !isMerged ) 319 319 { 320 #if H_3D_VSP320 #if NH_3D_VSP 321 321 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 322 322 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); … … 337 337 , numValidMergeCand ); 338 338 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 339 340 339 #else 341 340 #if H_3D … … 355 354 { 356 355 uiMergeIndex = pcCU->getMergeIndex(uiSubPartIdx); 357 #if H_3D_VSP356 #if NH_3D_VSP 358 357 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 359 358 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); … … 395 394 pcCU->getCUMvField( RefPicList( uiRefListIdx ) )->setAllMvd( cTmpMv, ePartSize, uiSubPartIdx, uiDepth, uiPartIdx ); 396 395 pcCU->getCUMvField( RefPicList( uiRefListIdx ) )->setAllMvField( cMvFieldNeighbours[ 2*uiMergeIndex + uiRefListIdx ], ePartSize, uiSubPartIdx, uiDepth, uiPartIdx ); 397 #if H_3D_VSP396 #if NH_3D_VSP 398 397 #if H_3D_DBBP 399 398 if( pcCU->getVSPFlag( uiSubPartIdx ) != 0 && !pcCU->getDBBPFlag( uiAbsPartIdx ) ) … … 486 485 487 486 #if NH_3D_MLC 488 #if H_3D_VSP487 #if NH_3D_VSP 489 488 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 490 489 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); … … 503 502 , numValidMergeCand ); 504 503 pcSubCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours 505 #if H_3D_VSP504 #if NH_3D_VSP 506 505 , vspFlag 507 506 #endif … … 510 509 #endif 511 510 , numValidMergeCand ); 512 #if H_3D_VSP511 #if NH_3D_VSP 513 512 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 514 513 #endif … … 523 522 524 523 #if NH_3D_MLC 525 #if H_3D_VSP524 #if NH_3D_VSP 526 525 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 527 526 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); … … 540 539 ,numValidMergeCand, uiMergeIndex ); 541 540 pcSubCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours 542 #if H_3D_VSP541 #if NH_3D_VSP 543 542 , vspFlag 544 543 #endif … … 547 546 #endif 548 547 ,numValidMergeCand ); 549 #if H_3D_VSP548 #if NH_3D_VSP 550 549 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 551 550 #endif … … 564 563 pcCU->getCUMvField( RefPicList( uiRefListIdx ) )->setAllMvd( cTmpMv, ePartSize, uiSubPartIdx, uiDepth, uiPartIdx ); 565 564 pcCU->getCUMvField( RefPicList( uiRefListIdx ) )->setAllMvField( cMvFieldNeighbours[ 2*uiMergeIndex + uiRefListIdx ], ePartSize, uiSubPartIdx, uiDepth, uiPartIdx ); 566 565 #if NH_3D_VSP 566 if( pcCU->getVSPFlag( uiSubPartIdx ) != 0 ) 567 { 568 if ( uhInterDirNeighbours[ uiMergeIndex ] & (1<<uiRefListIdx) ) 569 { 570 UInt dummy; 571 Int vspSize; 572 Int width, height; 573 pcCU->getPartIndexAndSize( uiPartIdx, dummy, width, height, uiSubPartIdx, pcCU->getTotalNumPart()==256 ); 574 pcCU->setMvFieldPUForVSP( pcCU, uiSubPartIdx, width, height, RefPicList( uiRefListIdx ), cMvFieldNeighbours[ 2*uiMergeIndex + uiRefListIdx ].getRefIdx(), vspSize ); 575 pcCU->setVSPFlag( uiSubPartIdx, vspSize ); 576 } 577 } 578 #endif 567 579 } 568 580 }
Note: See TracChangeset for help on using the changeset viewer.