examples/SFExamples/oggvorbiscodec/src/libvorbis/lib/lookup_data.h

00001 /********************************************************************
00002  *                                                                  *
00003  * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
00004  * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
00005  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
00006  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
00007  *                                                                  *
00008  * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002             *
00009  * by the XIPHOPHORUS Company http://www.xiph.org/                  *
00010  *                                                                  *
00011  ********************************************************************
00012 
00013   function: lookup data; generated by lookups.pl; edit there
00014   last mod: $Id: lookup_data.h 7187 2004-07-20 07:24:27Z xiphmont $
00015 
00016  ********************************************************************/
00017 
00018 #ifndef _V_LOOKUP_DATA_H_
00019 
00020 #ifdef FLOAT_LOOKUP
00021 #define COS_LOOKUP_SZ 128
00022 static float COS_LOOKUP[COS_LOOKUP_SZ+1]={
00023         +1.0000000000000f,+0.9996988186962f,+0.9987954562052f,+0.9972904566787f,
00024         +0.9951847266722f,+0.9924795345987f,+0.9891765099648f,+0.9852776423889f,
00025         +0.9807852804032f,+0.9757021300385f,+0.9700312531945f,+0.9637760657954f,
00026         +0.9569403357322f,+0.9495281805930f,+0.9415440651830f,+0.9329927988347f,
00027         +0.9238795325113f,+0.9142097557035f,+0.9039892931234f,+0.8932243011955f,
00028         +0.8819212643484f,+0.8700869911087f,+0.8577286100003f,+0.8448535652497f,
00029         +0.8314696123025f,+0.8175848131516f,+0.8032075314806f,+0.7883464276266f,
00030         +0.7730104533627f,+0.7572088465065f,+0.7409511253550f,+0.7242470829515f,
00031         +0.7071067811865f,+0.6895405447371f,+0.6715589548470f,+0.6531728429538f,
00032         +0.6343932841636f,+0.6152315905806f,+0.5956993044924f,+0.5758081914178f,
00033         +0.5555702330196f,+0.5349976198871f,+0.5141027441932f,+0.4928981922298f,
00034         +0.4713967368260f,+0.4496113296546f,+0.4275550934303f,+0.4052413140050f,
00035         +0.3826834323651f,+0.3598950365350f,+0.3368898533922f,+0.3136817403989f,
00036         +0.2902846772545f,+0.2667127574749f,+0.2429801799033f,+0.2191012401569f,
00037         +0.1950903220161f,+0.1709618887603f,+0.1467304744554f,+0.1224106751992f,
00038         +0.0980171403296f,+0.0735645635997f,+0.0490676743274f,+0.0245412285229f,
00039         +0.0000000000000f,-0.0245412285229f,-0.0490676743274f,-0.0735645635997f,
00040         -0.0980171403296f,-0.1224106751992f,-0.1467304744554f,-0.1709618887603f,
00041         -0.1950903220161f,-0.2191012401569f,-0.2429801799033f,-0.2667127574749f,
00042         -0.2902846772545f,-0.3136817403989f,-0.3368898533922f,-0.3598950365350f,
00043         -0.3826834323651f,-0.4052413140050f,-0.4275550934303f,-0.4496113296546f,
00044         -0.4713967368260f,-0.4928981922298f,-0.5141027441932f,-0.5349976198871f,
00045         -0.5555702330196f,-0.5758081914178f,-0.5956993044924f,-0.6152315905806f,
00046         -0.6343932841636f,-0.6531728429538f,-0.6715589548470f,-0.6895405447371f,
00047         -0.7071067811865f,-0.7242470829515f,-0.7409511253550f,-0.7572088465065f,
00048         -0.7730104533627f,-0.7883464276266f,-0.8032075314806f,-0.8175848131516f,
00049         -0.8314696123025f,-0.8448535652497f,-0.8577286100003f,-0.8700869911087f,
00050         -0.8819212643484f,-0.8932243011955f,-0.9039892931234f,-0.9142097557035f,
00051         -0.9238795325113f,-0.9329927988347f,-0.9415440651830f,-0.9495281805930f,
00052         -0.9569403357322f,-0.9637760657954f,-0.9700312531945f,-0.9757021300385f,
00053         -0.9807852804032f,-0.9852776423889f,-0.9891765099648f,-0.9924795345987f,
00054         -0.9951847266722f,-0.9972904566787f,-0.9987954562052f,-0.9996988186962f,
00055         -1.0000000000000f,
00056 };
00057 
00058 #define INVSQ_LOOKUP_SZ 32
00059 static float INVSQ_LOOKUP[INVSQ_LOOKUP_SZ+1]={
00060         1.414213562373f,1.392621247646f,1.371988681140f,1.352246807566f,
00061         1.333333333333f,1.315191898443f,1.297771369046f,1.281025230441f,
00062         1.264911064067f,1.249390095109f,1.234426799697f,1.219988562661f,
00063         1.206045378311f,1.192569588000f,1.179535649239f,1.166919931983f,
00064         1.154700538379f,1.142857142857f,1.131370849898f,1.120224067222f,
00065         1.109400392450f,1.098884511590f,1.088662107904f,1.078719779941f,
00066         1.069044967650f,1.059625885652f,1.050451462878f,1.041511287847f,
00067         1.032795558989f,1.024295039463f,1.016001016002f,1.007905261358f,
00068         1.000000000000f,
00069 };
00070 
00071 #define INVSQ2EXP_LOOKUP_MIN (-32)
00072 #define INVSQ2EXP_LOOKUP_MAX 32
00073 static float INVSQ2EXP_LOOKUP[INVSQ2EXP_LOOKUP_MAX-\
00074                               INVSQ2EXP_LOOKUP_MIN+1]={
00075                  65536.f,    46340.95001f,         32768.f,    23170.47501f,
00076                  16384.f,     11585.2375f,          8192.f,    5792.618751f,
00077                   4096.f,    2896.309376f,          2048.f,    1448.154688f,
00078                   1024.f,    724.0773439f,           512.f,     362.038672f,
00079                    256.f,     181.019336f,           128.f,    90.50966799f,
00080                     64.f,      45.254834f,            32.f,      22.627417f,
00081                     16.f,     11.3137085f,             8.f,    5.656854249f,
00082                      4.f,    2.828427125f,             2.f,    1.414213562f,
00083                      1.f,   0.7071067812f,            0.5f,   0.3535533906f,
00084                    0.25f,   0.1767766953f,          0.125f,  0.08838834765f,
00085                  0.0625f,  0.04419417382f,        0.03125f,  0.02209708691f,
00086                0.015625f,  0.01104854346f,      0.0078125f, 0.005524271728f,
00087              0.00390625f, 0.002762135864f,    0.001953125f, 0.001381067932f,
00088            0.0009765625f, 0.000690533966f,  0.00048828125f, 0.000345266983f,
00089          0.000244140625f,0.0001726334915f,0.0001220703125f,8.631674575e-05f,
00090         6.103515625e-05f,4.315837288e-05f,3.051757812e-05f,2.157918644e-05f,
00091         1.525878906e-05f,
00092 };
00093 
00094 #endif
00095 
00096 #define FROMdB_LOOKUP_SZ 35
00097 #define FROMdB2_LOOKUP_SZ 32
00098 #define FROMdB_SHIFT 5
00099 #define FROMdB2_SHIFT 3
00100 #define FROMdB2_MASK 31
00101 static float FROMdB_LOOKUP[FROMdB_LOOKUP_SZ]={
00102                      1.f,   0.6309573445f,   0.3981071706f,   0.2511886432f,
00103            0.1584893192f,            0.1f,  0.06309573445f,  0.03981071706f,
00104           0.02511886432f,  0.01584893192f,           0.01f, 0.006309573445f,
00105          0.003981071706f, 0.002511886432f, 0.001584893192f,          0.001f,
00106         0.0006309573445f,0.0003981071706f,0.0002511886432f,0.0001584893192f,
00107                  0.0001f,6.309573445e-05f,3.981071706e-05f,2.511886432e-05f,
00108         1.584893192e-05f,          1e-05f,6.309573445e-06f,3.981071706e-06f,
00109         2.511886432e-06f,1.584893192e-06f,          1e-06f,6.309573445e-07f,
00110         3.981071706e-07f,2.511886432e-07f,1.584893192e-07f,
00111 };
00112 
00113 static float FROMdB2_LOOKUP[FROMdB2_LOOKUP_SZ]={
00114            0.9928302478f,   0.9786445908f,   0.9646616199f,   0.9508784391f,
00115            0.9372921937f,     0.92390007f,   0.9106992942f,   0.8976871324f,
00116            0.8848608897f,   0.8722179097f,   0.8597555737f,   0.8474713009f,
00117             0.835362547f,   0.8234268041f,   0.8116616003f,   0.8000644989f,
00118            0.7886330981f,   0.7773650302f,   0.7662579617f,    0.755309592f,
00119            0.7445176537f,   0.7338799116f,   0.7233941627f,   0.7130582353f,
00120            0.7028699885f,   0.6928273125f,   0.6829281272f,   0.6731703824f,
00121            0.6635520573f,   0.6540711597f,   0.6447257262f,   0.6355138211f,
00122 };
00123 
00124 #ifdef INT_LOOKUP
00125 
00126 #define INVSQ_LOOKUP_I_SHIFT 10
00127 #define INVSQ_LOOKUP_I_MASK 1023
00128 static long INVSQ_LOOKUP_I[64+1]={
00129            92682l,   91966l,   91267l,   90583l,
00130            89915l,   89261l,   88621l,   87995l,
00131            87381l,   86781l,   86192l,   85616l,
00132            85051l,   84497l,   83953l,   83420l,
00133            82897l,   82384l,   81880l,   81385l,
00134            80899l,   80422l,   79953l,   79492l,
00135            79039l,   78594l,   78156l,   77726l,
00136            77302l,   76885l,   76475l,   76072l,
00137            75674l,   75283l,   74898l,   74519l,
00138            74146l,   73778l,   73415l,   73058l,
00139            72706l,   72359l,   72016l,   71679l,
00140            71347l,   71019l,   70695l,   70376l,
00141            70061l,   69750l,   69444l,   69141l,
00142            68842l,   68548l,   68256l,   67969l,
00143            67685l,   67405l,   67128l,   66855l,
00144            66585l,   66318l,   66054l,   65794l,
00145            65536l,
00146 };
00147 
00148 #define COS_LOOKUP_I_SHIFT 9
00149 #define COS_LOOKUP_I_MASK 511
00150 #define COS_LOOKUP_I_SZ 128
00151 static long COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={
00152            16384l,   16379l,   16364l,   16340l,
00153            16305l,   16261l,   16207l,   16143l,
00154            16069l,   15986l,   15893l,   15791l,
00155            15679l,   15557l,   15426l,   15286l,
00156            15137l,   14978l,   14811l,   14635l,
00157            14449l,   14256l,   14053l,   13842l,
00158            13623l,   13395l,   13160l,   12916l,
00159            12665l,   12406l,   12140l,   11866l,
00160            11585l,   11297l,   11003l,   10702l,
00161            10394l,   10080l,    9760l,    9434l,
00162             9102l,    8765l,    8423l,    8076l,
00163             7723l,    7366l,    7005l,    6639l,
00164             6270l,    5897l,    5520l,    5139l,
00165             4756l,    4370l,    3981l,    3590l,
00166             3196l,    2801l,    2404l,    2006l,
00167             1606l,    1205l,     804l,     402l,
00168                0l,    -401l,    -803l,   -1204l,
00169            -1605l,   -2005l,   -2403l,   -2800l,
00170            -3195l,   -3589l,   -3980l,   -4369l,
00171            -4755l,   -5138l,   -5519l,   -5896l,
00172            -6269l,   -6638l,   -7004l,   -7365l,
00173            -7722l,   -8075l,   -8422l,   -8764l,
00174            -9101l,   -9433l,   -9759l,  -10079l,
00175           -10393l,  -10701l,  -11002l,  -11296l,
00176           -11584l,  -11865l,  -12139l,  -12405l,
00177           -12664l,  -12915l,  -13159l,  -13394l,
00178           -13622l,  -13841l,  -14052l,  -14255l,
00179           -14448l,  -14634l,  -14810l,  -14977l,
00180           -15136l,  -15285l,  -15425l,  -15556l,
00181           -15678l,  -15790l,  -15892l,  -15985l,
00182           -16068l,  -16142l,  -16206l,  -16260l,
00183           -16304l,  -16339l,  -16363l,  -16378l,
00184           -16383l,
00185 };
00186 
00187 #endif
00188 
00189 #endif

Generated by  doxygen 1.6.2