aboutsummaryrefslogtreecommitdiffstats
path: root/libSYS/include
diff options
context:
space:
mode:
authorJean-Michel Trivi <jmtrivi@google.com>2016-04-04 16:06:48 -0700
committerJean-Michel Trivi <jmtrivi@google.com>2016-04-04 17:25:36 -0700
commite1c78ed73faa51f2c7fcb0c4a17a92be9cc747f5 (patch)
treea8dc54ef8dba931c72627e7bbebf1844b81a31f7 /libSYS/include
parentef30836651bf059c3120c03dd11e08b6aafdae13 (diff)
downloadfdk-aac-e1c78ed73faa51f2c7fcb0c4a17a92be9cc747f5.tar.gz
fdk-aac-e1c78ed73faa51f2c7fcb0c4a17a92be9cc747f5.tar.bz2
fdk-aac-e1c78ed73faa51f2c7fcb0c4a17a92be9cc747f5.zip
SBR/AAC encoder updates, code clean up
* SBR-Encoder - Prevent noise level overflow in noise floor detection. - Saturate threshold calculation in transient detection. Modified file(s): libSBRenc/src/nf_est.cpp libSBRenc/src/sbr_encoder.cpp libSBRenc/src/tran_det.cpp * AAC-Encoder - Expand input data range of GetInvInt() function. There was an encoder assert observed in non-default bitrate configuration. Modified file(s): libAACenc/src/aacenc_lib.cpp libAACenc/src/intensity.cpp libFDK/include/fixpoint_math.h libFDK/src/FDK_core.cpp libFDK/src/FDK_tools_rom.cpp - Make sure that the encoder is stable with regard to very low audio bandwidth confguration parameter value. - Fix lowdelay blending for low audio bandwidth. Modified file(s): libAACenc/src/aacenc.cpp libAACenc/src/aacenc_lib.cpp libAACenc/src/adj_thr.cpp libAACenc/src/psy_configuration.cpp libAACenc/src/psy_main.cpp - Disable pseudo surround flag in case metadata matrix mixdown index is present in program config element. Modified file(s): libAACenc/src/aacenc_lib.cpp - Enable variable bitrate mode in encoder api. - Add AACENC_PEAK_BITRATE parameter to encoder api. - Add AACENC_AUDIOMUXVER parameter to encoder api. Modified file(s): libAACenc/include/aacenc_lib.h libAACenc/src/aacenc.cpp libAACenc/src/aacenc.h libAACenc/src/aacenc_lib.cpp libAACenc/src/qc_main.cpp libMpegTPEnc/src/tpenc_latm.cpp libMpegTPEnc/src/version * FDK-Sources - Code clean up. Remove unneeded pseudo audio object types and transport types. Modified file(s): libAACdec/src/aacdecoder.cpp libAACdec/src/aacdecoder_lib.cpp libAACenc/include/aacenc_lib.h libAACenc/src/aacenc.cpp libAACenc/src/aacenc_lib.cpp libFDK/src/FDK_tools_rom.cpp libMpegTPDec/src/tpdec_lib.cpp libMpegTPDec/src/version libMpegTPEnc/src/tpenc_latm.cpp libMpegTPEnc/src/version libSBRdec/src/sbrdecoder.cpp libSBRenc/src/sbr_encoder.cpp libSYS/include/FDK_audio.h libSYS/src/genericStds.cpp Change-Id: I807a53cb7f48c9ee7563cb8da1d0c52221576ca6
Diffstat (limited to 'libSYS/include')
-rw-r--r--libSYS/include/FDK_audio.h44
1 files changed, 11 insertions, 33 deletions
diff --git a/libSYS/include/FDK_audio.h b/libSYS/include/FDK_audio.h
index 0660f4c..98ded3b 100644
--- a/libSYS/include/FDK_audio.h
+++ b/libSYS/include/FDK_audio.h
@@ -2,7 +2,7 @@
/* -----------------------------------------------------------------------------------------------------------
Software License for The Fraunhofer FDK AAC Codec Library for Android
-© Copyright 1995 - 2013 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
+© Copyright 1995 - 2015 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
All rights reserved.
1. INTRODUCTION
@@ -134,13 +134,7 @@ typedef enum
TT_MP4_LOAS = 10, /**< Audio Sync Stream. */
- TT_DRM = 12, /**< Digital Radio Mondial (DRM30/DRM+) bitstream format. */
-
- TT_MP1_L1 = 16, /**< MPEG 1 Audio Layer 1 audio bitstream. */
- TT_MP1_L2 = 17, /**< MPEG 1 Audio Layer 2 audio bitstream. */
- TT_MP1_L3 = 18, /**< MPEG 1 Audio Layer 3 audio bitstream. */
-
- TT_RSVD50 = 50 /**< */
+ TT_DRM = 12 /**< Digital Radio Mondial (DRM30/DRM+) bitstream format. */
} TRANSPORT_TYPE;
@@ -203,38 +197,22 @@ typedef enum
AOT_SAOC = 43, /**< SAOC */
AOT_LD_MPEGS = 44, /**< Low Delay MPEG Surround */
- AOT_RSVD50 = 50, /**< Interim AOT for Rsvd50 */
-
/* Pseudo AOTs */
- AOT_MP2_AAC_MAIN = 128, /**< Virtual AOT MP2 Main profile */
- AOT_MP2_AAC_LC = 129, /**< Virtual AOT MP2 Low Complexity profile */
- AOT_MP2_AAC_SSR = 130, /**< Virtual AOT MP2 Scalable Sampling Rate profile */
-
- AOT_MP2_SBR = 132, /**< Virtual AOT MP2 Low Complexity Profile with SBR */
-
- AOT_DAB = 134, /**< Virtual AOT for DAB (Layer2 with scalefactor CRC) */
- AOT_DABPLUS_AAC_LC = 135, /**< Virtual AOT for DAB plus AAC-LC */
- AOT_DABPLUS_SBR = 136, /**< Virtual AOT for DAB plus HE-AAC */
- AOT_DABPLUS_PS = 137, /**< Virtual AOT for DAB plus HE-AAC v2 */
-
- AOT_PLAIN_MP1 = 140, /**< Virtual AOT for plain mp1 */
- AOT_PLAIN_MP2 = 141, /**< Virtual AOT for plain mp2 */
- AOT_PLAIN_MP3 = 142, /**< Virtual AOT for plain mp3 */
-
AOT_DRM_AAC = 143, /**< Virtual AOT for DRM (ER-AAC-SCAL without SBR) */
AOT_DRM_SBR = 144, /**< Virtual AOT for DRM (ER-AAC-SCAL with SBR) */
- AOT_DRM_MPEG_PS = 145, /**< Virtual AOT for DRM (ER-AAC-SCAL with SBR and MPEG-PS) */
- AOT_DRM_SURROUND = 146, /**< Virtual AOT for DRM Surround (ER-AAC-SCAL (+SBR) +MPS) */
-
- AOT_MP2_PS = 156, /**< Virtual AOT MP2 Low Complexity Profile with SBR and PS */
-
- AOT_MPEGS_RESIDUALS = 256 /**< Virtual AOT for MPEG Surround residuals */
+ AOT_DRM_MPEG_PS = 145 /**< Virtual AOT for DRM (ER-AAC-SCAL with SBR and MPEG-PS) */
} AUDIO_OBJECT_TYPE;
+#define CAN_DO_PS(aot) \
+ ((aot) == AOT_AAC_LC \
+|| (aot) == AOT_SBR \
+|| (aot) == AOT_PS \
+|| (aot) == AOT_ER_BSAC \
+|| (aot) == AOT_DRM_AAC)
+
#define IS_USAC(aot) \
- ((aot) == AOT_USAC \
-|| (aot) == AOT_RSVD50)
+ ((aot) == AOT_USAC)
#define IS_LOWDELAY(aot) \
((aot) == AOT_ER_AAC_LD \