Subversion Repositories Games.Chess Giants

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #ifndef __efxcreative_h_
  2. #define __efxcreative_h_
  3.  
  4. /**
  5.  *  efx-creative.h - Environmental Audio Extensions
  6.  *            for OpenAL Effects Extension.
  7.  *
  8.  */
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12.  
  13.  
  14. /**
  15.  * Effect object definitions to be used with alEffect functions.
  16.  *
  17.  * Effect parameter value definitions, ranges, and defaults
  18.  * appear farther down in this file.
  19.  */
  20.  
  21. /* AL EAXReverb effect parameters. */
  22. #define AL_EAXREVERB_DENSITY                               0x0001
  23. #define AL_EAXREVERB_DIFFUSION                             0x0002
  24. #define AL_EAXREVERB_GAIN                                  0x0003
  25. #define AL_EAXREVERB_GAINHF                                0x0004
  26. #define AL_EAXREVERB_GAINLF                                0x0005
  27. #define AL_EAXREVERB_DECAY_TIME                            0x0006
  28. #define AL_EAXREVERB_DECAY_HFRATIO                         0x0007
  29. #define AL_EAXREVERB_DECAY_LFRATIO                         0x0008
  30. #define AL_EAXREVERB_REFLECTIONS_GAIN                      0x0009
  31. #define AL_EAXREVERB_REFLECTIONS_DELAY                     0x000A
  32. #define AL_EAXREVERB_REFLECTIONS_PAN                       0x000B
  33. #define AL_EAXREVERB_LATE_REVERB_GAIN                      0x000C
  34. #define AL_EAXREVERB_LATE_REVERB_DELAY                     0x000D
  35. #define AL_EAXREVERB_LATE_REVERB_PAN                       0x000E
  36. #define AL_EAXREVERB_ECHO_TIME                             0x000F
  37. #define AL_EAXREVERB_ECHO_DEPTH                            0x0010
  38. #define AL_EAXREVERB_MODULATION_TIME                       0x0011
  39. #define AL_EAXREVERB_MODULATION_DEPTH                      0x0012
  40. #define AL_EAXREVERB_AIR_ABSORPTION_GAINHF                 0x0013
  41. #define AL_EAXREVERB_HFREFERENCE                           0x0014
  42. #define AL_EAXREVERB_LFREFERENCE                           0x0015
  43. #define AL_EAXREVERB_ROOM_ROLLOFF_FACTOR                   0x0016
  44. #define AL_EAXREVERB_DECAY_HFLIMIT                         0x0017
  45.  
  46. /* Effect type definitions to be used with AL_EFFECT_TYPE. */
  47. #define AL_EFFECT_EAXREVERB                                0x8000
  48.  
  49.  
  50.  
  51.  /**********************************************************
  52.  * Effect parameter structures, value definitions, ranges and defaults.
  53.  */
  54.  
  55. /**
  56.  * AL reverb effect parameter ranges and defaults
  57.  */
  58. #define AL_EAXREVERB_MIN_DENSITY                           0.0f
  59. #define AL_EAXREVERB_MAX_DENSITY                           1.0f
  60. #define AL_EAXREVERB_DEFAULT_DENSITY                       1.0f
  61.  
  62. #define AL_EAXREVERB_MIN_DIFFUSION                         0.0f
  63. #define AL_EAXREVERB_MAX_DIFFUSION                         1.0f
  64. #define AL_EAXREVERB_DEFAULT_DIFFUSION                     1.0f
  65.  
  66. #define AL_EAXREVERB_MIN_GAIN                              0.0f
  67. #define AL_EAXREVERB_MAX_GAIN                              1.0f
  68. #define AL_EAXREVERB_DEFAULT_GAIN                          0.32f
  69.  
  70. #define AL_EAXREVERB_MIN_GAINHF                            0.0f
  71. #define AL_EAXREVERB_MAX_GAINHF                            1.0f
  72. #define AL_EAXREVERB_DEFAULT_GAINHF                        0.89f
  73.  
  74. #define AL_EAXREVERB_MIN_GAINLF                            0.0f
  75. #define AL_EAXREVERB_MAX_GAINLF                            1.0f
  76. #define AL_EAXREVERB_DEFAULT_GAINLF                        1.0f
  77.  
  78. #define AL_EAXREVERB_MIN_DECAY_TIME                        0.1f
  79. #define AL_EAXREVERB_MAX_DECAY_TIME                        20.0f
  80. #define AL_EAXREVERB_DEFAULT_DECAY_TIME                    1.49f
  81.  
  82. #define AL_EAXREVERB_MIN_DECAY_HFRATIO                     0.1f
  83. #define AL_EAXREVERB_MAX_DECAY_HFRATIO                     2.0f
  84. #define AL_EAXREVERB_DEFAULT_DECAY_HFRATIO                 0.83f
  85.  
  86. #define AL_EAXREVERB_MIN_DECAY_LFRATIO                     0.1f
  87. #define AL_EAXREVERB_MAX_DECAY_LFRATIO                     2.0f
  88. #define AL_EAXREVERB_DEFAULT_DECAY_LFRATIO                 1.0f
  89.  
  90. #define AL_EAXREVERB_MIN_REFLECTIONS_GAIN                  0.0f
  91. #define AL_EAXREVERB_MAX_REFLECTIONS_GAIN                  3.16f
  92. #define AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN              0.05f
  93.  
  94. #define AL_EAXREVERB_MIN_REFLECTIONS_DELAY                 0.0f
  95. #define AL_EAXREVERB_MAX_REFLECTIONS_DELAY                 0.3f
  96. #define AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY             0.007f
  97.  
  98. #define AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN               {0.0f, 0.0f, 0.0f}
  99.  
  100. #define AL_EAXREVERB_MIN_LATE_REVERB_GAIN                  0.0f
  101. #define AL_EAXREVERB_MAX_LATE_REVERB_GAIN                  10.0f
  102. #define AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN              1.26f
  103.  
  104. #define AL_EAXREVERB_MIN_LATE_REVERB_DELAY                 0.0f
  105. #define AL_EAXREVERB_MAX_LATE_REVERB_DELAY                 0.1f
  106. #define AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY             0.011f
  107.  
  108. #define AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN               {0.0f, 0.0f, 0.0f}
  109.  
  110. #define AL_EAXREVERB_MIN_ECHO_TIME                         0.075f
  111. #define AL_EAXREVERB_MAX_ECHO_TIME                         0.25f
  112. #define AL_EAXREVERB_DEFAULT_ECHO_TIME                     0.25f
  113.  
  114. #define AL_EAXREVERB_MIN_ECHO_DEPTH                        0.0f
  115. #define AL_EAXREVERB_MAX_ECHO_DEPTH                        1.0f
  116. #define AL_EAXREVERB_DEFAULT_ECHO_DEPTH                    0.0f
  117.  
  118. #define AL_EAXREVERB_MIN_MODULATION_TIME                   0.04f
  119. #define AL_EAXREVERB_MAX_MODULATION_TIME                   4.0f
  120. #define AL_EAXREVERB_DEFAULT_MODULATION_TIME               0.25f
  121.  
  122. #define AL_EAXREVERB_MIN_MODULATION_DEPTH                  0.0f
  123. #define AL_EAXREVERB_MAX_MODULATION_DEPTH                  1.0f
  124. #define AL_EAXREVERB_DEFAULT_MODULATION_DEPTH              0.0f
  125.  
  126. #define AL_EAXREVERB_MIN_AIR_ABSORPTION_GAINHF             0.892f
  127. #define AL_EAXREVERB_MAX_AIR_ABSORPTION_GAINHF             1.0f
  128. #define AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF         0.994f
  129.  
  130. #define AL_EAXREVERB_MIN_HFREFERENCE                       1000.0f
  131. #define AL_EAXREVERB_MAX_HFREFERENCE                       20000.0f
  132. #define AL_EAXREVERB_DEFAULT_HFREFERENCE                   5000.0f
  133.  
  134. #define AL_EAXREVERB_MIN_LFREFERENCE                       20.0f
  135. #define AL_EAXREVERB_MAX_LFREFERENCE                       1000.0f
  136. #define AL_EAXREVERB_DEFAULT_LFREFERENCE                   250.0f
  137.  
  138. #define AL_EAXREVERB_MIN_ROOM_ROLLOFF_FACTOR               0.0f
  139. #define AL_EAXREVERB_MAX_ROOM_ROLLOFF_FACTOR               10.0f
  140. #define AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR           0.0f
  141.  
  142. #define AL_EAXREVERB_MIN_DECAY_HFLIMIT                     AL_FALSE
  143. #define AL_EAXREVERB_MAX_DECAY_HFLIMIT                     AL_TRUE
  144. #define AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT                 AL_TRUE
  145.  
  146.  
  147. #ifdef __cplusplus
  148. }  /* extern "C" */
  149. #endif
  150.  
  151. #endif /* __efxcreative_h_ */
  152.