phi_cons.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:6k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*====================================================================*/
  2. /*         MPEG-4 Audio (ISO/IEC 14496-3) Copyright Header            */
  3. /*====================================================================*/
  4. /*
  5. This software module was originally developed by Rakesh Taori and Andy
  6. Gerrits (Philips Research Laboratories, Eindhoven, The Netherlands) in
  7. the course of development of the MPEG-4 Audio (ISO/IEC 14496-3). This
  8. software module is an implementation of a part of one or more MPEG-4
  9. Audio (ISO/IEC 14496-3) tools as specified by the MPEG-4 Audio
  10. (ISO/IEC 14496-3). ISO/IEC gives users of the MPEG-4 Audio (ISO/IEC
  11. 14496-3) free license to this software module or modifications thereof
  12. for use in hardware or software products claiming conformance to the
  13. MPEG-4 Audio (ISO/IEC 14496-3). Those intending to use this software
  14. module in hardware or software products are advised that its use may
  15. infringe existing patents. The original developer of this software
  16. module and his/her company, the subsequent editors and their
  17. companies, and ISO/IEC have no liability for use of this software
  18. module or modifications thereof in an implementation. Copyright is not
  19. released for non MPEG-4 Audio (ISO/IEC 14496-3) conforming products.
  20. CN1 retains full right to use the code for his/her own purpose, assign
  21. or donate the code to a third party and to inhibit third parties from
  22. using the code for non MPEG-4 Audio (ISO/IEC 14496-3) conforming
  23. products.  This copyright notice must be included in all copies or
  24. derivative works. Copyright 1996.
  25. */
  26. /*====================================================================*/
  27. /*====================================================================*/
  28. /*                                                                    */
  29. /*      INCLUDE_FILE:   WDBXX.H                                       */
  30. /*      PACKAGE:        Wdbxx                                         */
  31. /*      COMPONENT:      Constants Used by the Philips Modules         */
  32. /*                                                                    */
  33. /*====================================================================*/
  34. #ifndef _wdbxx_h_
  35. #define _wdbxx_h_
  36. /* =====================================================================*/
  37. /* SAMPLING RATE                                                        */
  38. /* =====================================================================*/
  39. #define SAMP_RATE      16000
  40. #define MAX_CHANNELS   1
  41. /* =====================================================================*/
  42. /* BIT RATE RELATED CONSTANTS                                           */
  43. /* =====================================================================*/
  44. #define HEADER_SIZE    1
  45. /* =====================================================================*/
  46. /* MATHEMATICAL CONSTANTS                                               */
  47. /* =====================================================================*/
  48. #ifndef PI2
  49. #define PI2            (1.570796327)
  50. #endif
  51. #ifndef PI
  52. #define PI             (3.141592654)
  53. #endif
  54. #define TWOPI          (6.283185307)
  55. /* =====================================================================*/
  56. /* Sampling rate dependent constants                                    */
  57. /* =====================================================================*/
  58. #define ONE_MS         ( SAMP_RATE/1000 )
  59. #define HALF_MS        ( SAMP_RATE/2000 )
  60. #define ONE_N_QUART_MS ( SAMP_RATE/800 )
  61. #define ONE_N_HALF_MS  (ONE_MS + HALF_MS)
  62. #define TWO_MS         (2  * ONE_MS)
  63. #define TWO_N_HALF_MS  (TWO_MS + HALF_MS)
  64. #define FIVE_MS        (5  * ONE_MS)
  65. #define TEN_MS         (10 * ONE_MS)
  66. #define FIFTEEN_MS     (15 * ONE_MS)
  67. #define TWENTY_MS      (20 * ONE_MS)
  68. /* =====================================================================*/
  69. /* LPC  Related Constants for WDBxx                                     */
  70. /* =====================================================================*/
  71. #define ORDER_LPC_8           10
  72. #define ORDER_LPC_16          20
  73. #define N_INDICES_SQ8         4
  74. #define N_INDICES_SQ16        9
  75. #define N_INDICES_SQ8LL       10
  76. #define N_INDICES_SQ16LL      20
  77. #define N_INDICES_VQ8         5
  78. #define N_INDICES_VQ16        10
  79. #define GAMMA_BE              0.9883000000
  80. #define GAMMA_WF              0.8
  81. /* =====================================================================*/
  82. /* Adaptive Codebook Related Constants for WDBxx                        */
  83. /* =====================================================================*/
  84. #define Lmin                  ( TWO_N_HALF_MS )
  85. #define ACBK_SIZE             ( FIFTEEN_MS + ONE_MS )
  86. #define Lmax                  ( Lmin + ACBK_SIZE - 1)
  87. #define Sa                    ((int)3 )
  88. #define Sam                   ((int)(Sa/2))
  89. #define Pa                    ((int)(MAX_N_LAG_CANDIDATES/Sa))
  90. #define NUM_CBKS              2
  91. /* =====================================================================*/
  92. /* Fixed Codebook  Related Constants for WDBxx                          */
  93. /* =====================================================================*/
  94. #define FCBK_PRESELECT_VECS   ((int)5 )
  95. #define FCBK_GAIN_LEVELS      ((int)31 )
  96. #endif  /*  _wdbxx_h_ */
  97. /*======================================================================*/
  98. /*      H I S T O R Y                                                   */
  99. /*======================================================================*/
  100. /* 05-05-96  R. Taori                Initial Version                    */
  101. /* 10-09-96  R. Taori & A.Gerrits    Modified for MPEG Conformation     */
  102. /* 26-09-96  R. Taori & A.Gerrits    BIT_RATE and Interpolation level   */
  103. /* 09-10-96  R. Taori & A.Gerrits    Bit Rate dependencies introduced   */