1 /* 2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding 3 ** Copyright (C) 2003-2005 M. Bakker, Ahead Software AG, http://www.nero.com 4 ** 5 ** This program is free software; you can redistribute it and/or modify 6 ** it under the terms of the GNU General Public License as published by 7 ** the Free Software Foundation; either version 2 of the License, or 8 ** (at your option) any later version. 9 ** 10 ** This program is distributed in the hope that it will be useful, 11 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 12 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 ** GNU General Public License for more details. 14 ** 15 ** You should have received a copy of the GNU General Public License 16 ** along with this program; if not, write to the Free Software 17 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 18 ** 19 ** Any non-GPL usage of this software or parts of this software is strictly 20 ** forbidden. 21 ** 22 ** The "appropriate copyright message" mentioned in section 2c of the GPLv2 23 ** must read: "Code from FAAD2 is copyright (c) Nero AG, www.nero.com" 24 ** 25 ** Commercial non-GPL licensing of this software is possible. 26 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com. 27 ** 28 ** $Id: ssr_win.h,v 1.16 2007/11/01 12:33:39 menno Exp $ 29 **/ 30 31 #ifndef __SSR_WIN_H__ 32 #define __SSR_WIN_H__ 33 34 #ifdef __cplusplus 35 extern "C" { 36 #endif 37 38 #ifdef _MSC_VER 39 #pragma warning(disable:4305) 40 #pragma warning(disable:4244) 41 #endif 42 43 static real_t sine_short_32[] = { 44 0.0245412290, 45 0.0735645667, 46 0.1224106774, 47 0.1709618866, 48 0.2191012502, 49 0.2667127550, 50 0.3136817515, 51 0.3598950505, 52 0.4052413106, 53 0.4496113360, 54 0.4928981960, 55 0.5349976420, 56 0.5758082271, 57 0.6152316332, 58 0.6531728506, 59 0.6895405650, 60 0.7242470980, 61 0.7572088838, 62 0.7883464694, 63 0.8175848126, 64 0.8448535800, 65 0.8700870275, 66 0.8932242990, 67 0.9142097831, 68 0.9329928160, 69 0.9495282173, 70 0.9637760520, 71 0.9757021666, 72 0.9852776527, 73 0.9924795628, 74 0.9972904325, 75 0.9996988177 76 }; 77 78 static real_t sine_long_256[] = { 79 0.0030679568, 80 0.0092037553, 81 0.0153392069, 82 0.0214740802, 83 0.0276081469, 84 0.0337411724, 85 0.0398729295, 86 0.0460031852, 87 0.0521317050, 88 0.0582582653, 89 0.0643826351, 90 0.0705045760, 91 0.0766238645, 92 0.0827402696, 93 0.0888535529, 94 0.0949634984, 95 0.1010698676, 96 0.1071724296, 97 0.1132709533, 98 0.1193652153, 99 0.1254549921, 100 0.1315400302, 101 0.1376201212, 102 0.1436950415, 103 0.1497645378, 104 0.1558284014, 105 0.1618863940, 106 0.1679383069, 107 0.1739838719, 108 0.1800229102, 109 0.1860551536, 110 0.1920804083, 111 0.1980984211, 112 0.2041089684, 113 0.2101118416, 114 0.2161068022, 115 0.2220936269, 116 0.2280720919, 117 0.2340419590, 118 0.2400030345, 119 0.2459550500, 120 0.2518978119, 121 0.2578310966, 122 0.2637546957, 123 0.2696683407, 124 0.2755718231, 125 0.2814649343, 126 0.2873474658, 127 0.2932191789, 128 0.2990798354, 129 0.3049292266, 130 0.3107671738, 131 0.3165933788, 132 0.3224076927, 133 0.3282098472, 134 0.3339996636, 135 0.3397769034, 136 0.3455413282, 137 0.3512927592, 138 0.3570309579, 139 0.3627557456, 140 0.3684668541, 141 0.3741640747, 142 0.3798472285, 143 0.3855160773, 144 0.3911703825, 145 0.3968099952, 146 0.4024346471, 147 0.4080441594, 148 0.4136383235, 149 0.4192169011, 150 0.4247796834, 151 0.4303264916, 152 0.4358570874, 153 0.4413712919, 154 0.4468688369, 155 0.4523496032, 156 0.4578133225, 157 0.4632597864, 158 0.4686888456, 159 0.4741002321, 160 0.4794937670, 161 0.4848692715, 162 0.4902265072, 163 0.4955652654, 164 0.5008853674, 165 0.5061866641, 166 0.5114688873, 167 0.5167317986, 168 0.5219752789, 169 0.5271991491, 170 0.5324031115, 171 0.5375871062, 172 0.5427507758, 173 0.5478940606, 174 0.5530167222, 175 0.5581185222, 176 0.5631993413, 177 0.5682589412, 178 0.5732972026, 179 0.5783138275, 180 0.5833086967, 181 0.5882815719, 182 0.5932323337, 183 0.5981607437, 184 0.6030666232, 185 0.6079497933, 186 0.6128100753, 187 0.6176473498, 188 0.6224613190, 189 0.6272518039, 190 0.6320187449, 191 0.6367619038, 192 0.6414810419, 193 0.6461760402, 194 0.6508467197, 195 0.6554928422, 196 0.6601143479, 197 0.6647109985, 198 0.6692826152, 199 0.6738290191, 200 0.6783500314, 201 0.6828455329, 202 0.6873153448, 203 0.6917592883, 204 0.6961771250, 205 0.7005687952, 206 0.7049341202, 207 0.7092728615, 208 0.7135848999, 209 0.7178700566, 210 0.7221282125, 211 0.7263591886, 212 0.7305628061, 213 0.7347388864, 214 0.7388873696, 215 0.7430079579, 216 0.7471006513, 217 0.7511651516, 218 0.7552013993, 219 0.7592092156, 220 0.7631884217, 221 0.7671388984, 222 0.7710605264, 223 0.7749531269, 224 0.7788165212, 225 0.7826505899, 226 0.7864552140, 227 0.7902302146, 228 0.7939754725, 229 0.7976908684, 230 0.8013761640, 231 0.8050313592, 232 0.8086562157, 233 0.8122506142, 234 0.8158144355, 235 0.8193475604, 236 0.8228498101, 237 0.8263210654, 238 0.8297612667, 239 0.8331701756, 240 0.8365477324, 241 0.8398938179, 242 0.8432082534, 243 0.8464909792, 244 0.8497417569, 245 0.8529606462, 246 0.8561473489, 247 0.8593018055, 248 0.8624239564, 249 0.8655136228, 250 0.8685707450, 251 0.8715950847, 252 0.8745866418, 253 0.8775452971, 254 0.8804709315, 255 0.8833633661, 256 0.8862225413, 257 0.8890483975, 258 0.8918406963, 259 0.8945994973, 260 0.8973246217, 261 0.9000158906, 262 0.9026733041, 263 0.9052967429, 264 0.9078861475, 265 0.9104412794, 266 0.9129621983, 267 0.9154487252, 268 0.9179008007, 269 0.9203183055, 270 0.9227011204, 271 0.9250492454, 272 0.9273625612, 273 0.9296408892, 274 0.9318842888, 275 0.9340925813, 276 0.9362657070, 277 0.9384035468, 278 0.9405061007, 279 0.9425731897, 280 0.9446048737, 281 0.9466009140, 282 0.9485613704, 283 0.9504860640, 284 0.9523749948, 285 0.9542281032, 286 0.9560452700, 287 0.9578264356, 288 0.9595715404, 289 0.9612805247, 290 0.9629532695, 291 0.9645897746, 292 0.9661900401, 293 0.9677538276, 294 0.9692812562, 295 0.9707721472, 296 0.9722265005, 297 0.9736442566, 298 0.9750253558, 299 0.9763697386, 300 0.9776773453, 301 0.9789481759, 302 0.9801821709, 303 0.9813792109, 304 0.9825392962, 305 0.9836624265, 306 0.9847484827, 307 0.9857975245, 308 0.9868094325, 309 0.9877841473, 310 0.9887216687, 311 0.9896219969, 312 0.9904850721, 313 0.9913108945, 314 0.9920993447, 315 0.9928504229, 316 0.9935641289, 317 0.9942404628, 318 0.9948793054, 319 0.9954807758, 320 0.9960446954, 321 0.9965711236, 322 0.9970600605, 323 0.9975114465, 324 0.9979252815, 325 0.9983015656, 326 0.9986402392, 327 0.9989413023, 328 0.9992047548, 329 0.9994305968, 330 0.9996188283, 331 0.9997693896, 332 0.9998823404, 333 0.9999576211, 334 0.9999952912 335 }; 336 337 static real_t kbd_short_32[] = { 338 0.0000875914060105, 339 0.0009321760265333, 340 0.0032114611466596, 341 0.0081009893216786, 342 0.0171240286619181, 343 0.0320720743527833, 344 0.0548307856028528, 345 0.0871361822564870, 346 0.1302923415174603, 347 0.1848955425508276, 348 0.2506163195331889, 349 0.3260874142923209, 350 0.4089316830907141, 351 0.4959414909423747, 352 0.5833939894958904, 353 0.6674601983218376, 354 0.7446454751465113, 355 0.8121892962974020, 356 0.8683559394406505, 357 0.9125649996381605, 358 0.9453396205809574, 359 0.9680864942677585, 360 0.9827581789763112, 361 0.9914756203467121, 362 0.9961964092194694, 363 0.9984956609571091, 364 0.9994855586984285, 365 0.9998533730714648, 366 0.9999671864476404, 367 0.9999948432453556, 368 0.9999995655238333, 369 0.9999999961638728 370 }; 371 372 373 static real_t kbd_long_256[] = { 374 0.0005851230124487, 375 0.0009642149851497, 376 0.0013558207534965, 377 0.0017771849644394, 378 0.0022352533849672, 379 0.0027342299070304, 380 0.0032773001022195, 381 0.0038671998069216, 382 0.0045064443384152, 383 0.0051974336885144, 384 0.0059425050016407, 385 0.0067439602523141, 386 0.0076040812644888, 387 0.0085251378135895, 388 0.0095093917383048, 389 0.0105590986429280, 390 0.0116765080854300, 391 0.0128638627792770, 392 0.0141233971318631, 393 0.0154573353235409, 394 0.0168678890600951, 395 0.0183572550877256, 396 0.0199276125319803, 397 0.0215811201042484, 398 0.0233199132076965, 399 0.0251461009666641, 400 0.0270617631981826, 401 0.0290689473405856, 402 0.0311696653515848, 403 0.0333658905863535, 404 0.0356595546648444, 405 0.0380525443366107, 406 0.0405466983507029, 407 0.0431438043376910, 408 0.0458455957104702, 409 0.0486537485902075, 410 0.0515698787635492, 411 0.0545955386770205, 412 0.0577322144743916, 413 0.0609813230826460, 414 0.0643442093520723, 415 0.0678221432558827, 416 0.0714163171546603, 417 0.0751278431308314, 418 0.0789577503982528, 419 0.0829069827918993, 420 0.0869763963425241, 421 0.0911667569410503, 422 0.0954787380973307, 423 0.0999129187977865, 424 0.1044697814663005, 425 0.1091497100326053, 426 0.1139529881122542, 427 0.1188797973021148, 428 0.1239302155951605, 429 0.1291042159181728, 430 0.1344016647957880, 431 0.1398223211441467, 432 0.1453658351972151, 433 0.1510317475686540, 434 0.1568194884519144, 435 0.1627283769610327, 436 0.1687576206143887, 437 0.1749063149634756, 438 0.1811734433685097, 439 0.1875578769224857, 440 0.1940583745250518, 441 0.2006735831073503, 442 0.2074020380087318, 443 0.2142421635060113, 444 0.2211922734956977, 445 0.2282505723293797, 446 0.2354151558022098, 447 0.2426840122941792, 448 0.2500550240636293, 449 0.2575259686921987, 450 0.2650945206801527, 451 0.2727582531907993, 452 0.2805146399424422, 453 0.2883610572460804, 454 0.2962947861868143, 455 0.3043130149466800, 456 0.3124128412663888, 457 0.3205912750432127, 458 0.3288452410620226, 459 0.3371715818562547, 460 0.3455670606953511, 461 0.3540283646950029, 462 0.3625521080463003, 463 0.3711348353596863, 464 0.3797730251194006, 465 0.3884630932439016, 466 0.3972013967475546, 467 0.4059842374986933, 468 0.4148078660689724, 469 0.4236684856687616, 470 0.4325622561631607, 471 0.4414852981630577, 472 0.4504336971855032, 473 0.4594035078775303, 474 0.4683907582974173, 475 0.4773914542472655, 476 0.4864015836506502, 477 0.4954171209689973, 478 0.5044340316502417, 479 0.5134482766032377, 480 0.5224558166913167, 481 0.5314526172383208, 482 0.5404346525403849, 483 0.5493979103766972, 484 0.5583383965124314, 485 0.5672521391870222, 486 0.5761351935809411, 487 0.5849836462541291, 488 0.5937936195492526, 489 0.6025612759529649, 490 0.6112828224083939, 491 0.6199545145721097, 492 0.6285726610088878, 493 0.6371336273176413, 494 0.6456338401819751, 495 0.6540697913388968, 496 0.6624380414593221, 497 0.6707352239341151, 498 0.6789580485595255, 499 0.6871033051160131, 500 0.6951678668345944, 501 0.7031486937449871, 502 0.7110428359000029, 503 0.7188474364707993, 504 0.7265597347077880, 505 0.7341770687621900, 506 0.7416968783634273, 507 0.7491167073477523, 508 0.7564342060337386, 509 0.7636471334404891, 510 0.7707533593446514, 511 0.7777508661725849, 512 0.7846377507242818, 513 0.7914122257259034, 514 0.7980726212080798, 515 0.8046173857073919, 516 0.8110450872887550, 517 0.8173544143867162, 518 0.8235441764639875, 519 0.8296133044858474, 520 0.8355608512093652, 521 0.8413859912867303, 522 0.8470880211822968, 523 0.8526663589032990, 524 0.8581205435445334, 525 0.8634502346476508, 526 0.8686552113760616, 527 0.8737353715068081, 528 0.8786907302411250, 529 0.8835214188357692, 530 0.8882276830575707, 531 0.8928098814640207, 532 0.8972684835130879, 533 0.9016040675058185, 534 0.9058173183656508, 535 0.9099090252587376, 536 0.9138800790599416, 537 0.9177314696695282, 538 0.9214642831859411, 539 0.9250796989403991, 540 0.9285789863994010, 541 0.9319635019415643, 542 0.9352346855155568, 543 0.9383940571861993, 544 0.9414432135761304, 545 0.9443838242107182, 546 0.9472176277741918, 547 0.9499464282852282, 548 0.9525720912004834, 549 0.9550965394547873, 550 0.9575217494469370, 551 0.9598497469802043, 552 0.9620826031668507, 553 0.9642224303060783, 554 0.9662713777449607, 555 0.9682316277319895, 556 0.9701053912729269, 557 0.9718949039986892, 558 0.9736024220549734, 559 0.9752302180233160, 560 0.9767805768831932, 561 0.9782557920246753, 562 0.9796581613210076, 563 0.9809899832703159, 564 0.9822535532154261, 565 0.9834511596505429, 566 0.9845850806232530, 567 0.9856575802399989, 568 0.9866709052828243, 569 0.9876272819448033, 570 0.9885289126911557, 571 0.9893779732525968, 572 0.9901766097569984, 573 0.9909269360049311, 574 0.9916310308941294, 575 0.9922909359973702, 576 0.9929086532976777, 577 0.9934861430841844, 578 0.9940253220113651, 579 0.9945280613237534, 580 0.9949961852476154, 581 0.9954314695504363, 582 0.9958356402684387, 583 0.9962103726017252, 584 0.9965572899760172, 585 0.9968779632693499, 586 0.9971739102014799, 587 0.9974465948831872, 588 0.9976974275220812, 589 0.9979277642809907, 590 0.9981389072844972, 591 0.9983321047686901, 592 0.9985085513687731, 593 0.9986693885387259, 594 0.9988157050968516, 595 0.9989485378906924, 596 0.9990688725744943, 597 0.9991776444921379, 598 0.9992757396582338, 599 0.9993639958299003, 600 0.9994432036616085, 601 0.9995141079353859, 602 0.9995774088586188, 603 0.9996337634216871, 604 0.9996837868076957, 605 0.9997280538466377, 606 0.9997671005064359, 607 0.9998014254134544, 608 0.9998314913952471, 609 0.9998577270385304, 610 0.9998805282555989, 611 0.9999002598526793, 612 0.9999172570940037, 613 0.9999318272557038, 614 0.9999442511639580, 615 0.9999547847121726, 616 0.9999636603523446, 617 0.9999710885561258, 618 0.9999772592414866, 619 0.9999823431612708, 620 0.9999864932503106, 621 0.9999898459281599, 622 0.9999925223548691, 623 0.9999946296375997, 624 0.9999962619864214, 625 0.9999975018180320, 626 0.9999984208055542, 627 0.9999990808746198, 628 0.9999995351446231, 629 0.9999998288155155 630 }; 631 632 #ifdef __cplusplus 633 } 634 #endif 635 #endif 636