annotate libfaad2/sbr_dec.h @ 22210:4a958bd08920

Select the first charmap in the font, if FreeType did not autoselect any. This happens, for example, with fonts only having an Apple Roman charmap.
author eugeni
date Thu, 15 Feb 2007 22:03:09 +0000
parents 59b6fa5b4201
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
1 /*
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
3 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
14729
b4378a6f87a6 Sync missing cosmetics from the 2004-07-12 CVS snapshot.
diego
parents: 14727
diff changeset
4 **
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
5 ** This program is free software; you can redistribute it and/or modify
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
6 ** it under the terms of the GNU General Public License as published by
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
7 ** the Free Software Foundation; either version 2 of the License, or
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
8 ** (at your option) any later version.
14729
b4378a6f87a6 Sync missing cosmetics from the 2004-07-12 CVS snapshot.
diego
parents: 14727
diff changeset
9 **
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
10 ** This program is distributed in the hope that it will be useful,
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
11 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
12 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
13 ** GNU General Public License for more details.
14729
b4378a6f87a6 Sync missing cosmetics from the 2004-07-12 CVS snapshot.
diego
parents: 14727
diff changeset
14 **
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
15 ** You should have received a copy of the GNU General Public License
14729
b4378a6f87a6 Sync missing cosmetics from the 2004-07-12 CVS snapshot.
diego
parents: 14727
diff changeset
16 ** along with this program; if not, write to the Free Software
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
17 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
18 **
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
19 ** Any non-GPL usage of this software or parts of this software is strictly
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
20 ** forbidden.
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
21 **
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
22 ** Commercial non-GPL licensing of this software is possible.
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
24 **
18141
59b6fa5b4201 Update to faad2 cvs 20040915+MPlayer fixes
rtognimp
parents: 14729
diff changeset
25 ** $Id: sbr_dec.h,v 1.35 2004/09/04 14:56:28 menno Exp $
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
26 **/
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
27
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
28 #ifndef __SBR_DEC_H__
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
29 #define __SBR_DEC_H__
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
30
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
31 #ifdef __cplusplus
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
32 extern "C" {
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
33 #endif
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
34
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
35 #ifdef PS_DEC
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
36 #include "ps_dec.h"
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
37 #endif
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
38 #ifdef DRM_PS
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
39 #include "drm_dec.h"
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
40 #endif
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
41
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
42 /* MAX_NTSRHFG: maximum of number_time_slots * rate + HFGen. 16*2+8 */
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
43 #define MAX_NTSRHFG 40
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
44 #define MAX_NTSR 32 /* max number_time_slots * rate, ok for DRM and not DRM mode */
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
45
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
46 /* MAX_M: maximum value for M */
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
47 #define MAX_M 49
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
48 /* MAX_L_E: maximum value for L_E */
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
49 #define MAX_L_E 5
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
50
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
51 typedef struct {
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
52 real_t *x;
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
53 int16_t x_index;
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
54 uint8_t channels;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
55 } qmfa_info;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
56
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
57 typedef struct {
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
58 real_t *v;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
59 int16_t v_index;
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
60 uint8_t channels;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
61 } qmfs_info;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
62
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
63 typedef struct
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
64 {
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
65 uint32_t sample_rate;
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
66 uint32_t maxAACLine;
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
67
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
68 uint8_t rate;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
69 uint8_t just_seeked;
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
70 uint8_t ret;
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
71
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
72 uint8_t amp_res[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
73
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
74 uint8_t k0;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
75 uint8_t kx;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
76 uint8_t M;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
77 uint8_t N_master;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
78 uint8_t N_high;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
79 uint8_t N_low;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
80 uint8_t N_Q;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
81 uint8_t N_L[4];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
82 uint8_t n[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
83
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
84 uint8_t f_master[64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
85 uint8_t f_table_res[2][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
86 uint8_t f_table_noise[64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
87 uint8_t f_table_lim[4][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
88 #ifdef SBR_LOW_POWER
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
89 uint8_t f_group[5][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
90 uint8_t N_G[5];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
91 #endif
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
92
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
93 uint8_t table_map_k_to_g[64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
94
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
95 uint8_t abs_bord_lead[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
96 uint8_t abs_bord_trail[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
97 uint8_t n_rel_lead[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
98 uint8_t n_rel_trail[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
99
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
100 uint8_t L_E[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
101 uint8_t L_E_prev[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
102 uint8_t L_Q[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
103
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
104 uint8_t t_E[2][MAX_L_E+1];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
105 uint8_t t_Q[2][3];
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
106 uint8_t f[2][MAX_L_E+1];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
107 uint8_t f_prev[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
108
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
109 real_t *G_temp_prev[2][5];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
110 real_t *Q_temp_prev[2][5];
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
111 int8_t GQ_ringbuf_index[2];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
112
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
113 int16_t E[2][64][MAX_L_E];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
114 int16_t E_prev[2][64];
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
115 #ifndef FIXED_POINT
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
116 real_t E_orig[2][64][MAX_L_E];
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
117 #endif
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
118 real_t E_curr[2][64][MAX_L_E];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
119 int32_t Q[2][64][2];
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
120 #ifndef FIXED_POINT
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
121 real_t Q_div[2][64][2];
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
122 real_t Q_div2[2][64][2];
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
123 #endif
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
124 int32_t Q_prev[2][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
125
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
126 int8_t l_A[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
127 int8_t l_A_prev[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
128
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
129 uint8_t bs_invf_mode[2][MAX_L_E];
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
130 uint8_t bs_invf_mode_prev[2][MAX_L_E];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
131 real_t bwArray[2][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
132 real_t bwArray_prev[2][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
133
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
134 uint8_t noPatches;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
135 uint8_t patchNoSubbands[64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
136 uint8_t patchStartSubband[64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
137
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
138 uint8_t bs_add_harmonic[2][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
139 uint8_t bs_add_harmonic_prev[2][64];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
140
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
141 uint16_t index_noise_prev[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
142 uint8_t psi_is_prev[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
143
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
144 uint8_t bs_start_freq_prev;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
145 uint8_t bs_stop_freq_prev;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
146 uint8_t bs_xover_band_prev;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
147 uint8_t bs_freq_scale_prev;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
148 uint8_t bs_alter_scale_prev;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
149 uint8_t bs_noise_bands_prev;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
150
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
151 int8_t prevEnvIsShort[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
152
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
153 int8_t kx_prev;
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
154 uint8_t bsco;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
155 uint8_t bsco_prev;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
156 uint8_t M_prev;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
157 uint16_t frame_len;
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
158
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
159 uint8_t Reset;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
160 uint32_t frame;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
161 uint32_t header_count;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
162
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
163 uint8_t id_aac;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
164 qmfa_info *qmfa[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
165 qmfs_info *qmfs[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
166
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
167 qmf_t Xsbr[2][MAX_NTSRHFG][64];
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
168
10989
3185f64f6350 synced with current cvs
alex
parents: 10725
diff changeset
169 #ifdef DRM
3185f64f6350 synced with current cvs
alex
parents: 10725
diff changeset
170 uint8_t Is_DRM_SBR;
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
171 #ifdef DRM_PS
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
172 drm_ps_info *drm_ps;
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
173 #endif
10989
3185f64f6350 synced with current cvs
alex
parents: 10725
diff changeset
174 #endif
3185f64f6350 synced with current cvs
alex
parents: 10725
diff changeset
175
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
176 uint8_t numTimeSlotsRate;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
177 uint8_t numTimeSlots;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
178 uint8_t tHFGen;
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
179 uint8_t tHFAdj;
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
180
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
181 #ifdef PS_DEC
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
182 ps_info *ps;
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
183 #endif
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
184 #if (defined(PS_DEC) || defined(DRM_PS))
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
185 uint8_t ps_used;
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
186 #endif
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
187
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
188 /* to get it compiling */
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
189 /* we'll see during the coding of all the tools, whether
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
190 these are all used or not.
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
191 */
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
192 uint8_t bs_header_flag;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
193 uint8_t bs_crc_flag;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
194 uint16_t bs_sbr_crc_bits;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
195 uint8_t bs_protocol_version;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
196 uint8_t bs_amp_res;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
197 uint8_t bs_start_freq;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
198 uint8_t bs_stop_freq;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
199 uint8_t bs_xover_band;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
200 uint8_t bs_freq_scale;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
201 uint8_t bs_alter_scale;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
202 uint8_t bs_noise_bands;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
203 uint8_t bs_limiter_bands;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
204 uint8_t bs_limiter_gains;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
205 uint8_t bs_interpol_freq;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
206 uint8_t bs_smoothing_mode;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
207 uint8_t bs_samplerate_mode;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
208 uint8_t bs_add_harmonic_flag[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
209 uint8_t bs_add_harmonic_flag_prev[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
210 uint8_t bs_extended_data;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
211 uint8_t bs_extension_id;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
212 uint8_t bs_extension_data;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
213 uint8_t bs_coupling;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
214 uint8_t bs_frame_class[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
215 uint8_t bs_rel_bord[2][9];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
216 uint8_t bs_rel_bord_0[2][9];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
217 uint8_t bs_rel_bord_1[2][9];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
218 uint8_t bs_pointer[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
219 uint8_t bs_abs_bord_0[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
220 uint8_t bs_abs_bord_1[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
221 uint8_t bs_num_rel_0[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
222 uint8_t bs_num_rel_1[2];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
223 uint8_t bs_df_env[2][9];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
224 uint8_t bs_df_noise[2][3];
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
225 } sbr_info;
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
226
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
227 sbr_info *sbrDecodeInit(uint16_t framelength, uint8_t id_aac,
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
228 uint32_t sample_rate, uint8_t downSampledSBR
10989
3185f64f6350 synced with current cvs
alex
parents: 10725
diff changeset
229 #ifdef DRM
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
230 , uint8_t IsDRM
10989
3185f64f6350 synced with current cvs
alex
parents: 10725
diff changeset
231 #endif
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
232 );
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
233 void sbrDecodeEnd(sbr_info *sbr);
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
234
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
235 uint8_t sbrDecodeCoupleFrame(sbr_info *sbr, real_t *left_chan, real_t *right_chan,
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
236 const uint8_t just_seeked, const uint8_t downSampledSBR);
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
237 uint8_t sbrDecodeSingleFrame(sbr_info *sbr, real_t *channel,
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
238 const uint8_t just_seeked, const uint8_t downSampledSBR);
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
239 #if (defined(PS_DEC) || defined(DRM_PS))
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
240 uint8_t sbrDecodeSingleFramePS(sbr_info *sbr, real_t *left_channel, real_t *right_channel,
13453
6d50ef45a058 Update FAAD to a 2.1 beta CVS snapshot from 2004.07.12.
diego
parents: 12625
diff changeset
241 const uint8_t just_seeked, const uint8_t downSampledSBR);
12527
4a370c80fe5c update to the 2.0 release of faad, patch by adland
diego
parents: 10989
diff changeset
242 #endif
10725
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
243
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
244
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
245 #ifdef __cplusplus
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
246 }
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
247 #endif
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
248 #endif
e989150f8216 libfaad2 v2.0rc1 imported
arpi
parents:
diff changeset
249