vdr 2.7.6
cH265Parser Class Reference

Public Member Functions

 cH265Parser (void)
 
virtual int Parse (const uchar *Data, int Length, int Pid) override
 
- Public Member Functions inherited from cH264Parser
 cH264Parser (void)
 
- Public Member Functions inherited from cFrameParser
 cFrameParser (void)
 
virtual ~cFrameParser ()
 
void SetDebug (bool Debug)
 
bool NewFrame (void)
 
bool IndependentFrame (void)
 
int IFrameTemporalReferenceOffset (void)
 
uint16_t FrameWidth (void)
 
uint16_t FrameHeight (void)
 
double FramesPerSecond (void)
 
eScanType ScanType (void)
 
eAspectRatio AspectRatio (void)
 

Private Types

enum  eNalUnitType {
  nutSliceSegmentTrailingN = 0 , nutSliceSegmentTrailingR = 1 , nutSliceSegmentTSAN = 2 , nutSliceSegmentTSAR = 3 ,
  nutSliceSegmentSTSAN = 4 , nutSliceSegmentSTSAR = 5 , nutSliceSegmentRADLN = 6 , nutSliceSegmentRADLR = 7 ,
  nutSliceSegmentRASLN = 8 , nutSliceSegmentRASLR = 9 , nutSliceSegmentBLAWLP = 16 , nutSliceSegmentBLAWRADL = 17 ,
  nutSliceSegmentBLANLP = 18 , nutSliceSegmentIDRWRADL = 19 , nutSliceSegmentIDRNLP = 20 , nutSliceSegmentCRANUT = 21 ,
  nutVideoParameterSet = 32 , nutSequenceParameterSet = 33 , nutPictureParameterSet = 34 , nutAccessUnitDelimiter = 35 ,
  nutEndOfSequence = 36 , nutEndOfBitstream = 37 , nutFillerData = 38 , nutPrefixSEI = 39 ,
  nutSuffixSEI = 40 , nutNonVCLRes0 = 41 , nutNonVCLRes3 = 44 , nutUnspecified0 = 48 ,
  nutUnspecified7 = 55
}
 

Private Member Functions

void ParseSequenceParameterSet (void)
 

Additional Inherited Members

- Protected Member Functions inherited from cH264Parser
uchar GetByte (bool Raw=false)
 
uchar GetBit (void)
 
uint32_t GetBits (int Bits)
 
uint32_t GetGolombUe (void)
 
int32_t GetGolombSe (void)
 
void ParseAccessUnitDelimiter (void)
 
void ParseSequenceParameterSet (void)
 
void ParseSliceHeader (void)
 
- Protected Attributes inherited from cH264Parser
cTsPayload tsPayload
 
uint32_t scanner
 
bool gotAccessUnitDelimiter
 
bool gotSequenceParameterSet
 
- Protected Attributes inherited from cFrameParser
bool debug
 
bool newFrame
 
bool independentFrame
 
int iFrameTemporalReferenceOffset
 
uint16_t frameWidth
 
uint16_t frameHeight
 
double framesPerSecond
 
eScanType scanType
 
eAspectRatio aspectRatio
 

Detailed Description

Definition at line 1664 of file remux.c.

Member Enumeration Documentation

◆ eNalUnitType

Enumerator
nutSliceSegmentTrailingN 
nutSliceSegmentTrailingR 
nutSliceSegmentTSAN 
nutSliceSegmentTSAR 
nutSliceSegmentSTSAN 
nutSliceSegmentSTSAR 
nutSliceSegmentRADLN 
nutSliceSegmentRADLR 
nutSliceSegmentRASLN 
nutSliceSegmentRASLR 
nutSliceSegmentBLAWLP 
nutSliceSegmentBLAWRADL 
nutSliceSegmentBLANLP 
nutSliceSegmentIDRWRADL 
nutSliceSegmentIDRNLP 
nutSliceSegmentCRANUT 
nutVideoParameterSet 
nutSequenceParameterSet 
nutPictureParameterSet 
nutAccessUnitDelimiter 
nutEndOfSequence 
nutEndOfBitstream 
nutFillerData 
nutPrefixSEI 
nutSuffixSEI 
nutNonVCLRes0 
nutNonVCLRes3 
nutUnspecified0 
nutUnspecified7 

Definition at line 1666 of file remux.c.

Constructor & Destructor Documentation

◆ cH265Parser()

cH265Parser::cH265Parser ( void )

Definition at line 1703 of file remux.c.

References cH264Parser::cH264Parser().

Member Function Documentation

◆ Parse()

int cH265Parser::Parse ( const uchar * Data,
int Length,
int Pid )
overridevirtual

Parses the given Data, which is a sequence of Length bytes of TS packets.

The payload in the TS packets with the given Pid is searched for just enough information to determine the beginning and type of the next video frame. Returns the number of bytes parsed. Upon return, the functions NewFrame() and IndependentFrame() can be called to retrieve the required information.

Reimplemented from cH264Parser.

Definition at line 1708 of file remux.c.

References EMPTY_SCANNER, cFrameParser::frameWidth, cH264Parser::GetBit(), cH264Parser::GetByte(), cH264Parser::gotSequenceParameterSet, cFrameParser::independentFrame, cFrameParser::newFrame, nutSequenceParameterSet, nutSliceSegmentBLAWLP, nutSliceSegmentCRANUT, nutSliceSegmentIDRNLP, nutSliceSegmentIDRWRADL, nutSliceSegmentRASLR, ParseSequenceParameterSet(), cH264Parser::scanner, cH264Parser::tsPayload, and TsPayloadStart().

◆ ParseSequenceParameterSet()


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