lsp_lookup.h
上传用户:wstnjxml
上传日期:2014-04-03
资源大小:7248k
文件大小:5k
源码类别:

Windows CE

开发平台:

C/C++

  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.   function: lookup data
  14.  ********************************************************************/
  15. #ifndef _V_LOOKUP_DATA_H_
  16. #define _V_LOOKUP_DATA_H_
  17. #include "os_types.h"
  18. #define FROMdB_LOOKUP_SZ 35
  19. #define FROMdB2_LOOKUP_SZ 32
  20. #define FROMdB_SHIFT 5
  21. #define FROMdB2_SHIFT 3
  22. #define FROMdB2_MASK 31
  23. static const ogg_int32_t FROMdB_LOOKUP[FROMdB_LOOKUP_SZ]={
  24.   0x003fffff, 0x0028619b, 0x00197a96, 0x0010137a,
  25.   0x000a24b0, 0x00066666, 0x000409c3, 0x00028c42,
  26.   0x00019b8c, 0x000103ab, 0x0000a3d7, 0x00006760,
  27.   0x0000413a, 0x00002928, 0x000019f8, 0x00001062,
  28.   0x00000a56, 0x00000686, 0x0000041e, 0x00000299,
  29.   0x000001a3, 0x00000109, 0x000000a7, 0x00000069,
  30.   0x00000042, 0x0000002a, 0x0000001a, 0x00000011,
  31.   0x0000000b, 0x00000007, 0x00000004, 0x00000003,
  32.   0x00000002, 0x00000001, 0x00000001};
  33. static const ogg_int32_t FROMdB2_LOOKUP[FROMdB2_LOOKUP_SZ]={
  34.   0x000001fc, 0x000001f5, 0x000001ee, 0x000001e7,
  35.   0x000001e0, 0x000001d9, 0x000001d2, 0x000001cc,
  36.   0x000001c5, 0x000001bf, 0x000001b8, 0x000001b2,
  37.   0x000001ac, 0x000001a6, 0x000001a0, 0x0000019a,
  38.   0x00000194, 0x0000018e, 0x00000188, 0x00000183,
  39.   0x0000017d, 0x00000178, 0x00000172, 0x0000016d,
  40.   0x00000168, 0x00000163, 0x0000015e, 0x00000159,
  41.   0x00000154, 0x0000014f, 0x0000014a, 0x00000145,
  42. };
  43. #define INVSQ_LOOKUP_I_SHIFT 10
  44. #define INVSQ_LOOKUP_I_MASK 1023
  45. static const long INVSQ_LOOKUP_I[64+1]={
  46.    92682,   91966,   91267,   90583,
  47.    89915,   89261,   88621,   87995,
  48.    87381,   86781,   86192,   85616,
  49.    85051,   84497,   83953,   83420,
  50.    82897,   82384,   81880,   81385,
  51.    80899,   80422,   79953,   79492,
  52.    79039,   78594,   78156,   77726,
  53.    77302,   76885,   76475,   76072,
  54.    75674,   75283,   74898,   74519,
  55.    74146,   73778,   73415,   73058,
  56.    72706,   72359,   72016,   71679,
  57.    71347,   71019,   70695,   70376,
  58.    70061,   69750,   69444,   69141,
  59.    68842,   68548,   68256,   67969,
  60.    67685,   67405,   67128,   66855,
  61.    66585,   66318,   66054,   65794,
  62.    65536,
  63. };
  64. static const long INVSQ_LOOKUP_IDel[64]={
  65.              716,     699,     684,     668,
  66.              654,     640,     626,     614,
  67.              600,     589,     576,     565,
  68.              554,     544,     533,     523,
  69.              513,     504,     495,     486,
  70.              477,     469,     461,     453,
  71.              445,     438,     430,     424,
  72.              417,     410,     403,     398,
  73.              391,     385,     379,     373,
  74.              368,     363,     357,     352,
  75.              347,     343,     337,     332,
  76.              328,     324,     319,     315,
  77.              311,     306,     303,     299,
  78.              294,     292,     287,     284,
  79.              280,     277,     273,     270,
  80.              267,     264,     260,     258,
  81. };
  82. #define COS_LOOKUP_I_SHIFT 9
  83. #define COS_LOOKUP_I_MASK 511
  84. #define COS_LOOKUP_I_SZ 128
  85. static const ogg_int32_t COS_LOOKUP_I[COS_LOOKUP_I_SZ+1]={
  86.    16384,   16379,   16364,   16340,
  87.    16305,   16261,   16207,   16143,
  88.    16069,   15986,   15893,   15791,
  89.    15679,   15557,   15426,   15286,
  90.    15137,   14978,   14811,   14635,
  91.    14449,   14256,   14053,   13842,
  92.    13623,   13395,   13160,   12916,
  93.    12665,   12406,   12140,   11866,
  94.    11585,   11297,   11003,   10702,
  95.    10394,   10080,    9760,    9434,
  96.     9102,    8765,    8423,    8076,
  97.     7723,    7366,    7005,    6639,
  98.     6270,    5897,    5520,    5139,
  99.     4756,    4370,    3981,    3590,
  100.     3196,    2801,    2404,    2006,
  101.     1606,    1205,     804,     402,
  102.        0,    -401,    -803,   -1204,
  103.    -1605,   -2005,   -2403,   -2800,
  104.    -3195,   -3589,   -3980,   -4369,
  105.    -4755,   -5138,   -5519,   -5896,
  106.    -6269,   -6638,   -7004,   -7365,
  107.    -7722,   -8075,   -8422,   -8764,
  108.    -9101,   -9433,   -9759,  -10079,
  109.   -10393,  -10701,  -11002,  -11296,
  110.   -11584,  -11865,  -12139,  -12405,
  111.   -12664,  -12915,  -13159,  -13394,
  112.   -13622,  -13841,  -14052,  -14255,
  113.   -14448,  -14634,  -14810,  -14977,
  114.   -15136,  -15285,  -15425,  -15556,
  115.   -15678,  -15790,  -15892,  -15985,
  116.   -16068,  -16142,  -16206,  -16260,
  117.   -16304,  -16339,  -16363,  -16378,
  118.   -16383,
  119. };
  120. #endif