summaryrefslogtreecommitdiffstats
path: root/libSYS/include/FDK_audio.h
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2013-11-01 10:46:40 +0200
committerMartin Storsjo <martin@martin.st>2013-11-01 10:46:40 +0200
commit321233ee92e138f44294c7bb9a375eadad9d24fa (patch)
tree1de928ad26325302f64c56603157f50095dcf2b1 /libSYS/include/FDK_audio.h
parentfcb5f1b692cb8343de35e69f9084328c652cf690 (diff)
parentfa3eba16446cc8f2f5e2dfc20d86a49dbd37299e (diff)
downloadODR-AudioEnc-321233ee92e138f44294c7bb9a375eadad9d24fa.tar.gz
ODR-AudioEnc-321233ee92e138f44294c7bb9a375eadad9d24fa.tar.bz2
ODR-AudioEnc-321233ee92e138f44294c7bb9a375eadad9d24fa.zip
Merge remote-tracking branch 'aosp/kitkat-release' into kitkat-merge
Conflicts: libAACenc/src/quantize.cpp
Diffstat (limited to 'libSYS/include/FDK_audio.h')
-rw-r--r--libSYS/include/FDK_audio.h69
1 files changed, 46 insertions, 23 deletions
diff --git a/libSYS/include/FDK_audio.h b/libSYS/include/FDK_audio.h
index 8e7041d..c8d9c19 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 - 2012 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
+© Copyright 1995 - 2013 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
All rights reserved.
1. INTRODUCTION
@@ -144,6 +144,12 @@ typedef enum
} TRANSPORT_TYPE;
+#define TT_IS_PACKET(x) \
+ ( ((x) == TT_MP4_RAW) \
+ || ((x) == TT_DRM) \
+ || ((x) == TT_MP4_LATM_MCP0) \
+ || ((x) == TT_MP4_LATM_MCP1) )
+
/**
* Audio Object Type definitions.
*/
@@ -228,28 +234,32 @@ typedef enum
/** Channel Mode ( 1-7 equals MPEG channel configurations, others are arbitrary). */
typedef enum {
- MODE_INVALID = -1,
- MODE_UNKNOWN = 0,
- MODE_1 = 1, /**< SCE */
- MODE_2 = 2, /**< CPE */
- MODE_1_2 = 3, /**< SCE,CPE */
- MODE_1_2_1 = 4, /**< SCE,CPE,SCE */
- MODE_1_2_2 = 5, /**< SCE,CPE,CPE */
- MODE_1_2_2_1 = 6, /**< SCE,CPE,CPE,LFE */
- MODE_1_2_2_2_1 = 7, /**< SCE,CPE,CPE,CPE,LFE */
-
- MODE_1_1 = 16, /**< 2 SCEs (dual mono) */
- MODE_1_1_1_1 = 17, /**< 4 SCEs */
- MODE_1_1_1_1_1_1 = 18, /**< 6 SCEs */
- MODE_1_1_1_1_1_1_1_1 = 19, /**< 8 SCEs */
- MODE_1_1_1_1_1_1_1_1_1_1_1_1 = 20, /**< 12 SCEs */
-
- MODE_2_2 = 21, /**< 2 CPEs */
- MODE_2_2_2 = 22, /**< 3 CPEs */
- MODE_2_2_2_2 = 23, /**< 4 CPEs */
- MODE_2_2_2_2_2_2 = 24, /**< 6 CPEs */
-
- MODE_2_1 = 30 /**< CPE,SCE (ARIB standard) */
+ MODE_INVALID = -1,
+ MODE_UNKNOWN = 0,
+ MODE_1 = 1, /**< C */
+ MODE_2 = 2, /**< L+R */
+ MODE_1_2 = 3, /**< C, L+R */
+ MODE_1_2_1 = 4, /**< C, L+R, Rear */
+ MODE_1_2_2 = 5, /**< C, L+R, LS+RS */
+ MODE_1_2_2_1 = 6, /**< C, L+R, LS+RS, LFE */
+ MODE_1_2_2_2_1 = 7, /**< C, LC+RC, L+R, LS+RS, LFE */
+
+
+ MODE_1_1 = 16, /**< 2 SCEs (dual mono) */
+ MODE_1_1_1_1 = 17, /**< 4 SCEs */
+ MODE_1_1_1_1_1_1 = 18, /**< 6 SCEs */
+ MODE_1_1_1_1_1_1_1_1 = 19, /**< 8 SCEs */
+ MODE_1_1_1_1_1_1_1_1_1_1_1_1 = 20, /**< 12 SCEs */
+
+ MODE_2_2 = 21, /**< 2 CPEs */
+ MODE_2_2_2 = 22, /**< 3 CPEs */
+ MODE_2_2_2_2 = 23, /**< 4 CPEs */
+ MODE_2_2_2_2_2_2 = 24, /**< 6 CPEs */
+
+ MODE_2_1 = 30, /**< CPE,SCE (ARIB standard B32) */
+
+ MODE_7_1_REAR_SURROUND = 33, /**< C, L+R, LS+RS, Lrear+Rrear, LFE */
+ MODE_7_1_FRONT_CENTER = 34 /**< C, LC+RC, L+R, LS+RS, LFE */
} CHANNEL_MODE;
@@ -266,6 +276,15 @@ typedef enum {
ACT_TOP /* Ts */
} AUDIO_CHANNEL_TYPE;
+typedef enum
+{
+ SIG_UNKNOWN = -1,
+ SIG_IMPLICIT = 0,
+ SIG_EXPLICIT_BW_COMPATIBLE = 1,
+ SIG_EXPLICIT_HIERARCHICAL = 2
+
+} SBR_PS_SIGNALING;
+
/**
* Audio Codec flags.
*/
@@ -328,6 +347,10 @@ typedef struct {
UCHAR stereoConfigIndex; /**< USAC MPS stereo mode */
UCHAR sbrMode; /**< USAC SBR mode */
+ SBR_PS_SIGNALING sbrSignaling;/**< 0: implicit signaling, 1: backwards compatible explicit signaling, 2: hierarcical explicit signaling */
+
+ UCHAR sbrPresent;
+ UCHAR psPresent;
} CODER_CONFIG;
/** MP4 Element IDs. */