TSDuck v3.46-4930
MPEG Transport Stream Toolkit
Loading...
Searching...
No Matches
ts::AVCAttributes Class Reference

#include <tsAVCAttributes.h>

Inheritance diagram for ts::AVCAttributes:
Collaboration diagram for ts::AVCAttributes:

Public Member Functions

 AVCAttributes ()=default
uint8_t chromaFormat () const
UString chromaFormatName () const
size_t horizontalSize () const
void invalidate ()
bool isValid () const
int level () const
UString levelName () const
virtual bool moreBinaryData (const uint8_t *, size_t) override
int profile () const
UString profileName () const
virtual UString toString () const override
size_t verticalSize () const

Protected Attributes

bool _is_valid = false

Detailed Description

Video attributes for Advanced Video Coding.

AVC is Advanced Video Coding, ISO 14496-10, ITU H.264.

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

Constructor & Destructor Documentation

◆ AVCAttributes()

ts::AVCAttributes::AVCAttributes ( )
default

Default constructor.

Member Function Documentation

◆ moreBinaryData()

virtual bool ts::AVCAttributes::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::AVCAttributes::toString ( ) const
overridevirtual

Convert to a string object.

Returns
This object, converted as a string.

Implements ts::StringifyInterface.

◆ horizontalSize()

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

Get video horizontal size in pixels.

Returns
Video horizontal size in pixels.

◆ verticalSize()

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

Get video vertical size in pixels.

Returns
Video vertical size in pixels.

◆ profile()

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

Get AVC profile.

Returns
AVC profile, 0 if unknown.

◆ profileName()

UString ts::AVCAttributes::profileName ( ) const

Get AVC profile name.

Returns
AVC profile as a string.

◆ level()

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

Get AVC level.

Returns
AVC level, 0 if unknown.

◆ levelName()

UString ts::AVCAttributes::levelName ( ) const

Get AVC level name.

Returns
AVC level as a string.

◆ chromaFormat()

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

Get chroma format.

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

◆ chromaFormatName()

UString ts::AVCAttributes::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: