18 #ifndef _V_LOOKUP_DATA_H_
21 #define COS_LOOKUP_SZ 128
22 static float COS_LOOKUP[COS_LOOKUP_SZ+1]={
23 +1.0000000000000f,+0.9996988186962f,+0.9987954562052f,+0.9972904566787f,
24 +0.9951847266722f,+0.9924795345987f,+0.9891765099648f,+0.9852776423889f,
25 +0.9807852804032f,+0.9757021300385f,+0.9700312531945f,+0.9637760657954f,
26 +0.9569403357322f,+0.9495281805930f,+0.9415440651830f,+0.9329927988347f,
27 +0.9238795325113f,+0.9142097557035f,+0.9039892931234f,+0.8932243011955f,
28 +0.8819212643484f,+0.8700869911087f,+0.8577286100003f,+0.8448535652497f,
29 +0.8314696123025f,+0.8175848131516f,+0.8032075314806f,+0.7883464276266f,
30 +0.7730104533627f,+0.7572088465065f,+0.7409511253550f,+0.7242470829515f,
31 +0.7071067811865f,+0.6895405447371f,+0.6715589548470f,+0.6531728429538f,
32 +0.6343932841636f,+0.6152315905806f,+0.5956993044924f,+0.5758081914178f,
33 +0.5555702330196f,+0.5349976198871f,+0.5141027441932f,+0.4928981922298f,
34 +0.4713967368260f,+0.4496113296546f,+0.4275550934303f,+0.4052413140050f,
35 +0.3826834323651f,+0.3598950365350f,+0.3368898533922f,+0.3136817403989f,
36 +0.2902846772545f,+0.2667127574749f,+0.2429801799033f,+0.2191012401569f,
37 +0.1950903220161f,+0.1709618887603f,+0.1467304744554f,+0.1224106751992f,
38 +0.0980171403296f,+0.0735645635997f,+0.0490676743274f,+0.0245412285229f,
39 +0.0000000000000f,-0.0245412285229f,-0.0490676743274f,-0.0735645635997f,
40 -0.0980171403296f,-0.1224106751992f,-0.1467304744554f,-0.1709618887603f,
41 -0.1950903220161f,-0.2191012401569f,-0.2429801799033f,-0.2667127574749f,
42 -0.2902846772545f,-0.3136817403989f,-0.3368898533922f,-0.3598950365350f,
43 -0.3826834323651f,-0.4052413140050f,-0.4275550934303f,-0.4496113296546f,
44 -0.4713967368260f,-0.4928981922298f,-0.5141027441932f,-0.5349976198871f,
45 -0.5555702330196f,-0.5758081914178f,-0.5956993044924f,-0.6152315905806f,
46 -0.6343932841636f,-0.6531728429538f,-0.6715589548470f,-0.6895405447371f,
47 -0.7071067811865f,-0.7242470829515f,-0.7409511253550f,-0.7572088465065f,
48 -0.7730104533627f,-0.7883464276266f,-0.8032075314806f,-0.8175848131516f,
49 -0.8314696123025f,-0.8448535652497f,-0.8577286100003f,-0.8700869911087f,
50 -0.8819212643484f,-0.8932243011955f,-0.9039892931234f,-0.9142097557035f,
51 -0.9238795325113f,-0.9329927988347f,-0.9415440651830f,-0.9495281805930f,
52 -0.9569403357322f,-0.9637760657954f,-0.9700312531945f,-0.9757021300385f,
53 -0.9807852804032f,-0.9852776423889f,-0.9891765099648f,-0.9924795345987f,
54 -0.9951847266722f,-0.9972904566787f,-0.9987954562052f,-0.9996988186962f,
58 #define INVSQ_LOOKUP_SZ 32
59 static float INVSQ_LOOKUP[INVSQ_LOOKUP_SZ+1]={
60 1.414213562373f,1.392621247646f,1.371988681140f,1.352246807566f,
61 1.333333333333f,1.315191898443f,1.297771369046f,1.281025230441f,
62 1.264911064067f,1.249390095109f,1.234426799697f,1.219988562661f,
63 1.206045378311f,1.192569588000f,1.179535649239f,1.166919931983f,
64 1.154700538379f,1.142857142857f,1.131370849898f,1.120224067222f,
65 1.109400392450f,1.098884511590f,1.088662107904f,1.078719779941f,
66 1.069044967650f,1.059625885652f,1.050451462878f,1.041511287847f,
67 1.032795558989f,1.024295039463f,1.016001016002f,1.007905261358f,
71 #define INVSQ2EXP_LOOKUP_MIN (-32)
72 #define INVSQ2EXP_LOOKUP_MAX 32
73 static float INVSQ2EXP_LOOKUP[INVSQ2EXP_LOOKUP_MAX-\
74 INVSQ2EXP_LOOKUP_MIN+1]={
75 65536.f, 46340.95001f, 32768.f, 23170.47501f,
76 16384.f, 11585.2375f, 8192.f, 5792.618751f,
77 4096.f, 2896.309376f, 2048.f, 1448.154688f,
78 1024.f, 724.0773439f, 512.f, 362.038672f,
79 256.f, 181.019336f, 128.f, 90.50966799f,
80 64.f, 45.254834f, 32.f, 22.627417f,
81 16.f, 11.3137085f, 8.f, 5.656854249f,
82 4.f, 2.828427125f, 2.f, 1.414213562f,
83 1.f, 0.7071067812f, 0.5f, 0.3535533906f,
84 0.25f, 0.1767766953f, 0.125f, 0.08838834765f,
85 0.0625f, 0.04419417382f, 0.03125f, 0.02209708691f,
86 0.015625f, 0.01104854346f, 0.0078125f, 0.005524271728f,
87 0.00390625f, 0.002762135864f, 0.001953125f, 0.001381067932f,
88 0.0009765625f, 0.000690533966f, 0.00048828125f, 0.000345266983f,
89 0.000244140625f,0.0001726334915f,0.0001220703125f,8.631674575e-05
f,
90 6.103515625e-05
f,4.315837288e-05
f,3.051757812e-05
f,2.157918644e-05
f,
96 #define FROMdB_LOOKUP_SZ 35
97 #define FROMdB2_LOOKUP_SZ 32
98 #define FROMdB_SHIFT 5
99 #define FROMdB2_SHIFT 3
100 #define FROMdB2_MASK 31
102 1.f, 0.6309573445f, 0.3981071706f, 0.2511886432f,
103 0.1584893192f, 0.1f, 0.06309573445f, 0.03981071706f,
104 0.02511886432f, 0.01584893192f, 0.01f, 0.006309573445f,
105 0.003981071706f, 0.002511886432f, 0.001584893192f, 0.001f,
106 0.0006309573445f,0.0003981071706f,0.0002511886432f,0.0001584893192f,
107 0.0001f,6.309573445e-05
f,3.981071706e-05
f,2.511886432e-05
f,
108 1.584893192e-05
f, 1e-05
f,6.309573445e-06
f,3.981071706e-06
f,
109 2.511886432e-06
f,1.584893192e-06
f, 1e-06
f,6.309573445e-07
f,
110 3.981071706e-07
f,2.511886432e-07
f,1.584893192e-07
f,
114 0.9928302478f, 0.9786445908f, 0.9646616199f, 0.9508784391f,
115 0.9372921937f, 0.92390007f, 0.9106992942f, 0.8976871324f,
116 0.8848608897f, 0.8722179097f, 0.8597555737f, 0.8474713009f,
117 0.835362547f, 0.8234268041f, 0.8116616003f, 0.8000644989f,
118 0.7886330981f, 0.7773650302f, 0.7662579617f, 0.755309592f,
119 0.7445176537f, 0.7338799116f, 0.7233941627f, 0.7130582353f,
120 0.7028699885f, 0.6928273125f, 0.6829281272f, 0.6731703824f,
121 0.6635520573f, 0.6540711597f, 0.6447257262f, 0.6355138211f,
126 #define INVSQ_LOOKUP_I_SHIFT 10
127 #define INVSQ_LOOKUP_I_MASK 1023
128 static long INVSQ_LOOKUP_I[64+1]={
129 92682
l, 91966
l, 91267
l, 90583
l,
130 89915
l, 89261
l, 88621
l, 87995
l,
131 87381
l, 86781
l, 86192
l, 85616
l,
132 85051
l, 84497
l, 83953
l, 83420
l,
133 82897
l, 82384
l, 81880
l, 81385
l,
134 80899
l, 80422
l, 79953
l, 79492
l,
135 79039
l, 78594
l, 78156
l, 77726
l,
136 77302
l, 76885
l, 76475
l, 76072
l,
137 75674
l, 75283
l, 74898
l, 74519
l,
138 74146
l, 73778
l, 73415
l, 73058
l,
139 72706
l, 72359
l, 72016
l, 71679
l,
140 71347
l, 71019
l, 70695
l, 70376
l,
141 70061
l, 69750
l, 69444
l, 69141
l,
142 68842
l, 68548
l, 68256
l, 67969
l,
143 67685
l, 67405
l, 67128
l, 66855
l,
144 66585
l, 66318
l, 66054
l, 65794
l,
148 #define COS_LOOKUP_I_SHIFT 9
149 #define COS_LOOKUP_I_MASK 511
150 #define COS_LOOKUP_I_SZ 128
151 static long COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={
152 16384
l, 16379
l, 16364
l, 16340
l,
153 16305
l, 16261
l, 16207
l, 16143
l,
154 16069
l, 15986
l, 15893
l, 15791
l,
155 15679
l, 15557
l, 15426
l, 15286
l,
156 15137
l, 14978
l, 14811
l, 14635
l,
157 14449
l, 14256
l, 14053
l, 13842
l,
158 13623
l, 13395
l, 13160
l, 12916
l,
159 12665
l, 12406
l, 12140
l, 11866
l,
160 11585
l, 11297
l, 11003
l, 10702
l,
161 10394
l, 10080
l, 9760
l, 9434
l,
162 9102
l, 8765
l, 8423
l, 8076
l,
163 7723
l, 7366
l, 7005
l, 6639
l,
164 6270
l, 5897
l, 5520
l, 5139
l,
165 4756
l, 4370
l, 3981
l, 3590
l,
166 3196
l, 2801
l, 2404
l, 2006
l,
167 1606
l, 1205
l, 804
l, 402
l,
168 0
l, -401
l, -803
l, -1204
l,
169 -1605
l, -2005
l, -2403
l, -2800
l,
170 -3195
l, -3589
l, -3980
l, -4369
l,
171 -4755
l, -5138
l, -5519
l, -5896
l,
172 -6269
l, -6638
l, -7004
l, -7365
l,
173 -7722
l, -8075
l, -8422
l, -8764
l,
174 -9101
l, -9433
l, -9759
l, -10079
l,
175 -10393
l, -10701
l, -11002
l, -11296
l,
176 -11584
l, -11865
l, -12139
l, -12405
l,
177 -12664
l, -12915
l, -13159
l, -13394
l,
178 -13622
l, -13841
l, -14052
l, -14255
l,
179 -14448
l, -14634
l, -14810
l, -14977
l,
180 -15136
l, -15285
l, -15425
l, -15556
l,
181 -15678
l, -15790
l, -15892
l, -15985
l,
182 -16068
l, -16142
l, -16206
l, -16260
l,
183 -16304
l, -16339
l, -16363
l, -16378
l,
#define FROMdB2_LOOKUP_SZ