oa::VideoMuxer

VideoMuxer class in the OA Vision public surface.

Public Methods

oa::Status oa::VideoMuxer::close()
oa::Status oa::VideoMuxer::finalize()
const VideoMuxerConfig & oa::VideoMuxer::getConfig()
oa::U32 oa::VideoMuxer::getPacketCount()
void oa::VideoMuxer::setAudioCodecConfig(oa::Span<const oa::U8> inCodecConfig)
void oa::VideoMuxer::setCodecConfig(const oa::Vector<oa::U8> & inSps, const oa::Vector<oa::U8> & inPps)
void oa::VideoMuxer::setCodecConfig(const oa::Vector<oa::U8> & inVps, const oa::Vector<oa::U8> & inSps, const oa::Vector<oa::U8> & inPps)
oa::Status oa::VideoMuxer::writeAudioPacket(const EncodedAudioPacket & inPacket)
oa::Status oa::VideoMuxer::writePacket(const EncodedVideoPacket & inFrame)

Static Public Methods

static oa::Result<VideoMuxer> oa::VideoMuxer::create(const VideoMuxerConfig & inConfig)

Constructor & Destructor Documentation

oa::VideoMuxer::VideoMuxer()
No public source comment is attached to this declaration.
void oa::VideoMuxer::~VideoMuxer()
No public source comment is attached to this declaration.

Public Method Documentation

oa::Status oa::VideoMuxer::close()
Closes the output without writing a movie trailer. call finalize() first when a playable container is required.

Returns

oa::Status

The declared return value.

oa::Status oa::VideoMuxer::finalize()
finalize the MP4 file (write moov box and flush).

Returns

oa::Status

The declared return value.

const VideoMuxerConfig & oa::VideoMuxer::getConfig()
No public source comment is attached to this declaration.

Returns

const VideoMuxerConfig &

The declared return value.

oa::U32 oa::VideoMuxer::getPacketCount()
No public source comment is attached to this declaration.

Returns

oa::U32

The declared return value.

void oa::VideoMuxer::setAudioCodecConfig( oa::Span<const oa::U8> inCodecConfig )
No public source comment is attached to this declaration.

Parameters

inCodecConfig
oa::Span<const oa::U8>

Returns

void

The declared return value.

void oa::VideoMuxer::setCodecConfig( const oa::Vector<oa::U8> & inSps, const oa::Vector<oa::U8> & inPps )
set AVC SPS/PPS data for the avcC decoder configuration box.

Parameters

inSps
const oa::Vector<oa::U8> &

inPps
const oa::Vector<oa::U8> &

Returns

void

The declared return value.

void oa::VideoMuxer::setCodecConfig( const oa::Vector<oa::U8> & inVps, const oa::Vector<oa::U8> & inSps, const oa::Vector<oa::U8> & inPps )
set HEVC VPS/SPS/PPS data for the hvcC decoder configuration box.

Parameters

inVps
const oa::Vector<oa::U8> &

inSps
const oa::Vector<oa::U8> &

inPps
const oa::Vector<oa::U8> &

Returns

void

The declared return value.

oa::Status oa::VideoMuxer::writeAudioPacket( const EncodedAudioPacket & inPacket )
No public source comment is attached to this declaration.

Parameters

inPacket
const EncodedAudioPacket &

Returns

oa::Status

The declared return value.

oa::Status oa::VideoMuxer::writePacket( const EncodedVideoPacket & inFrame )
Write an encoded packet to the muxer.

Parameters

inFrame
const EncodedVideoPacket &

Returns

oa::Status

The declared return value.

static oa::Result<VideoMuxer> oa::VideoMuxer::create( const VideoMuxerConfig & inConfig )
No public source comment is attached to this declaration.

Parameters

inConfig
const VideoMuxerConfig &

Returns

oa::Result<VideoMuxer>

The declared return value.