Module codecs

Source
Expand description

The codec module provides the traits and support structures necessary to implement audio codec decoders.

Structs§

CodecDescriptor
A CodecDescriptor stores a description of a single logical codec. Common information such as the CodecType, a short name, and a long name are provided. The CodecDescriptor also provides an instantiation function. When the instantiation function is called, a Decoder for the codec is returned.
CodecParameters
Codec parameters stored in a container format’s headers and metadata may be passed to a codec using the CodecParameters structure.
CodecRegistry
A CodecRegistry allows the registration of codecs, and provides a method to instantiate a Decoder given a CodecParameters object.
CodecType
A CodecType is a unique identifier used to identify a specific codec.
DecoderOptions
DecoderOptions is a common set of options that all decoders use.
FinalizeResult
FinalizeResult contains optional information that can only be found, calculated, or determined after decoding is complete.

Enums§

VerificationCheck
A method and expected value to perform verification on the decoded audio.

Constants§

CODEC_TYPE_AAC
Advanced Audio Coding (AAC)
CODEC_TYPE_AC4
Dolby AC-4 (ETSI TS 103 190)
CODEC_TYPE_ADPCM_G722
G.722 ADPCM
CODEC_TYPE_ADPCM_G726
G.726 ADPCM
CODEC_TYPE_ADPCM_G726LE
G.726 ADPCM little-endian
CODEC_TYPE_ADPCM_IMA_QT
ADPCM IMA QuickTime
CODEC_TYPE_ADPCM_IMA_WAV
ADPCM IMA WAV
CODEC_TYPE_ADPCM_MS
Microsoft ADPCM
CODEC_TYPE_ALAC
Apple Lossless Audio Codec (ALAC)
CODEC_TYPE_ATRAC1
Adaptive Transform Acoustic Coding (ATRAC1)
CODEC_TYPE_ATRAC3
Adaptive Transform Acoustic Coding 3 (ATRAC3)
CODEC_TYPE_ATRAC9
Adaptive Transform Acoustic Coding 9 (ATRAC9)
CODEC_TYPE_ATRAC3PLUS
Adaptive Transform Acoustic Coding 3+ (ATRAC3+)
CODEC_TYPE_DCA
DTS Coherent Acoustics (DCA/DTS)
CODEC_TYPE_EAC3
AC-3, E-AC-3, Dolby Digital (ATSC A/52)
CODEC_TYPE_FLAC
Free Lossless Audio Codec (FLAC)
CODEC_TYPE_MONKEYS_AUDIO
Monkey’s Audio (APE)
CODEC_TYPE_MP1
MPEG Layer 1 (MP1)
CODEC_TYPE_MP2
MPEG Layer 2 (MP2)
CODEC_TYPE_MP3
MPEG Layer 3 (MP3)
CODEC_TYPE_MUSEPACK
Musepack
CODEC_TYPE_NULL
Null codec
CODEC_TYPE_OPUS
Opus
CODEC_TYPE_PCM_ALAW
PCM A-law (G.711)
CODEC_TYPE_PCM_F32BE
PCM 32-bit big-endian floating point interleaved
CODEC_TYPE_PCM_F32BE_PLANAR
PCM 32-bit big-endian floating point planar
CODEC_TYPE_PCM_F32LE
PCM 32-bit little-endian floating point interleaved
CODEC_TYPE_PCM_F32LE_PLANAR
PCM 32-bit little-endian floating point planar
CODEC_TYPE_PCM_F64BE
PCM 64-bit big-endian floating point interleaved
CODEC_TYPE_PCM_F64BE_PLANAR
PCM 64-bit big-endian floating point planar
CODEC_TYPE_PCM_F64LE
PCM 64-bit little-endian floating point interleaved
CODEC_TYPE_PCM_F64LE_PLANAR
PCM 64-bit little-endian floating point planar
CODEC_TYPE_PCM_MULAW
PCM Mu-law (G.711)
CODEC_TYPE_PCM_S8
PCM signed 8-bit interleaved
CODEC_TYPE_PCM_S8_PLANAR
PCM signed 8-bit planar
CODEC_TYPE_PCM_S16BE
PCM signed 16-bit big-endian interleaved
CODEC_TYPE_PCM_S16BE_PLANAR
PCM signed 16-bit big-endian planar
CODEC_TYPE_PCM_S16LE
PCM signed 16-bit little-endian interleaved
CODEC_TYPE_PCM_S16LE_PLANAR
PCM signed 16-bit little-endian planar
CODEC_TYPE_PCM_S24BE
PCM signed 24-bit big-endian interleaved
CODEC_TYPE_PCM_S24BE_PLANAR
PCM signed 24-bit big-endian planar
CODEC_TYPE_PCM_S24LE
PCM signed 24-bit little-endian interleaved
CODEC_TYPE_PCM_S24LE_PLANAR
PCM signed 24-bit little-endian planar
CODEC_TYPE_PCM_S32BE
PCM signed 32-bit big-endian interleaved
CODEC_TYPE_PCM_S32BE_PLANAR
PCM signed 32-bit big-endian planar
CODEC_TYPE_PCM_S32LE
PCM signed 32-bit little-endian interleaved
CODEC_TYPE_PCM_S32LE_PLANAR
PCM signed 32-bit little-endian planar
CODEC_TYPE_PCM_U8
PCM unsigned 8-bit interleaved
CODEC_TYPE_PCM_U8_PLANAR
PCM unsigned 8-bit planar
CODEC_TYPE_PCM_U16BE
PCM unsigned 16-bit big-endian interleaved
CODEC_TYPE_PCM_U16BE_PLANAR
PCM unsigned 16-bit big-endian planar
CODEC_TYPE_PCM_U16LE
PCM unsigned 16-bit little-endian interleaved
CODEC_TYPE_PCM_U16LE_PLANAR
PCM unsigned 16-bit little-endian planar
CODEC_TYPE_PCM_U24BE
PCM unsigned 24-bit big-endian interleaved
CODEC_TYPE_PCM_U24BE_PLANAR
PCM unsigned 24-bit big-endian planar
CODEC_TYPE_PCM_U24LE
PCM unsigned 24-bit little-endian interleaved
CODEC_TYPE_PCM_U24LE_PLANAR
PCM unsigned 24-bit little-endian planar
CODEC_TYPE_PCM_U32BE
PCM unsigned 32-bit big-endian interleaved
CODEC_TYPE_PCM_U32BE_PLANAR
PCM unsigned 32-bit big-endian planar
CODEC_TYPE_PCM_U32LE
PCM unsigned 32-bit little-endian interleaved
CODEC_TYPE_PCM_U32LE_PLANAR
PCM unsigned 32-bit little-endian planar
CODEC_TYPE_SPEEX
Speex
CODEC_TYPE_TTA
True Audio (TTA)
CODEC_TYPE_VORBIS
Vorbis
CODEC_TYPE_WAVPACK
WavPack
CODEC_TYPE_WMA
Windows Media Audio

Traits§

Decoder
A Decoder implements a codec’s decode algorithm. It consumes Packets and produces AudioBuffers.

Functions§

decl_codec_type
Declares a new CodecType given a character code. A character code is an ASCII string containing a maximum of 5 alphanumeric characters.