summaryrefslogtreecommitdiff
path: root/Externals/OpenAL/include/efx-creative.h
blob: 4ea9da6b720c1ab5897f2939660a195eef4d878a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#ifndef __efxcreative_h_
#define __efxcreative_h_

/**
 *  efx-creative.h - Environmental Audio Extensions
 *            for OpenAL Effects Extension.
 *
 */
#ifdef __cplusplus
extern "C" {
#endif


/**
 * Effect object definitions to be used with alEffect functions.
 *
 * Effect parameter value definitions, ranges, and defaults
 * appear farther down in this file.
 */

/* AL EAXReverb effect parameters. */
#define AL_EAXREVERB_DENSITY                               0x0001
#define AL_EAXREVERB_DIFFUSION                             0x0002
#define AL_EAXREVERB_GAIN                                  0x0003
#define AL_EAXREVERB_GAINHF                                0x0004
#define AL_EAXREVERB_GAINLF                                0x0005
#define AL_EAXREVERB_DECAY_TIME                            0x0006
#define AL_EAXREVERB_DECAY_HFRATIO                         0x0007
#define AL_EAXREVERB_DECAY_LFRATIO                         0x0008
#define AL_EAXREVERB_REFLECTIONS_GAIN                      0x0009
#define AL_EAXREVERB_REFLECTIONS_DELAY                     0x000A
#define AL_EAXREVERB_REFLECTIONS_PAN                       0x000B
#define AL_EAXREVERB_LATE_REVERB_GAIN                      0x000C
#define AL_EAXREVERB_LATE_REVERB_DELAY                     0x000D
#define AL_EAXREVERB_LATE_REVERB_PAN                       0x000E
#define AL_EAXREVERB_ECHO_TIME                             0x000F
#define AL_EAXREVERB_ECHO_DEPTH                            0x0010
#define AL_EAXREVERB_MODULATION_TIME                       0x0011
#define AL_EAXREVERB_MODULATION_DEPTH                      0x0012
#define AL_EAXREVERB_AIR_ABSORPTION_GAINHF                 0x0013 
#define AL_EAXREVERB_HFREFERENCE                           0x0014 
#define AL_EAXREVERB_LFREFERENCE                           0x0015 
#define AL_EAXREVERB_ROOM_ROLLOFF_FACTOR                   0x0016
#define AL_EAXREVERB_DECAY_HFLIMIT                         0x0017

/* Effect type definitions to be used with AL_EFFECT_TYPE. */
#define AL_EFFECT_EAXREVERB                                0x8000



 /**********************************************************
 * Effect parameter structures, value definitions, ranges and defaults.
 */

/**
 * AL reverb effect parameter ranges and defaults
 */
#define AL_EAXREVERB_MIN_DENSITY                           0.0f
#define AL_EAXREVERB_MAX_DENSITY                           1.0f
#define AL_EAXREVERB_DEFAULT_DENSITY                       1.0f

#define AL_EAXREVERB_MIN_DIFFUSION                         0.0f
#define AL_EAXREVERB_MAX_DIFFUSION                         1.0f
#define AL_EAXREVERB_DEFAULT_DIFFUSION                     1.0f

#define AL_EAXREVERB_MIN_GAIN                              0.0f
#define AL_EAXREVERB_MAX_GAIN                              1.0f
#define AL_EAXREVERB_DEFAULT_GAIN                          0.32f

#define AL_EAXREVERB_MIN_GAINHF                            0.0f
#define AL_EAXREVERB_MAX_GAINHF                            1.0f
#define AL_EAXREVERB_DEFAULT_GAINHF                        0.89f

#define AL_EAXREVERB_MIN_GAINLF                            0.0f
#define AL_EAXREVERB_MAX_GAINLF                            1.0f
#define AL_EAXREVERB_DEFAULT_GAINLF                        1.0f

#define AL_EAXREVERB_MIN_DECAY_TIME                        0.1f
#define AL_EAXREVERB_MAX_DECAY_TIME                        20.0f
#define AL_EAXREVERB_DEFAULT_DECAY_TIME                    1.49f

#define AL_EAXREVERB_MIN_DECAY_HFRATIO                     0.1f
#define AL_EAXREVERB_MAX_DECAY_HFRATIO                     2.0f
#define AL_EAXREVERB_DEFAULT_DECAY_HFRATIO                 0.83f

#define AL_EAXREVERB_MIN_DECAY_LFRATIO                     0.1f
#define AL_EAXREVERB_MAX_DECAY_LFRATIO                     2.0f
#define AL_EAXREVERB_DEFAULT_DECAY_LFRATIO                 1.0f

#define AL_EAXREVERB_MIN_REFLECTIONS_GAIN                  0.0f
#define AL_EAXREVERB_MAX_REFLECTIONS_GAIN                  3.16f
#define AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN              0.05f

#define AL_EAXREVERB_MIN_REFLECTIONS_DELAY                 0.0f
#define AL_EAXREVERB_MAX_REFLECTIONS_DELAY                 0.3f
#define AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY             0.007f

#define AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN               {0.0f, 0.0f, 0.0f}

#define AL_EAXREVERB_MIN_LATE_REVERB_GAIN                  0.0f
#define AL_EAXREVERB_MAX_LATE_REVERB_GAIN                  10.0f
#define AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN              1.26f

#define AL_EAXREVERB_MIN_LATE_REVERB_DELAY                 0.0f
#define AL_EAXREVERB_MAX_LATE_REVERB_DELAY                 0.1f
#define AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY             0.011f

#define AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN               {0.0f, 0.0f, 0.0f}

#define AL_EAXREVERB_MIN_ECHO_TIME                         0.075f
#define AL_EAXREVERB_MAX_ECHO_TIME                         0.25f
#define AL_EAXREVERB_DEFAULT_ECHO_TIME                     0.25f

#define AL_EAXREVERB_MIN_ECHO_DEPTH                        0.0f
#define AL_EAXREVERB_MAX_ECHO_DEPTH                        1.0f
#define AL_EAXREVERB_DEFAULT_ECHO_DEPTH                    0.0f

#define AL_EAXREVERB_MIN_MODULATION_TIME                   0.04f
#define AL_EAXREVERB_MAX_MODULATION_TIME                   4.0f
#define AL_EAXREVERB_DEFAULT_MODULATION_TIME               0.25f

#define AL_EAXREVERB_MIN_MODULATION_DEPTH                  0.0f
#define AL_EAXREVERB_MAX_MODULATION_DEPTH                  1.0f
#define AL_EAXREVERB_DEFAULT_MODULATION_DEPTH              0.0f

#define AL_EAXREVERB_MIN_AIR_ABSORPTION_GAINHF             0.892f
#define AL_EAXREVERB_MAX_AIR_ABSORPTION_GAINHF             1.0f
#define AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF         0.994f

#define AL_EAXREVERB_MIN_HFREFERENCE                       1000.0f
#define AL_EAXREVERB_MAX_HFREFERENCE                       20000.0f
#define AL_EAXREVERB_DEFAULT_HFREFERENCE                   5000.0f

#define AL_EAXREVERB_MIN_LFREFERENCE                       20.0f
#define AL_EAXREVERB_MAX_LFREFERENCE                       1000.0f
#define AL_EAXREVERB_DEFAULT_LFREFERENCE                   250.0f

#define AL_EAXREVERB_MIN_ROOM_ROLLOFF_FACTOR               0.0f
#define AL_EAXREVERB_MAX_ROOM_ROLLOFF_FACTOR               10.0f
#define AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR           0.0f

#define AL_EAXREVERB_MIN_DECAY_HFLIMIT                     AL_FALSE
#define AL_EAXREVERB_MAX_DECAY_HFLIMIT                     AL_TRUE
#define AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT                 AL_TRUE


#ifdef __cplusplus
}  /* extern "C" */
#endif

#endif /* __efxcreative_h_ */