Changeset 1366 in SHVCSoftware for branches/SHM-dev


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

port rev 4483 and fixes for previous revisions

Location:
branches/SHM-dev/source
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-dev/source/App/TAppEncoder/TAppEncCfg.cpp

    r1364 r1366  
    109109#if SVC_EXTENSION
    110110TAppEncCfg::TAppEncCfg()
    111 : m_pBitstreamFile()
     111: m_pchBitstreamFile()
    112112#if AVC_BASE
    113113, m_nonHEVCBaseLayerFlag(0)
     
    148148TAppEncCfg::~TAppEncCfg()
    149149{
    150 #if SVC_EXTENSION
    151   if( m_pBitstreamFile )
    152   {
    153     free(m_pBitstreamFile);
    154     m_pBitstreamFile = NULL;
    155   }
    156 #else 
     150#if !SVC_EXTENSION
    157151  if ( m_aidQP )
    158152  {
     
    176170
    177171  free(m_pchInputFile);
     172#endif
    178173  free(m_pchBitstreamFile);
    179 #endif
    180174#if !SVC_EXTENSION 
    181175  free(m_pchReconFile);
     
    17721766  }
    17731767#endif
    1774   m_pBitstreamFile = cfg_BitstreamFile.empty() ? NULL : strdup(cfg_BitstreamFile.c_str());
    17751768#else //SVC_EXTENSION
    17761769  m_pchInputFile = cfg_InputFile.empty() ? NULL : strdup(cfg_InputFile.c_str());
     1770#endif
    17771771  m_pchBitstreamFile = cfg_BitstreamFile.empty() ? NULL : strdup(cfg_BitstreamFile.c_str());
     1772#if !SVC_EXTENSION
    17781773  m_pchReconFile = cfg_ReconFile.empty() ? NULL : strdup(cfg_ReconFile.c_str());
    17791774  m_pchdQPFile = cfg_dQPFile.empty() ? NULL : strdup(cfg_dQPFile.c_str());
     
    43414336  }
    43424337  printf("=== Common configuration settings === \n");
    4343   printf("Bitstream      File               : %s\n", m_pBitstreamFile      );
     4338  printf("Bitstream      File               : %s\n", m_pchBitstreamFile      );
    43444339#else //SVC_EXTENSION
    43454340  printf("\n");
  • branches/SHM-dev/source/App/TAppEncoder/TAppEncCfg.h

    r1356 r1366  
    6464  Int       m_numLayers;                                      ///< number of layers
    6565  Int       m_scalabilityMask[MAX_VPS_NUM_SCALABILITY_TYPES]; ///< scalability_mask
    66   Char*     m_pBitstreamFile;                                 ///< output bitstream file
    67   Double    m_adLambdaModifier[ MAX_TLAYER ];                 ///< Lambda modifier array for each temporal layer
    68   // source specification
    69   UInt      m_FrameSkip;                                      ///< number of skipped frames from the beginning
    70   Int       m_framesToBeEncoded;                              ///< number of encoded frames
    7166#if AVC_BASE
    7267  Int       m_nonHEVCBaseLayerFlag;                           ///< non HEVC BL
     
    8883#else
    8984  Char*     m_pchInputFile;                                   ///< source file name
     85#endif
    9086  Char*     m_pchBitstreamFile;                               ///< output bitstream file
     87#if !SVC_EXTENSION
    9188  Char*     m_pchReconFile;                                   ///< output reconstruction file
     89#endif
    9290  Double    m_adLambdaModifier[ MAX_TLAYER ];                 ///< Lambda modifier array for each temporal layer
    9391  // source specification
     92#if !SVC_EXTENSION
    9493  Int       m_iFrameRate;                                     ///< source frame-rates (Hz)
     94#endif
    9595  UInt      m_FrameSkip;                                   ///< number of skipped frames from the beginning
     96#if !SVC_EXTENSION
    9697  Int       m_iSourceWidth;                                   ///< source width in pixel
    9798  Int       m_iSourceHeight;                                  ///< source height in pixel (when interlaced = field height)
     
    110111  Int       m_confWinTop;
    111112  Int       m_confWinBottom;
     113#endif
    112114  Int       m_framesToBeEncoded;                              ///< number of encoded frames
     115#if !SVC_EXTENSION
    113116  Int       m_aiPad[2];                                       ///< number of padded pixels for width and height
    114117#endif 
  • branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp

    r1356 r1366  
    16801680Void TAppEncTop::encode()
    16811681{
    1682   fstream bitstreamFile(m_pBitstreamFile, fstream::binary | fstream::out);
     1682  fstream bitstreamFile(m_pchBitstreamFile, fstream::binary | fstream::out);
    16831683  if (!bitstreamFile)
    16841684  {
    1685     fprintf(stderr, "\nfailed to open bitstream file `%s' for writing\n", m_pBitstreamFile);
     1685    fprintf(stderr, "\nfailed to open bitstream file `%s' for writing\n", m_pchBitstreamFile);
    16861686    exit(EXIT_FAILURE);
    16871687  }
  • 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.