Changeset 928 in SHVCSoftware for branches/SHM-upgrade/source/Lib/TLibDecoder


Ignore:
Timestamp:
16 Dec 2014, 19:17:49 (10 years ago)
Author:
seregin
Message:

Port rev 924: in order to generate the metadata related to conformance bitstreams, patch was provided by Ramasubramonian, Adarsh Krishnan <aramasub@…>

Location:
branches/SHM-upgrade/source/Lib/TLibDecoder
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-upgrade/source/Lib/TLibDecoder/TDecGop.cpp

    r921 r928  
    4545#if SVC_EXTENSION
    4646#include "TDecTop.h"
     47#if CONFORMANCE_BITSTREAM_MODE
     48#include <algorithm>
     49#endif
    4750#endif
    4851
     
    5053
    5154extern Bool g_md5_mismatch; ///< top level flag to signal when there is a decode problem
     55
     56#if CONFORMANCE_BITSTREAM_MODE
     57Bool pocCompareFunction( TComPic &pic1, TComPic &pic2 )
     58{
     59  return (pic1.getPOC() < pic2.getPOC());
     60}
     61#endif
    5262
    5363//! \ingroup TLibDecoder
     
    241251    calcAndPrintHashStatus(*(pcPic->getPicYuvRec()), hash);
    242252  }
     253#if CONFORMANCE_BITSTREAM_MODE
     254  if( this->getLayerDec(pcPic->getLayerId())->getConfModeFlag() )
     255  {
     256    // Add this reconstructed picture to the parallel buffer.
     257    std::vector<TComPic> *thisLayerBuffer = (this->getLayerDec(pcPic->getLayerId()))->getConfListPic();
     258    thisLayerBuffer->push_back(*pcPic);
     259    std::sort( thisLayerBuffer->begin(), thisLayerBuffer->end(), pocCompareFunction );
     260  }
     261#endif
    243262#if Q0074_COLOUR_REMAPPING_SEI
    244263  if (m_colourRemapSEIEnabled)
  • branches/SHM-upgrade/source/Lib/TLibDecoder/TDecTop.cpp

    r916 r928  
    129129  m_pocDecrementedInDPBFlag = false;
    130130#endif
     131#if CONFORMANCE_BITSTREAM_MODE
     132  m_confModeFlag = false;
     133#endif
    131134}
    132135
     
    29602963  {
    29612964    // Check if the target decoded layer is the highest layer in the list
     2965#if !CONFORMANCE_BITSTREAM_MODE
    29622966    assert( params->getTargetOutputLayerSetIdx() < vps->getNumLayerSets() );
     2967#endif
    29632968    Int layerSetIdx = vps->getOutputLayerSetIdx( params->getTargetOutputLayerSetIdx() );  // Index to the layer set
     2969#if !CONFORMANCE_BITSTREAM_MODE
    29642970    assert( params->getTargetLayerId() == vps->getNumLayersInIdList( layerSetIdx ) - 1);
     2971#endif
    29652972
    29662973    Bool layerSetMatchFlag = true;
  • branches/SHM-upgrade/source/Lib/TLibDecoder/TDecTop.h

    r916 r928  
    170170                                           // When new VPS is activated, this should be re-initialized to -1
    171171#endif
     172#if CONFORMANCE_BITSTREAM_MODE
     173  Bool m_confModeFlag;
     174  std::vector<TComPic>   m_confListPic;         //  Dynamic buffer for storing pictures for conformance purposes
     175#endif
    172176public:
    173177#if POC_RESET_RESTRICTIONS
     
    304308  Void assignSubDpbs(TComVPS *vps);
    305309#endif
     310#if CONFORMANCE_BITSTREAM_MODE
     311  std::vector<TComPic>* getConfListPic() {return &m_confListPic; }
     312  // std::string const getDecodedYuvLayerFileName(Int layerId) { return m_decodedYuvLayerFileName[layerId]; }
     313  Bool const getConfModeFlag() { return m_confModeFlag; }
     314  Void setConfModeFlag(Bool x) { m_confModeFlag = x; }
     315#endif
    306316#endif //SVC_EXTENSION
    307317
Note: See TracChangeset for help on using the changeset viewer.