[][src]Struct fdk_aac_sys::CStreamInfo

#[repr(C)]pub struct CStreamInfo {
    pub sampleRate: INT,
    pub frameSize: INT,
    pub numChannels: INT,
    pub pChannelType: *mut AUDIO_CHANNEL_TYPE,
    pub pChannelIndices: *mut UCHAR,
    pub aacSampleRate: INT,
    pub profile: INT,
    pub aot: AUDIO_OBJECT_TYPE,
    pub channelConfig: INT,
    pub bitRate: INT,
    pub aacSamplesPerFrame: INT,
    pub aacNumChannels: INT,
    pub extAot: AUDIO_OBJECT_TYPE,
    pub extSamplingRate: INT,
    pub outputDelay: UINT,
    pub flags: UINT,
    pub epConfig: SCHAR,
    pub numLostAccessUnits: INT,
    pub numTotalBytes: INT64,
    pub numBadBytes: INT64,
    pub numTotalAccessUnits: INT64,
    pub numBadAccessUnits: INT64,
    pub drcProgRefLev: SCHAR,
    pub drcPresMode: SCHAR,
}

\brief This structure gives information about the currently decoded audio data. All fields are read-only.

Fields

sampleRate: INT

< The sample rate in Hz of the decoded PCM audio signal.

frameSize: INT

< The frame size of the decoded PCM audio signal. \n Typically this is: \n 1024 or 960 for AAC-LC \n 2048 or 1920 for HE-AAC (v2) \n 512 or 480 for AAC-LD and AAC-ELD \n 768, 1024, 2048 or 4096 for USAC

numChannels: INT

< The number of output audio channels before the rendering module, i.e. the original channel configuration.

pChannelType: *mut AUDIO_CHANNEL_TYPE

< Audio channel type of each output audio channel.

pChannelIndices: *mut UCHAR

< Audio channel index for each output audio channel. See ISO/IEC 13818-7:2005(E), 8.5.3.2 Explicit channel mapping using a program_config_element()

aacSampleRate: INT

< Sampling rate in Hz without SBR (from configuration info) divided by a (ELD) downscale factor if present.

profile: INT

< MPEG-2 profile (from file header) (-1: not applicable (e. g. MPEG-4)).

aot: AUDIO_OBJECT_TYPE

< Audio Object Type (from ASC): is set to the appropriate value for MPEG-2 bitstreams (e. g. 2 for AAC-LC).

channelConfig: INT

< Channel configuration (0: PCE defined, 1: mono, 2: stereo, ...

bitRate: INT

< Instantaneous bit rate.

aacSamplesPerFrame: INT

< Samples per frame for the AAC core (from ASC) divided by a (ELD) downscale factor if present. \n Typically this is (with a downscale factor of 1): \n 1024 or 960 for AAC-LC \n 512 or 480 for AAC-LD and AAC-ELD

aacNumChannels: INT

< The number of audio channels after AAC core processing (before PS or MPS processing). CAUTION: This are not the final number of output channels!

extAot: AUDIO_OBJECT_TYPE

< Extension Audio Object Type (from ASC)

extSamplingRate: INT

< Extension sampling rate in Hz (from ASC) divided by a (ELD) downscale factor if present.

outputDelay: UINT

< The number of samples the output is additionally delayed by.the decoder.

flags: UINT

< Copy of internal flags. Only to be written by the decoder, and only to be read externally.

epConfig: SCHAR

< epConfig level (from ASC): only level 0 supported, -1 means no ER (e. g. AOT=2, MPEG-2 AAC, etc.)

numLostAccessUnits: INT

< This integer will reflect the estimated amount of lost access units in case aacDecoder_DecodeFrame() returns AAC_DEC_TRANSPORT_SYNC_ERROR. It will be < 0 if the estimation failed.

numTotalBytes: INT64

< This is the number of total bytes that have passed through the decoder.

numBadBytes: INT64

< This is the number of total bytes that were considered with errors from numTotalBytes.

numTotalAccessUnits: INT64

< This is the number of total access units that have passed through the decoder.

numBadAccessUnits: INT64

< This is the number of total access units that were considered with errors from numTotalBytes.

drcProgRefLev: SCHAR

< DRC program reference level. Defines the reference level below full-scale. It is quantized in steps of 0.25dB. The valid values range from 0 (0 dBFS) to 127 (-31.75 dBFS). It is used to reflect the average loudness of the audio in LKFS according to ITU-R BS 1770. If no level has been found in the bitstream the value is -1.

drcPresMode: SCHAR

< DRC presentation mode. According to ETSI TS 101 154, this field indicates whether light (MPEG-4 Dynamic Range Control tool) or heavy compression (DVB heavy compression) dynamic range control shall take priority on the outputs. For details, see ETSI TS 101 154, table C.33. Possible values are: \n -1: No corresponding metadata found in the bitstream \n 0: DRC presentation mode not indicated \n 1: DRC presentation mode 1 \n 2: DRC presentation mode 2 \n 3: Reserved

Trait Implementations

impl Clone for CStreamInfo[src]

impl Copy for CStreamInfo[src]

impl Debug for CStreamInfo[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.