Audio Elementary Stream

This module contains elements for handling ISO/IEC 11172-3 audio streams.

Loadable Module Properties

Module Name Streamer Elementary Stream Elements
File Name libeselements.so
Class Count3

Element Quick Index

ES Audio Clock Reference Element, ES Audio Stream Info Decoder Element, ES Audio Layer Filter Element.

Typical Audio Elementary Stream pipeline.

General Framing Requirents

The audio elementary stream must be aligned to segment boundaries as described in the Framing Element section.

ES Audio Clock Reference Element

The ES Audio Clock Reference element determines a stream clock reference from the sample rate of the encoded audio.

Class Properties

Name ES Audio Clock Reference Descriptor
Version1
Interface Name IElementDescriptor
BindingC++

Element Descriptor

Name ES Audio Clock Reference
TypeIntermediate
Priority500
Input Formats MPEG-1/Audio Elementary Stream
Output Formats MPEG-1/Audio Elementary Stream
Trait ClockReference

Metadata

The element immediately recommits all metadata to its output pad.

Theory of Operation

The element calculates a stream clock reference for each ISO/IEC 11172-3 audio frame in the stream and reports it to the Streamer using the IStreamClock interface. The clock reference is deduced from the sampling_frequency field of the audio header structure.

ES Audio Stream Info Decoder Element

The ES Audio Stream Info Decoder element decodes meta information such as sample rate and number of channels in the audio stream.

Class Properties

Name ES Audio Stream Info Decoder Descriptor
Version1
Interface Name IElementDescriptor
Binding C++

Element Descriptor

Name ES Audio Stream Info Decoder
TypeIntermediate
Priority500
Input Formats MPEG-1/Audio Elementary Stream
Output Formats MPEG-1/Audio Elementary Stream

Metadata

Key Input Output
_AudioStreamList ProducedCommitted
_AudioStreamInfo ProducedCommitted
_AudioComponentFlagProducedCommitted
_VideoComponentFlagProducedCommitted
_ActiveAudioStreamProducedCommitted

Theory of Operation

The element deduces the sample rate from the sampling_frequency field and the number of channels from the mode field of the ISO/IEC 11172-3 header structure. It reports this information by writing the _AudioStreamInfo paramter on the blackboard and comitting _AudioStreamList metadata. The _AudioStreamInfo and _AudioStreamList parameters are described in greater detail in the Complex Metadata section.

The element also commits _AudioComponentFlag with the string value true and _VideoComponentFlag with the string value false.

ES Audio Layer Filter Element

The ES Audio Layer Filter element examines the encoding of the audio stream and opens an output pad with the appropriate format.

Class Properties

Name ES Audio Layer Filter Descriptor
Version1
Interface Name IElementDescriptor
BindingC++

Element Descriptor

Name ES Audio Layer Filter
TypeIntermediate
Priority500
Input Formats MPEG-1/Audio Elementary Stream
Output Formats MPEG-1/Audio Elementary Stream/Layer[1|2|3]

Metadata

The element immediately recommits all metadata to each output pad.

Theory of Operation

The element examines the Layer field of the audio frame header structure and opens an output pad for that format.