1 /******************************************************************** 2 * * 3 * THIS FILE IS PART OF THE OggVorbis 'TREMOR' CODEC SOURCE CODE. * 4 * * 5 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 6 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 7 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 8 * * 9 * THE OggVorbis 'TREMOR' SOURCE CODE IS (C) COPYRIGHT 1994-2002 * 10 * BY THE Xiph.Org FOUNDATION http://www.xiph.org/ * 11 * * 12 ******************************************************************** 13 14 function: lookup data 15 16 ********************************************************************/ 17 18 #ifndef _V_LOOKUP_DATA_H_ 19 #define _V_LOOKUP_DATA_H_ 20 21 #include "os_types.h" 22 23 #define INVSQ_LOOKUP_I_SHIFT 10 24 #define INVSQ_LOOKUP_I_MASK 1023 25 static const long INVSQ_LOOKUP_I[64+1]={ 26 92682, 91966, 91267, 90583, 27 89915, 89261, 88621, 87995, 28 87381, 86781, 86192, 85616, 29 85051, 84497, 83953, 83420, 30 82897, 82384, 81880, 81385, 31 80899, 80422, 79953, 79492, 32 79039, 78594, 78156, 77726, 33 77302, 76885, 76475, 76072, 34 75674, 75283, 74898, 74519, 35 74146, 73778, 73415, 73058, 36 72706, 72359, 72016, 71679, 37 71347, 71019, 70695, 70376, 38 70061, 69750, 69444, 69141, 39 68842, 68548, 68256, 67969, 40 67685, 67405, 67128, 66855, 41 66585, 66318, 66054, 65794, 42 65536, 43 }; 44 45 static const long INVSQ_LOOKUP_IDel[64]={ 46 716, 699, 684, 668, 47 654, 640, 626, 614, 48 600, 589, 576, 565, 49 554, 544, 533, 523, 50 513, 504, 495, 486, 51 477, 469, 461, 453, 52 445, 438, 430, 424, 53 417, 410, 403, 398, 54 391, 385, 379, 373, 55 368, 363, 357, 352, 56 347, 343, 337, 332, 57 328, 324, 319, 315, 58 311, 306, 303, 299, 59 294, 292, 287, 284, 60 280, 277, 273, 270, 61 267, 264, 260, 258, 62 }; 63 64 #define COS_LOOKUP_I_SHIFT 9 65 #define COS_LOOKUP_I_MASK 511 66 #define COS_LOOKUP_I_SZ 128 67 static const ogg_int32_t COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={ 68 16384, 16379, 16364, 16340, 69 16305, 16261, 16207, 16143, 70 16069, 15986, 15893, 15791, 71 15679, 15557, 15426, 15286, 72 15137, 14978, 14811, 14635, 73 14449, 14256, 14053, 13842, 74 13623, 13395, 13160, 12916, 75 12665, 12406, 12140, 11866, 76 11585, 11297, 11003, 10702, 77 10394, 10080, 9760, 9434, 78 9102, 8765, 8423, 8076, 79 7723, 7366, 7005, 6639, 80 6270, 5897, 5520, 5139, 81 4756, 4370, 3981, 3590, 82 3196, 2801, 2404, 2006, 83 1606, 1205, 804, 402, 84 0, -401, -803, -1204, 85 -1605, -2005, -2403, -2800, 86 -3195, -3589, -3980, -4369, 87 -4755, -5138, -5519, -5896, 88 -6269, -6638, -7004, -7365, 89 -7722, -8075, -8422, -8764, 90 -9101, -9433, -9759, -10079, 91 -10393, -10701, -11002, -11296, 92 -11584, -11865, -12139, -12405, 93 -12664, -12915, -13159, -13394, 94 -13622, -13841, -14052, -14255, 95 -14448, -14634, -14810, -14977, 96 -15136, -15285, -15425, -15556, 97 -15678, -15790, -15892, -15985, 98 -16068, -16142, -16206, -16260, 99 -16304, -16339, -16363, -16378, 100 -16383, 101 }; 102 103 #endif 104 105 106 107 108 109