Home | History | Annotate | Download | only in src
      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_Fs88200_Fc55_A0                       0.985818f
    584 #define HPF_Fs88200_Fc55_A1                       (-1.971636f)
    585 #define HPF_Fs88200_Fc55_A2                       0.985818f
    586 #define HPF_Fs88200_Fc55_B1                       (-1.994466f)
    587 #define HPF_Fs88200_Fc55_B2                       0.994481f
    588 
    589 #define HPF_Fs96000_Fc55_A0                       0.986040f
    590 #define HPF_Fs96000_Fc55_A1                       (-1.972080f)
    591 #define HPF_Fs96000_Fc55_A2                       0.986040f
    592 #define HPF_Fs96000_Fc55_B1                       (-1.994915f)
    593 #define HPF_Fs96000_Fc55_B2                       0.994928f
    594 
    595 #define HPF_Fs176400_Fc55_A0                      0.987183f
    596 #define HPF_Fs176400_Fc55_A1                      (-1.974366f)
    597 #define HPF_Fs176400_Fc55_A2                      0.987183f
    598 #define HPF_Fs176400_Fc55_B1                      (-1.997233f)
    599 #define HPF_Fs176400_Fc55_B2                      0.997237f
    600 
    601 #define HPF_Fs192000_Fc55_A0                      0.987294f
    602 #define HPF_Fs192000_Fc55_A1                      (-1.974588f)
    603 #define HPF_Fs192000_Fc55_A2                      0.987294f
    604 #define HPF_Fs192000_Fc55_B1                      (-1.997458f)
    605 #define HPF_Fs192000_Fc55_B2                      0.997461f
    606 #endif
    607 
    608 
    609  /* Coefficients for centre frequency 66Hz */
    610 #define HPF_Fs8000_Fc66_A0                        0.953016f
    611 #define HPF_Fs8000_Fc66_A1                        (-1.906032f)
    612 #define HPF_Fs8000_Fc66_A2                        0.953016f
    613 #define HPF_Fs8000_Fc66_B1                        (-1.926810f)
    614 #define HPF_Fs8000_Fc66_B2                        0.929396f
    615 #define HPF_Fs11025_Fc66_A0                       0.962638f
    616 #define HPF_Fs11025_Fc66_A1                       (-1.925275f)
    617 #define HPF_Fs11025_Fc66_A2                       0.962638f
    618 #define HPF_Fs11025_Fc66_B1                       (-1.946881f)
    619 #define HPF_Fs11025_Fc66_B2                       0.948256f
    620 #define HPF_Fs12000_Fc66_A0                       0.964718f
    621 #define HPF_Fs12000_Fc66_A1                       (-1.929435f)
    622 #define HPF_Fs12000_Fc66_A2                       0.964718f
    623 #define HPF_Fs12000_Fc66_B1                       (-1.951196f)
    624 #define HPF_Fs12000_Fc66_B2                       0.952359f
    625 #define HPF_Fs16000_Fc66_A0                       0.970622f
    626 #define HPF_Fs16000_Fc66_A1                       (-1.941244f)
    627 #define HPF_Fs16000_Fc66_A2                       0.970622f
    628 #define HPF_Fs16000_Fc66_B1                       (-1.963394f)
    629 #define HPF_Fs16000_Fc66_B2                       0.964052f
    630 #define HPF_Fs22050_Fc66_A0                       0.975509f
    631 #define HPF_Fs22050_Fc66_A1                       (-1.951019f)
    632 #define HPF_Fs22050_Fc66_A2                       0.975509f
    633 #define HPF_Fs22050_Fc66_B1                       (-1.973436f)
    634 #define HPF_Fs22050_Fc66_B2                       0.973784f
    635 #define HPF_Fs24000_Fc66_A0                       0.976563f
    636 #define HPF_Fs24000_Fc66_A1                       (-1.953125f)
    637 #define HPF_Fs24000_Fc66_A2                       0.976563f
    638 #define HPF_Fs24000_Fc66_B1                       (-1.975594f)
    639 #define HPF_Fs24000_Fc66_B2                       0.975889f
    640 #define HPF_Fs32000_Fc66_A0                       0.979547f
    641 #define HPF_Fs32000_Fc66_A1                       (-1.959093f)
    642 #define HPF_Fs32000_Fc66_A2                       0.979547f
    643 #define HPF_Fs32000_Fc66_B1                       (-1.981695f)
    644 #define HPF_Fs32000_Fc66_B2                       0.981861f
    645 #define HPF_Fs44100_Fc66_A0                       0.982010f
    646 #define HPF_Fs44100_Fc66_A1                       (-1.964019f)
    647 #define HPF_Fs44100_Fc66_A2                       0.982010f
    648 #define HPF_Fs44100_Fc66_B1                       (-1.986718f)
    649 #define HPF_Fs44100_Fc66_B2                       0.986805f
    650 #define HPF_Fs48000_Fc66_A0                       0.982540f
    651 #define HPF_Fs48000_Fc66_A1                       (-1.965079f)
    652 #define HPF_Fs48000_Fc66_A2                       0.982540f
    653 #define HPF_Fs48000_Fc66_B1                       (-1.987797f)
    654 #define HPF_Fs48000_Fc66_B2                       0.987871f
    655 
    656 #ifdef HIGHER_FS
    657 #define HPF_Fs88200_Fc66_A0                       0.985273f
    658 #define HPF_Fs88200_Fc66_A1                       (-1.970546f)
    659 #define HPF_Fs88200_Fc66_A2                       0.985273f
    660 #define HPF_Fs88200_Fc66_B1                       (-1.993359f)
    661 #define HPF_Fs88200_Fc66_B2                       0.993381f
    662 
    663 #define HPF_Fs96000_Fc66_A0                       0.985539f
    664 #define HPF_Fs96000_Fc66_A1                       (-1.971077f)
    665 #define HPF_Fs96000_Fc66_A2                       0.985539f
    666 #define HPF_Fs96000_Fc66_B1                       (-1.993898f)
    667 #define HPF_Fs96000_Fc66_B2                       0.993917f
    668 
    669 #define HPF_Fs176400_Fc66_A0                      0.986910f
    670 #define HPF_Fs176400_Fc66_A1                      (-1.973820f)
    671 #define HPF_Fs176400_Fc66_A2                      0.986910f
    672 #define HPF_Fs176400_Fc66_B1                      (-1.996679f)
    673 #define HPF_Fs176400_Fc66_B2                      0.996685f
    674 
    675 #define HPF_Fs192000_Fc66_A0                      0.987043f
    676 #define HPF_Fs192000_Fc66_A1                      (-1.974086f)
    677 #define HPF_Fs192000_Fc66_A2                      0.987043f
    678 #define HPF_Fs192000_Fc66_B1                      (-1.996949f)
    679 #define HPF_Fs192000_Fc66_B2                      0.996954f
    680 #endif
    681 
    682 /* Coefficients for centre frequency 78Hz */
    683 #define HPF_Fs8000_Fc78_A0                        0.946693f
    684 #define HPF_Fs8000_Fc78_A1                        (-1.893387f)
    685 #define HPF_Fs8000_Fc78_A2                        0.946693f
    686 #define HPF_Fs8000_Fc78_B1                        (-1.913517f)
    687 #define HPF_Fs8000_Fc78_B2                        0.917105f
    688 #define HPF_Fs11025_Fc78_A0                       0.957999f
    689 #define HPF_Fs11025_Fc78_A1                       (-1.915998f)
    690 #define HPF_Fs11025_Fc78_A2                       0.957999f
    691 #define HPF_Fs11025_Fc78_B1                       (-1.937229f)
    692 #define HPF_Fs11025_Fc78_B2                       0.939140f
    693 #define HPF_Fs12000_Fc78_A0                       0.960446f
    694 #define HPF_Fs12000_Fc78_A1                       (-1.920892f)
    695 #define HPF_Fs12000_Fc78_A2                       0.960446f
    696 #define HPF_Fs12000_Fc78_B1                       (-1.942326f)
    697 #define HPF_Fs12000_Fc78_B2                       0.943944f
    698 #define HPF_Fs16000_Fc78_A0                       0.967397f
    699 #define HPF_Fs16000_Fc78_A1                       (-1.934794f)
    700 #define HPF_Fs16000_Fc78_A2                       0.967397f
    701 #define HPF_Fs16000_Fc78_B1                       (-1.956740f)
    702 #define HPF_Fs16000_Fc78_B2                       0.957656f
    703 #define HPF_Fs22050_Fc78_A0                       0.973156f
    704 #define HPF_Fs22050_Fc78_A1                       (-1.946313f)
    705 #define HPF_Fs22050_Fc78_A2                       0.973156f
    706 #define HPF_Fs22050_Fc78_B1                       (-1.968607f)
    707 #define HPF_Fs22050_Fc78_B2                       0.969092f
    708 #define HPF_Fs24000_Fc78_A0                       0.974398f
    709 #define HPF_Fs24000_Fc78_A1                       (-1.948797f)
    710 #define HPF_Fs24000_Fc78_A2                       0.974398f
    711 #define HPF_Fs24000_Fc78_B1                       (-1.971157f)
    712 #define HPF_Fs24000_Fc78_B2                       0.971568f
    713 #define HPF_Fs32000_Fc78_A0                       0.977918f
    714 #define HPF_Fs32000_Fc78_A1                       (-1.955836f)
    715 #define HPF_Fs32000_Fc78_A2                       0.977918f
    716 #define HPF_Fs32000_Fc78_B1                       (-1.978367f)
    717 #define HPF_Fs32000_Fc78_B2                       0.978599f
    718 #define HPF_Fs44100_Fc78_A0                       0.980824f
    719 #define HPF_Fs44100_Fc78_A1                       (-1.961649f)
    720 #define HPF_Fs44100_Fc78_A2                       0.980824f
    721 #define HPF_Fs44100_Fc78_B1                       (-1.984303f)
    722 #define HPF_Fs44100_Fc78_B2                       0.984425f
    723 #define HPF_Fs48000_Fc78_A0                       0.981450f
    724 #define HPF_Fs48000_Fc78_A1                       (-1.962900f)
    725 #define HPF_Fs48000_Fc78_A2                       0.981450f
    726 #define HPF_Fs48000_Fc78_B1                       (-1.985578f)
    727 #define HPF_Fs48000_Fc78_B2                       0.985681f
    728 
    729 #ifdef HIGHER_FS
    730 #define HPF_Fs88200_Fc78_A0                       0.984678f
    731 #define HPF_Fs88200_Fc78_A1                       (-1.969356f)
    732 #define HPF_Fs88200_Fc78_A2                       0.984678f
    733 #define HPF_Fs88200_Fc78_B1                       (-1.992151f)
    734 #define HPF_Fs88200_Fc78_B2                       0.992182f
    735 
    736 #define HPF_Fs96000_Fc78_A0                       0.984992f
    737 #define HPF_Fs96000_Fc78_A1                       (-1.969984f)
    738 #define HPF_Fs96000_Fc78_A2                       0.984992f
    739 #define HPF_Fs96000_Fc78_B1                       (-1.992789f)
    740 #define HPF_Fs96000_Fc78_B2                       0.992815f
    741 
    742 #define HPF_Fs176400_Fc78_A0                      0.986612f
    743 #define HPF_Fs176400_Fc78_A1                      (-1.973224f)
    744 #define HPF_Fs176400_Fc78_A2                      0.986612f
    745 #define HPF_Fs176400_Fc78_B1                      (-1.996076f)
    746 #define HPF_Fs176400_Fc78_B2                      0.996083f
    747 
    748 #define HPF_Fs192000_Fc78_A0                      0.986769f
    749 #define HPF_Fs192000_Fc78_A1                      (-1.973539f)
    750 #define HPF_Fs192000_Fc78_A2                      0.986769f
    751 #define HPF_Fs192000_Fc78_B1                      (-1.996394f)
    752 #define HPF_Fs192000_Fc78_B2                      0.996401f
    753 #endif
    754 
    755 /* Coefficients for centre frequency 90Hz */
    756 #define HPF_Fs8000_Fc90_A0                       0.940412f
    757 #define HPF_Fs8000_Fc90_A1                       (-1.880825f)
    758 #define HPF_Fs8000_Fc90_A2                       0.940412f
    759 #define HPF_Fs8000_Fc90_B1                       (-1.900231f)
    760 #define HPF_Fs8000_Fc90_B2                       0.904977f
    761 #define HPF_Fs11025_Fc90_A0                      0.953383f
    762 #define HPF_Fs11025_Fc90_A1                      (-1.906766f)
    763 #define HPF_Fs11025_Fc90_A2                      0.953383f
    764 #define HPF_Fs11025_Fc90_B1                      (-1.927579f)
    765 #define HPF_Fs11025_Fc90_B2                      0.930111f
    766 #define HPF_Fs12000_Fc90_A0                      0.956193f
    767 #define HPF_Fs12000_Fc90_A1                      (-1.912387f)
    768 #define HPF_Fs12000_Fc90_A2                      0.956193f
    769 #define HPF_Fs12000_Fc90_B1                      (-1.933459f)
    770 #define HPF_Fs12000_Fc90_B2                      0.935603f
    771 #define HPF_Fs16000_Fc90_A0                      0.964183f
    772 #define HPF_Fs16000_Fc90_A1                      (-1.928365f)
    773 #define HPF_Fs16000_Fc90_A2                      0.964183f
    774 #define HPF_Fs16000_Fc90_B1                      (-1.950087f)
    775 #define HPF_Fs16000_Fc90_B2                      0.951303f
    776 #define HPF_Fs22050_Fc90_A0                      0.970809f
    777 #define HPF_Fs22050_Fc90_A1                      (-1.941618f)
    778 #define HPF_Fs22050_Fc90_A2                      0.970809f
    779 #define HPF_Fs22050_Fc90_B1                      (-1.963778f)
    780 #define HPF_Fs22050_Fc90_B2                      0.964423f
    781 #define HPF_Fs24000_Fc90_A0                      0.972239f
    782 #define HPF_Fs24000_Fc90_A1                      (-1.944477f)
    783 #define HPF_Fs24000_Fc90_A2                      0.972239f
    784 #define HPF_Fs24000_Fc90_B1                      (-1.966721f)
    785 #define HPF_Fs24000_Fc90_B2                      0.967266f
    786 #define HPF_Fs32000_Fc90_A0                      0.976292f
    787 #define HPF_Fs32000_Fc90_A1                      (-1.952584f)
    788 #define HPF_Fs32000_Fc90_A2                      0.976292f
    789 #define HPF_Fs32000_Fc90_B1                      (-1.975040f)
    790 #define HPF_Fs32000_Fc90_B2                      0.975347f
    791 #define HPF_Fs44100_Fc90_A0                      0.979641f
    792 #define HPF_Fs44100_Fc90_A1                      (-1.959282f)
    793 #define HPF_Fs44100_Fc90_A2                      0.979641f
    794 #define HPF_Fs44100_Fc90_B1                      (-1.981888f)
    795 #define HPF_Fs44100_Fc90_B2                      0.982050f
    796 #define HPF_Fs48000_Fc90_A0                      0.980362f
    797 #define HPF_Fs48000_Fc90_A1                      (-1.960724f)
    798 #define HPF_Fs48000_Fc90_A2                      0.980362f
    799 #define HPF_Fs48000_Fc90_B1                      (-1.983359f)
    800 #define HPF_Fs48000_Fc90_B2                      0.983497f
    801 
    802 #ifdef HIGHER_FS
    803 #define HPF_Fs88200_Fc90_A0                       0.984084f
    804 #define HPF_Fs88200_Fc90_A1                       (-1.968168f)
    805 #define HPF_Fs88200_Fc90_A2                       0.984084f
    806 #define HPF_Fs88200_Fc90_B1                       (-1.990944f)
    807 #define HPF_Fs88200_Fc90_B2                       0.990985f
    808 
    809 #define HPF_Fs96000_Fc90_A0                       0.984446f
    810 #define HPF_Fs96000_Fc90_A1                       (-1.968892f)
    811 #define HPF_Fs96000_Fc90_A2                       0.984446f
    812 #define HPF_Fs96000_Fc90_B1                       (-1.991680f)
    813 #define HPF_Fs96000_Fc90_B2                       0.991714f
    814 
    815 #define HPF_Fs176400_Fc90_A0                      0.986314f
    816 #define HPF_Fs176400_Fc90_A1                      (-1.972629f)
    817 #define HPF_Fs176400_Fc90_A2                      0.986314f
    818 #define HPF_Fs176400_Fc90_B1                      (-1.995472f)
    819 #define HPF_Fs176400_Fc90_B2                      0.995482f
    820 
    821 #define HPF_Fs192000_Fc90_A0                      0.986496f
    822 #define HPF_Fs192000_Fc90_A1                      (-1.972992f)
    823 #define HPF_Fs192000_Fc90_A2                      0.986496f
    824 #define HPF_Fs192000_Fc90_B1                      (-1.995840f)
    825 #define HPF_Fs192000_Fc90_B2                      0.995848f
    826 #endif
    827 
    828 /************************************************************************************/
    829 /*                                                                                  */
    830 /* Band Pass Filter coefficients                                                    */
    831 /*                                                                                  */
    832 /************************************************************************************/
    833 
    834 /* Coefficients for centre frequency 55Hz */
    835 #define BPF_Fs8000_Fc55_A0                       0.009197f
    836 #define BPF_Fs8000_Fc55_A1                       0.000000f
    837 #define BPF_Fs8000_Fc55_A2                       (-0.009197f)
    838 #define BPF_Fs8000_Fc55_B1                       (-1.979545f)
    839 #define BPF_Fs8000_Fc55_B2                       0.981393f
    840 #define BPF_Fs11025_Fc55_A0                      0.006691f
    841 #define BPF_Fs11025_Fc55_A1                      0.000000f
    842 #define BPF_Fs11025_Fc55_A2                      (-0.006691f)
    843 #define BPF_Fs11025_Fc55_B1                      (-1.985488f)
    844 #define BPF_Fs11025_Fc55_B2                      0.986464f
    845 #define BPF_Fs12000_Fc55_A0                      0.006150f
    846 #define BPF_Fs12000_Fc55_A1                      0.000000f
    847 #define BPF_Fs12000_Fc55_A2                      (-0.006150f)
    848 #define BPF_Fs12000_Fc55_B1                      (-1.986733f)
    849 #define BPF_Fs12000_Fc55_B2                      0.987557f
    850 #define BPF_Fs16000_Fc55_A0                      0.004620f
    851 #define BPF_Fs16000_Fc55_A1                      0.000000f
    852 #define BPF_Fs16000_Fc55_A2                      (-0.004620f)
    853 #define BPF_Fs16000_Fc55_B1                      (-1.990189f)
    854 #define BPF_Fs16000_Fc55_B2                      0.990653f
    855 #define BPF_Fs22050_Fc55_A0                      0.003357f
    856 #define BPF_Fs22050_Fc55_A1                      0.000000f
    857 #define BPF_Fs22050_Fc55_A2                      (-0.003357f)
    858 #define BPF_Fs22050_Fc55_B1                      (-1.992964f)
    859 #define BPF_Fs22050_Fc55_B2                      0.993209f
    860 #define BPF_Fs24000_Fc55_A0                      0.003085f
    861 #define BPF_Fs24000_Fc55_A1                      0.000000f
    862 #define BPF_Fs24000_Fc55_A2                      (-0.003085f)
    863 #define BPF_Fs24000_Fc55_B1                      (-1.993552f)
    864 #define BPF_Fs24000_Fc55_B2                      0.993759f
    865 #define BPF_Fs32000_Fc55_A0                      0.002315f
    866 #define BPF_Fs32000_Fc55_A1                      0.000000f
    867 #define BPF_Fs32000_Fc55_A2                      (-0.002315f)
    868 #define BPF_Fs32000_Fc55_B1                      (-1.995199f)
    869 #define BPF_Fs32000_Fc55_B2                      0.995316f
    870 #define BPF_Fs44100_Fc55_A0                      0.001681f
    871 #define BPF_Fs44100_Fc55_A1                      0.000000f
    872 #define BPF_Fs44100_Fc55_A2                      (-0.001681f)
    873 #define BPF_Fs44100_Fc55_B1                      (-1.996537f)
    874 #define BPF_Fs44100_Fc55_B2                      0.996599f
    875 #define BPF_Fs48000_Fc55_A0                      0.001545f
    876 #define BPF_Fs48000_Fc55_A1                      0.000000f
    877 #define BPF_Fs48000_Fc55_A2                      (-0.001545f)
    878 #define BPF_Fs48000_Fc55_B1                      (-1.996823f)
    879 #define BPF_Fs48000_Fc55_B2                      0.996875f
    880 
    881 #ifdef HIGHER_FS
    882 #define BPF_Fs88200_Fc55_A0                      0.000831f
    883 #define BPF_Fs88200_Fc55_A1                      0.000000f
    884 #define BPF_Fs88200_Fc55_A2                      (-0.000831f)
    885 #define BPF_Fs88200_Fc55_B1                      (-1.998321f)
    886 #define BPF_Fs88200_Fc55_B2                      0.998338f
    887 
    888 #define BPF_Fs96000_Fc55_A0                      0.000762f
    889 #define BPF_Fs96000_Fc55_A1                      0.000000f
    890 #define BPF_Fs96000_Fc55_A2                      (-0.000762f)
    891 #define BPF_Fs96000_Fc55_B1                      (-1.998461f)
    892 #define BPF_Fs96000_Fc55_B2                      0.998477f
    893 
    894 #define BPF_Fs176400_Fc55_A0                     0.000416f
    895 #define BPF_Fs176400_Fc55_A1                     0.000000f
    896 #define BPF_Fs176400_Fc55_A2                     (-0.000416f)
    897 #define BPF_Fs176400_Fc55_B1                     (-1.999164f)
    898 #define BPF_Fs176400_Fc55_B2                     0.999169f
    899 
    900 #define BPF_Fs192000_Fc55_A0                     0.000381f
    901 #define BPF_Fs192000_Fc55_A1                     0.000000f
    902 #define BPF_Fs192000_Fc55_A2                     (-0.000381f)
    903 #define BPF_Fs192000_Fc55_B1                     (-1.999234f)
    904 #define BPF_Fs192000_Fc55_B2                     0.999238f
    905 #endif
    906 
    907 /* Coefficients for centre frequency 66Hz */
    908 #define BPF_Fs8000_Fc66_A0                      0.012648f
    909 #define BPF_Fs8000_Fc66_A1                      0.000000f
    910 #define BPF_Fs8000_Fc66_A2                      (-0.012648f)
    911 #define BPF_Fs8000_Fc66_B1                      (-1.971760f)
    912 #define BPF_Fs8000_Fc66_B2                      0.974412f
    913 #define BPF_Fs11025_Fc66_A0                     0.009209f
    914 #define BPF_Fs11025_Fc66_A1                     0.000000f
    915 #define BPF_Fs11025_Fc66_A2                     (-0.009209f)
    916 #define BPF_Fs11025_Fc66_B1                     (-1.979966f)
    917 #define BPF_Fs11025_Fc66_B2                     0.981368f
    918 #define BPF_Fs12000_Fc66_A0                     0.008468f
    919 #define BPF_Fs12000_Fc66_A1                     0.000000f
    920 #define BPF_Fs12000_Fc66_A2                     (-0.008468f)
    921 #define BPF_Fs12000_Fc66_B1                     (-1.981685f)
    922 #define BPF_Fs12000_Fc66_B2                     0.982869f
    923 #define BPF_Fs16000_Fc66_A0                     0.006364f
    924 #define BPF_Fs16000_Fc66_A1                     0.000000f
    925 #define BPF_Fs16000_Fc66_A2                     (-0.006364f)
    926 #define BPF_Fs16000_Fc66_B1                     (-1.986457f)
    927 #define BPF_Fs16000_Fc66_B2                     0.987124f
    928 #define BPF_Fs22050_Fc66_A0                     0.004626f
    929 #define BPF_Fs22050_Fc66_A1                     0.000000f
    930 #define BPF_Fs22050_Fc66_A2                     (-0.004626f)
    931 #define BPF_Fs22050_Fc66_B1                     (-1.990288f)
    932 #define BPF_Fs22050_Fc66_B2                     0.990641f
    933 #define BPF_Fs24000_Fc66_A0                     0.004252f
    934 #define BPF_Fs24000_Fc66_A1                     0.000000f
    935 #define BPF_Fs24000_Fc66_A2                     (-0.004252f)
    936 #define BPF_Fs24000_Fc66_B1                     (-1.991100f)
    937 #define BPF_Fs24000_Fc66_B2                     0.991398f
    938 #define BPF_Fs32000_Fc66_A0                     0.003192f
    939 #define BPF_Fs32000_Fc66_A1                     0.000000f
    940 #define BPF_Fs32000_Fc66_A2                     (-0.003192f)
    941 #define BPF_Fs32000_Fc66_B1                     (-1.993374f)
    942 #define BPF_Fs32000_Fc66_B2                     0.993541f
    943 #define BPF_Fs44100_Fc66_A0                     0.002318f
    944 #define BPF_Fs44100_Fc66_A1                     0.000000f
    945 #define BPF_Fs44100_Fc66_A2                     (-0.002318f)
    946 #define BPF_Fs44100_Fc66_B1                     (-1.995221f)
    947 #define BPF_Fs44100_Fc66_B2                     0.995309f
    948 #define BPF_Fs48000_Fc66_A0                     0.002131f
    949 #define BPF_Fs48000_Fc66_A1                     0.000000f
    950 #define BPF_Fs48000_Fc66_A2                     (-0.002131f)
    951 #define BPF_Fs48000_Fc66_B1                     (-1.995615f)
    952 #define BPF_Fs48000_Fc66_B2                     0.995690f
    953 
    954 #ifdef HIGHER_FS
    955 #define BPF_Fs88200_Fc66_A0                     0.001146f
    956 #define BPF_Fs88200_Fc66_A1                     0.000000f
    957 #define BPF_Fs88200_Fc66_A2                     (-0.001146f)
    958 #define BPF_Fs88200_Fc66_B1                     (-1.997684f)
    959 #define BPF_Fs88200_Fc66_B2                     0.997708f
    960 
    961 #define BPF_Fs96000_Fc66_A0                     0.001055f
    962 #define BPF_Fs96000_Fc66_A1                     0.000000f
    963 #define BPF_Fs96000_Fc66_A2                     (-0.001055f)
    964 #define BPF_Fs96000_Fc66_B1                     (-1.997868f)
    965 #define BPF_Fs96000_Fc66_B2                     0.997891f
    966 
    967 #define BPF_Fs176400_Fc66_A0                    0.000573f
    968 #define BPF_Fs176400_Fc66_A1                    0.000000f
    969 #define BPF_Fs176400_Fc66_A2                    (-0.000573f)
    970 #define BPF_Fs176400_Fc66_B1                    (-1.998847f)
    971 #define BPF_Fs176400_Fc66_B2                    0.998853f
    972 
    973 #define BPF_Fs192000_Fc66_A0                    0.000528f
    974 #define BPF_Fs192000_Fc66_A1                    0.000000f
    975 #define BPF_Fs192000_Fc66_A2                   (-0.000528f)
    976 #define BPF_Fs192000_Fc66_B1                   (-1.998939f)
    977 #define BPF_Fs192000_Fc66_B2                    0.998945f
    978 #endif
    979 
    980 /* Coefficients for centre frequency 78Hz */
    981 #define BPF_Fs8000_Fc78_A0                      0.018572f
    982 #define BPF_Fs8000_Fc78_A1                      0.000000f
    983 #define BPF_Fs8000_Fc78_A2                      (-0.018572f)
    984 #define BPF_Fs8000_Fc78_B1                      (-1.958745f)
    985 #define BPF_Fs8000_Fc78_B2                      0.962427f
    986 #define BPF_Fs11025_Fc78_A0                     0.013545f
    987 #define BPF_Fs11025_Fc78_A1                     0.000000f
    988 #define BPF_Fs11025_Fc78_A2                     (-0.013545f)
    989 #define BPF_Fs11025_Fc78_B1                     (-1.970647f)
    990 #define BPF_Fs11025_Fc78_B2                     0.972596f
    991 #define BPF_Fs12000_Fc78_A0                     0.012458f
    992 #define BPF_Fs12000_Fc78_A1                     0.000000f
    993 #define BPF_Fs12000_Fc78_A2                     (-0.012458f)
    994 #define BPF_Fs12000_Fc78_B1                     (-1.973148f)
    995 #define BPF_Fs12000_Fc78_B2                     0.974795f
    996 #define BPF_Fs16000_Fc78_A0                     0.009373f
    997 #define BPF_Fs16000_Fc78_A1                     0.000000f
    998 #define BPF_Fs16000_Fc78_A2                     (-0.009373f)
    999 #define BPF_Fs16000_Fc78_B1                     (-1.980108f)
   1000 #define BPF_Fs16000_Fc78_B2                     0.981037f
   1001 #define BPF_Fs22050_Fc78_A0                     0.006819f
   1002 #define BPF_Fs22050_Fc78_A1                     0.000000f
   1003 #define BPF_Fs22050_Fc78_A2                     (-0.006819f)
   1004 #define BPF_Fs22050_Fc78_B1                     (-1.985714f)
   1005 #define BPF_Fs22050_Fc78_B2                     0.986204f
   1006 #define BPF_Fs24000_Fc78_A0                     0.006268f
   1007 #define BPF_Fs24000_Fc78_A1                     0.000000f
   1008 #define BPF_Fs24000_Fc78_A2                     (-0.006268f)
   1009 #define BPF_Fs24000_Fc78_B1                     (-1.986904f)
   1010 #define BPF_Fs24000_Fc78_B2                     0.987318f
   1011 #define BPF_Fs32000_Fc78_A0                     0.004709f
   1012 #define BPF_Fs32000_Fc78_A1                     0.000000f
   1013 #define BPF_Fs32000_Fc78_A2                     (-0.004709f)
   1014 #define BPF_Fs32000_Fc78_B1                     (-1.990240f)
   1015 #define BPF_Fs32000_Fc78_B2                     0.990473f
   1016 #define BPF_Fs44100_Fc78_A0                     0.003421f
   1017 #define BPF_Fs44100_Fc78_A1                     0.000000f
   1018 #define BPF_Fs44100_Fc78_A2                     (-0.003421f)
   1019 #define BPF_Fs44100_Fc78_B1                     (-1.992955f)
   1020 #define BPF_Fs44100_Fc78_B2                     0.993078f
   1021 #define BPF_Fs48000_Fc78_A0                     0.003144f
   1022 #define BPF_Fs48000_Fc78_A1                     0.000000f
   1023 #define BPF_Fs48000_Fc78_A2                     (-0.003144f)
   1024 #define BPF_Fs48000_Fc78_B1                     (-1.993535f)
   1025 #define BPF_Fs48000_Fc78_B2                     0.993639f
   1026 
   1027 #ifdef HIGHER_FS
   1028 #define BPF_Fs88200_Fc78_A0                    0.001693f
   1029 #define BPF_Fs88200_Fc78_A1                    0.000000f
   1030 #define BPF_Fs88200_Fc78_A2                    (-0.001693f)
   1031 #define BPF_Fs88200_Fc78_B1                    (-1.996582f)
   1032 #define BPF_Fs88200_Fc78_B2                    0.996615f
   1033 
   1034 #define BPF_Fs96000_Fc78_A0                     0.001555f
   1035 #define BPF_Fs96000_Fc78_A1                     0.000000f
   1036 #define BPF_Fs96000_Fc78_A2                    (-0.0015555f)
   1037 #define BPF_Fs96000_Fc78_B1                    (-1.996860f)
   1038 #define BPF_Fs96000_Fc78_B2                     0.996891f
   1039 
   1040 #define BPF_Fs176400_Fc78_A0                    0.000847f
   1041 #define BPF_Fs176400_Fc78_A1                    0.000000f
   1042 #define BPF_Fs176400_Fc78_A2                    (-0.000847f)
   1043 #define BPF_Fs176400_Fc78_B1                    (-1.998298f)
   1044 #define BPF_Fs176400_Fc78_B2                    0.998306f
   1045 
   1046 #define BPF_Fs192000_Fc78_A0                    0.000778f
   1047 #define BPF_Fs192000_Fc78_A1                    0.000000f
   1048 #define BPF_Fs192000_Fc78_A2                   (-0.000778f)
   1049 #define BPF_Fs192000_Fc78_B1                   (-1.998437f)
   1050 #define BPF_Fs192000_Fc78_B2                    0.998444f
   1051 #endif
   1052 
   1053 /* Coefficients for centre frequency 90Hz */
   1054 #define BPF_Fs8000_Fc90_A0                       0.022760f
   1055 #define BPF_Fs8000_Fc90_A1                       0.000000f
   1056 #define BPF_Fs8000_Fc90_A2                       (-0.022760f)
   1057 #define BPF_Fs8000_Fc90_B1                       (-1.949073f)
   1058 #define BPF_Fs8000_Fc90_B2                       0.953953f
   1059 #define BPF_Fs11025_Fc90_A0                      0.016619f
   1060 #define BPF_Fs11025_Fc90_A1                      0.000000f
   1061 #define BPF_Fs11025_Fc90_A2                      (-0.016619f)
   1062 #define BPF_Fs11025_Fc90_B1                      (-1.963791f)
   1063 #define BPF_Fs11025_Fc90_B2                      0.966377f
   1064 #define BPF_Fs12000_Fc90_A0                      0.015289f
   1065 #define BPF_Fs12000_Fc90_A1                      0.000000f
   1066 #define BPF_Fs12000_Fc90_A2                      (-0.015289f)
   1067 #define BPF_Fs12000_Fc90_B1                      (-1.966882f)
   1068 #define BPF_Fs12000_Fc90_B2                      0.969067f
   1069 #define BPF_Fs16000_Fc90_A0                      0.011511f
   1070 #define BPF_Fs16000_Fc90_A1                      0.000000f
   1071 #define BPF_Fs16000_Fc90_A2                      (-0.011511f)
   1072 #define BPF_Fs16000_Fc90_B1                      (-1.975477f)
   1073 #define BPF_Fs16000_Fc90_B2                      0.976711f
   1074 #define BPF_Fs22050_Fc90_A0                      0.008379f
   1075 #define BPF_Fs22050_Fc90_A1                      0.000000f
   1076 #define BPF_Fs22050_Fc90_A2                      (-0.008379f)
   1077 #define BPF_Fs22050_Fc90_B1                      (-1.982395f)
   1078 #define BPF_Fs22050_Fc90_B2                      0.983047f
   1079 #define BPF_Fs24000_Fc90_A0                      0.007704f
   1080 #define BPF_Fs24000_Fc90_A1                      0.000000f
   1081 #define BPF_Fs24000_Fc90_A2                      (-0.007704f)
   1082 #define BPF_Fs24000_Fc90_B1                      (-1.983863f)
   1083 #define BPF_Fs24000_Fc90_B2                      0.984414f
   1084 #define BPF_Fs32000_Fc90_A0                      0.005789f
   1085 #define BPF_Fs32000_Fc90_A1                      0.000000f
   1086 #define BPF_Fs32000_Fc90_A2                      (-0.005789f)
   1087 #define BPF_Fs32000_Fc90_B1                      (-1.987977f)
   1088 #define BPF_Fs32000_Fc90_B2                      0.988288f
   1089 #define BPF_Fs44100_Fc90_A0                      0.004207f
   1090 #define BPF_Fs44100_Fc90_A1                      0.000000f
   1091 #define BPF_Fs44100_Fc90_A2                      (-0.004207f)
   1092 #define BPF_Fs44100_Fc90_B1                      (-1.991324f)
   1093 #define BPF_Fs44100_Fc90_B2                      0.991488f
   1094 #define BPF_Fs48000_Fc90_A0                      0.003867f
   1095 #define BPF_Fs48000_Fc90_A1                      0.000000f
   1096 #define BPF_Fs48000_Fc90_A2                      (-0.003867f)
   1097 #define BPF_Fs48000_Fc90_B1                      (-1.992038f)
   1098 #define BPF_Fs48000_Fc90_B2                      0.992177f
   1099 
   1100 #ifdef HIGHER_FS
   1101 #define BPF_Fs88200_Fc90_A0                      0.002083f
   1102 #define BPF_Fs88200_Fc90_A1                      0.000000f
   1103 #define BPF_Fs88200_Fc90_A2                      (-0.002083f)
   1104 #define BPF_Fs88200_Fc90_B1                      (-1.995791f)
   1105 #define BPF_Fs88200_Fc90_B2                      0.995835f
   1106 
   1107 #define BPF_Fs96000_Fc90_A0                      0.001913f
   1108 #define BPF_Fs96000_Fc90_A1                      0.000000f
   1109 #define BPF_Fs96000_Fc90_A2                     (-0.001913f)
   1110 #define BPF_Fs96000_Fc90_B1                     (-1.996134f)
   1111 #define BPF_Fs96000_Fc90_B2                      0.996174f
   1112 
   1113 #define BPF_Fs176400_Fc90_A0                     0.001042f
   1114 #define BPF_Fs176400_Fc90_A1                     0.000000f
   1115 #define BPF_Fs176400_Fc90_A2                     (-0.001042f)
   1116 #define BPF_Fs176400_Fc90_B1                     (-1.997904f)
   1117 #define BPF_Fs176400_Fc90_B2                     0.997915f
   1118 
   1119 #define BPF_Fs192000_Fc90_A0                     0.000958f
   1120 #define BPF_Fs192000_Fc90_A1                     0.000000f
   1121 #define BPF_Fs192000_Fc90_A2                    (-0.000958f)
   1122 #define BPF_Fs192000_Fc90_B1                    (-1.998075f)
   1123 #define BPF_Fs192000_Fc90_B2                     0.998085f
   1124 #endif
   1125 
   1126 /************************************************************************************/
   1127 /*                                                                                  */
   1128 /* Automatic Gain Control time constants and gain settings                          */
   1129 /*                                                                                  */
   1130 /************************************************************************************/
   1131 
   1132 /* AGC Time constants */
   1133 #define AGC_ATTACK_Fs8000                             0.841395f
   1134 #define AGC_ATTACK_Fs11025                            0.882223f
   1135 #define AGC_ATTACK_Fs12000                            0.891251f
   1136 #define AGC_ATTACK_Fs16000                            0.917276f
   1137 #define AGC_ATTACK_Fs22050                            0.939267f
   1138 #define AGC_ATTACK_Fs24000                            0.944061f
   1139 #define AGC_ATTACK_Fs32000                            0.957745f
   1140 #define AGC_ATTACK_Fs44100                            0.969158f
   1141 #define AGC_ATTACK_Fs48000                            0.971628f
   1142 
   1143 #ifdef HIGHER_FS
   1144 #define AGC_ATTACK_Fs88200                             0.984458f
   1145 #define AGC_ATTACK_Fs96000                             0.985712f
   1146 #define AGC_ATTACK_Fs176400                            0.992199f
   1147 #define AGC_ATTACK_Fs192000                            0.992830f
   1148 #endif
   1149 
   1150 #define DECAY_SHIFT                                   10
   1151 
   1152 #define AGC_DECAY_Fs8000                              0.000042f
   1153 #define AGC_DECAY_Fs11025                             0.000030f
   1154 #define AGC_DECAY_Fs12000                             0.000028f
   1155 #define AGC_DECAY_Fs16000                             0.000021f
   1156 #define AGC_DECAY_Fs22050                             0.000015f
   1157 #define AGC_DECAY_Fs24000                             0.000014f
   1158 #define AGC_DECAY_Fs32000                             0.000010f
   1159 #define AGC_DECAY_Fs44100                             0.000008f
   1160 #define AGC_DECAY_Fs48000                             0.000007f
   1161 
   1162 #ifdef HIGHER_FS
   1163 #define AGC_DECAY_Fs88200                            0.0000038f
   1164 #define AGC_DECAY_FS96000                            0.0000035f
   1165 #define AGC_DECAY_Fs176400                          0.00000188f
   1166 #define AGC_DECAY_FS192000                          0.00000175f
   1167 #endif
   1168 
   1169 /* AGC Gain settings */
   1170 #define AGC_GAIN_SCALE                                        31         /* As a power of 2 */
   1171 #define AGC_GAIN_SHIFT                                         4         /* As a power of 2 */
   1172 #define AGC_TARGETLEVEL                            0.988553f
   1173 #define AGC_HPFGAIN_0dB                            0.412538f
   1174 #define AGC_GAIN_0dB                               0.000000f
   1175 #define AGC_HPFGAIN_1dB                            0.584893f
   1176 #define AGC_GAIN_1dB                               0.122018f
   1177 #define AGC_HPFGAIN_2dB                            0.778279f
   1178 #define AGC_GAIN_2dB                               0.258925f
   1179 #define AGC_HPFGAIN_3dB                            0.995262f
   1180 #define AGC_GAIN_3dB                               0.412538f
   1181 #define AGC_HPFGAIN_4dB                            1.238721f
   1182 #define AGC_GAIN_4dB                               0.584893f
   1183 #define AGC_HPFGAIN_5dB                            1.511886f
   1184 #define AGC_GAIN_5dB                               0.778279f
   1185 #define AGC_HPFGAIN_6dB                            1.818383f
   1186 #define AGC_GAIN_6dB                               0.995262f
   1187 #define AGC_HPFGAIN_7dB                            2.162278f
   1188 #define AGC_GAIN_7dB                               1.238721f
   1189 #define AGC_HPFGAIN_8dB                            2.548134f
   1190 #define AGC_GAIN_8dB                               1.511886f
   1191 #define AGC_HPFGAIN_9dB                            2.981072f
   1192 #define AGC_GAIN_9dB                               1.818383f
   1193 #define AGC_HPFGAIN_10dB                           3.466836f
   1194 #define AGC_GAIN_10dB                              2.162278f
   1195 #define AGC_HPFGAIN_11dB                           4.011872f
   1196 #define AGC_GAIN_11dB                              2.548134f
   1197 #define AGC_HPFGAIN_12dB                           4.623413f
   1198 #define AGC_GAIN_12dB                              2.981072f
   1199 #define AGC_HPFGAIN_13dB                           5.309573f
   1200 #define AGC_GAIN_13dB                              3.466836f
   1201 #define AGC_HPFGAIN_14dB                           6.079458f
   1202 #define AGC_GAIN_14dB                              4.011872f
   1203 #define AGC_HPFGAIN_15dB                           6.943282f
   1204 #define AGC_GAIN_15dB                              4.623413f
   1205 
   1206 /************************************************************************************/
   1207 /*                                                                                  */
   1208 /* Volume control                                                                   */
   1209 /*                                                                                  */
   1210 /************************************************************************************/
   1211 
   1212 /* Volume control gain */
   1213 #define VOLUME_MAX                                          0         /* In dBs */
   1214 #define VOLUME_SHIFT                                        0         /* In dBs */
   1215 
   1216 /* Volume control time constants */
   1217 #define VOL_TC_SHIFT                                       21         /* As a power of 2 */
   1218 #define VOL_TC_Fs8000                                   0.024690f
   1219 #define VOL_TC_Fs11025                                  0.017977f
   1220 #define VOL_TC_Fs12000                                  0.016529f
   1221 #define VOL_TC_Fs16000                                  0.012422f
   1222 #define VOL_TC_Fs22050                                  0.009029f
   1223 #define VOL_TC_Fs24000                                  0.008299f
   1224 #define VOL_TC_Fs32000                                  0.006231f
   1225 #define VOL_TC_Fs44100                                  0.004525f
   1226 #define VOL_TC_Fs48000                                  0.004158f
   1227 #ifdef HIGHER_FS
   1228 #define VOL_TC_Fs88200                                  0.002263f
   1229 #define VOL_TC_Fs96000                                  0.002079f
   1230 #define VOL_TC_Fs176400                                 0.001131f
   1231 #define VOL_TC_Fs192000                                 0.001039f
   1232 #endif
   1233 #define MIX_TC_Fs8000                                   29365         /* Floating point value 0.896151 */
   1234 #define MIX_TC_Fs11025                                  30230         /* Floating point value 0.922548 */
   1235 #define MIX_TC_Fs12000                                  30422         /* Floating point value 0.928415 */
   1236 #define MIX_TC_Fs16000                                  30978         /* Floating point value 0.945387 */
   1237 #define MIX_TC_Fs22050                                  31451         /* Floating point value 0.959804 */
   1238 #define MIX_TC_Fs24000                                  31554         /* Floating point value 0.962956 */
   1239 #define MIX_TC_Fs32000                                  31850         /* Floating point value 0.971973 */
   1240 #define MIX_TC_Fs44100                                  32097         /* Floating point value 0.979515 */
   1241 #define MIX_TC_Fs48000                                  32150         /* Floating point value 0.981150 */
   1242 #ifdef HIGHER_FS
   1243 /* Floating point value 0.989704 */
   1244 #define MIX_TC_Fs88200                                  32430
   1245 #define MIX_TC_Fs96000                                  32456         /* Floating point value 0.990530 */
   1246 /* Floating point value 0.994838 */
   1247 #define MIX_TC_Fs176400                                 32598
   1248 #define MIX_TC_Fs192000                                 32611         /* Floating point value 0.992524 */
   1249 #endif
   1250 
   1251 #endif /*BUILD_FLOAT*/
   1252 #endif
   1253