summaryrefslogtreecommitdiffstats
path: root/libAACenc/include/aacenc_lib.h
diff options
context:
space:
mode:
authorJean-Michel Trivi <jmtrivi@google.com>2013-08-29 15:17:49 -0700
committerJean-Michel Trivi <jmtrivi@google.com>2013-09-03 11:44:33 -0700
commit9f455bea1c38f7275a65ab79be2d41a34428fb8b (patch)
tree7421f0722c4970d0b463ebcc8499dd6e8652f48a /libAACenc/include/aacenc_lib.h
parentdbf96806482b2c48de4ba1da9a03e2bb7516b8c2 (diff)
downloadfdk-aac-9f455bea1c38f7275a65ab79be2d41a34428fb8b.tar.gz
fdk-aac-9f455bea1c38f7275a65ab79be2d41a34428fb8b.tar.bz2
fdk-aac-9f455bea1c38f7275a65ab79be2d41a34428fb8b.zip
Encoder ELD auto configurator
* AAC-Encoder - Introduce ELD auto configurator to get predefined configuration at given bitrate and sampling rate. The configurator selects SBR on/off and if SBR enabled distinguishes between dualrate and downsampled SBR. In default configuration the ELD auto configurator is enabled. Modified file(s): libAACenc\include\aacenc_lib.h libAACenc\src\aacenc_lib.cpp Bug 9428126 Change-Id: I01acc9c37e57c4154b3a818d496d538b7f8b227d
Diffstat (limited to 'libAACenc/include/aacenc_lib.h')
-rw-r--r--libAACenc/include/aacenc_lib.h32
1 files changed, 30 insertions, 2 deletions
diff --git a/libAACenc/include/aacenc_lib.h b/libAACenc/include/aacenc_lib.h
index fcdaca5..f693bf5 100644
--- a/libAACenc/include/aacenc_lib.h
+++ b/libAACenc/include/aacenc_lib.h
@@ -342,6 +342,33 @@ increase which might be significant. If workload is not an issue in the applicat
we recommended to activate this feature.
\code aacEncoder_SetParam(hAacEncoder, AACENC_AFTERBURNER, 1); \endcode
+\subsection encELD ELD Auto Configuration Mode
+For ELD configuration a so called auto configurator is available which configures SBR and the SBR ratio by itself.
+The configurator is used when the encoder parameter ::AACENC_SBR_MODE and ::AACENC_SBR_RATIO are not set explicitely.
+
+Based on sampling rate and chosen bitrate per channel a reasonable SBR configuration will be used.
+\verbatim
+------------------------------------------------------------
+ Sampling Rate | Channel Bitrate | SBR | SBR Ratio
+-----------------+-----------------+------+-----------------
+ ]min, 16] kHz | min - 27999 | on | downsampled SBR
+ | 28000 - max | off | ---
+-----------------+-----------------+------+-----------------
+ ]16 - 24] kHz | min - 39999 | on | downsampled SBR
+ | 40000 - max | off | ---
+-----------------+-----------------+------+-----------------
+ ]24 - 32] kHz | min - 27999 | on | dualrate SBR
+ | 28000 - 55999 | on | downsampled SBR
+ | 56000 - max | off | ---
+-----------------+-----------------+------+-----------------
+ ]32 - 44.1] kHz | min - 63999 | on | dualrate SBR
+ | 64000 - max | off | ---
+-----------------+-----------------+------+-----------------
+ ]44.1 - 48] kHz | min - 63999 | on | dualrate SBR
+ | 64000 - max | off | ---
+------------------------------------------------------------
+\endverbatim
+
\section audiochCfg Audio Channel Configuration
The MPEG standard refers often to the so-called Channel Configuration. This Channel Configuration is used for a fixed Channel
@@ -881,8 +908,9 @@ typedef enum
AACENC_SAMPLERATE = 0x0103, /*!< Audio input data sampling rate. Encoder supports following sampling rates:
8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000, 64000, 88200, 96000 */
- AACENC_SBR_MODE = 0x0104, /*!< Configure SBR independently of the chosen Audio Object Type ::AUDIO_OBJECT_TYPE:.
- This parameter is only available for ELD.
+ AACENC_SBR_MODE = 0x0104, /*!< Configure SBR independently of the chosen Audio Object Type ::AUDIO_OBJECT_TYPE.
+ This parameter is for ELD audio object type only.
+ - -1: Use ELD SBR auto configurator (default).
- 0: Disable Spectral Band Replication.
- 1: Enable Spectral Band Replication. */