diff options
author | Jean-Michel Trivi <jmtrivi@google.com> | 2014-05-20 17:29:03 -0700 |
---|---|---|
committer | Jean-Michel Trivi <jmtrivi@google.com> | 2014-05-20 17:29:03 -0700 |
commit | 8e087bf394c5ceddcdb8b1d029795aff3026eea0 (patch) | |
tree | e280804f0e5c2f36d575f430b7f897b1b0b5bc06 /libAACdec/include | |
parent | af967fcc55656a0d3c2a05982713f1ca43c1252b (diff) | |
download | fdk-aac-8e087bf394c5ceddcdb8b1d029795aff3026eea0.tar.gz fdk-aac-8e087bf394c5ceddcdb8b1d029795aff3026eea0.tar.bz2 fdk-aac-8e087bf394c5ceddcdb8b1d029795aff3026eea0.zip |
AAC-Decoder: DRC metadata in stream info
Provide relevant DRC metadata information via API needed for DRC
presentation mode wrapper.
Bug 9428126
Change-Id: I827cd6bdfd2a8799c21935ae32af23739c90a9b6
Diffstat (limited to 'libAACdec/include')
-rw-r--r-- | libAACdec/include/aacdecoder_lib.h | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/libAACdec/include/aacdecoder_lib.h b/libAACdec/include/aacdecoder_lib.h index bf6dcfb..a0c0854 100644 --- a/libAACdec/include/aacdecoder_lib.h +++ b/libAACdec/include/aacdecoder_lib.h @@ -144,10 +144,9 @@ to allocate memory for the required structures, and the corresponding mpegFileRe files and to de-allocate associated structures. mpegFileRead_Open() tries to detect the bitstream format and in case of MPEG-4 file format or Raw Packets file format (a Fraunhofer IIS proprietary format) reads the Audio Specific Config data (ASC). An unsuccessful attempt to recognize the bitstream format requires the user to -provide this information manually (see \ref CommandLineUsage). For any other bitstream formats that are -usually applicable in streaming applications, the decoder itself will try to synchronize and parse the given -bitstream fragment using the FDK transport library. Hence, for streaming applications (without file access) -this step is not necessary. +provide this information manually. For any other bitstream formats that are usually applicable in streaming +applications, the decoder itself will try to synchronize and parse the given bitstream fragment using the +FDK transport library. Hence, for streaming applications (without file access) this step is not necessary. -# Call aacDecoder_Open() to open and retrieve a handle to a new AAC decoder instance. \dontinclude main.cpp @@ -571,10 +570,25 @@ typedef struct UINT numTotalAccessUnits; /*!< This is the number of total access units that have passed through the decoder. */ UINT numBadAccessUnits; /*!< This is the number of total access units that were considered with errors from numTotalBytes. */ + /* Metadata */ + SCHAR drcProgRefLev; /*!< 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 accoring to ITU-R BS 1770. + If no level has been found in the bitstream the value is -1. */ + SCHAR drcPresMode; /*!< 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 */ + } CStreamInfo; -typedef struct AAC_DECODER_INSTANCE *HANDLE_AACDECODER; +typedef struct AAC_DECODER_INSTANCE *HANDLE_AACDECODER; /*!< Pointer to a AAC decoder instance. */ #ifdef __cplusplus extern "C" |