HEVC Test Model (HM)  HM-16.3
Public Member Functions | Private Attributes | List of all members

decoder class More...

#include <TDecTop.h>

Collaboration diagram for TDecTop:
Collaboration graph
[legend]

Public Member Functions

Void setDecodedPictureHashSEIEnabled (Int enabled)
 
Bool getNoOutputPriorPicsFlag ()
 
Void setNoOutputPriorPicsFlag (Bool val)
 
Void setFirstSliceInPicture (bool val)
 
Bool getFirstSliceInSequence ()
 
Void setFirstSliceInSequence (bool val)
 
Void setDecodedSEIMessageOutputStream (std::ostream *pOpStream)
 

Private Attributes

Int m_iMaxRefPicNum
 
NalUnitType m_associatedIRAPType
 NAL unit type of the associated IRAP picture. More...
 
Int m_pocCRA
 POC number of the latest CRA picture. More...
 
Int m_pocRandomAccess
 POC number of the random access point (the first IDR or CRA picture) More...
 
TComList< TComPic * > m_cListPic
 
ParameterSetManager m_parameterSetManager
 
TComSlicem_apcSlicePilot
 
SEIMessages m_SEIs
 List of SEI messages that have been received before the first slice and between slices. More...
 
TComPrediction m_cPrediction
 
TComTrQuant m_cTrQuant
 
TDecGop m_cGopDecoder
 
TDecSlice m_cSliceDecoder
 
TDecCu m_cCuDecoder
 
TDecEntropy m_cEntropyDecoder
 
TDecCavlc m_cCavlcDecoder
 
TDecSbac m_cSbacDecoder
 
TDecBinCABAC m_cBinCABAC
 
SEIReader m_seiReader
 
TComLoopFilter m_cLoopFilter
 
TComSampleAdaptiveOffset m_cSAO
 
TComPicm_pcPic
 
UInt m_uiSliceIdx
 
Int m_prevPOC
 
Bool m_bFirstSliceInPicture
 
Bool m_bFirstSliceInSequence
 
Bool m_prevSliceSkipped
 
Int m_skippedPOC
 
Bool m_bFirstSliceInBitstream
 
Int m_lastPOCNoOutputPriorPics
 
Bool m_isNoOutputPriorPics
 
Bool m_craNoRaslOutputFlag
 
std::ostream * m_pDecodedSEIOutputStream
 
Bool isSkipPictureForBLA (Int &iPOCLastDisplay)
 
Bool isRandomAccessSkipPicture (Int &iSkipFrame, Int &iPOCLastDisplay)
 
 TDecTop ()
 
virtual ~TDecTop ()
 
Void create ()
 
Void destroy ()
 
Void init ()
 
Bool decode (InputNALUnit &nalu, Int &iSkipFrame, Int &iPOCLastDisplay)
 
Void deletePicBuffer ()
 
Void executeLoopFilters (Int &poc, TComList< TComPic * > *&rpcListPic)
 
Void checkNoOutputPriorPics (TComList< TComPic * > *rpcListPic)
 
Void xGetNewPicBuffer (const TComSPS &sps, const TComPPS &pps, TComPic *&rpcPic, const UInt temporalLayer)
 
Void xCreateLostPicture (Int iLostPOC)
 
Void xActivateParameterSets ()
 
Bool xDecodeSlice (InputNALUnit &nalu, Int &iSkipFrame, Int iPOCLastDisplay)
 
Void xDecodeVPS (const std::vector< UChar > *pNaluData)
 
Void xDecodeSPS (const std::vector< UChar > *pNaluData)
 
Void xDecodePPS (const std::vector< UChar > *pNaluData)
 
Void xDecodeSEI (TComInputBitstream *bs, const NalUnitType nalUnitType)
 

Detailed Description

decoder class

Definition at line 65 of file TDecTop.h.

Constructor & Destructor Documentation

TDecTop::~TDecTop ( )
virtual

Definition at line 74 of file TDecTop.cpp.

Member Function Documentation

Void TDecTop::checkNoOutputPriorPics ( TComList< TComPic * > *  rpcListPic)

Definition at line 202 of file TDecTop.cpp.

Void TDecTop::create ( )

Definition at line 84 of file TDecTop.cpp.

Bool TDecTop::decode ( InputNALUnit nalu,
Int iSkipFrame,
Int iPOCLastDisplay 
)

Definition at line 684 of file TDecTop.cpp.

Void TDecTop::deletePicBuffer ( )

Definition at line 110 of file TDecTop.cpp.

Void TDecTop::destroy ( )

Definition at line 91 of file TDecTop.cpp.

Void TDecTop::executeLoopFilters ( Int poc,
TComList< TComPic * > *&  rpcListPic 
)

Definition at line 179 of file TDecTop.cpp.

Bool TDecTop::getFirstSliceInSequence ( )
inline

Definition at line 132 of file TDecTop.h.

Bool TDecTop::getNoOutputPriorPicsFlag ( )
inline

Definition at line 129 of file TDecTop.h.

Void TDecTop::init ( )

Definition at line 101 of file TDecTop.cpp.

Bool TDecTop::isRandomAccessSkipPicture ( Int iSkipFrame,
Int iPOCLastDisplay 
)
private

Function for checking if picture should be skipped because of random access

Parameters
iSkipFrameskip frame counter
iPOCLastDisplayPOC of last picture displayed
Returns
true if the picture shold be skipped in the random access. This function checks the skipping of pictures in the case of -s option random access. All pictures prior to the random access point indicated by the counter iSkipFrame are skipped. It also checks the type of Nal unit type at the random access point. If the random access point is CRA/CRANT/BLA/BLANT, TFD pictures with POC less than the POC of the random access point are skipped. If the random access point is IDR all pictures after the random access point are decoded. If the random access point is none of the above, a warning is issues, and decoding of pictures with POC equal to or greater than the random access point POC is attempted. For non IDR/CRA/BLA random access point there is no guarantee that the decoder will not crash.

Definition at line 846 of file TDecTop.cpp.

Bool TDecTop::isSkipPictureForBLA ( Int iPOCLastDisplay)
private

Function for checking if picture should be skipped because of association with a previous BLA picture

Parameters
iPOCLastDisplayPOC of last picture displayed
Returns
true if the picture should be skipped This function skips all TFD pictures that follow a BLA picture in decoding order and precede it in output order.

Definition at line 822 of file TDecTop.cpp.

Void TDecTop::setDecodedPictureHashSEIEnabled ( Int  enabled)
inline

Definition at line 119 of file TDecTop.h.

Void TDecTop::setDecodedSEIMessageOutputStream ( std::ostream *  pOpStream)
inline

Definition at line 137 of file TDecTop.h.

Void TDecTop::setFirstSliceInPicture ( bool  val)
inline

Definition at line 131 of file TDecTop.h.

Void TDecTop::setFirstSliceInSequence ( bool  val)
inline

Definition at line 133 of file TDecTop.h.

Void TDecTop::setNoOutputPriorPicsFlag ( Bool  val)
inline

Definition at line 130 of file TDecTop.h.

Void TDecTop::xActivateParameterSets ( )
protected

Definition at line 265 of file TDecTop.cpp.

Void TDecTop::xCreateLostPicture ( Int  iLostPOC)
protected

Definition at line 221 of file TDecTop.cpp.

Void TDecTop::xDecodePPS ( const std::vector< UChar > *  pNaluData)
protected

Definition at line 654 of file TDecTop.cpp.

Void TDecTop::xDecodeSEI ( TComInputBitstream bs,
const NalUnitType  nalUnitType 
)
protected

Definition at line 661 of file TDecTop.cpp.

Bool TDecTop::xDecodeSlice ( InputNALUnit nalu,
Int iSkipFrame,
Int  iPOCLastDisplay 
)
protected

Definition at line 383 of file TDecTop.cpp.

Void TDecTop::xDecodeSPS ( const std::vector< UChar > *  pNaluData)
protected

Definition at line 644 of file TDecTop.cpp.

Void TDecTop::xDecodeVPS ( const std::vector< UChar > *  pNaluData)
protected

Definition at line 636 of file TDecTop.cpp.

Void TDecTop::xGetNewPicBuffer ( const TComSPS sps,
const TComPPS pps,
TComPic *&  rpcPic,
const UInt  temporalLayer 
)
protected

Definition at line 132 of file TDecTop.cpp.

Member Data Documentation

TComSlice* TDecTop::m_apcSlicePilot
private

Definition at line 76 of file TDecTop.h.

NalUnitType TDecTop::m_associatedIRAPType
private

NAL unit type of the associated IRAP picture.

Definition at line 70 of file TDecTop.h.

Bool TDecTop::m_bFirstSliceInBitstream
private

Definition at line 103 of file TDecTop.h.

Bool TDecTop::m_bFirstSliceInPicture
private

Definition at line 99 of file TDecTop.h.

Bool TDecTop::m_bFirstSliceInSequence
private

Definition at line 100 of file TDecTop.h.

TDecBinCABAC TDecTop::m_cBinCABAC
private

Definition at line 89 of file TDecTop.h.

TDecCavlc TDecTop::m_cCavlcDecoder
private

Definition at line 87 of file TDecTop.h.

TDecCu TDecTop::m_cCuDecoder
private

Definition at line 85 of file TDecTop.h.

TDecEntropy TDecTop::m_cEntropyDecoder
private

Definition at line 86 of file TDecTop.h.

TDecGop TDecTop::m_cGopDecoder
private

Definition at line 83 of file TDecTop.h.

TComList<TComPic*> TDecTop::m_cListPic
private

Definition at line 74 of file TDecTop.h.

TComLoopFilter TDecTop::m_cLoopFilter
private

Definition at line 91 of file TDecTop.h.

TComPrediction TDecTop::m_cPrediction
private

Definition at line 81 of file TDecTop.h.

Bool TDecTop::m_craNoRaslOutputFlag
private

Definition at line 106 of file TDecTop.h.

TComSampleAdaptiveOffset TDecTop::m_cSAO
private

Definition at line 92 of file TDecTop.h.

TDecSbac TDecTop::m_cSbacDecoder
private

Definition at line 88 of file TDecTop.h.

TDecSlice TDecTop::m_cSliceDecoder
private

Definition at line 84 of file TDecTop.h.

TComTrQuant TDecTop::m_cTrQuant
private

Definition at line 82 of file TDecTop.h.

Int TDecTop::m_iMaxRefPicNum
private

Definition at line 68 of file TDecTop.h.

Bool TDecTop::m_isNoOutputPriorPics
private

Definition at line 105 of file TDecTop.h.

Int TDecTop::m_lastPOCNoOutputPriorPics
private

Definition at line 104 of file TDecTop.h.

ParameterSetManager TDecTop::m_parameterSetManager
private

Definition at line 75 of file TDecTop.h.

TComPic* TDecTop::m_pcPic
private

Definition at line 96 of file TDecTop.h.

std::ostream* TDecTop::m_pDecodedSEIOutputStream
private

Definition at line 110 of file TDecTop.h.

Int TDecTop::m_pocCRA
private

POC number of the latest CRA picture.

Definition at line 71 of file TDecTop.h.

Int TDecTop::m_pocRandomAccess
private

POC number of the random access point (the first IDR or CRA picture)

Definition at line 72 of file TDecTop.h.

Int TDecTop::m_prevPOC
private

Definition at line 98 of file TDecTop.h.

Bool TDecTop::m_prevSliceSkipped
private

Definition at line 101 of file TDecTop.h.

SEIReader TDecTop::m_seiReader
private

Definition at line 90 of file TDecTop.h.

SEIMessages TDecTop::m_SEIs
private

List of SEI messages that have been received before the first slice and between slices.

Definition at line 78 of file TDecTop.h.

Int TDecTop::m_skippedPOC
private

Definition at line 102 of file TDecTop.h.

UInt TDecTop::m_uiSliceIdx
private

Definition at line 97 of file TDecTop.h.


The documentation for this class was generated from the following files: