TSDuck v3.38-3699
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::HEVCAttributes Class Reference

Video attributes for HEVC / H.265. More...

#include <tsHEVCAttributes.h>

Inheritance diagram for ts::HEVCAttributes:
Collaboration diagram for ts::HEVCAttributes:

Public Member Functions

 HEVCAttributes ()=default
 Default constructor.
 
uint8_t chromaFormat () const
 Get chroma format.
 
UString chromaFormatName () const
 Get chroma format name.
 
size_t horizontalSize () const
 Get video horizontal size in pixels.
 
void invalidate ()
 Invalidate the content of this instance.
 
bool isValid () const
 Check if the values in the object are valid.
 
int level () const
 Get HEVC level.
 
UString levelName () const
 Get HEVC level name.
 
virtual bool moreBinaryData (const uint8_t *, size_t) override
 Provides an audio/video binary data to be analyzed by this instance.
 
int profile () const
 Get HEVC profile.
 
UString profileName () const
 Get HEVC profile name.
 
virtual UString toString () const override
 Convert to a string object.
 
size_t verticalSize () const
 Get video vertical size in pixels.
 

Protected Attributes

bool _is_valid = false
 A flag which indicates if the content of this object is valid.
 

Detailed Description

Video attributes for HEVC / H.265.

An HEVCAttributes object is built by transmitting HEVC access units (aka "NALunits"). The state of the object may change after adding a "sequence parameter set" NALunit. Initially, an HEVCAttributes object is invalid.

Member Function Documentation

◆ moreBinaryData()

virtual bool ts::HEVCAttributes::moreBinaryData ( const uint8_t *  addr,
size_t  size 
)
overridevirtual

Provides an audio/video binary data to be analyzed by this instance.

The type of data (complete PES payload or some type of "frame" or "access unit") depends on the type of audio/video.

Parameters
[in]addrAddress of data to be analyzed.
[in]sizeSize of data to be analyzed.
Returns
True if the attributes object becomes valid or has new values.

Implements ts::AbstractAudioVideoAttributes.

◆ toString()

virtual UString ts::HEVCAttributes::toString ( ) const
overridevirtual

Convert to a string object.

Returns
This object, converted as a string.

Implements ts::StringifyInterface.

◆ horizontalSize()

size_t ts::HEVCAttributes::horizontalSize ( ) const
inline

Get video horizontal size in pixels.

Returns
Video horizontal size in pixels.

◆ verticalSize()

size_t ts::HEVCAttributes::verticalSize ( ) const
inline

Get video vertical size in pixels.

Returns
Video vertical size in pixels.

◆ profile()

int ts::HEVCAttributes::profile ( ) const
inline

Get HEVC profile.

Returns
HEVC profile, 0 if unknown.

◆ profileName()

UString ts::HEVCAttributes::profileName ( ) const

Get HEVC profile name.

Returns
HEVC profile as a string.

◆ level()

int ts::HEVCAttributes::level ( ) const
inline

Get HEVC level.

Returns
HEVC level, 0 if unknown.

◆ levelName()

UString ts::HEVCAttributes::levelName ( ) const

Get HEVC level name.

Returns
HEVC level as a string.

◆ chromaFormat()

uint8_t ts::HEVCAttributes::chromaFormat ( ) const
inline

Get chroma format.

Returns
Chroma format, code values are CHROMA_* from tsMPEG.h, 0 if unknown.

◆ chromaFormatName()

UString ts::HEVCAttributes::chromaFormatName ( ) const

Get chroma format name.

Returns
Chroma format as a string.

◆ isValid()

bool ts::AbstractAudioVideoAttributes::isValid ( ) const
inlineinherited

Check if the values in the object are valid.

Returns
True if the values in the object are valid.

◆ invalidate()

void ts::AbstractAudioVideoAttributes::invalidate ( )
inlineinherited

Invalidate the content of this instance.

It must be rebuilt using audio/video binary data.

Member Data Documentation

◆ _is_valid

bool ts::AbstractAudioVideoAttributes::_is_valid = false
protectedinherited

A flag which indicates if the content of this object is valid.

It is the responsibility of the subclasses to set it.


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