Changeset 722 in SHVCSoftware for branches/SHM-6-dev/source/Lib/TLibCommon


Ignore:
Timestamp:
22 Apr 2014, 09:11:10 (12 years ago)
Author:
seregin
Message:

add checks for the ILRP prediction type

Location:
branches/SHM-6-dev/source/Lib/TLibCommon
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-6-dev/source/Lib/TLibCommon/TComPic.h

    r677 r722  
    202202  TComPicYuv*   getFullPelBaseRec   (UInt refLayerIdc)  { return  m_pcFullPelBaseRec[refLayerIdc];  }
    203203#if REF_IDX_ME_ZEROMV || ENCODER_FAST_MODE || REF_IDX_MFM
    204   Bool          isILR( UInt currLayerId )   { return ( getIsLongTerm() && m_layerId < currLayerId ); }
     204  Bool          isILR( UInt currLayerId )   { return ( m_bIsLongTerm && m_layerId < currLayerId ); }
    205205#endif
    206206#if REF_IDX_MFM
  • branches/SHM-6-dev/source/Lib/TLibCommon/TComPrediction.cpp

    r703 r722  
    487487  pcCU->clipMv(cMv);
    488488
     489#if SVC_EXTENSION
     490  TComPic* refPic = pcCU->getSlice()->getRefPic(eRefPicList, iRefIdx);
     491
     492  // ILRP has to be for the sample prediction type
     493  assert( ( refPic->isILR(pcCU->getLayerId()) && pcCU->getSlice()->getVPS()->isSamplePredictionType( pcCU->getLayerId(), refPic->getLayerId() ) ) || refPic->isILR(pcCU->getLayerId()) == false );
     494
    489495#if REF_IDX_ME_ZEROMV
    490   assert( ( pcCU->getSlice()->getRefPic(eRefPicList, iRefIdx)->isILR(pcCU->getLayerId()) && cMv.getHor() == 0 && cMv.getVer() == 0 ) || pcCU->getSlice()->getRefPic(eRefPicList, iRefIdx)->isILR(pcCU->getLayerId()) == false );
     496  assert( ( refPic->isILR(pcCU->getLayerId()) && cMv.getHor() == 0 && cMv.getVer() == 0 ) || refPic->isILR(pcCU->getLayerId()) == false );
     497#endif
    491498#endif
    492499
  • branches/SHM-6-dev/source/Lib/TLibCommon/TComSlice.h

    r715 r722  
    836836#endif
    837837#if ILP_SSH_SIG
    838     Bool   getIlpSshSignalingEnabledFlag()                      { return m_ilpSshSignalingEnabledFlag;}
    839     Void   setIlpSshSignalingEnabledFlag(Bool x)                { m_ilpSshSignalingEnabledFlag = x;}
     838  Bool   getIlpSshSignalingEnabledFlag()                      { return m_ilpSshSignalingEnabledFlag;}
     839  Void   setIlpSshSignalingEnabledFlag(Bool x)                { m_ilpSshSignalingEnabledFlag = x;}
    840840#endif
    841841#if VPS_EXTN_PROFILE_INFO
     
    883883  UInt   getDirectDependencyType(Int currLayerId, Int refLayerId)               { return m_directDependencyType[currLayerId][refLayerId]; }
    884884  Void   setDirectDependencyType(Int currLayerId, Int refLayerId, UInt x)       { m_directDependencyType[currLayerId][refLayerId] = x;    }
     885  Bool   isSamplePredictionType(Int currLayerId, Int refLayerId)                { assert(currLayerId != refLayerId); return ( ( m_directDependencyType[currLayerId][refLayerId] + 1 ) & 1 ) ? true : false; }
    885886#endif
    886887  UInt   getNumProfileTierLevel()                                { return m_numProfileTierLevel; }
Note: See TracChangeset for help on using the changeset viewer.