Changeset 1233 in 3DVCSoftware for branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibDecoder
- Timestamp:
- 26 May 2015, 07:13:47 (10 years ago)
- Location:
- branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibDecoder
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibDecoder/TDecCu.cpp
r1217 r1233 385 385 UChar uhInterDirNeighbours[MRG_MAX_NUM_CANDS_MEM]; 386 386 #else 387 #if NH_3D_MLC 388 TComMvField cMvFieldNeighbours[MRG_MAX_NUM_CANDS_MEM << 1]; // double length for mv of both lists 389 UChar uhInterDirNeighbours[MRG_MAX_NUM_CANDS_MEM]; 390 #else 387 391 TComMvField cMvFieldNeighbours[MRG_MAX_NUM_CANDS << 1]; // double length for mv of both lists 388 392 UChar uhInterDirNeighbours[MRG_MAX_NUM_CANDS]; 393 #endif 389 394 #endif 390 395 Int numValidMergeCand = 0; … … 402 407 #endif 403 408 409 404 410 #if H_3D_VSP 405 411 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 406 412 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 413 #endif 407 414 #if H_3D_SPIVMP 408 415 Bool bSPIVMPFlag[MRG_MAX_NUM_CANDS_MEM]; … … 413 420 puhInterDirSP = new UChar[pcCU->getPic()->getPicSym()->getNumPartition()]; 414 421 #endif 422 423 #if NH_3D_MLC 415 424 m_ppcCU[uiDepth]->initAvailableFlags(); 425 #endif 416 426 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); 427 #if NH_3D_MLC 417 428 m_ppcCU[uiDepth]->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours 418 429 #if H_3D_SPIVMP … … 421 432 , numValidMergeCand, uiMergeIndex ); 422 433 423 m_ppcCU[uiDepth]->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours, vspFlag 434 m_ppcCU[uiDepth]->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours 435 #if H_3D_VSP 436 , vspFlag 437 #endif 424 438 #if H_3D_SPIVMP 425 439 , bSPIVMPFlag 426 440 #endif 427 441 , numValidMergeCand ); 442 #endif 443 #if H_3D_VSP 428 444 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiAbsPartIdx, 0, uiDepth ); 429 #else 430 #if H_3D 431 m_ppcCU[uiDepth]->initAvailableFlags(); 432 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); 433 m_ppcCU[uiDepth]->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); 434 #else 435 m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); 436 #endif 437 #endif 445 #endif 446 438 447 pcCU->setInterDirSubParts( uhInterDirNeighbours[uiMergeIndex], uiAbsPartIdx, 0, uiDepth ); 439 448 -
branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibDecoder/TDecEntropy.cpp
r1200 r1233 236 236 UInt uiNumPU = ( ePartSize == SIZE_2Nx2N ? 1 : ( ePartSize == SIZE_NxN ? 4 : 2 ) ); 237 237 UInt uiPUOffset = ( g_auiPUOffset[UInt( ePartSize )] << ( ( pcCU->getSlice()->getSPS()->getMaxTotalCUDepth() - uiDepth ) << 1 ) ) >> 4; 238 #if H_3D_IV_MERGE 238 //#if H_3D_IV_MERGE 239 #if NH_3D_MLC 239 240 TComMvField cMvFieldNeighbours[MRG_MAX_NUM_CANDS_MEM << 1]; // double length for mv of both lists 240 241 UChar uhInterDirNeighbours[MRG_MAX_NUM_CANDS_MEM]; … … 483 484 { 484 485 pcSubCU->setPartSizeSubParts( SIZE_2Nx2N, 0, uiDepth ); // temporarily set. 486 487 #if NH_3D_MLC 488 #if H_3D_VSP 489 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 490 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 491 #endif 492 #if H_3D_SPIVMP 493 memset(bSPIVMPFlag, false, sizeof(Bool)*MRG_MAX_NUM_CANDS_MEM); 494 #endif 495 pcSubCU->initAvailableFlags(); 496 #endif 485 497 pcSubCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand ); 498 #if NH_3D_MLC 499 pcSubCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours 500 #if H_3D_SPIVMP 501 , pcMvFieldSP, puhInterDirSP 502 #endif 503 , numValidMergeCand ); 504 pcSubCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours 505 #if H_3D_VSP 506 , vspFlag 507 #endif 508 #if H_3D_SPIVMP 509 , bSPIVMPFlag 510 #endif 511 , numValidMergeCand ); 512 #if H_3D_VSP 513 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 514 #endif 515 #endif 486 516 pcSubCU->setPartSizeSubParts( ePartSize, 0, uiDepth ); // restore. 487 517 hasMergedCandList = true; … … 491 521 { 492 522 uiMergeIndex = pcCU->getMergeIndex(uiSubPartIdx); 523 524 #if NH_3D_MLC 525 #if H_3D_VSP 526 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 527 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 528 #endif 529 #if H_3D_SPIVMP 530 memset(bSPIVMPFlag, false, sizeof(Bool)*MRG_MAX_NUM_CANDS_MEM); 531 #endif 532 pcSubCU->initAvailableFlags(); 533 #endif 493 534 pcSubCU->getInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex ); 535 #if NH_3D_MLC 536 pcSubCU->xGetInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours 537 #if H_3D_SPIVMP 538 , pcMvFieldSP, puhInterDirSP 539 #endif 540 ,numValidMergeCand, uiMergeIndex ); 541 pcSubCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours 542 #if H_3D_VSP 543 , vspFlag 544 #endif 545 #if H_3D_SPIVMP 546 , bSPIVMPFlag 547 #endif 548 ,numValidMergeCand ); 549 #if H_3D_VSP 550 pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth ); 551 #endif 552 #endif 494 553 } 495 554
Note: See TracChangeset for help on using the changeset viewer.