1 /*------------ Telecommunications & Signal Processing Lab --------------
2                          McGill University
3 
4 Routine:
5   PQCB.h
6 
7 Description:
8   Critical band tables
9 
10 Author / revision:
11   P. Kabal  Copyright (C) 2002
12   $Revision: 1.2 $  $Date: 2002/03/25 00:48:21 $
13 
14 ----------------------------------------------------------------------*/
15 
16 
17 struct Par_CB_B {
18   int Nc;
19   double dz;
20   double fl[PQ_NC_B];
21   double fc[PQ_NC_B];
22   double fu[PQ_NC_B];
23 };
24 
25 struct Par_CB_A {
26   int Nc;
27   double dz;
28   double fl[PQ_NC_CB_A];
29   double fc[PQ_NC_CB_A];
30   double fu[PQ_NC_CB_A];
31 };
32 
33 
34 /* Basic Version */
35 const static struct Par_CB_B CB_B =
36   {
37     /* number of bands */
38     PQ_NC_B,
39     /* band width in Bark */
40     0.25,
41     /* lower band edges */
42     {    80.000,   103.445,   127.023,   150.762,   174.694,
43 	198.849,   223.257,   247.950,   272.959,   298.317,
44         324.055,   350.207,   376.805,   403.884,   431.478,
45         459.622,   488.353,   517.707,   547.721,   578.434,
46         609.885,   642.114,   675.161,   709.071,   743.884,
47         779.647,   816.404,   854.203,   893.091,   933.119,
48         974.336,  1016.797,  1060.555,  1105.666,  1152.187,
49        1200.178,  1249.700,  1300.816,  1353.592,  1408.094,
50        1464.392,  1522.559,  1582.668,  1644.795,  1709.021,
51        1775.427,  1844.098,  1915.121,  1988.587,  2064.590,
52        2143.227,  2224.597,  2308.806,  2395.959,  2486.169,
53        2579.551,  2676.223,  2776.309,  2879.937,  2987.238,
54        3098.350,  3213.415,  3332.579,  3455.993,  3583.817,
55        3716.212,  3853.817,  3995.399,  4142.547,  4294.979,
56        4452.890,  4616.482,  4785.962,  4961.548,  5143.463,
57        5331.939,  5527.217,  5729.545,  5939.183,  6156.396,
58        6381.463,  6614.671,  6856.316,  7106.708,  7366.166,
59        7635.020,  7913.614,  8202.302,  8501.454,  8811.450,
60        9132.688,  9465.574,  9810.536, 10168.013, 10538.460,
61       10922.351, 11320.175, 11732.438, 12159.670, 12602.412,
62       13061.229, 13536.710, 14029.458, 14540.103, 15069.295,
63       15617.710, 16186.049, 16775.035, 17385.420 },
64     /* centre frequencies */
65     {    91.708,   115.216,   138.870,   162.702,   186.742,
66         211.019,   235.566,   260.413,   285.593,   311.136,
67         337.077,   363.448,   390.282,   417.614,   445.479,
68         473.912,   502.950,   532.629,   562.988,   594.065,
69         625.899,   658.533,   692.006,   726.362,   761.644,
70         797.898,   835.170,   873.508,   912.959,   953.576,
71         995.408,  1038.511,  1082.938,  1128.746,  1175.995,
72        1224.744,  1275.055,  1326.992,  1380.623,  1436.014,
73        1493.237,  1552.366,  1613.474,  1676.641,  1741.946,
74        1809.474,  1879.310,  1951.543,  2026.266,  2103.573,
75        2183.564,  2266.340,  2352.008,  2440.675,  2532.456,
76        2627.468,  2725.832,  2827.672,  2933.120,  3042.309,
77        3155.379,  3272.475,  3393.745,  3519.344,  3649.432,
78        3784.176,  3923.748,  4068.324,  4218.090,  4373.237,
79        4533.963,  4700.473,  4872.978,  5051.700,  5236.866,
80        5428.712,  5627.484,  5833.434,  6046.825,  6267.931,
81        6497.031,  6734.420,  6980.399,  7235.284,  7499.397,
82        7773.077,  8056.673,  8350.547,  8655.072,  8970.639,
83        9297.648,  9636.520,  9987.683, 10351.586, 10728.695,
84       11119.490, 11524.470, 11944.149, 12379.066, 12829.775,
85       13294.850, 13780.887, 14282.503, 14802.338, 15341.057,
86       15899.345, 16477.914, 17077.504, 17690.045 },
87      /* upper band edges */
88     {   103.445,   127.023,   150.762,   174.694,   198.849,
89         223.257,   247.950,   272.959,   298.317,   324.055,
90         350.207,   376.805,   403.884,   431.478,   459.622,
91         488.353,   517.707,   547.721,   578.434,   609.885,
92         642.114,   675.161,   709.071,   743.884,   779.647,
93         816.404,   854.203,   893.091,   933.113,   974.336,
94        1016.797,  1060.555,  1105.666,  1152.187,  1200.178,
95        1249.700,  1300.816,  1353.592,  1408.094,  1464.392,
96        1522.559,  1582.668,  1644.795,  1709.021,  1775.427,
97        1844.098,  1915.121,  1988.587,  2064.590,  2143.227,
98        2224.597,  2308.806,  2395.959,  2486.169,  2579.551,
99        2676.223,  2776.309,  2879.937,  2987.238,  3098.350,
100        3213.415,  3332.579,  3455.993,  3583.817,  3716.212,
101        3853.348,  3995.399,  4142.547,  4294.979,  4452.890,
102        4643.482,  4785.962,  4961.548,  5143.463,  5331.939,
103        5527.217,  5729.545,  5939.183,  6156.396,  6381.463,
104        6614.671,  6856.316,  7106.708,  7366.166,  7635.020,
105        7913.614,  8202.302,  8501.454,  8811.450,  9132.688,
106        9465.574,  9810.536, 10168.013, 10538.460, 10922.351,
107       11320.175, 11732.438, 12159.670, 12602.412, 13061.229,
108       13536.710, 14029.458, 14540.103, 15069.295, 15617.710,
109       16186.049, 16775.035, 17385.420, 18000.000 }
110     };
111 
112 /* Advanced Version */
113 const static struct Par_CB_A CB_A =
114   {
115     /* number of bands */
116     PQ_NC_CB_A,
117     /* band width in Bark */
118     0.5,
119     /* lower band edges */
120     {    80.000,   127.023,   174.694,   223.257,   272.959,
121         324.055,   376.805,   431.478,   488.353,   547.721,
122         609.885,   675.161,   743.884,   816.404,   893.091,
123         974.336,  1060.555,  1152.187,  1249.700,  1353.592,
124        1464.392,  1582.668,  1709.021,  1844.098,  1988.587,
125        2143.227,  2308.806,  2486.169,  2676.223,  2879.937,
126        3098.350,  3332.579,  3583.817,  3853.348,  4142.547,
127        4452.890,  4785.962,  5143.463,  5527.217,  5939.183,
128        6381.463,  6856.316,  7366.166,  7913.614,  8501.454,
129        9132.688,  9810.536, 10538.460, 11320.175, 12159.670,
130       13061.229, 14029.458, 15069.295, 16186.049, 17385.420 },
131     /* centre frequencies */
132     {   103.445,   150.762,   198.849,   247.950,   298.317,
133         350.207,   403.884,   459.622,   517.707,   578.434,
134         642.114,   709.071,   779.647,   854.203,   933.119,
135        1016.797,  1105.666,  1200.178,  1300.816,  1408.094,
136        1522.559,  1644.795,  1775.427,  1915.121,  2064.590,
137        2224.597,  2395.959,  2579.551,  2776.309,  2987.238,
138        3213.415,  3455.993,  3716.212,  3995.399,  4294.979,
139        4616.482,  4961.548,  5331.939,  5729.545,  6156.396,
140        6614.671,  7106.708,  7635.020,  8202.302,  8811.450,
141        9465.574, 10168.013, 10922.351, 11732.438, 12606.412,
142       13536.710, 14540.103, 15617.710, 16775.035, 17690.045 },
143      /* upper band edges */
144     {   127.023,   174.694,   223.257,   272.959,   324.055,
145         376.805,   431.478,   488.353,   547.721,   609.885,
146         675.161,   743.884,   816.404,   893.091,   974.336,
147        1060.555,  1152.187,  1249.700,  1353.592,  1464.392,
148        1582.668,  1709.021,  1844.098,  1988.587,  2143.227,
149        2308.806,  2486.169,  2676.223,  2879.937,  3098.350,
150        3332.579,  3583.817,  3853.348,  4142.547,  4452.890,
151        4785.962,  5143.463,  5527.217,  5939.183,  6381.463,
152        6856.316,  7366.166,  7913.614,  8501.454,  9132.688,
153        9810.536, 10538.460, 11320.175, 12159.670, 13061.229,
154       14029.458, 15069.295, 16186.042, 17385.420, 18000.000 }
155   };
156