1 /*
2  * Copyright (C) 2004-2010 NXP Software
3  * Copyright (C) 2010 The Android Open Source Project
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef __LVDBE_COEFFS_H__
19 #define __LVDBE_COEFFS_H__
20 
21 
22 #ifndef BUILD_FLOAT
23 /************************************************************************************/
24 /*                                                                                  */
25 /* General                                                                          */
26 /*                                                                                  */
27 /************************************************************************************/
28 
29 #define LVDBE_SCALESHIFT                                    10         /* As a power of 2 */
30 
31 
32 /************************************************************************************/
33 /*                                                                                  */
34 /* High Pass Filter coefficients                                                    */
35 /*                                                                                  */
36 /************************************************************************************/
37 
38  /* Coefficients for centre frequency 55Hz */
39 #define HPF_Fs8000_Fc55_A0                         1029556328         /* Floating point value 0.958849 */
40 #define HPF_Fs8000_Fc55_A1                       (-2059112655)        /* Floating point value -1.917698 */
41 #define HPF_Fs8000_Fc55_A2                         1029556328         /* Floating point value 0.958849 */
42 #define HPF_Fs8000_Fc55_B1                       (-2081986375)        /* Floating point value -1.939001 */
43 #define HPF_Fs8000_Fc55_B2                         1010183914         /* Floating point value 0.940807 */
44 #define HPF_Fs11025_Fc55_A0                        1038210831         /* Floating point value 0.966909 */
45 #define HPF_Fs11025_Fc55_A1                      (-2076421662)        /* Floating point value -1.933818 */
46 #define HPF_Fs11025_Fc55_A2                        1038210831         /* Floating point value 0.966909 */
47 #define HPF_Fs11025_Fc55_B1                      (-2099950710)        /* Floating point value -1.955732 */
48 #define HPF_Fs11025_Fc55_B2                        1027238450         /* Floating point value 0.956690 */
49 #define HPF_Fs12000_Fc55_A0                        1040079943         /* Floating point value 0.968650 */
50 #define HPF_Fs12000_Fc55_A1                      (-2080159885)        /* Floating point value -1.937300 */
51 #define HPF_Fs12000_Fc55_A2                        1040079943         /* Floating point value 0.968650 */
52 #define HPF_Fs12000_Fc55_B1                      (-2103811702)        /* Floating point value -1.959327 */
53 #define HPF_Fs12000_Fc55_B2                        1030940477         /* Floating point value 0.960138 */
54 #define HPF_Fs16000_Fc55_A0                        1045381988         /* Floating point value 0.973588 */
55 #define HPF_Fs16000_Fc55_A1                      (-2090763976)        /* Floating point value -1.947176 */
56 #define HPF_Fs16000_Fc55_A2                        1045381988         /* Floating point value 0.973588 */
57 #define HPF_Fs16000_Fc55_B1                      (-2114727793)        /* Floating point value -1.969494 */
58 #define HPF_Fs16000_Fc55_B2                        1041478147         /* Floating point value 0.969952 */
59 #define HPF_Fs22050_Fc55_A0                        1049766523         /* Floating point value 0.977671 */
60 #define HPF_Fs22050_Fc55_A1                      (-2099533046)        /* Floating point value -1.955343 */
61 #define HPF_Fs22050_Fc55_A2                        1049766523         /* Floating point value 0.977671 */
62 #define HPF_Fs22050_Fc55_B1                      (-2123714381)        /* Floating point value -1.977863 */
63 #define HPF_Fs22050_Fc55_B2                        1050232780         /* Floating point value 0.978105 */
64 #define HPF_Fs24000_Fc55_A0                        1050711051         /* Floating point value 0.978551 */
65 #define HPF_Fs24000_Fc55_A1                      (-2101422103)        /* Floating point value -1.957102 */
66 #define HPF_Fs24000_Fc55_A2                        1050711051         /* Floating point value 0.978551 */
67 #define HPF_Fs24000_Fc55_B1                      (-2125645498)        /* Floating point value -1.979662 */
68 #define HPF_Fs24000_Fc55_B2                        1052123526         /* Floating point value 0.979866 */
69 #define HPF_Fs32000_Fc55_A0                        1053385759         /* Floating point value 0.981042 */
70 #define HPF_Fs32000_Fc55_A1                      (-2106771519)        /* Floating point value -1.962084 */
71 #define HPF_Fs32000_Fc55_A2                        1053385759         /* Floating point value 0.981042 */
72 #define HPF_Fs32000_Fc55_B1                      (-2131104794)        /* Floating point value -1.984746 */
73 #define HPF_Fs32000_Fc55_B2                        1057486949         /* Floating point value 0.984861 */
74 #define HPF_Fs44100_Fc55_A0                        1055592498         /* Floating point value 0.983097 */
75 #define HPF_Fs44100_Fc55_A1                      (-2111184995)        /* Floating point value -1.966194 */
76 #define HPF_Fs44100_Fc55_A2                        1055592498         /* Floating point value 0.983097 */
77 #define HPF_Fs44100_Fc55_B1                      (-2135598658)        /* Floating point value -1.988931 */
78 #define HPF_Fs44100_Fc55_B2                        1061922249         /* Floating point value 0.988992 */
79 #define HPF_Fs48000_Fc55_A0                        1056067276         /* Floating point value 0.983539 */
80 #define HPF_Fs48000_Fc55_A1                      (-2112134551)        /* Floating point value -1.967079 */
81 #define HPF_Fs48000_Fc55_A2                        1056067276         /* Floating point value 0.983539 */
82 #define HPF_Fs48000_Fc55_B1                      (-2136564296)        /* Floating point value -1.989831 */
83 #define HPF_Fs48000_Fc55_B2                        1062877714         /* Floating point value 0.989882 */
84 
85  /* Coefficients for centre frequency 66Hz */
86 #define HPF_Fs8000_Fc66_A0                         1023293271         /* Floating point value 0.953016 */
87 #define HPF_Fs8000_Fc66_A1                       (-2046586542)        /* Floating point value -1.906032 */
88 #define HPF_Fs8000_Fc66_A2                         1023293271         /* Floating point value 0.953016 */
89 #define HPF_Fs8000_Fc66_B1                       (-2068896860)        /* Floating point value -1.926810 */
90 #define HPF_Fs8000_Fc66_B2                          997931110         /* Floating point value 0.929396 */
91 #define HPF_Fs11025_Fc66_A0                        1033624228         /* Floating point value 0.962638 */
92 #define HPF_Fs11025_Fc66_A1                      (-2067248455)        /* Floating point value -1.925275 */
93 #define HPF_Fs11025_Fc66_A2                        1033624228         /* Floating point value 0.962638 */
94 #define HPF_Fs11025_Fc66_B1                      (-2090448000)        /* Floating point value -1.946881 */
95 #define HPF_Fs11025_Fc66_B2                        1018182305         /* Floating point value 0.948256 */
96 #define HPF_Fs12000_Fc66_A0                        1035857662         /* Floating point value 0.964718 */
97 #define HPF_Fs12000_Fc66_A1                      (-2071715325)        /* Floating point value -1.929435 */
98 #define HPF_Fs12000_Fc66_A2                        1035857662         /* Floating point value 0.964718 */
99 #define HPF_Fs12000_Fc66_B1                      (-2095080333)        /* Floating point value -1.951196 */
100 #define HPF_Fs12000_Fc66_B2                        1022587158         /* Floating point value 0.952359 */
101 #define HPF_Fs16000_Fc66_A0                        1042197528         /* Floating point value 0.970622 */
102 #define HPF_Fs16000_Fc66_A1                      (-2084395056)        /* Floating point value -1.941244 */
103 #define HPF_Fs16000_Fc66_A2                        1042197528         /* Floating point value 0.970622 */
104 #define HPF_Fs16000_Fc66_B1                      (-2108177912)        /* Floating point value -1.963394 */
105 #define HPF_Fs16000_Fc66_B2                        1035142690         /* Floating point value 0.964052 */
106 #define HPF_Fs22050_Fc66_A0                        1047445145         /* Floating point value 0.975509 */
107 #define HPF_Fs22050_Fc66_A1                      (-2094890289)        /* Floating point value -1.951019 */
108 #define HPF_Fs22050_Fc66_A2                        1047445145         /* Floating point value 0.975509 */
109 #define HPF_Fs22050_Fc66_B1                      (-2118961025)        /* Floating point value -1.973436 */
110 #define HPF_Fs22050_Fc66_B2                        1045593102         /* Floating point value 0.973784 */
111 #define HPF_Fs24000_Fc66_A0                        1048576175         /* Floating point value 0.976563 */
112 #define HPF_Fs24000_Fc66_A1                      (-2097152349)        /* Floating point value -1.953125 */
113 #define HPF_Fs24000_Fc66_A2                        1048576175         /* Floating point value 0.976563 */
114 #define HPF_Fs24000_Fc66_B1                      (-2121278255)        /* Floating point value -1.975594 */
115 #define HPF_Fs24000_Fc66_B2                        1047852379         /* Floating point value 0.975889 */
116 #define HPF_Fs32000_Fc66_A0                        1051780119         /* Floating point value 0.979547 */
117 #define HPF_Fs32000_Fc66_A1                      (-2103560237)        /* Floating point value -1.959093 */
118 #define HPF_Fs32000_Fc66_A2                        1051780119         /* Floating point value 0.979547 */
119 #define HPF_Fs32000_Fc66_B1                      (-2127829187)        /* Floating point value -1.981695 */
120 #define HPF_Fs32000_Fc66_B2                        1054265623         /* Floating point value 0.981861 */
121 #define HPF_Fs44100_Fc66_A0                        1054424722         /* Floating point value 0.982010 */
122 #define HPF_Fs44100_Fc66_A1                      (-2108849444)        /* Floating point value -1.964019 */
123 #define HPF_Fs44100_Fc66_A2                        1054424722         /* Floating point value 0.982010 */
124 #define HPF_Fs44100_Fc66_B1                      (-2133221723)        /* Floating point value -1.986718 */
125 #define HPF_Fs44100_Fc66_B2                        1059573993         /* Floating point value 0.986805 */
126 #define HPF_Fs48000_Fc66_A0                        1054993851         /* Floating point value 0.982540 */
127 #define HPF_Fs48000_Fc66_A1                      (-2109987702)        /* Floating point value -1.965079 */
128 #define HPF_Fs48000_Fc66_A2                        1054993851         /* Floating point value 0.982540 */
129 #define HPF_Fs48000_Fc66_B1                      (-2134380475)        /* Floating point value -1.987797 */
130 #define HPF_Fs48000_Fc66_B2                        1060718118         /* Floating point value 0.987871 */
131 
132  /* Coefficients for centre frequency 78Hz */
133 #define HPF_Fs8000_Fc78_A0                         1016504203         /* Floating point value 0.946693 */
134 #define HPF_Fs8000_Fc78_A1                       (-2033008405)        /* Floating point value -1.893387 */
135 #define HPF_Fs8000_Fc78_A2                         1016504203         /* Floating point value 0.946693 */
136 #define HPF_Fs8000_Fc78_B1                       (-2054623390)        /* Floating point value -1.913517 */
137 #define HPF_Fs8000_Fc78_B2                          984733853         /* Floating point value 0.917105 */
138 #define HPF_Fs11025_Fc78_A0                        1028643741         /* Floating point value 0.957999 */
139 #define HPF_Fs11025_Fc78_A1                      (-2057287482)        /* Floating point value -1.915998 */
140 #define HPF_Fs11025_Fc78_A2                        1028643741         /* Floating point value 0.957999 */
141 #define HPF_Fs11025_Fc78_B1                      (-2080083769)        /* Floating point value -1.937229 */
142 #define HPF_Fs11025_Fc78_B2                        1008393904         /* Floating point value 0.939140 */
143 #define HPF_Fs12000_Fc78_A0                        1031271067         /* Floating point value 0.960446 */
144 #define HPF_Fs12000_Fc78_A1                      (-2062542133)        /* Floating point value -1.920892 */
145 #define HPF_Fs12000_Fc78_A2                        1031271067         /* Floating point value 0.960446 */
146 #define HPF_Fs12000_Fc78_B1                      (-2085557048)        /* Floating point value -1.942326 */
147 #define HPF_Fs12000_Fc78_B2                        1013551620         /* Floating point value 0.943944 */
148 #define HPF_Fs16000_Fc78_A0                        1038734628         /* Floating point value 0.967397 */
149 #define HPF_Fs16000_Fc78_A1                      (-2077469256)        /* Floating point value -1.934794 */
150 #define HPF_Fs16000_Fc78_A2                        1038734628         /* Floating point value 0.967397 */
151 #define HPF_Fs16000_Fc78_B1                      (-2101033380)        /* Floating point value -1.956740 */
152 #define HPF_Fs16000_Fc78_B2                        1028275228         /* Floating point value 0.957656 */
153 #define HPF_Fs22050_Fc78_A0                        1044918584         /* Floating point value 0.973156 */
154 #define HPF_Fs22050_Fc78_A1                      (-2089837169)        /* Floating point value -1.946313 */
155 #define HPF_Fs22050_Fc78_A2                        1044918584         /* Floating point value 0.973156 */
156 #define HPF_Fs22050_Fc78_B1                      (-2113775854)        /* Floating point value -1.968607 */
157 #define HPF_Fs22050_Fc78_B2                        1040555007         /* Floating point value 0.969092 */
158 #define HPF_Fs24000_Fc78_A0                        1046252164         /* Floating point value 0.974398 */
159 #define HPF_Fs24000_Fc78_A1                      (-2092504328)        /* Floating point value -1.948797 */
160 #define HPF_Fs24000_Fc78_A2                        1046252164         /* Floating point value 0.974398 */
161 #define HPF_Fs24000_Fc78_B1                      (-2116514229)        /* Floating point value -1.971157 */
162 #define HPF_Fs24000_Fc78_B2                        1043212719         /* Floating point value 0.971568 */
163 #define HPF_Fs32000_Fc78_A0                        1050031301         /* Floating point value 0.977918 */
164 #define HPF_Fs32000_Fc78_A1                      (-2100062603)        /* Floating point value -1.955836 */
165 #define HPF_Fs32000_Fc78_A2                        1050031301         /* Floating point value 0.977918 */
166 #define HPF_Fs32000_Fc78_B1                      (-2124255900)        /* Floating point value -1.978367 */
167 #define HPF_Fs32000_Fc78_B2                        1050762639         /* Floating point value 0.978599 */
168 #define HPF_Fs44100_Fc78_A0                        1053152258         /* Floating point value 0.980824 */
169 #define HPF_Fs44100_Fc78_A1                      (-2106304516)        /* Floating point value -1.961649 */
170 #define HPF_Fs44100_Fc78_A2                        1053152258         /* Floating point value 0.980824 */
171 #define HPF_Fs44100_Fc78_B1                      (-2130628742)        /* Floating point value -1.984303 */
172 #define HPF_Fs44100_Fc78_B2                        1057018180         /* Floating point value 0.984425 */
173 #define HPF_Fs48000_Fc78_A0                        1053824087         /* Floating point value 0.981450 */
174 #define HPF_Fs48000_Fc78_A1                      (-2107648173)        /* Floating point value -1.962900 */
175 #define HPF_Fs48000_Fc78_A2                        1053824087         /* Floating point value 0.981450 */
176 #define HPF_Fs48000_Fc78_B1                      (-2131998154)        /* Floating point value -1.985578 */
177 #define HPF_Fs48000_Fc78_B2                        1058367200         /* Floating point value 0.985681 */
178 
179  /* Coefficients for centre frequency 90Hz */
180 #define HPF_Fs8000_Fc90_A0                         1009760053         /* Floating point value 0.940412 */
181 #define HPF_Fs8000_Fc90_A1                       (-2019520105)        /* Floating point value -1.880825 */
182 #define HPF_Fs8000_Fc90_A2                         1009760053         /* Floating point value 0.940412 */
183 #define HPF_Fs8000_Fc90_B1                       (-2040357139)        /* Floating point value -1.900231 */
184 #define HPF_Fs8000_Fc90_B2                          971711129         /* Floating point value 0.904977 */
185 #define HPF_Fs11025_Fc90_A0                        1023687217         /* Floating point value 0.953383 */
186 #define HPF_Fs11025_Fc90_A1                      (-2047374434)        /* Floating point value -1.906766 */
187 #define HPF_Fs11025_Fc90_A2                        1023687217         /* Floating point value 0.953383 */
188 #define HPF_Fs11025_Fc90_B1                      (-2069722397)        /* Floating point value -1.927579 */
189 #define HPF_Fs11025_Fc90_B2                         998699604         /* Floating point value 0.930111 */
190 #define HPF_Fs12000_Fc90_A0                        1026704754         /* Floating point value 0.956193 */
191 #define HPF_Fs12000_Fc90_A1                      (-2053409508)        /* Floating point value -1.912387 */
192 #define HPF_Fs12000_Fc90_A2                        1026704754         /* Floating point value 0.956193 */
193 #define HPF_Fs12000_Fc90_B1                      (-2076035996)        /* Floating point value -1.933459 */
194 #define HPF_Fs12000_Fc90_B2                        1004595918         /* Floating point value 0.935603 */
195 #define HPF_Fs16000_Fc90_A0                        1035283225         /* Floating point value 0.964183 */
196 #define HPF_Fs16000_Fc90_A1                      (-2070566451)        /* Floating point value -1.928365 */
197 #define HPF_Fs16000_Fc90_A2                        1035283225         /* Floating point value 0.964183 */
198 #define HPF_Fs16000_Fc90_B1                      (-2093889811)        /* Floating point value -1.950087 */
199 #define HPF_Fs16000_Fc90_B2                        1021453326         /* Floating point value 0.951303 */
200 #define HPF_Fs22050_Fc90_A0                        1042398116         /* Floating point value 0.970809 */
201 #define HPF_Fs22050_Fc90_A1                      (-2084796232)        /* Floating point value -1.941618 */
202 #define HPF_Fs22050_Fc90_A2                        1042398116         /* Floating point value 0.970809 */
203 #define HPF_Fs22050_Fc90_B1                      (-2108591057)        /* Floating point value -1.963778 */
204 #define HPF_Fs22050_Fc90_B2                        1035541188         /* Floating point value 0.964423 */
205 #define HPF_Fs24000_Fc90_A0                        1043933302         /* Floating point value 0.972239 */
206 #define HPF_Fs24000_Fc90_A1                      (-2087866604)        /* Floating point value -1.944477 */
207 #define HPF_Fs24000_Fc90_A2                        1043933302         /* Floating point value 0.972239 */
208 #define HPF_Fs24000_Fc90_B1                      (-2111750495)        /* Floating point value -1.966721 */
209 #define HPF_Fs24000_Fc90_B2                        1038593601         /* Floating point value 0.967266 */
210 #define HPF_Fs32000_Fc90_A0                        1048285391         /* Floating point value 0.976292 */
211 #define HPF_Fs32000_Fc90_A1                      (-2096570783)        /* Floating point value -1.952584 */
212 #define HPF_Fs32000_Fc90_A2                        1048285391         /* Floating point value 0.976292 */
213 #define HPF_Fs32000_Fc90_B1                      (-2120682737)        /* Floating point value -1.975040 */
214 #define HPF_Fs32000_Fc90_B2                        1047271295         /* Floating point value 0.975347 */
215 #define HPF_Fs44100_Fc90_A0                        1051881330         /* Floating point value 0.979641 */
216 #define HPF_Fs44100_Fc90_A1                      (-2103762660)        /* Floating point value -1.959282 */
217 #define HPF_Fs44100_Fc90_A2                        1051881330         /* Floating point value 0.979641 */
218 #define HPF_Fs44100_Fc90_B1                      (-2128035809)        /* Floating point value -1.981888 */
219 #define HPF_Fs44100_Fc90_B2                        1054468533         /* Floating point value 0.982050 */
220 #define HPF_Fs48000_Fc90_A0                        1052655619         /* Floating point value 0.980362 */
221 #define HPF_Fs48000_Fc90_A1                      (-2105311238)        /* Floating point value -1.960724 */
222 #define HPF_Fs48000_Fc90_A2                        1052655619         /* Floating point value 0.980362 */
223 #define HPF_Fs48000_Fc90_B1                      (-2129615871)        /* Floating point value -1.983359 */
224 #define HPF_Fs48000_Fc90_B2                        1056021492         /* Floating point value 0.983497 */
225 
226 
227 /************************************************************************************/
228 /*                                                                                  */
229 /* Band Pass Filter coefficients                                                    */
230 /*                                                                                  */
231 /************************************************************************************/
232 
233  /* Coefficients for centre frequency 55Hz */
234 #define BPF_Fs8000_Fc55_A0                            9875247         /* Floating point value 0.009197 */
235 #define BPF_Fs8000_Fc55_A1                                  0         /* Floating point value 0.000000 */
236 #define BPF_Fs8000_Fc55_A2                          (-9875247)        /* Floating point value -0.009197 */
237 #define BPF_Fs8000_Fc55_B1                       (-2125519830)        /* Floating point value -1.979545 */
238 #define BPF_Fs8000_Fc55_B2                         1053762629         /* Floating point value 0.981393 */
239 #define BPF_Fs11025_Fc55_A0                           7183952         /* Floating point value 0.006691 */
240 #define BPF_Fs11025_Fc55_A1                                 0         /* Floating point value 0.000000 */
241 #define BPF_Fs11025_Fc55_A2                         (-7183952)        /* Floating point value -0.006691 */
242 #define BPF_Fs11025_Fc55_B1                      (-2131901658)        /* Floating point value -1.985488 */
243 #define BPF_Fs11025_Fc55_B2                        1059207548         /* Floating point value 0.986464 */
244 #define BPF_Fs12000_Fc55_A0                           6603871         /* Floating point value 0.006150 */
245 #define BPF_Fs12000_Fc55_A1                                 0         /* Floating point value 0.000000 */
246 #define BPF_Fs12000_Fc55_A2                         (-6603871)        /* Floating point value -0.006150 */
247 #define BPF_Fs12000_Fc55_B1                      (-2133238092)        /* Floating point value -1.986733 */
248 #define BPF_Fs12000_Fc55_B2                        1060381143         /* Floating point value 0.987557 */
249 #define BPF_Fs16000_Fc55_A0                           4960591         /* Floating point value 0.004620 */
250 #define BPF_Fs16000_Fc55_A1                                 0         /* Floating point value 0.000000 */
251 #define BPF_Fs16000_Fc55_A2                         (-4960591)        /* Floating point value -0.004620 */
252 #define BPF_Fs16000_Fc55_B1                      (-2136949052)        /* Floating point value -1.990189 */
253 #define BPF_Fs16000_Fc55_B2                        1063705760         /* Floating point value 0.990653 */
254 #define BPF_Fs22050_Fc55_A0                           3604131         /* Floating point value 0.003357 */
255 #define BPF_Fs22050_Fc55_A1                                 0         /* Floating point value 0.000000 */
256 #define BPF_Fs22050_Fc55_A2                         (-3604131)        /* Floating point value -0.003357 */
257 #define BPF_Fs22050_Fc55_B1                      (-2139929085)        /* Floating point value -1.992964 */
258 #define BPF_Fs22050_Fc55_B2                        1066450095         /* Floating point value 0.993209 */
259 #define BPF_Fs24000_Fc55_A0                           3312207         /* Floating point value 0.003085 */
260 #define BPF_Fs24000_Fc55_A1                                 0         /* Floating point value 0.000000 */
261 #define BPF_Fs24000_Fc55_A2                         (-3312207)        /* Floating point value -0.003085 */
262 #define BPF_Fs24000_Fc55_B1                      (-2140560606)        /* Floating point value -1.993552 */
263 #define BPF_Fs24000_Fc55_B2                        1067040703         /* Floating point value 0.993759 */
264 #define BPF_Fs32000_Fc55_A0                           2486091         /* Floating point value 0.002315 */
265 #define BPF_Fs32000_Fc55_A1                                 0         /* Floating point value 0.000000 */
266 #define BPF_Fs32000_Fc55_A2                         (-2486091)        /* Floating point value -0.002315 */
267 #define BPF_Fs32000_Fc55_B1                      (-2142328962)        /* Floating point value -1.995199 */
268 #define BPF_Fs32000_Fc55_B2                        1068712067         /* Floating point value 0.995316 */
269 #define BPF_Fs44100_Fc55_A0                           1805125         /* Floating point value 0.001681 */
270 #define BPF_Fs44100_Fc55_A1                                 0         /* Floating point value 0.000000 */
271 #define BPF_Fs44100_Fc55_A2                         (-1805125)        /* Floating point value -0.001681 */
272 #define BPF_Fs44100_Fc55_B1                      (-2143765772)        /* Floating point value -1.996537 */
273 #define BPF_Fs44100_Fc55_B2                        1070089770         /* Floating point value 0.996599 */
274 #define BPF_Fs48000_Fc55_A0                           1658687         /* Floating point value 0.001545 */
275 #define BPF_Fs48000_Fc55_A1                                 0         /* Floating point value 0.000000 */
276 #define BPF_Fs48000_Fc55_A2                         (-1658687)        /* Floating point value -0.001545 */
277 #define BPF_Fs48000_Fc55_B1                      (-2144072292)        /* Floating point value -1.996823 */
278 #define BPF_Fs48000_Fc55_B2                        1070386036         /* Floating point value 0.996875 */
279 
280  /* Coefficients for centre frequency 66Hz */
281 #define BPF_Fs8000_Fc66_A0                           13580189         /* Floating point value 0.012648 */
282 #define BPF_Fs8000_Fc66_A1                                  0         /* Floating point value 0.000000 */
283 #define BPF_Fs8000_Fc66_A2                         (-13580189)        /* Floating point value -0.012648 */
284 #define BPF_Fs8000_Fc66_B1                       (-2117161175)        /* Floating point value -1.971760 */
285 #define BPF_Fs8000_Fc66_B2                         1046266945         /* Floating point value 0.974412 */
286 #define BPF_Fs11025_Fc66_A0                           9888559         /* Floating point value 0.009209 */
287 #define BPF_Fs11025_Fc66_A1                                 0         /* Floating point value 0.000000 */
288 #define BPF_Fs11025_Fc66_A2                         (-9888559)        /* Floating point value -0.009209 */
289 #define BPF_Fs11025_Fc66_B1                      (-2125972738)        /* Floating point value -1.979966 */
290 #define BPF_Fs11025_Fc66_B2                        1053735698         /* Floating point value 0.981368 */
291 #define BPF_Fs12000_Fc66_A0                           9091954         /* Floating point value 0.008468 */
292 #define BPF_Fs12000_Fc66_A1                                 0         /* Floating point value 0.000000 */
293 #define BPF_Fs12000_Fc66_A2                         (-9091954)        /* Floating point value -0.008468 */
294 #define BPF_Fs12000_Fc66_B1                      (-2127818004)        /* Floating point value -1.981685 */
295 #define BPF_Fs12000_Fc66_B2                        1055347356         /* Floating point value 0.982869 */
296 #define BPF_Fs16000_Fc66_A0                           6833525         /* Floating point value 0.006364 */
297 #define BPF_Fs16000_Fc66_A1                                 0         /* Floating point value 0.000000 */
298 #define BPF_Fs16000_Fc66_A2                         (-6833525)        /* Floating point value -0.006364 */
299 #define BPF_Fs16000_Fc66_B1                      (-2132941739)        /* Floating point value -1.986457 */
300 #define BPF_Fs16000_Fc66_B2                        1059916517         /* Floating point value 0.987124 */
301 #define BPF_Fs22050_Fc66_A0                           4967309         /* Floating point value 0.004626 */
302 #define BPF_Fs22050_Fc66_A1                                 0         /* Floating point value 0.000000 */
303 #define BPF_Fs22050_Fc66_A2                         (-4967309)        /* Floating point value -0.004626 */
304 #define BPF_Fs22050_Fc66_B1                      (-2137056003)        /* Floating point value -1.990288 */
305 #define BPF_Fs22050_Fc66_B2                        1063692170         /* Floating point value 0.990641 */
306 #define BPF_Fs24000_Fc66_A0                           4565445         /* Floating point value 0.004252 */
307 #define BPF_Fs24000_Fc66_A1                                 0         /* Floating point value 0.000000 */
308 #define BPF_Fs24000_Fc66_A2                         (-4565445)        /* Floating point value -0.004252 */
309 #define BPF_Fs24000_Fc66_B1                      (-2137927842)        /* Floating point value -1.991100 */
310 #define BPF_Fs24000_Fc66_B2                        1064505202         /* Floating point value 0.991398 */
311 #define BPF_Fs32000_Fc66_A0                           3427761         /* Floating point value 0.003192 */
312 #define BPF_Fs32000_Fc66_A1                                 0         /* Floating point value 0.000000 */
313 #define BPF_Fs32000_Fc66_A2                         (-3427761)        /* Floating point value -0.003192 */
314 #define BPF_Fs32000_Fc66_B1                      (-2140369007)        /* Floating point value -1.993374 */
315 #define BPF_Fs32000_Fc66_B2                        1066806920         /* Floating point value 0.993541 */
316 #define BPF_Fs44100_Fc66_A0                           2489466         /* Floating point value 0.002318 */
317 #define BPF_Fs44100_Fc66_A1                                 0         /* Floating point value 0.000000 */
318 #define BPF_Fs44100_Fc66_A2                         (-2489466)        /* Floating point value -0.002318 */
319 #define BPF_Fs44100_Fc66_B1                      (-2142352342)        /* Floating point value -1.995221 */
320 #define BPF_Fs44100_Fc66_B2                        1068705240         /* Floating point value 0.995309 */
321 #define BPF_Fs48000_Fc66_A0                           2287632         /* Floating point value 0.002131 */
322 #define BPF_Fs48000_Fc66_A1                                 0         /* Floating point value 0.000000 */
323 #define BPF_Fs48000_Fc66_A2                         (-2287632)        /* Floating point value -0.002131 */
324 #define BPF_Fs48000_Fc66_B1                      (-2142775436)        /* Floating point value -1.995615 */
325 #define BPF_Fs48000_Fc66_B2                        1069113581         /* Floating point value 0.995690 */
326 
327  /* Coefficients for centre frequency 78Hz */
328 #define BPF_Fs8000_Fc78_A0                           19941180         /* Floating point value 0.018572 */
329 #define BPF_Fs8000_Fc78_A1                                  0         /* Floating point value 0.000000 */
330 #define BPF_Fs8000_Fc78_A2                         (-19941180)        /* Floating point value -0.018572 */
331 #define BPF_Fs8000_Fc78_B1                       (-2103186749)        /* Floating point value -1.958745 */
332 #define BPF_Fs8000_Fc78_B2                         1033397648         /* Floating point value 0.962427 */
333 #define BPF_Fs11025_Fc78_A0                          14543934         /* Floating point value 0.013545 */
334 #define BPF_Fs11025_Fc78_A1                                 0         /* Floating point value 0.000000 */
335 #define BPF_Fs11025_Fc78_A2                        (-14543934)        /* Floating point value -0.013545 */
336 #define BPF_Fs11025_Fc78_B1                      (-2115966638)        /* Floating point value -1.970647 */
337 #define BPF_Fs11025_Fc78_B2                        1044317135         /* Floating point value 0.972596 */
338 #define BPF_Fs12000_Fc78_A0                          13376999         /* Floating point value 0.012458 */
339 #define BPF_Fs12000_Fc78_A1                                 0         /* Floating point value 0.000000 */
340 #define BPF_Fs12000_Fc78_A2                        (-13376999)        /* Floating point value -0.012458 */
341 #define BPF_Fs12000_Fc78_B1                      (-2118651708)        /* Floating point value -1.973148 */
342 #define BPF_Fs12000_Fc78_B2                        1046678029         /* Floating point value 0.974795 */
343 #define BPF_Fs16000_Fc78_A0                          10064222         /* Floating point value 0.009373 */
344 #define BPF_Fs16000_Fc78_A1                                 0         /* Floating point value 0.000000 */
345 #define BPF_Fs16000_Fc78_A2                        (-10064222)        /* Floating point value -0.009373 */
346 #define BPF_Fs16000_Fc78_B1                      (-2126124342)        /* Floating point value -1.980108 */
347 #define BPF_Fs16000_Fc78_B2                        1053380304         /* Floating point value 0.981037 */
348 #define BPF_Fs22050_Fc78_A0                           7321780         /* Floating point value 0.006819 */
349 #define BPF_Fs22050_Fc78_A1                                 0         /* Floating point value 0.000000 */
350 #define BPF_Fs22050_Fc78_A2                         (-7321780)        /* Floating point value -0.006819 */
351 #define BPF_Fs22050_Fc78_B1                      (-2132143771)        /* Floating point value -1.985714 */
352 #define BPF_Fs22050_Fc78_B2                        1058928700         /* Floating point value 0.986204 */
353 #define BPF_Fs24000_Fc78_A0                           6730640         /* Floating point value 0.006268 */
354 #define BPF_Fs24000_Fc78_A1                                 0         /* Floating point value 0.000000 */
355 #define BPF_Fs24000_Fc78_A2                         (-6730640)        /* Floating point value -0.006268 */
356 #define BPF_Fs24000_Fc78_B1                      (-2133421607)        /* Floating point value -1.986904 */
357 #define BPF_Fs24000_Fc78_B2                        1060124669         /* Floating point value 0.987318 */
358 #define BPF_Fs32000_Fc78_A0                           5055965         /* Floating point value 0.004709 */
359 #define BPF_Fs32000_Fc78_A1                                 0         /* Floating point value 0.000000 */
360 #define BPF_Fs32000_Fc78_A2                         (-5055965)        /* Floating point value -0.004709 */
361 #define BPF_Fs32000_Fc78_B1                      (-2137003977)        /* Floating point value -1.990240 */
362 #define BPF_Fs32000_Fc78_B2                        1063512802         /* Floating point value 0.990473 */
363 #define BPF_Fs44100_Fc78_A0                           3673516         /* Floating point value 0.003421 */
364 #define BPF_Fs44100_Fc78_A1                                 0         /* Floating point value 0.000000 */
365 #define BPF_Fs44100_Fc78_A2                         (-3673516)        /* Floating point value -0.003421 */
366 #define BPF_Fs44100_Fc78_B1                      (-2139919394)        /* Floating point value -1.992955 */
367 #define BPF_Fs44100_Fc78_B2                        1066309718         /* Floating point value 0.993078 */
368 #define BPF_Fs48000_Fc78_A0                           3375990         /* Floating point value 0.003144 */
369 #define BPF_Fs48000_Fc78_A1                                 0         /* Floating point value 0.000000 */
370 #define BPF_Fs48000_Fc78_A2                         (-3375990)        /* Floating point value -0.003144 */
371 #define BPF_Fs48000_Fc78_B1                      (-2140541906)        /* Floating point value -1.993535 */
372 #define BPF_Fs48000_Fc78_B2                        1066911660         /* Floating point value 0.993639 */
373 
374  /* Coefficients for centre frequency 90Hz */
375 #define BPF_Fs8000_Fc90_A0                           24438548         /* Floating point value 0.022760 */
376 #define BPF_Fs8000_Fc90_A1                                  0         /* Floating point value 0.000000 */
377 #define BPF_Fs8000_Fc90_A2                         (-24438548)        /* Floating point value -0.022760 */
378 #define BPF_Fs8000_Fc90_B1                       (-2092801347)        /* Floating point value -1.949073 */
379 #define BPF_Fs8000_Fc90_B2                         1024298757         /* Floating point value 0.953953 */
380 #define BPF_Fs11025_Fc90_A0                          17844385         /* Floating point value 0.016619 */
381 #define BPF_Fs11025_Fc90_A1                                 0         /* Floating point value 0.000000 */
382 #define BPF_Fs11025_Fc90_A2                        (-17844385)        /* Floating point value -0.016619 */
383 #define BPF_Fs11025_Fc90_B1                      (-2108604921)        /* Floating point value -1.963791 */
384 #define BPF_Fs11025_Fc90_B2                        1037639797         /* Floating point value 0.966377 */
385 #define BPF_Fs12000_Fc90_A0                          16416707         /* Floating point value 0.015289 */
386 #define BPF_Fs12000_Fc90_A1                                 0         /* Floating point value 0.000000 */
387 #define BPF_Fs12000_Fc90_A2                        (-16416707)        /* Floating point value -0.015289 */
388 #define BPF_Fs12000_Fc90_B1                      (-2111922936)        /* Floating point value -1.966882 */
389 #define BPF_Fs12000_Fc90_B2                        1040528216         /* Floating point value 0.969067 */
390 #define BPF_Fs16000_Fc90_A0                          12359883         /* Floating point value 0.011511 */
391 #define BPF_Fs16000_Fc90_A1                                 0         /* Floating point value 0.000000 */
392 #define BPF_Fs16000_Fc90_A2                        (-12359883)        /* Floating point value -0.011511 */
393 #define BPF_Fs16000_Fc90_B1                      (-2121152162)        /* Floating point value -1.975477 */
394 #define BPF_Fs16000_Fc90_B2                        1048735817         /* Floating point value 0.976711 */
395 #define BPF_Fs22050_Fc90_A0                           8997173         /* Floating point value 0.008379 */
396 #define BPF_Fs22050_Fc90_A1                                 0         /* Floating point value 0.000000 */
397 #define BPF_Fs22050_Fc90_A2                         (-8997173)        /* Floating point value -0.008379 */
398 #define BPF_Fs22050_Fc90_B1                      (-2128580762)        /* Floating point value -1.982395 */
399 #define BPF_Fs22050_Fc90_B2                        1055539113         /* Floating point value 0.983047 */
400 #define BPF_Fs24000_Fc90_A0                           8271818         /* Floating point value 0.007704 */
401 #define BPF_Fs24000_Fc90_A1                                 0         /* Floating point value 0.000000 */
402 #define BPF_Fs24000_Fc90_A2                         (-8271818)        /* Floating point value -0.007704 */
403 #define BPF_Fs24000_Fc90_B1                      (-2130157013)        /* Floating point value -1.983863 */
404 #define BPF_Fs24000_Fc90_B2                        1057006621         /* Floating point value 0.984414 */
405 #define BPF_Fs32000_Fc90_A0                           6215918         /* Floating point value 0.005789 */
406 #define BPF_Fs32000_Fc90_A1                                 0         /* Floating point value 0.000000 */
407 #define BPF_Fs32000_Fc90_A2                         (-6215918)        /* Floating point value -0.005789 */
408 #define BPF_Fs32000_Fc90_B1                      (-2134574521)        /* Floating point value -1.987977 */
409 #define BPF_Fs32000_Fc90_B2                        1061166033         /* Floating point value 0.988288 */
410 #define BPF_Fs44100_Fc90_A0                           4517651         /* Floating point value 0.004207 */
411 #define BPF_Fs44100_Fc90_A1                                 0         /* Floating point value 0.000000 */
412 #define BPF_Fs44100_Fc90_A2                         (-4517651)        /* Floating point value -0.004207 */
413 #define BPF_Fs44100_Fc90_B1                      (-2138167926)        /* Floating point value -1.991324 */
414 #define BPF_Fs44100_Fc90_B2                        1064601898         /* Floating point value 0.991488 */
415 #define BPF_Fs48000_Fc90_A0                           4152024         /* Floating point value 0.003867 */
416 #define BPF_Fs48000_Fc90_A1                                 0         /* Floating point value 0.000000 */
417 #define BPF_Fs48000_Fc90_A2                         (-4152024)        /* Floating point value -0.003867 */
418 #define BPF_Fs48000_Fc90_B1                      (-2138935002)        /* Floating point value -1.992038 */
419 #define BPF_Fs48000_Fc90_B2                        1065341620         /* Floating point value 0.992177 */
420 
421 
422 /************************************************************************************/
423 /*                                                                                  */
424 /* Automatic Gain Control time constants and gain settings                          */
425 /*                                                                                  */
426 /************************************************************************************/
427 
428 /* AGC Time constants */
429 #define AGC_ATTACK_Fs8000                               27571         /* Floating point value 0.841395 */
430 #define AGC_ATTACK_Fs11025                              28909         /* Floating point value 0.882223 */
431 #define AGC_ATTACK_Fs12000                              29205         /* Floating point value 0.891251 */
432 #define AGC_ATTACK_Fs16000                              30057         /* Floating point value 0.917276 */
433 #define AGC_ATTACK_Fs22050                              30778         /* Floating point value 0.939267 */
434 #define AGC_ATTACK_Fs24000                              30935         /* Floating point value 0.944061 */
435 #define AGC_ATTACK_Fs32000                              31383         /* Floating point value 0.957745 */
436 #define AGC_ATTACK_Fs44100                              31757         /* Floating point value 0.969158 */
437 #define AGC_ATTACK_Fs48000                              31838         /* Floating point value 0.971628 */
438 #define DECAY_SHIFT                                        10         /* As a power of 2 */
439 #define AGC_DECAY_Fs8000                                   44         /* Floating point value 0.000042 */
440 #define AGC_DECAY_Fs11025                                  32         /* Floating point value 0.000030 */
441 #define AGC_DECAY_Fs12000                                  29         /* Floating point value 0.000028 */
442 #define AGC_DECAY_Fs16000                                  22         /* Floating point value 0.000021 */
443 #define AGC_DECAY_Fs22050                                  16         /* Floating point value 0.000015 */
444 #define AGC_DECAY_Fs24000                                  15         /* Floating point value 0.000014 */
445 #define AGC_DECAY_Fs32000                                  11         /* Floating point value 0.000010 */
446 #define AGC_DECAY_Fs44100                                   8         /* Floating point value 0.000008 */
447 #define AGC_DECAY_Fs48000                                   7         /* Floating point value 0.000007 */
448 
449 /* AGC Gain settings */
450 #define AGC_GAIN_SCALE                                        31         /* As a power of 2 */
451 #define AGC_GAIN_SHIFT                                         4         /* As a power of 2 */
452 #define AGC_TARGETLEVEL                              33170337         /* Floating point value -0.100000dB */
453 #define AGC_HPFGAIN_0dB                             110739704         /* Floating point value 0.412538 */
454 #define AGC_GAIN_0dB                                        0         /* Floating point value 0.000000 */
455 #define AGC_HPFGAIN_1dB                             157006071         /* Floating point value 0.584893 */
456 #define AGC_GAIN_1dB                                 32754079         /* Floating point value 0.122018 */
457 #define AGC_HPFGAIN_2dB                             208917788         /* Floating point value 0.778279 */
458 #define AGC_GAIN_2dB                                 69504761         /* Floating point value 0.258925 */
459 #define AGC_HPFGAIN_3dB                             267163693         /* Floating point value 0.995262 */
460 #define AGC_GAIN_3dB                                110739704         /* Floating point value 0.412538 */
461 #define AGC_HPFGAIN_4dB                             332516674         /* Floating point value 1.238721 */
462 #define AGC_GAIN_4dB                                157006071         /* Floating point value 0.584893 */
463 #define AGC_HPFGAIN_5dB                             405843924         /* Floating point value 1.511886 */
464 #define AGC_GAIN_5dB                                208917788         /* Floating point value 0.778279 */
465 #define AGC_HPFGAIN_6dB                             488118451         /* Floating point value 1.818383 */
466 #define AGC_GAIN_6dB                                267163693         /* Floating point value 0.995262 */
467 #define AGC_HPFGAIN_7dB                             580431990         /* Floating point value 2.162278 */
468 #define AGC_GAIN_7dB                                332516674         /* Floating point value 1.238721 */
469 #define AGC_HPFGAIN_8dB                             684009483         /* Floating point value 2.548134 */
470 #define AGC_GAIN_8dB                                405843924         /* Floating point value 1.511886 */
471 #define AGC_HPFGAIN_9dB                             800225343         /* Floating point value 2.981072 */
472 #define AGC_GAIN_9dB                                488118451         /* Floating point value 1.818383 */
473 #define AGC_HPFGAIN_10dB                            930621681         /* Floating point value 3.466836 */
474 #define AGC_GAIN_10dB                               580431990         /* Floating point value 2.162278 */
475 #define AGC_HPFGAIN_11dB                           1076928780         /* Floating point value 4.011872 */
476 #define AGC_GAIN_11dB                               684009483         /* Floating point value 2.548134 */
477 #define AGC_HPFGAIN_12dB                           1241088045         /* Floating point value 4.623413 */
478 #define AGC_GAIN_12dB                               800225343         /* Floating point value 2.981072 */
479 #define AGC_HPFGAIN_13dB                           1425277769         /* Floating point value 5.309573 */
480 #define AGC_GAIN_13dB                               930621681         /* Floating point value 3.466836 */
481 #define AGC_HPFGAIN_14dB                           1631942039         /* Floating point value 6.079458 */
482 #define AGC_GAIN_14dB                              1076928780         /* Floating point value 4.011872 */
483 #define AGC_HPFGAIN_15dB                           1863823163         /* Floating point value 6.943282 */
484 #define AGC_GAIN_15dB                              1241088045         /* Floating point value 4.623413 */
485 
486 
487 /************************************************************************************/
488 /*                                                                                  */
489 /* Volume control                                                                   */
490 /*                                                                                  */
491 /************************************************************************************/
492 
493 /* Volume control gain */
494 #define VOLUME_MAX                                          0         /* In dBs */
495 #define VOLUME_SHIFT                                        0         /* In dBs */
496 
497 /* Volume control time constants */
498 #define VOL_TC_SHIFT                                       21         /* As a power of 2 */
499 #define VOL_TC_Fs8000                                   25889         /* Floating point value 0.024690 */
500 #define VOL_TC_Fs11025                                  18850         /* Floating point value 0.017977 */
501 #define VOL_TC_Fs12000                                  17331         /* Floating point value 0.016529 */
502 #define VOL_TC_Fs16000                                  13026         /* Floating point value 0.012422 */
503 #define VOL_TC_Fs22050                                   9468         /* Floating point value 0.009029 */
504 #define VOL_TC_Fs24000                                   8702         /* Floating point value 0.008299 */
505 #define VOL_TC_Fs32000                                   6533         /* Floating point value 0.006231 */
506 #define VOL_TC_Fs44100                                   4745         /* Floating point value 0.004525 */
507 #define VOL_TC_Fs48000                                   4360         /* Floating point value 0.004158 */
508 #define MIX_TC_Fs8000                                   29365         /* Floating point value 0.896151 */
509 #define MIX_TC_Fs11025                                  30230         /* Floating point value 0.922548 */
510 #define MIX_TC_Fs12000                                  30422         /* Floating point value 0.928415 */
511 #define MIX_TC_Fs16000                                  30978         /* Floating point value 0.945387 */
512 #define MIX_TC_Fs22050                                  31451         /* Floating point value 0.959804 */
513 #define MIX_TC_Fs24000                                  31554         /* Floating point value 0.962956 */
514 #define MIX_TC_Fs32000                                  31850         /* Floating point value 0.971973 */
515 #define MIX_TC_Fs44100                                  32097         /* Floating point value 0.979515 */
516 #define MIX_TC_Fs48000                                  32150         /* Floating point value 0.981150 */
517 
518 #else /*BUILD_FLOAT*/
519 
520 /************************************************************************************/
521 /*                                                                                  */
522 /* General                                                                          */
523 /*                                                                                  */
524 /************************************************************************************/
525 
526 #define LVDBE_SCALESHIFT                                    10         /* As a power of 2 */
527 
528 
529 /************************************************************************************/
530 /*                                                                                  */
531 /* High Pass Filter coefficients                                                    */
532 /*                                                                                  */
533 /************************************************************************************/
534 
535  /* Coefficients for centre frequency 55Hz */
536 #define HPF_Fs8000_Fc55_A0                        0.958849f
537 #define HPF_Fs8000_Fc55_A1                        (-1.917698f)
538 #define HPF_Fs8000_Fc55_A2                        0.958849f
539 #define HPF_Fs8000_Fc55_B1                        (-1.939001f)
540 #define HPF_Fs8000_Fc55_B2                        0.940807f
541 #define HPF_Fs11025_Fc55_A0                       0.966909f
542 #define HPF_Fs11025_Fc55_A1                       (-1.933818f)
543 #define HPF_Fs11025_Fc55_A2                       0.966909f
544 #define HPF_Fs11025_Fc55_B1                       (-1.955732f)
545 #define HPF_Fs11025_Fc55_B2                       0.956690f
546 #define HPF_Fs12000_Fc55_A0                       0.968650f
547 #define HPF_Fs12000_Fc55_A1                       (-1.937300f)
548 #define HPF_Fs12000_Fc55_A2                       0.968650f
549 #define HPF_Fs12000_Fc55_B1                       (-1.959327f)
550 #define HPF_Fs12000_Fc55_B2                       0.960138f
551 #define HPF_Fs16000_Fc55_A0                       0.973588f
552 #define HPF_Fs16000_Fc55_A1                       (-1.947176f)
553 #define HPF_Fs16000_Fc55_A2                       0.973588f
554 #define HPF_Fs16000_Fc55_B1                       (-1.969494f)
555 #define HPF_Fs16000_Fc55_B2                       0.969952f
556 #define HPF_Fs22050_Fc55_A0                       0.977671f
557 #define HPF_Fs22050_Fc55_A1                       (-1.955343f)
558 #define HPF_Fs22050_Fc55_A2                       0.977671f
559 #define HPF_Fs22050_Fc55_B1                       (-1.977863f)
560 #define HPF_Fs22050_Fc55_B2                       0.978105f
561 #define HPF_Fs24000_Fc55_A0                       0.978551f
562 #define HPF_Fs24000_Fc55_A1                       (-1.957102f)
563 #define HPF_Fs24000_Fc55_A2                       0.978551f
564 #define HPF_Fs24000_Fc55_B1                       (-1.979662f)
565 #define HPF_Fs24000_Fc55_B2                       0.979866f
566 #define HPF_Fs32000_Fc55_A0                       0.981042f
567 #define HPF_Fs32000_Fc55_A1                       (-1.962084f)
568 #define HPF_Fs32000_Fc55_A2                       0.981042f
569 #define HPF_Fs32000_Fc55_B1                       (-1.984746f)
570 #define HPF_Fs32000_Fc55_B2                       0.984861f
571 #define HPF_Fs44100_Fc55_A0                       0.983097f
572 #define HPF_Fs44100_Fc55_A1                       (-1.966194f)
573 #define HPF_Fs44100_Fc55_A2                       0.983097f
574 #define HPF_Fs44100_Fc55_B1                       (-1.988931f)
575 #define HPF_Fs44100_Fc55_B2                       0.988992f
576 #define HPF_Fs48000_Fc55_A0                       0.983539f
577 #define HPF_Fs48000_Fc55_A1                       (-1.967079f)
578 #define HPF_Fs48000_Fc55_A2                       0.983539f
579 #define HPF_Fs48000_Fc55_B1                       (-1.989831f)
580 #define HPF_Fs48000_Fc55_B2                       0.989882f
581 
582 #ifdef HIGHER_FS
583 #define HPF_Fs96000_Fc55_A0                       0.986040f
584 #define HPF_Fs96000_Fc55_A1                       (-1.972080f)
585 #define HPF_Fs96000_Fc55_A2                       0.986040f
586 #define HPF_Fs96000_Fc55_B1                       (-1.994915f)
587 #define HPF_Fs96000_Fc55_B2                       0.994928f
588 
589 #define HPF_Fs192000_Fc55_A0                      0.987294f
590 #define HPF_Fs192000_Fc55_A1                      (-1.974588f)
591 #define HPF_Fs192000_Fc55_A2                      0.987294f
592 #define HPF_Fs192000_Fc55_B1                      (-1.997458f)
593 #define HPF_Fs192000_Fc55_B2                      0.997461f
594 #endif
595 
596 
597  /* Coefficients for centre frequency 66Hz */
598 #define HPF_Fs8000_Fc66_A0                        0.953016f
599 #define HPF_Fs8000_Fc66_A1                        (-1.906032f)
600 #define HPF_Fs8000_Fc66_A2                        0.953016f
601 #define HPF_Fs8000_Fc66_B1                        (-1.926810f)
602 #define HPF_Fs8000_Fc66_B2                        0.929396f
603 #define HPF_Fs11025_Fc66_A0                       0.962638f
604 #define HPF_Fs11025_Fc66_A1                       (-1.925275f)
605 #define HPF_Fs11025_Fc66_A2                       0.962638f
606 #define HPF_Fs11025_Fc66_B1                       (-1.946881f)
607 #define HPF_Fs11025_Fc66_B2                       0.948256f
608 #define HPF_Fs12000_Fc66_A0                       0.964718f
609 #define HPF_Fs12000_Fc66_A1                       (-1.929435f)
610 #define HPF_Fs12000_Fc66_A2                       0.964718f
611 #define HPF_Fs12000_Fc66_B1                       (-1.951196f)
612 #define HPF_Fs12000_Fc66_B2                       0.952359f
613 #define HPF_Fs16000_Fc66_A0                       0.970622f
614 #define HPF_Fs16000_Fc66_A1                       (-1.941244f)
615 #define HPF_Fs16000_Fc66_A2                       0.970622f
616 #define HPF_Fs16000_Fc66_B1                       (-1.963394f)
617 #define HPF_Fs16000_Fc66_B2                       0.964052f
618 #define HPF_Fs22050_Fc66_A0                       0.975509f
619 #define HPF_Fs22050_Fc66_A1                       (-1.951019f)
620 #define HPF_Fs22050_Fc66_A2                       0.975509f
621 #define HPF_Fs22050_Fc66_B1                       (-1.973436f)
622 #define HPF_Fs22050_Fc66_B2                       0.973784f
623 #define HPF_Fs24000_Fc66_A0                       0.976563f
624 #define HPF_Fs24000_Fc66_A1                       (-1.953125f)
625 #define HPF_Fs24000_Fc66_A2                       0.976563f
626 #define HPF_Fs24000_Fc66_B1                       (-1.975594f)
627 #define HPF_Fs24000_Fc66_B2                       0.975889f
628 #define HPF_Fs32000_Fc66_A0                       0.979547f
629 #define HPF_Fs32000_Fc66_A1                       (-1.959093f)
630 #define HPF_Fs32000_Fc66_A2                       0.979547f
631 #define HPF_Fs32000_Fc66_B1                       (-1.981695f)
632 #define HPF_Fs32000_Fc66_B2                       0.981861f
633 #define HPF_Fs44100_Fc66_A0                       0.982010f
634 #define HPF_Fs44100_Fc66_A1                       (-1.964019f)
635 #define HPF_Fs44100_Fc66_A2                       0.982010f
636 #define HPF_Fs44100_Fc66_B1                       (-1.986718f)
637 #define HPF_Fs44100_Fc66_B2                       0.986805f
638 #define HPF_Fs48000_Fc66_A0                       0.982540f
639 #define HPF_Fs48000_Fc66_A1                       (-1.965079f)
640 #define HPF_Fs48000_Fc66_A2                       0.982540f
641 #define HPF_Fs48000_Fc66_B1                       (-1.987797f)
642 #define HPF_Fs48000_Fc66_B2                       0.987871f
643 
644 #ifdef HIGHER_FS
645 #define HPF_Fs96000_Fc66_A0                       0.985539f
646 #define HPF_Fs96000_Fc66_A1                       (-1.971077f)
647 #define HPF_Fs96000_Fc66_A2                       0.985539f
648 #define HPF_Fs96000_Fc66_B1                       (-1.993898f)
649 #define HPF_Fs96000_Fc66_B2                       0.993917f
650 
651 #define HPF_Fs192000_Fc66_A0                      0.987043f
652 #define HPF_Fs192000_Fc66_A1                      (-1.974086f)
653 #define HPF_Fs192000_Fc66_A2                      0.987043f
654 #define HPF_Fs192000_Fc66_B1                      (-1.996949f)
655 #define HPF_Fs192000_Fc66_B2                      0.996954f
656 #endif
657 
658 /* Coefficients for centre frequency 78Hz */
659 #define HPF_Fs8000_Fc78_A0                        0.946693f
660 #define HPF_Fs8000_Fc78_A1                        (-1.893387f)
661 #define HPF_Fs8000_Fc78_A2                        0.946693f
662 #define HPF_Fs8000_Fc78_B1                        (-1.913517f)
663 #define HPF_Fs8000_Fc78_B2                        0.917105f
664 #define HPF_Fs11025_Fc78_A0                       0.957999f
665 #define HPF_Fs11025_Fc78_A1                       (-1.915998f)
666 #define HPF_Fs11025_Fc78_A2                       0.957999f
667 #define HPF_Fs11025_Fc78_B1                       (-1.937229f)
668 #define HPF_Fs11025_Fc78_B2                       0.939140f
669 #define HPF_Fs12000_Fc78_A0                       0.960446f
670 #define HPF_Fs12000_Fc78_A1                       (-1.920892f)
671 #define HPF_Fs12000_Fc78_A2                       0.960446f
672 #define HPF_Fs12000_Fc78_B1                       (-1.942326f)
673 #define HPF_Fs12000_Fc78_B2                       0.943944f
674 #define HPF_Fs16000_Fc78_A0                       0.967397f
675 #define HPF_Fs16000_Fc78_A1                       (-1.934794f)
676 #define HPF_Fs16000_Fc78_A2                       0.967397f
677 #define HPF_Fs16000_Fc78_B1                       (-1.956740f)
678 #define HPF_Fs16000_Fc78_B2                       0.957656f
679 #define HPF_Fs22050_Fc78_A0                       0.973156f
680 #define HPF_Fs22050_Fc78_A1                       (-1.946313f)
681 #define HPF_Fs22050_Fc78_A2                       0.973156f
682 #define HPF_Fs22050_Fc78_B1                       (-1.968607f)
683 #define HPF_Fs22050_Fc78_B2                       0.969092f
684 #define HPF_Fs24000_Fc78_A0                       0.974398f
685 #define HPF_Fs24000_Fc78_A1                       (-1.948797f)
686 #define HPF_Fs24000_Fc78_A2                       0.974398f
687 #define HPF_Fs24000_Fc78_B1                       (-1.971157f)
688 #define HPF_Fs24000_Fc78_B2                       0.971568f
689 #define HPF_Fs32000_Fc78_A0                       0.977918f
690 #define HPF_Fs32000_Fc78_A1                       (-1.955836f)
691 #define HPF_Fs32000_Fc78_A2                       0.977918f
692 #define HPF_Fs32000_Fc78_B1                       (-1.978367f)
693 #define HPF_Fs32000_Fc78_B2                       0.978599f
694 #define HPF_Fs44100_Fc78_A0                       0.980824f
695 #define HPF_Fs44100_Fc78_A1                       (-1.961649f)
696 #define HPF_Fs44100_Fc78_A2                       0.980824f
697 #define HPF_Fs44100_Fc78_B1                       (-1.984303f)
698 #define HPF_Fs44100_Fc78_B2                       0.984425f
699 #define HPF_Fs48000_Fc78_A0                       0.981450f
700 #define HPF_Fs48000_Fc78_A1                       (-1.962900f)
701 #define HPF_Fs48000_Fc78_A2                       0.981450f
702 #define HPF_Fs48000_Fc78_B1                       (-1.985578f)
703 #define HPF_Fs48000_Fc78_B2                       0.985681f
704 
705 #ifdef HIGHER_FS
706 #define HPF_Fs96000_Fc78_A0                       0.984992f
707 #define HPF_Fs96000_Fc78_A1                       (-1.969984f)
708 #define HPF_Fs96000_Fc78_A2                       0.984992f
709 #define HPF_Fs96000_Fc78_B1                       (-1.992789f)
710 #define HPF_Fs96000_Fc78_B2                       0.992815f
711 
712 #define HPF_Fs192000_Fc78_A0                      0.986769f
713 #define HPF_Fs192000_Fc78_A1                      (-1.973539f)
714 #define HPF_Fs192000_Fc78_A2                      0.986769f
715 #define HPF_Fs192000_Fc78_B1                      (-1.996394f)
716 #define HPF_Fs192000_Fc78_B2                      0.996401f
717 #endif
718 
719 /* Coefficients for centre frequency 90Hz */
720 #define HPF_Fs8000_Fc90_A0                       0.940412f
721 #define HPF_Fs8000_Fc90_A1                       (-1.880825f)
722 #define HPF_Fs8000_Fc90_A2                       0.940412f
723 #define HPF_Fs8000_Fc90_B1                       (-1.900231f)
724 #define HPF_Fs8000_Fc90_B2                       0.904977f
725 #define HPF_Fs11025_Fc90_A0                      0.953383f
726 #define HPF_Fs11025_Fc90_A1                      (-1.906766f)
727 #define HPF_Fs11025_Fc90_A2                      0.953383f
728 #define HPF_Fs11025_Fc90_B1                      (-1.927579f)
729 #define HPF_Fs11025_Fc90_B2                      0.930111f
730 #define HPF_Fs12000_Fc90_A0                      0.956193f
731 #define HPF_Fs12000_Fc90_A1                      (-1.912387f)
732 #define HPF_Fs12000_Fc90_A2                      0.956193f
733 #define HPF_Fs12000_Fc90_B1                      (-1.933459f)
734 #define HPF_Fs12000_Fc90_B2                      0.935603f
735 #define HPF_Fs16000_Fc90_A0                      0.964183f
736 #define HPF_Fs16000_Fc90_A1                      (-1.928365f)
737 #define HPF_Fs16000_Fc90_A2                      0.964183f
738 #define HPF_Fs16000_Fc90_B1                      (-1.950087f)
739 #define HPF_Fs16000_Fc90_B2                      0.951303f
740 #define HPF_Fs22050_Fc90_A0                      0.970809f
741 #define HPF_Fs22050_Fc90_A1                      (-1.941618f)
742 #define HPF_Fs22050_Fc90_A2                      0.970809f
743 #define HPF_Fs22050_Fc90_B1                      (-1.963778f)
744 #define HPF_Fs22050_Fc90_B2                      0.964423f
745 #define HPF_Fs24000_Fc90_A0                      0.972239f
746 #define HPF_Fs24000_Fc90_A1                      (-1.944477f)
747 #define HPF_Fs24000_Fc90_A2                      0.972239f
748 #define HPF_Fs24000_Fc90_B1                      (-1.966721f)
749 #define HPF_Fs24000_Fc90_B2                      0.967266f
750 #define HPF_Fs32000_Fc90_A0                      0.976292f
751 #define HPF_Fs32000_Fc90_A1                      (-1.952584f)
752 #define HPF_Fs32000_Fc90_A2                      0.976292f
753 #define HPF_Fs32000_Fc90_B1                      (-1.975040f)
754 #define HPF_Fs32000_Fc90_B2                      0.975347f
755 #define HPF_Fs44100_Fc90_A0                      0.979641f
756 #define HPF_Fs44100_Fc90_A1                      (-1.959282f)
757 #define HPF_Fs44100_Fc90_A2                      0.979641f
758 #define HPF_Fs44100_Fc90_B1                      (-1.981888f)
759 #define HPF_Fs44100_Fc90_B2                      0.982050f
760 #define HPF_Fs48000_Fc90_A0                      0.980362f
761 #define HPF_Fs48000_Fc90_A1                      (-1.960724f)
762 #define HPF_Fs48000_Fc90_A2                      0.980362f
763 #define HPF_Fs48000_Fc90_B1                      (-1.983359f)
764 #define HPF_Fs48000_Fc90_B2                      0.983497f
765 
766 #ifdef HIGHER_FS
767 #define HPF_Fs96000_Fc90_A0                       0.984446f
768 #define HPF_Fs96000_Fc90_A1                       (-1.968892f)
769 #define HPF_Fs96000_Fc90_A2                       0.984446f
770 #define HPF_Fs96000_Fc90_B1                       (-1.991680f)
771 #define HPF_Fs96000_Fc90_B2                       0.991714f
772 
773 #define HPF_Fs192000_Fc90_A0                      0.986496f
774 #define HPF_Fs192000_Fc90_A1                      (-1.972992f)
775 #define HPF_Fs192000_Fc90_A2                      0.986496f
776 #define HPF_Fs192000_Fc90_B1                      (-1.995840f)
777 #define HPF_Fs192000_Fc90_B2                      0.995848f
778 #endif
779 
780 /************************************************************************************/
781 /*                                                                                  */
782 /* Band Pass Filter coefficients                                                    */
783 /*                                                                                  */
784 /************************************************************************************/
785 
786 /* Coefficients for centre frequency 55Hz */
787 #define BPF_Fs8000_Fc55_A0                       0.009197f
788 #define BPF_Fs8000_Fc55_A1                       0.000000f
789 #define BPF_Fs8000_Fc55_A2                       (-0.009197f)
790 #define BPF_Fs8000_Fc55_B1                       (-1.979545f)
791 #define BPF_Fs8000_Fc55_B2                       0.981393f
792 #define BPF_Fs11025_Fc55_A0                      0.006691f
793 #define BPF_Fs11025_Fc55_A1                      0.000000f
794 #define BPF_Fs11025_Fc55_A2                      (-0.006691f)
795 #define BPF_Fs11025_Fc55_B1                      (-1.985488f)
796 #define BPF_Fs11025_Fc55_B2                      0.986464f
797 #define BPF_Fs12000_Fc55_A0                      0.006150f
798 #define BPF_Fs12000_Fc55_A1                      0.000000f
799 #define BPF_Fs12000_Fc55_A2                      (-0.006150f)
800 #define BPF_Fs12000_Fc55_B1                      (-1.986733f)
801 #define BPF_Fs12000_Fc55_B2                      0.987557f
802 #define BPF_Fs16000_Fc55_A0                      0.004620f
803 #define BPF_Fs16000_Fc55_A1                      0.000000f
804 #define BPF_Fs16000_Fc55_A2                      (-0.004620f)
805 #define BPF_Fs16000_Fc55_B1                      (-1.990189f)
806 #define BPF_Fs16000_Fc55_B2                      0.990653f
807 #define BPF_Fs22050_Fc55_A0                      0.003357f
808 #define BPF_Fs22050_Fc55_A1                      0.000000f
809 #define BPF_Fs22050_Fc55_A2                      (-0.003357f)
810 #define BPF_Fs22050_Fc55_B1                      (-1.992964f)
811 #define BPF_Fs22050_Fc55_B2                      0.993209f
812 #define BPF_Fs24000_Fc55_A0                      0.003085f
813 #define BPF_Fs24000_Fc55_A1                      0.000000f
814 #define BPF_Fs24000_Fc55_A2                      (-0.003085f)
815 #define BPF_Fs24000_Fc55_B1                      (-1.993552f)
816 #define BPF_Fs24000_Fc55_B2                      0.993759f
817 #define BPF_Fs32000_Fc55_A0                      0.002315f
818 #define BPF_Fs32000_Fc55_A1                      0.000000f
819 #define BPF_Fs32000_Fc55_A2                      (-0.002315f)
820 #define BPF_Fs32000_Fc55_B1                      (-1.995199f)
821 #define BPF_Fs32000_Fc55_B2                      0.995316f
822 #define BPF_Fs44100_Fc55_A0                      0.001681f
823 #define BPF_Fs44100_Fc55_A1                      0.000000f
824 #define BPF_Fs44100_Fc55_A2                      (-0.001681f)
825 #define BPF_Fs44100_Fc55_B1                      (-1.996537f)
826 #define BPF_Fs44100_Fc55_B2                      0.996599f
827 #define BPF_Fs48000_Fc55_A0                      0.001545f
828 #define BPF_Fs48000_Fc55_A1                      0.000000f
829 #define BPF_Fs48000_Fc55_A2                      (-0.001545f)
830 #define BPF_Fs48000_Fc55_B1                      (-1.996823f)
831 #define BPF_Fs48000_Fc55_B2                      0.996875f
832 
833 #ifdef HIGHER_FS
834 #define BPF_Fs96000_Fc55_A0                      0.000762f
835 #define BPF_Fs96000_Fc55_A1                      0.000000f
836 #define BPF_Fs96000_Fc55_A2                      (-0.000762f)
837 #define BPF_Fs96000_Fc55_B1                      (-1.998461f)
838 #define BPF_Fs96000_Fc55_B2                      0.998477f
839 
840 #define BPF_Fs192000_Fc55_A0                     0.000381f
841 #define BPF_Fs192000_Fc55_A1                     0.000000f
842 #define BPF_Fs192000_Fc55_A2                     (-0.000381f)
843 #define BPF_Fs192000_Fc55_B1                     (-1.999234f)
844 #define BPF_Fs192000_Fc55_B2                     0.999238f
845 #endif
846 
847 /* Coefficients for centre frequency 66Hz */
848 #define BPF_Fs8000_Fc66_A0                      0.012648f
849 #define BPF_Fs8000_Fc66_A1                      0.000000f
850 #define BPF_Fs8000_Fc66_A2                      (-0.012648f)
851 #define BPF_Fs8000_Fc66_B1                      (-1.971760f)
852 #define BPF_Fs8000_Fc66_B2                      0.974412f
853 #define BPF_Fs11025_Fc66_A0                     0.009209f
854 #define BPF_Fs11025_Fc66_A1                     0.000000f
855 #define BPF_Fs11025_Fc66_A2                     (-0.009209f)
856 #define BPF_Fs11025_Fc66_B1                     (-1.979966f)
857 #define BPF_Fs11025_Fc66_B2                     0.981368f
858 #define BPF_Fs12000_Fc66_A0                     0.008468f
859 #define BPF_Fs12000_Fc66_A1                     0.000000f
860 #define BPF_Fs12000_Fc66_A2                     (-0.008468f)
861 #define BPF_Fs12000_Fc66_B1                     (-1.981685f)
862 #define BPF_Fs12000_Fc66_B2                     0.982869f
863 #define BPF_Fs16000_Fc66_A0                     0.006364f
864 #define BPF_Fs16000_Fc66_A1                     0.000000f
865 #define BPF_Fs16000_Fc66_A2                     (-0.006364f)
866 #define BPF_Fs16000_Fc66_B1                     (-1.986457f)
867 #define BPF_Fs16000_Fc66_B2                     0.987124f
868 #define BPF_Fs22050_Fc66_A0                     0.004626f
869 #define BPF_Fs22050_Fc66_A1                     0.000000f
870 #define BPF_Fs22050_Fc66_A2                     (-0.004626f)
871 #define BPF_Fs22050_Fc66_B1                     (-1.990288f)
872 #define BPF_Fs22050_Fc66_B2                     0.990641f
873 #define BPF_Fs24000_Fc66_A0                     0.004252f
874 #define BPF_Fs24000_Fc66_A1                     0.000000f
875 #define BPF_Fs24000_Fc66_A2                     (-0.004252f)
876 #define BPF_Fs24000_Fc66_B1                     (-1.991100f)
877 #define BPF_Fs24000_Fc66_B2                     0.991398f
878 #define BPF_Fs32000_Fc66_A0                     0.003192f
879 #define BPF_Fs32000_Fc66_A1                     0.000000f
880 #define BPF_Fs32000_Fc66_A2                     (-0.003192f)
881 #define BPF_Fs32000_Fc66_B1                     (-1.993374f)
882 #define BPF_Fs32000_Fc66_B2                     0.993541f
883 #define BPF_Fs44100_Fc66_A0                     0.002318f
884 #define BPF_Fs44100_Fc66_A1                     0.000000f
885 #define BPF_Fs44100_Fc66_A2                     (-0.002318f)
886 #define BPF_Fs44100_Fc66_B1                     (-1.995221f)
887 #define BPF_Fs44100_Fc66_B2                     0.995309f
888 #define BPF_Fs48000_Fc66_A0                     0.002131f
889 #define BPF_Fs48000_Fc66_A1                     0.000000f
890 #define BPF_Fs48000_Fc66_A2                     (-0.002131f)
891 #define BPF_Fs48000_Fc66_B1                     (-1.995615f)
892 #define BPF_Fs48000_Fc66_B2                     0.995690f
893 
894 #ifdef HIGHER_FS
895 #define BPF_Fs96000_Fc66_A0                     0.001055f
896 #define BPF_Fs96000_Fc66_A1                     0.000000f
897 #define BPF_Fs96000_Fc66_A2                     (-0.001055f)
898 #define BPF_Fs96000_Fc66_B1                     (-1.997868f)
899 #define BPF_Fs96000_Fc66_B2                     0.997891f
900 
901 #define BPF_Fs192000_Fc66_A0                    0.000528f
902 #define BPF_Fs192000_Fc66_A1                    0.000000f
903 #define BPF_Fs192000_Fc66_A2                   (-0.000528f)
904 #define BPF_Fs192000_Fc66_B1                   (-1.998939f)
905 #define BPF_Fs192000_Fc66_B2                    0.998945f
906 #endif
907 
908 /* Coefficients for centre frequency 78Hz */
909 #define BPF_Fs8000_Fc78_A0                      0.018572f
910 #define BPF_Fs8000_Fc78_A1                      0.000000f
911 #define BPF_Fs8000_Fc78_A2                      (-0.018572f)
912 #define BPF_Fs8000_Fc78_B1                      (-1.958745f)
913 #define BPF_Fs8000_Fc78_B2                      0.962427f
914 #define BPF_Fs11025_Fc78_A0                     0.013545f
915 #define BPF_Fs11025_Fc78_A1                     0.000000f
916 #define BPF_Fs11025_Fc78_A2                     (-0.013545f)
917 #define BPF_Fs11025_Fc78_B1                     (-1.970647f)
918 #define BPF_Fs11025_Fc78_B2                     0.972596f
919 #define BPF_Fs12000_Fc78_A0                     0.012458f
920 #define BPF_Fs12000_Fc78_A1                     0.000000f
921 #define BPF_Fs12000_Fc78_A2                     (-0.012458f)
922 #define BPF_Fs12000_Fc78_B1                     (-1.973148f)
923 #define BPF_Fs12000_Fc78_B2                     0.974795f
924 #define BPF_Fs16000_Fc78_A0                     0.009373f
925 #define BPF_Fs16000_Fc78_A1                     0.000000f
926 #define BPF_Fs16000_Fc78_A2                     (-0.009373f)
927 #define BPF_Fs16000_Fc78_B1                     (-1.980108f)
928 #define BPF_Fs16000_Fc78_B2                     0.981037f
929 #define BPF_Fs22050_Fc78_A0                     0.006819f
930 #define BPF_Fs22050_Fc78_A1                     0.000000f
931 #define BPF_Fs22050_Fc78_A2                     (-0.006819f)
932 #define BPF_Fs22050_Fc78_B1                     (-1.985714f)
933 #define BPF_Fs22050_Fc78_B2                     0.986204f
934 #define BPF_Fs24000_Fc78_A0                     0.006268f
935 #define BPF_Fs24000_Fc78_A1                     0.000000f
936 #define BPF_Fs24000_Fc78_A2                     (-0.006268f)
937 #define BPF_Fs24000_Fc78_B1                     (-1.986904f)
938 #define BPF_Fs24000_Fc78_B2                     0.987318f
939 #define BPF_Fs32000_Fc78_A0                     0.004709f
940 #define BPF_Fs32000_Fc78_A1                     0.000000f
941 #define BPF_Fs32000_Fc78_A2                     (-0.004709f)
942 #define BPF_Fs32000_Fc78_B1                     (-1.990240f)
943 #define BPF_Fs32000_Fc78_B2                     0.990473f
944 #define BPF_Fs44100_Fc78_A0                     0.003421f
945 #define BPF_Fs44100_Fc78_A1                     0.000000f
946 #define BPF_Fs44100_Fc78_A2                     (-0.003421f)
947 #define BPF_Fs44100_Fc78_B1                     (-1.992955f)
948 #define BPF_Fs44100_Fc78_B2                     0.993078f
949 #define BPF_Fs48000_Fc78_A0                     0.003144f
950 #define BPF_Fs48000_Fc78_A1                     0.000000f
951 #define BPF_Fs48000_Fc78_A2                     (-0.003144f)
952 #define BPF_Fs48000_Fc78_B1                     (-1.993535f)
953 #define BPF_Fs48000_Fc78_B2                     0.993639f
954 
955 #ifdef HIGHER_FS
956 #define BPF_Fs96000_Fc78_A0                     0.001555f
957 #define BPF_Fs96000_Fc78_A1                     0.000000f
958 #define BPF_Fs96000_Fc78_A2                    (-0.0015555f)
959 #define BPF_Fs96000_Fc78_B1                    (-1.996860f)
960 #define BPF_Fs96000_Fc78_B2                     0.996891f
961 
962 #define BPF_Fs192000_Fc78_A0                    0.000778f
963 #define BPF_Fs192000_Fc78_A1                    0.000000f
964 #define BPF_Fs192000_Fc78_A2                   (-0.000778f)
965 #define BPF_Fs192000_Fc78_B1                   (-1.998437f)
966 #define BPF_Fs192000_Fc78_B2                    0.998444f
967 #endif
968 
969 /* Coefficients for centre frequency 90Hz */
970 #define BPF_Fs8000_Fc90_A0                       0.022760f
971 #define BPF_Fs8000_Fc90_A1                       0.000000f
972 #define BPF_Fs8000_Fc90_A2                       (-0.022760f)
973 #define BPF_Fs8000_Fc90_B1                       (-1.949073f)
974 #define BPF_Fs8000_Fc90_B2                       0.953953f
975 #define BPF_Fs11025_Fc90_A0                      0.016619f
976 #define BPF_Fs11025_Fc90_A1                      0.000000f
977 #define BPF_Fs11025_Fc90_A2                      (-0.016619f)
978 #define BPF_Fs11025_Fc90_B1                      (-1.963791f)
979 #define BPF_Fs11025_Fc90_B2                      0.966377f
980 #define BPF_Fs12000_Fc90_A0                      0.015289f
981 #define BPF_Fs12000_Fc90_A1                      0.000000f
982 #define BPF_Fs12000_Fc90_A2                      (-0.015289f)
983 #define BPF_Fs12000_Fc90_B1                      (-1.966882f)
984 #define BPF_Fs12000_Fc90_B2                      0.969067f
985 #define BPF_Fs16000_Fc90_A0                      0.011511f
986 #define BPF_Fs16000_Fc90_A1                      0.000000f
987 #define BPF_Fs16000_Fc90_A2                      (-0.011511f)
988 #define BPF_Fs16000_Fc90_B1                      (-1.975477f)
989 #define BPF_Fs16000_Fc90_B2                      0.976711f
990 #define BPF_Fs22050_Fc90_A0                      0.008379f
991 #define BPF_Fs22050_Fc90_A1                      0.000000f
992 #define BPF_Fs22050_Fc90_A2                      (-0.008379f)
993 #define BPF_Fs22050_Fc90_B1                      (-1.982395f)
994 #define BPF_Fs22050_Fc90_B2                      0.983047f
995 #define BPF_Fs24000_Fc90_A0                      0.007704f
996 #define BPF_Fs24000_Fc90_A1                      0.000000f
997 #define BPF_Fs24000_Fc90_A2                      (-0.007704f)
998 #define BPF_Fs24000_Fc90_B1                      (-1.983863f)
999 #define BPF_Fs24000_Fc90_B2                      0.984414f
1000 #define BPF_Fs32000_Fc90_A0                      0.005789f
1001 #define BPF_Fs32000_Fc90_A1                      0.000000f
1002 #define BPF_Fs32000_Fc90_A2                      (-0.005789f)
1003 #define BPF_Fs32000_Fc90_B1                      (-1.987977f)
1004 #define BPF_Fs32000_Fc90_B2                      0.988288f
1005 #define BPF_Fs44100_Fc90_A0                      0.004207f
1006 #define BPF_Fs44100_Fc90_A1                      0.000000f
1007 #define BPF_Fs44100_Fc90_A2                      (-0.004207f)
1008 #define BPF_Fs44100_Fc90_B1                      (-1.991324f)
1009 #define BPF_Fs44100_Fc90_B2                      0.991488f
1010 #define BPF_Fs48000_Fc90_A0                      0.003867f
1011 #define BPF_Fs48000_Fc90_A1                      0.000000f
1012 #define BPF_Fs48000_Fc90_A2                      (-0.003867f)
1013 #define BPF_Fs48000_Fc90_B1                      (-1.992038f)
1014 #define BPF_Fs48000_Fc90_B2                      0.992177f
1015 
1016 #ifdef HIGHER_FS
1017 #define BPF_Fs96000_Fc90_A0                      0.001913f
1018 #define BPF_Fs96000_Fc90_A1                      0.000000f
1019 #define BPF_Fs96000_Fc90_A2                     (-0.001913f)
1020 #define BPF_Fs96000_Fc90_B1                     (-1.996134f)
1021 #define BPF_Fs96000_Fc90_B2                      0.996174f
1022 
1023 #define BPF_Fs192000_Fc90_A0                     0.000958f
1024 #define BPF_Fs192000_Fc90_A1                     0.000000f
1025 #define BPF_Fs192000_Fc90_A2                    (-0.000958f)
1026 #define BPF_Fs192000_Fc90_B1                    (-1.998075f)
1027 #define BPF_Fs192000_Fc90_B2                     0.998085f
1028 #endif
1029 
1030 /************************************************************************************/
1031 /*                                                                                  */
1032 /* Automatic Gain Control time constants and gain settings                          */
1033 /*                                                                                  */
1034 /************************************************************************************/
1035 
1036 /* AGC Time constants */
1037 #define AGC_ATTACK_Fs8000                             0.841395f
1038 #define AGC_ATTACK_Fs11025                            0.882223f
1039 #define AGC_ATTACK_Fs12000                            0.891251f
1040 #define AGC_ATTACK_Fs16000                            0.917276f
1041 #define AGC_ATTACK_Fs22050                            0.939267f
1042 #define AGC_ATTACK_Fs24000                            0.944061f
1043 #define AGC_ATTACK_Fs32000                            0.957745f
1044 #define AGC_ATTACK_Fs44100                            0.969158f
1045 #define AGC_ATTACK_Fs48000                            0.971628f
1046 
1047 #ifdef HIGHER_FS
1048 #define AGC_ATTACK_Fs96000                             0.985712f
1049 #define AGC_ATTACK_Fs192000                            0.992830f
1050 #endif
1051 
1052 #define DECAY_SHIFT                                   10
1053 
1054 #define AGC_DECAY_Fs8000                              0.000042f
1055 #define AGC_DECAY_Fs11025                             0.000030f
1056 #define AGC_DECAY_Fs12000                             0.000028f
1057 #define AGC_DECAY_Fs16000                             0.000021f
1058 #define AGC_DECAY_Fs22050                             0.000015f
1059 #define AGC_DECAY_Fs24000                             0.000014f
1060 #define AGC_DECAY_Fs32000                             0.000010f
1061 #define AGC_DECAY_Fs44100                             0.000008f
1062 #define AGC_DECAY_Fs48000                             0.000007f
1063 
1064 #ifdef HIGHER_FS
1065 #define AGC_DECAY_FS96000                            0.0000035f
1066 #define AGC_DECAY_FS192000                          0.00000175f
1067 #endif
1068 
1069 /* AGC Gain settings */
1070 #define AGC_GAIN_SCALE                                        31         /* As a power of 2 */
1071 #define AGC_GAIN_SHIFT                                         4         /* As a power of 2 */
1072 #define AGC_TARGETLEVEL                            0.988553f
1073 #define AGC_HPFGAIN_0dB                            0.412538f
1074 #define AGC_GAIN_0dB                               0.000000f
1075 #define AGC_HPFGAIN_1dB                            0.584893f
1076 #define AGC_GAIN_1dB                               0.122018f
1077 #define AGC_HPFGAIN_2dB                            0.778279f
1078 #define AGC_GAIN_2dB                               0.258925f
1079 #define AGC_HPFGAIN_3dB                            0.995262f
1080 #define AGC_GAIN_3dB                               0.412538f
1081 #define AGC_HPFGAIN_4dB                            1.238721f
1082 #define AGC_GAIN_4dB                               0.584893f
1083 #define AGC_HPFGAIN_5dB                            1.511886f
1084 #define AGC_GAIN_5dB                               0.778279f
1085 #define AGC_HPFGAIN_6dB                            1.818383f
1086 #define AGC_GAIN_6dB                               0.995262f
1087 #define AGC_HPFGAIN_7dB                            2.162278f
1088 #define AGC_GAIN_7dB                               1.238721f
1089 #define AGC_HPFGAIN_8dB                            2.548134f
1090 #define AGC_GAIN_8dB                               1.511886f
1091 #define AGC_HPFGAIN_9dB                            2.981072f
1092 #define AGC_GAIN_9dB                               1.818383f
1093 #define AGC_HPFGAIN_10dB                           3.466836f
1094 #define AGC_GAIN_10dB                              2.162278f
1095 #define AGC_HPFGAIN_11dB                           4.011872f
1096 #define AGC_GAIN_11dB                              2.548134f
1097 #define AGC_HPFGAIN_12dB                           4.623413f
1098 #define AGC_GAIN_12dB                              2.981072f
1099 #define AGC_HPFGAIN_13dB                           5.309573f
1100 #define AGC_GAIN_13dB                              3.466836f
1101 #define AGC_HPFGAIN_14dB                           6.079458f
1102 #define AGC_GAIN_14dB                              4.011872f
1103 #define AGC_HPFGAIN_15dB                           6.943282f
1104 #define AGC_GAIN_15dB                              4.623413f
1105 
1106 /************************************************************************************/
1107 /*                                                                                  */
1108 /* Volume control                                                                   */
1109 /*                                                                                  */
1110 /************************************************************************************/
1111 
1112 /* Volume control gain */
1113 #define VOLUME_MAX                                          0         /* In dBs */
1114 #define VOLUME_SHIFT                                        0         /* In dBs */
1115 
1116 /* Volume control time constants */
1117 #define VOL_TC_SHIFT                                       21         /* As a power of 2 */
1118 #define VOL_TC_Fs8000                                   0.024690f
1119 #define VOL_TC_Fs11025                                  0.017977f
1120 #define VOL_TC_Fs12000                                  0.016529f
1121 #define VOL_TC_Fs16000                                  0.012422f
1122 #define VOL_TC_Fs22050                                  0.009029f
1123 #define VOL_TC_Fs24000                                  0.008299f
1124 #define VOL_TC_Fs32000                                  0.006231f
1125 #define VOL_TC_Fs44100                                  0.004525f
1126 #define VOL_TC_Fs48000                                  0.004158f
1127 #ifdef HIGHER_FS
1128 #define VOL_TC_Fs96000                                  0.002079f
1129 #define VOL_TC_Fs192000                                 0.001039f
1130 #endif
1131 #define MIX_TC_Fs8000                                   29365         /* Floating point value 0.896151 */
1132 #define MIX_TC_Fs11025                                  30230         /* Floating point value 0.922548 */
1133 #define MIX_TC_Fs12000                                  30422         /* Floating point value 0.928415 */
1134 #define MIX_TC_Fs16000                                  30978         /* Floating point value 0.945387 */
1135 #define MIX_TC_Fs22050                                  31451         /* Floating point value 0.959804 */
1136 #define MIX_TC_Fs24000                                  31554         /* Floating point value 0.962956 */
1137 #define MIX_TC_Fs32000                                  31850         /* Floating point value 0.971973 */
1138 #define MIX_TC_Fs44100                                  32097         /* Floating point value 0.979515 */
1139 #define MIX_TC_Fs48000                                  32150         /* Floating point value 0.981150 */
1140 #ifdef HIGHER_FS
1141 #define MIX_TC_Fs96000                                  32456         /* Floating point value 0.990530 */
1142 #define MIX_TC_Fs192000                                 32611         /* Floating point value 0.992524 */
1143 #endif
1144 
1145 #endif /*BUILD_FLOAT*/
1146 #endif