comparison libfaad2/syntax.h @ 10989:3185f64f6350

synced with current cvs
author alex
date Fri, 03 Oct 2003 22:23:26 +0000
parents e989150f8216
children 4a370c80fe5c
comparison
equal deleted inserted replaced
10988:c2bff70784d5 10989:3185f64f6350
20 ** forbidden. 20 ** forbidden.
21 ** 21 **
22 ** Commercial non-GPL licensing of this software is possible. 22 ** Commercial non-GPL licensing of this software is possible.
23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com. 23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
24 ** 24 **
25 ** $Id: syntax.h,v 1.32 2003/07/29 08:20:14 menno Exp $ 25 ** $Id: syntax.h,v 1.37 2003/09/24 19:55:34 menno Exp $
26 **/ 26 **/
27 27
28 #ifndef __SYNTAX_H__ 28 #ifndef __SYNTAX_H__
29 #define __SYNTAX_H__ 29 #define __SYNTAX_H__
30 30
34 34
35 #include "decoder.h" 35 #include "decoder.h"
36 #include "drc.h" 36 #include "drc.h"
37 #include "bits.h" 37 #include "bits.h"
38 38
39 #define MAIN 0 39 #define MAIN 1
40 #define LC 1 40 #define LC 2
41 #define SSR 2 41 #define SSR 3
42 #define LTP 3 42 #define LTP 4
43 #define HE_AAC 5
43 #define LD 23 44 #define LD 23
44 #define ER_LC 17 45 #define ER_LC 17
45 #define ER_LTP 19 46 #define ER_LTP 19
46 #define DRM_ER_LC 27 /* special object type for DRM */ 47 #define DRM_ER_LC 27 /* special object type for DRM */
48
49 /* header types */
50 #define RAW 0
51 #define ADIF 1
52 #define ADTS 2
53
54 /* SBR signalling */
55 #define NO_SBR 0
56 #define SBR_UPSAMPLED 1
57 #define SBR_DOWNSAMPLED 2
58 #define NO_SBR_UPSAMPLED 3
59
60 /* DRM channel definitions */
61 #define DRMCH_MONO 1
62 #define DRMCH_STEREO 2
63 #define DRMCH_SBR_MONO 3
64 #define DRMCH_SBR_LC_STEREO 4
65 #define DRMCH_SBR_STEREO 5
47 66
48 67
49 /* First object type that has ER */ 68 /* First object type that has ER */
50 #define ER_OBJECT_START 17 69 #define ER_OBJECT_START 17
51 70
83 #define PAIR_LEN 2 102 #define PAIR_LEN 2
84 #define NOISE_HCB 13 103 #define NOISE_HCB 13
85 #define INTENSITY_HCB2 14 104 #define INTENSITY_HCB2 14
86 #define INTENSITY_HCB 15 105 #define INTENSITY_HCB 15
87 106
88 static uint32_t sample_rates[] =
89 {
90 96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000,
91 12000, 11025, 8000
92 };
93
94 int8_t GASpecificConfig(bitfile *ld, mp4AudioSpecificConfig *mp4ASC, 107 int8_t GASpecificConfig(bitfile *ld, mp4AudioSpecificConfig *mp4ASC,
95 program_config *pce); 108 program_config *pce);
96 109
97 uint8_t adts_frame(adts_header *adts, bitfile *ld); 110 uint8_t adts_frame(adts_header *adts, bitfile *ld);
98 void get_adif_header(adif_header *adif, bitfile *ld); 111 void get_adif_header(adif_header *adif, bitfile *ld);
99 112
100 113
101 /* static functions */ 114 /* static functions */
102 static uint8_t single_lfe_channel_element(faacDecHandle hDecoder, 115 static uint8_t single_lfe_channel_element(faacDecHandle hDecoder,
103 element *sce, bitfile *ld, 116 element *sce, bitfile *ld,
104 int16_t *spec_data); 117 real_t *spec_coef);
105 static uint8_t channel_pair_element(faacDecHandle hDecoder, element *cpe, 118 static uint8_t channel_pair_element(faacDecHandle hDecoder, element *cpe,
106 bitfile *ld, int16_t *spec_data1, 119 bitfile *ld,
107 int16_t *spec_data2); 120 real_t *spec_coef1, real_t *spec_coef2);
108 static uint8_t coupling_channel_element(faacDecHandle hDecoder, bitfile *ld); 121 static uint8_t coupling_channel_element(faacDecHandle hDecoder, bitfile *ld);
109 static uint16_t data_stream_element(faacDecHandle hDecoder, bitfile *ld); 122 static uint16_t data_stream_element(faacDecHandle hDecoder, bitfile *ld);
110 static uint8_t program_config_element(program_config *pce, bitfile *ld); 123 static uint8_t program_config_element(program_config *pce, bitfile *ld);
111 static uint8_t fill_element(faacDecHandle hDecoder, bitfile *ld, drc_info *drc 124 static uint8_t fill_element(faacDecHandle hDecoder, bitfile *ld, drc_info *drc
112 #ifdef SBR_DEC 125 #ifdef SBR_DEC