Changeset 1366 in SHVCSoftware for branches/SHM-dev/source/Lib


Ignore:
Timestamp:
22 Jul 2015, 04:32:08 (10 years ago)
Author:
seregin
Message:

port rev 4483 and fixes for previous revisions

Location:
branches/SHM-dev/source/Lib
Files:
4 edited

Legend:

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

    r1356 r1366  
    20252025  Int                        m_iAssociatedIRAP;
    20262026  NalUnitType                m_iAssociatedIRAPType;
    2027   TComReferencePictureSet*   m_pcRPS;
     2027  const TComReferencePictureSet*   m_pcRPS;
    20282028  TComReferencePictureSet    m_LocalRPS;
    20292029  Int                        m_iBDidx;
     
    21702170  Void                        setSaoEnabledFlag(ChannelType chType, Bool s)          {m_saoEnabledFlag[chType] =s;                                   }
    21712171  Bool                        getSaoEnabledFlag(ChannelType chType) const            { return m_saoEnabledFlag[chType];                              }
    2172   Void                        setRPS( TComReferencePictureSet *pcRPS )               { m_pcRPS = pcRPS;                                              }
    2173   TComReferencePictureSet*    getRPS()                                               { return m_pcRPS;                                               }
     2172  Void                        setRPS( const TComReferencePictureSet *pcRPS )         { m_pcRPS = pcRPS;                                              }
     2173  const TComReferencePictureSet*    getRPS()                                               { return m_pcRPS;                                               }
    21742174  TComReferencePictureSet*    getLocalRPS()                                          { return &m_LocalRPS;                                           }
    21752175
  • branches/SHM-dev/source/Lib/TLibDecoder/TDecTop.cpp

    r1358 r1366  
    11621162
    11631163              TComSlice *slice = dpbPic->getSlice(i);
    1164               TComReferencePictureSet *rps = slice->getRPS();
     1164              TComReferencePictureSet *rps = slice->getLocalRPS();
    11651165              slice->setPOC( slice->getPOC() - deltaPocVal );
    11661166
     
    11701170                rps->setPOC( j, rps->getPOC(j) - deltaPocVal );
    11711171              }
     1172
     1173              slice->setRPS(rps);
     1174
    11721175              // Also adjust the value of refPOC
    11731176              for(Int k = 0; k < 2; k++)  // For List 0 and List 1
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp

    r1353 r1366  
    19261926#endif
    19271927    m_pcEncTop->selectReferencePictureSet(pcSlice, pocCurr, iGOPid);
    1928     pcSlice->getRPS()->setNumberOfLongtermPictures(0);
     1928//    pcSlice->getRPS()->setNumberOfLongtermPictures(0);
    19291929    if (!m_pcCfg->getEfficientFieldIRAPEnabled())
    19301930    {
     
    35443544Void TEncGOP::arrangeLongtermPicturesInRPS(TComSlice *pcSlice, TComList<TComPic*>& rcListPic)
    35453545{
    3546   TComReferencePictureSet *rps = pcSlice->getRPS();
    3547   if(!rps->getNumberOfLongtermPictures())
     3546  if(pcSlice->getRPS()->getNumberOfLongtermPictures() == 0)
    35483547  {
    35493548    return;
    35503549  }
     3550  // we can only modify the local RPS!
     3551  assert (pcSlice->getRPSidx()==-1);
     3552  TComReferencePictureSet *rps = pcSlice->getLocalRPS();
    35513553
    35523554  // Arrange long-term reference pictures in the correct order of LSB and MSB,
     
    40134015            {
    40144016              TComSlice *dpbPicSlice = dpbPic->getSlice( i );
    4015               TComReferencePictureSet *dpbPicRps = dpbPicSlice->getRPS();
     4017              TComReferencePictureSet *dpbPicRps = dpbPicSlice->getLocalRPS();
    40164018
    40174019              // Decrement POC of slice
     
    40234025                dpbPicRps->setPOC( j, dpbPicRps->getPOC(j) - deltaPocVal );
    40244026              }
     4027             
     4028              dpbPicSlice->setRPS(dpbPicRps);
    40254029
    40264030              // Decrement value of refPOC
  • branches/SHM-dev/source/Lib/TLibEncoder/TEncTop.cpp

    r1360 r1366  
    15121512  }
    15131513
    1514   TComReferencePictureSet *rps=slice->getLocalRPS();
    1515   (*rps) = *(slice->getSPS()->getRPSList()->getReferencePictureSet(slice->getRPSidx()));
     1514  const TComReferencePictureSet *rps = (slice->getSPS()->getRPSList()->getReferencePictureSet(slice->getRPSidx()));
    15161515  slice->setRPS(rps);
    1517   slice->getRPS()->setNumberOfPictures(slice->getRPS()->getNumberOfNegativePictures()+slice->getRPS()->getNumberOfPositivePictures());
    15181516}
    15191517
Note: See TracChangeset for help on using the changeset viewer.