- Timestamp:
- 22 Feb 2013, 21:08:22 (12 years ago)
- Location:
- branches/SHM-1.1-dev/source/Lib/TLibCommon
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-1.1-dev/source/Lib/TLibCommon/TComPic.cpp
r45 r47 557 557 558 558 #if REF_IDX_MFM 559 #if !REUSE_BLKMAPPING 559 560 Void TComPic::deriveUnitIdxBase( UInt uiUpsamplePelX, UInt uiUpsamplePelY, UInt ratio, UInt& uiBaseCUAddr, UInt& uiBaseAbsPartIdx ) 560 561 { … … 591 592 return; 592 593 } 594 #endif 593 595 594 596 Void TComPic::copyUpsampledMvField(TComPic* pcPicBase) 595 597 { 598 #if !REUSE_MVSCALE || !REUSE_BLKMAPPING || AVC_SYNTAX 596 599 Int iBWidth = pcPicBase->getPicYuvRec()->getWidth () - pcPicBase->getPicYuvRec()->getPicCropLeftOffset() - pcPicBase->getPicYuvRec()->getPicCropRightOffset(); 597 600 Int iBHeight = pcPicBase->getPicYuvRec()->getHeight() - pcPicBase->getPicYuvRec()->getPicCropTopOffset() - pcPicBase->getPicYuvRec()->getPicCropBottomOffset(); … … 599 602 Int iEWidth = getPicYuvRec()->getWidth() - getPicYuvRec()->getPicCropLeftOffset() - getPicYuvRec()->getPicCropRightOffset(); 600 603 Int iEHeight = getPicYuvRec()->getHeight() - getPicYuvRec()->getPicCropTopOffset() - getPicYuvRec()->getPicCropBottomOffset(); 604 #endif 601 605 606 #if !REUSE_MVSCALE || !REUSE_BLKMAPPING 602 607 UInt upSampleRatio = 0; 603 608 if(iEWidth == iBWidth && iEHeight == iBHeight) … … 617 622 assert(0); 618 623 } 624 #endif 619 625 620 626 for(UInt cuIdx = 0; cuIdx < getPicSym()->getNumberOfCUsInFrame(); cuIdx++) //each LCU … … 634 640 UInt uiPelY = pcCUDes->getCUPelY() + g_auiRasterToPelY[ g_auiZscanToRaster[uiAbsPartIdx] ]; 635 641 UInt uiBaseCUAddr, uiBaseAbsPartIdx; 642 643 #if REUSE_BLKMAPPING 644 TComDataCU *pcColCU = 0; 645 pcColCU = pcCUDes->getBaseColCU(uiPelX + 8, uiPelY + 8, uiBaseCUAddr, uiBaseAbsPartIdx); 646 #else 636 647 pcPicBase->deriveUnitIdxBase(uiPelX + 8, uiPelY + 8, upSampleRatio, uiBaseCUAddr, uiBaseAbsPartIdx); 648 #endif 637 649 638 650 #if AVC_SYNTAX … … 640 652 Int iBY = ( (uiPelY + 8) * iBHeight+ iEHeight/2 ) / iEHeight; 641 653 654 #if REUSE_BLKMAPPING 655 if( ( iBX < iBWidth && iBY < iBHeight ) && pcColCU && (pcColCU->getPredictionMode(uiBaseAbsPartIdx) != MODE_NONE) && (pcColCU->getPredictionMode(uiBaseAbsPartIdx) != MODE_INTRA) ) //base layer unit not skip and invalid mode 656 #else 642 657 if( ( iBX < iBWidth && iBY < iBHeight ) && (pcPicBase->getCU(uiBaseCUAddr)->getPredictionMode(uiBaseAbsPartIdx) != MODE_NONE) && (pcPicBase->getCU(uiBaseCUAddr)->getPredictionMode(uiBaseAbsPartIdx) != MODE_INTRA) ) //base layer unit not skip and invalid mode 658 #endif 659 #else 660 #if REUSE_BLKMAPPING 661 if( pcColCU && (pcColCU->getPredictionMode(uiBaseAbsPartIdx) != MODE_NONE) && (pcColCU->getPredictionMode(uiBaseAbsPartIdx) != MODE_INTRA) ) //base layer unit not skip and invalid mode 643 662 #else 644 663 if( (pcPicBase->getCU(uiBaseCUAddr)->getPredictionMode(uiBaseAbsPartIdx) != MODE_NONE) && (pcPicBase->getCU(uiBaseCUAddr)->getPredictionMode(uiBaseAbsPartIdx) != MODE_INTRA) ) //base layer unit not skip and invalid mode 664 #endif 645 665 #endif 646 666 { … … 649 669 #if REUSE_MVSCALE 650 670 TComMvField sMvFieldBase, sMvField; 671 #if REUSE_BLKMAPPING 672 pcColCU->getMvField( pcColCU, uiBaseAbsPartIdx, (RefPicList)refPicList, sMvFieldBase); 673 #else 651 674 pcPicBase->getCU(uiBaseCUAddr)->getMvField( pcPicBase->getCU(uiBaseCUAddr), uiBaseAbsPartIdx, (RefPicList)refPicList, sMvFieldBase); 675 #endif 652 676 pcCUDes->scaleBaseMV( sMvField, sMvFieldBase ); 653 677 #else -
branches/SHM-1.1-dev/source/Lib/TLibCommon/TComPic.h
r38 r47 129 129 #if REF_IDX_MFM 130 130 Void copyUpsampledMvField ( TComPic* pcPicBase ); 131 #if !REUSE_BLKMAPPING 131 132 Void deriveUnitIdxBase ( UInt uiUpsamplePelX, UInt uiUpsamplePelY, UInt ratio, UInt& uiBaseCUAddr, UInt& uiBaseAbsPartIdx ); 133 #endif 132 134 #endif 133 135 -
branches/SHM-1.1-dev/source/Lib/TLibCommon/TComSlice.cpp
r45 r47 562 562 assert(thePoc == pcRefPicBL->getPOC()); 563 563 564 #if REUSE_MVSCALE 564 #if REUSE_MVSCALE || REUSE_BLKMAPPING 565 565 ilpPic[0]->getSlice(0)->setBaseColPic( pcRefPicBL ); 566 566 #endif -
branches/SHM-1.1-dev/source/Lib/TLibCommon/TypeDef.h
r45 r47 58 58 59 59 #define AVC_BASE 1 ///< YUV BL reading for AVC base SVC 60 #define REF_IDX_FRAMEWORK 1///< inter-layer reference framework60 #define REF_IDX_FRAMEWORK 0 ///< inter-layer reference framework 61 61 62 62 #if AVC_BASE … … 74 74 #if REF_IDX_MFM 75 75 #define REUSE_MVSCALE 1 ///< using the base layer MV scaling function 76 #define REUSE_BLKMAPPING 1 ///< using the base layer get co-located block function 76 77 #endif 77 78
Note: See TracChangeset for help on using the changeset viewer.