Don't apply distance attenuation when the slot's AuxSendAuto is off
[openal-soft.git] / al / eax / api.cpp
blobf0809df13e034f69b1ebab4cc68758fb03d88a1a
1 //
2 // EAX API.
3 //
4 // Based on headers `eax[2-5].h` included in Doom 3 source code:
5 // https://github.com/id-Software/DOOM-3/tree/master/neo/openal/include
6 //
8 #include "config.h"
10 #include <algorithm>
12 #include "api.h"
15 const GUID DSPROPSETID_EAX_ReverbProperties =
17 0x4A4E6FC1,
18 0xC341,
19 0x11D1,
20 {0xB7, 0x3A, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}
23 const GUID DSPROPSETID_EAXBUFFER_ReverbProperties =
25 0x4A4E6FC0,
26 0xC341,
27 0x11D1,
28 {0xB7, 0x3A, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00}
31 const GUID DSPROPSETID_EAX20_ListenerProperties =
33 0x306A6A8,
34 0xB224,
35 0x11D2,
36 {0x99, 0xE5, 0x00, 0x00, 0xE8, 0xD8, 0xC7, 0x22}
39 const GUID DSPROPSETID_EAX20_BufferProperties =
41 0x306A6A7,
42 0xB224,
43 0x11D2,
44 {0x99, 0xE5, 0x00, 0x00, 0xE8, 0xD8, 0xC7, 0x22}
47 const GUID DSPROPSETID_EAX30_ListenerProperties =
49 0xA8FA6882,
50 0xB476,
51 0x11D3,
52 {0xBD, 0xB9, 0x00, 0xC0, 0xF0, 0x2D, 0xDF, 0x87}
55 const GUID DSPROPSETID_EAX30_BufferProperties =
57 0xA8FA6881,
58 0xB476,
59 0x11D3,
60 {0xBD, 0xB9, 0x00, 0xC0, 0xF0, 0x2D, 0xDF, 0x87}
63 const GUID EAX_NULL_GUID =
65 0x00000000,
66 0x0000,
67 0x0000,
68 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
71 const GUID EAX_PrimaryFXSlotID =
73 0xF317866D,
74 0x924C,
75 0x450C,
76 {0x86, 0x1B, 0xE6, 0xDA, 0xA2, 0x5E, 0x7C, 0x20}
79 const GUID EAXPROPERTYID_EAX40_Context =
81 0x1D4870AD,
82 0xDEF,
83 0x43C0,
84 {0xA4, 0xC, 0x52, 0x36, 0x32, 0x29, 0x63, 0x42}
87 const GUID EAXPROPERTYID_EAX50_Context =
89 0x57E13437,
90 0xB932,
91 0x4AB2,
92 {0xB8, 0xBD, 0x52, 0x66, 0xC1, 0xA8, 0x87, 0xEE}
95 const GUID EAXPROPERTYID_EAX40_FXSlot0 =
97 0xC4D79F1E,
98 0xF1AC,
99 0x436B,
100 {0xA8, 0x1D, 0xA7, 0x38, 0xE7, 0x04, 0x54, 0x69}
103 const GUID EAXPROPERTYID_EAX50_FXSlot0 =
105 0x91F9590F,
106 0xC388,
107 0x407A,
108 {0x84, 0xB0, 0x1B, 0xAE, 0xE, 0xF7, 0x1A, 0xBC}
111 const GUID EAXPROPERTYID_EAX40_FXSlot1 =
113 0x8C00E96,
114 0x74BE,
115 0x4491,
116 {0x93, 0xAA, 0xE8, 0xAD, 0x35, 0xA4, 0x91, 0x17}
119 const GUID EAXPROPERTYID_EAX50_FXSlot1 =
121 0x8F5F7ACA,
122 0x9608,
123 0x4965,
124 {0x81, 0x37, 0x82, 0x13, 0xC7, 0xB9, 0xD9, 0xDE}
127 const GUID EAXPROPERTYID_EAX40_FXSlot2 =
129 0x1D433B88,
130 0xF0F6,
131 0x4637,
132 {0x91, 0x9F, 0x60, 0xE7, 0xE0, 0x6B, 0x5E, 0xDD}
135 const GUID EAXPROPERTYID_EAX50_FXSlot2 =
137 0x3C0F5252,
138 0x9834,
139 0x46F0,
140 {0xA1, 0xD8, 0x5B, 0x95, 0xC4, 0xA0, 0xA, 0x30}
143 const GUID EAXPROPERTYID_EAX40_FXSlot3 =
145 0xEFFF08EA,
146 0xC7D8,
147 0x44AB,
148 {0x93, 0xAD, 0x6D, 0xBD, 0x5F, 0x91, 0x00, 0x64}
151 const GUID EAXPROPERTYID_EAX50_FXSlot3 =
153 0xE2EB0EAA,
154 0xE806,
155 0x45E7,
156 {0x9F, 0x86, 0x06, 0xC1, 0x57, 0x1A, 0x6F, 0xA3}
159 const GUID EAXPROPERTYID_EAX40_Source =
161 0x1B86B823,
162 0x22DF,
163 0x4EAE,
164 {0x8B, 0x3C, 0x12, 0x78, 0xCE, 0x54, 0x42, 0x27}
167 const GUID EAXPROPERTYID_EAX50_Source =
169 0x5EDF82F0,
170 0x24A7,
171 0x4F38,
172 {0x8E, 0x64, 0x2F, 0x09, 0xCA, 0x05, 0xDE, 0xE1}
175 const GUID EAX_REVERB_EFFECT =
177 0xCF95C8F,
178 0xA3CC,
179 0x4849,
180 {0xB0, 0xB6, 0x83, 0x2E, 0xCC, 0x18, 0x22, 0xDF}
183 const GUID EAX_AGCCOMPRESSOR_EFFECT =
185 0xBFB7A01E,
186 0x7825,
187 0x4039,
188 {0x92, 0x7F, 0x03, 0xAA, 0xBD, 0xA0, 0xC5, 0x60}
191 const GUID EAX_AUTOWAH_EFFECT =
193 0xEC3130C0,
194 0xAC7A,
195 0x11D2,
196 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
199 const GUID EAX_CHORUS_EFFECT =
201 0xDE6D6FE0,
202 0xAC79,
203 0x11D2,
204 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
207 const GUID EAX_DISTORTION_EFFECT =
209 0x975A4CE0,
210 0xAC7E,
211 0x11D2,
212 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
215 const GUID EAX_ECHO_EFFECT =
217 0xE9F1BC0,
218 0xAC82,
219 0x11D2,
220 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
223 const GUID EAX_EQUALIZER_EFFECT =
225 0x65F94CE0,
226 0x9793,
227 0x11D3,
228 {0x93, 0x9D, 0x00, 0xC0, 0xF0, 0x2D, 0xD6, 0xF0}
231 const GUID EAX_FLANGER_EFFECT =
233 0xA70007C0,
234 0x7D2,
235 0x11D3,
236 {0x9B, 0x1E, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
239 const GUID EAX_FREQUENCYSHIFTER_EFFECT =
241 0xDC3E1880,
242 0x9212,
243 0x11D3,
244 {0x93, 0x9D, 0x00, 0xC0, 0xF0, 0x2D, 0xD6, 0xF0}
247 const GUID EAX_VOCALMORPHER_EFFECT =
249 0xE41CF10C,
250 0x3383,
251 0x11D2,
252 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
255 const GUID EAX_PITCHSHIFTER_EFFECT =
257 0xE7905100,
258 0xAFB2,
259 0x11D2,
260 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
263 const GUID EAX_RINGMODULATOR_EFFECT =
265 0xB89FE60,
266 0xAFB5,
267 0x11D2,
268 {0x88, 0xDD, 0x00, 0xA0, 0x24, 0xD1, 0x3C, 0xE1}
272 const GUID EAX40CONTEXT_DEFAULTPRIMARYFXSLOTID = EAXPROPERTYID_EAX40_FXSlot0;
273 const GUID EAX50CONTEXT_DEFAULTPRIMARYFXSLOTID = EAXPROPERTYID_EAX50_FXSlot0;
275 const EAX40ACTIVEFXSLOTS EAX40SOURCE_DEFAULTACTIVEFXSLOTID = EAX40ACTIVEFXSLOTS
277 EAX_NULL_GUID,
278 EAXPROPERTYID_EAX40_FXSlot0,
281 const EAX50ACTIVEFXSLOTS EAX50SOURCE_3DDEFAULTACTIVEFXSLOTID = EAX50ACTIVEFXSLOTS
283 EAX_NULL_GUID,
284 EAX_PrimaryFXSlotID,
285 EAX_NULL_GUID,
286 EAX_NULL_GUID,
290 const EAX50ACTIVEFXSLOTS EAX50SOURCE_2DDEFAULTACTIVEFXSLOTID = EAX50ACTIVEFXSLOTS
292 EAX_NULL_GUID,
293 EAX_NULL_GUID,
294 EAX_NULL_GUID,
295 EAX_NULL_GUID,
299 // EAX1 =====================================================================
301 namespace {
302 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_GENERIC = {EAX_ENVIRONMENT_GENERIC, 0.5F, 1.493F, 0.5F};
303 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PADDEDCELL = {EAX_ENVIRONMENT_PADDEDCELL, 0.25F, 0.1F, 0.0F};
304 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ROOM = {EAX_ENVIRONMENT_ROOM, 0.417F, 0.4F, 0.666F};
305 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_BATHROOM = {EAX_ENVIRONMENT_BATHROOM, 0.653F, 1.499F, 0.166F};
306 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_LIVINGROOM = {EAX_ENVIRONMENT_LIVINGROOM, 0.208F, 0.478F, 0.0F};
307 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_STONEROOM = {EAX_ENVIRONMENT_STONEROOM, 0.5F, 2.309F, 0.888F};
308 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_AUDITORIUM = {EAX_ENVIRONMENT_AUDITORIUM, 0.403F, 4.279F, 0.5F};
309 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CONCERTHALL = {EAX_ENVIRONMENT_CONCERTHALL, 0.5F, 3.961F, 0.5F};
310 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CAVE = {EAX_ENVIRONMENT_CAVE, 0.5F, 2.886F, 1.304F};
311 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ARENA = {EAX_ENVIRONMENT_ARENA, 0.361F, 7.284F, 0.332F};
312 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_HANGAR = {EAX_ENVIRONMENT_HANGAR, 0.5F, 10.0F, 0.3F};
313 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CARPETTEDHALLWAY = {EAX_ENVIRONMENT_CARPETEDHALLWAY, 0.153F, 0.259F, 2.0F};
314 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_HALLWAY = {EAX_ENVIRONMENT_HALLWAY, 0.361F, 1.493F, 0.0F};
315 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_STONECORRIDOR = {EAX_ENVIRONMENT_STONECORRIDOR, 0.444F, 2.697F, 0.638F};
316 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ALLEY = {EAX_ENVIRONMENT_ALLEY, 0.25F, 1.752F, 0.776F};
317 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_FOREST = {EAX_ENVIRONMENT_FOREST, 0.111F, 3.145F, 0.472F};
318 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CITY = {EAX_ENVIRONMENT_CITY, 0.111F, 2.767F, 0.224F};
319 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_MOUNTAINS = {EAX_ENVIRONMENT_MOUNTAINS, 0.194F, 7.841F, 0.472F};
320 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_QUARRY = {EAX_ENVIRONMENT_QUARRY, 1.0F, 1.499F, 0.5F};
321 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PLAIN = {EAX_ENVIRONMENT_PLAIN, 0.097F, 2.767F, 0.224F};
322 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PARKINGLOT = {EAX_ENVIRONMENT_PARKINGLOT, 0.208F, 1.652F, 1.5F};
323 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_SEWERPIPE = {EAX_ENVIRONMENT_SEWERPIPE, 0.652F, 2.886F, 0.25F};
324 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_UNDERWATER = {EAX_ENVIRONMENT_UNDERWATER, 1.0F, 1.499F, 0.0F};
325 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_DRUGGED = {EAX_ENVIRONMENT_DRUGGED, 0.875F, 8.392F, 1.388F};
326 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_DIZZY = {EAX_ENVIRONMENT_DIZZY, 0.139F, 17.234F, 0.666F};
327 constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PSYCHOTIC = {EAX_ENVIRONMENT_PSYCHOTIC, 0.486F, 7.563F, 0.806F};
328 } // namespace
330 const Eax1ReverbPresets EAX1REVERB_PRESETS{{
331 EAX1REVERB_PRESET_GENERIC,
332 EAX1REVERB_PRESET_PADDEDCELL,
333 EAX1REVERB_PRESET_ROOM,
334 EAX1REVERB_PRESET_BATHROOM,
335 EAX1REVERB_PRESET_LIVINGROOM,
336 EAX1REVERB_PRESET_STONEROOM,
337 EAX1REVERB_PRESET_AUDITORIUM,
338 EAX1REVERB_PRESET_CONCERTHALL,
339 EAX1REVERB_PRESET_CAVE,
340 EAX1REVERB_PRESET_ARENA,
341 EAX1REVERB_PRESET_HANGAR,
342 EAX1REVERB_PRESET_CARPETTEDHALLWAY,
343 EAX1REVERB_PRESET_HALLWAY,
344 EAX1REVERB_PRESET_STONECORRIDOR,
345 EAX1REVERB_PRESET_ALLEY,
346 EAX1REVERB_PRESET_FOREST,
347 EAX1REVERB_PRESET_CITY,
348 EAX1REVERB_PRESET_MOUNTAINS,
349 EAX1REVERB_PRESET_QUARRY,
350 EAX1REVERB_PRESET_PLAIN,
351 EAX1REVERB_PRESET_PARKINGLOT,
352 EAX1REVERB_PRESET_SEWERPIPE,
353 EAX1REVERB_PRESET_UNDERWATER,
354 EAX1REVERB_PRESET_DRUGGED,
355 EAX1REVERB_PRESET_DIZZY,
356 EAX1REVERB_PRESET_PSYCHOTIC,
359 // EAX2 =====================================================================
361 namespace {
363 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_GENERIC{
364 EAX2LISTENER_DEFAULTROOM,
365 EAX2LISTENER_DEFAULTROOMHF,
366 EAX2LISTENER_DEFAULTROOMROLLOFFFACTOR,
367 EAX2LISTENER_DEFAULTDECAYTIME,
368 EAX2LISTENER_DEFAULTDECAYHFRATIO,
369 EAX2LISTENER_DEFAULTREFLECTIONS,
370 EAX2LISTENER_DEFAULTREFLECTIONSDELAY,
371 EAX2LISTENER_DEFAULTREVERB,
372 EAX2LISTENER_DEFAULTREVERBDELAY,
373 EAX2LISTENER_DEFAULTENVIRONMENT,
374 EAX2LISTENER_DEFAULTENVIRONMENTSIZE,
375 EAX2LISTENER_DEFAULTENVIRONMENTDIFFUSION,
376 EAX2LISTENER_DEFAULTAIRABSORPTIONHF,
377 EAX2LISTENER_DEFAULTFLAGS,
380 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_PADDEDCELL{
381 -1'000L,
382 -6'000L,
383 0.0F,
384 0.17F,
385 0.1F,
386 -1'204L,
387 0.001F,
388 207L,
389 0.002F,
390 EAX2_ENVIRONMENT_PADDEDCELL,
391 1.4F,
392 1.0F,
393 -5.0F,
394 EAX2LISTENER_DEFAULTFLAGS,
397 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_ROOM{
398 -1'000L,
399 -454L,
400 0.0F,
401 0.4F,
402 0.83F,
403 -1'646L,
404 0.002F,
405 53L,
406 0.003F,
407 EAX2_ENVIRONMENT_ROOM,
408 1.9F,
409 1.0F,
410 -5.0F,
411 EAX2LISTENER_DEFAULTFLAGS,
414 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_BATHROOM{
415 -1'000L,
416 -1'200L,
417 0.0F,
418 1.49F,
419 0.54F,
420 -370L,
421 0.007F,
422 1'030L,
423 0.011F,
424 EAX2_ENVIRONMENT_BATHROOM,
425 1.4F,
426 1.0F,
427 -5.0F,
428 EAX2LISTENER_DEFAULTFLAGS,
431 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_LIVINGROOM{
432 -1'000L,
433 -6'000L,
434 0.0F,
435 0.5F,
436 0.1F,
437 -1'376L,
438 0.003F,
439 -1'104L,
440 0.004F,
441 EAX2_ENVIRONMENT_LIVINGROOM,
442 2.5F,
443 1.0F,
444 -5.0F,
445 EAX2LISTENER_DEFAULTFLAGS,
448 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_STONEROOM{
449 -1'000L,
450 -300L,
451 0.0F,
452 2.31F,
453 0.64F,
454 -711L,
455 0.012F,
456 83L,
457 0.017F,
458 EAX2_ENVIRONMENT_STONEROOM,
459 11.6F,
460 1.0F,
461 -5.0F,
462 EAX2LISTENER_DEFAULTFLAGS,
465 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_AUDITORIUM{
466 -1'000L,
467 -476L,
468 0.0F,
469 4.32F,
470 0.59F,
471 -789L,
472 0.02F,
473 -289L,
474 0.03F,
475 EAX2_ENVIRONMENT_AUDITORIUM,
476 21.6F,
477 1.0F,
478 -5.0F,
479 EAX2LISTENER_DEFAULTFLAGS,
482 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_CONCERTHALL{
483 -1'000L,
484 -500L,
485 0.0F,
486 3.92F,
487 0.7F,
488 -1'230L,
489 0.02F,
490 -2L,
491 0.029F,
492 EAX2_ENVIRONMENT_CONCERTHALL,
493 19.6F,
494 1.0F,
495 -5.0F,
496 EAX2LISTENER_DEFAULTFLAGS,
499 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_CAVE{
500 -1'000L,
502 0.0F,
503 2.91F,
504 1.3F,
505 -602L,
506 0.015F,
507 -302L,
508 0.022F,
509 EAX2_ENVIRONMENT_CAVE,
510 14.6F,
511 1.0F,
512 -5.0F,
513 EAX2LISTENERFLAGS_DECAYTIMESCALE |
514 EAX2LISTENERFLAGS_REFLECTIONSSCALE |
515 EAX2LISTENERFLAGS_REFLECTIONSDELAYSCALE |
516 EAX2LISTENERFLAGS_REVERBSCALE |
517 EAX2LISTENERFLAGS_REVERBDELAYSCALE,
520 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_ARENA{
521 -1'000L,
522 -698L,
523 0.0F,
524 7.24F,
525 0.33F,
526 -1'166L,
527 0.02F,
528 16L,
529 0.03F,
530 EAX2_ENVIRONMENT_ARENA,
531 36.2F,
532 1.0F,
533 -5.0F,
534 EAX2LISTENER_DEFAULTFLAGS,
537 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_HANGAR{
538 -1'000L,
539 -1'000L,
540 0.0F,
541 10.05F,
542 0.23F,
543 -602L,
544 0.02F,
545 198L,
546 0.03F,
547 EAX2_ENVIRONMENT_HANGAR,
548 50.3F,
549 1.0F,
550 -5.0F,
551 EAX2LISTENER_DEFAULTFLAGS,
554 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_CARPETTEDHALLWAY{
555 -1'000L,
556 -4'000L,
557 0.0F,
558 0.3F,
559 0.1F,
560 -1'831L,
561 0.002F,
562 -1'630L,
563 0.03F,
564 EAX2_ENVIRONMENT_CARPETEDHALLWAY,
565 1.9F,
566 1.0F,
567 -5.0F,
568 EAX2LISTENER_DEFAULTFLAGS,
571 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_HALLWAY{
572 -1'000L,
573 -300L,
574 0.0F,
575 1.49F,
576 0.59F,
577 -1'219L,
578 0.007F,
579 441L,
580 0.011F,
581 EAX2_ENVIRONMENT_HALLWAY,
582 1.8F,
583 1.0F,
584 -5.0F,
585 EAX2LISTENER_DEFAULTFLAGS,
588 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_STONECORRIDOR{
589 -1'000L,
590 -237L,
591 0.0F,
592 2.7F,
593 0.79F,
594 -1'214L,
595 0.013F,
596 395L,
597 0.02F,
598 EAX2_ENVIRONMENT_STONECORRIDOR,
599 13.5F,
600 1.0F,
601 -5.0F,
602 EAX2LISTENER_DEFAULTFLAGS,
605 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_ALLEY{
606 -1'000L,
607 -270L,
608 0.0F,
609 1.49F,
610 0.86F,
611 -1'204L,
612 0.007F,
613 -4L,
614 0.011F,
615 EAX2_ENVIRONMENT_ALLEY,
616 7.5F,
617 0.3F,
618 -5.0F,
619 EAX2LISTENER_DEFAULTFLAGS,
622 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_FOREST{
623 -1'000L,
624 -3'300L,
625 0.0F,
626 1.49F,
627 0.54F,
628 -2'560L,
629 0.162F,
630 -229L,
631 0.088F,
632 EAX2_ENVIRONMENT_FOREST,
633 38.0F,
634 0.3F,
635 -5.0F,
636 EAX2LISTENER_DEFAULTFLAGS,
639 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_CITY{
640 -1'000L,
641 -800L,
642 0.0F,
643 1.49F,
644 0.67F,
645 -2'273L,
646 0.007F,
647 -1'691L,
648 0.011F,
649 EAX2_ENVIRONMENT_CITY,
650 7.5F,
651 0.5F,
652 -5.0F,
653 EAX2LISTENER_DEFAULTFLAGS,
656 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_MOUNTAINS{
657 -1'000L,
658 -2'500L,
659 0.0F,
660 1.49F,
661 0.21F,
662 -2'780L,
663 0.3F,
664 -1'434L,
665 0.1F,
666 EAX2_ENVIRONMENT_MOUNTAINS,
667 100.0F,
668 0.27F,
669 -5.0F,
670 EAX2LISTENERFLAGS_DECAYTIMESCALE |
671 EAX2LISTENERFLAGS_REFLECTIONSSCALE |
672 EAX2LISTENERFLAGS_REFLECTIONSDELAYSCALE |
673 EAX2LISTENERFLAGS_REVERBSCALE |
674 EAX2LISTENERFLAGS_REVERBDELAYSCALE,
677 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_QUARRY{
678 -1'000L,
679 -1'000L,
680 0.0F,
681 1.49F,
682 0.83F,
683 -10'000L,
684 0.061F,
685 500L,
686 0.025F,
687 EAX2_ENVIRONMENT_QUARRY,
688 17.5F,
689 1.0F,
690 -5.0F,
691 EAX2LISTENER_DEFAULTFLAGS,
694 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_PLAIN{
695 -1'000L,
696 -2'000L,
697 0.0F,
698 1.49F,
699 0.5F,
700 -2'466L,
701 0.179F,
702 -1'926L,
703 0.1F,
704 EAX2_ENVIRONMENT_PLAIN,
705 42.5F,
706 0.21F,
707 -5.0F,
708 EAX2LISTENER_DEFAULTFLAGS,
711 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_PARKINGLOT{
712 -1'000L,
714 0.0F,
715 1.65F,
716 1.5F,
717 -1'363L,
718 0.008F,
719 -1'153L,
720 0.012F,
721 EAX2_ENVIRONMENT_PARKINGLOT,
722 8.3F,
723 1.0F,
724 -5.0F,
725 EAX2LISTENERFLAGS_DECAYTIMESCALE |
726 EAX2LISTENERFLAGS_REFLECTIONSSCALE |
727 EAX2LISTENERFLAGS_REFLECTIONSDELAYSCALE |
728 EAX2LISTENERFLAGS_REVERBSCALE |
729 EAX2LISTENERFLAGS_REVERBDELAYSCALE,
732 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_SEWERPIPE{
733 -1'000L,
734 -1'000L,
735 0.0F,
736 2.81F,
737 0.14F,
738 429L,
739 0.014F,
740 1'023L,
741 0.021F,
742 EAX2_ENVIRONMENT_SEWERPIPE,
743 1.7F,
744 0.8F,
745 -5.0F,
746 EAX2LISTENER_DEFAULTFLAGS,
749 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_UNDERWATER{
750 -1'000L,
751 -4'000L,
752 0.0F,
753 1.49F,
754 0.1F,
755 -449L,
756 0.007F,
757 1'700L,
758 0.011F,
759 EAX2_ENVIRONMENT_UNDERWATER,
760 1.8F,
761 1.0F,
762 -5.0F,
763 EAX2LISTENER_DEFAULTFLAGS,
766 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_DRUGGED{
767 -1'000L,
769 0.0F,
770 8.39F,
771 1.39F,
772 -115L,
773 0.002F,
774 985L,
775 0.03F,
776 EAX2_ENVIRONMENT_DRUGGED,
777 1.9F,
778 0.5F,
779 -5.0F,
780 EAX2LISTENERFLAGS_DECAYTIMESCALE |
781 EAX2LISTENERFLAGS_REFLECTIONSSCALE |
782 EAX2LISTENERFLAGS_REFLECTIONSDELAYSCALE |
783 EAX2LISTENERFLAGS_REVERBSCALE |
784 EAX2LISTENERFLAGS_REVERBDELAYSCALE,
787 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_DIZZY{
788 -1'000L,
789 -400L,
790 0.0F,
791 17.23F,
792 0.56F,
793 -1'713L,
794 0.02F,
795 -613L,
796 0.03F,
797 EAX2_ENVIRONMENT_DIZZY,
798 1.8F,
799 0.6F,
800 -5.0F,
801 EAX2LISTENERFLAGS_DECAYTIMESCALE |
802 EAX2LISTENERFLAGS_REFLECTIONSSCALE |
803 EAX2LISTENERFLAGS_REFLECTIONSDELAYSCALE |
804 EAX2LISTENERFLAGS_REVERBSCALE |
805 EAX2LISTENERFLAGS_REVERBDELAYSCALE,
808 constexpr EAX20LISTENERPROPERTIES EAX2REVERB_PRESET_PSYCHOTIC{
809 -1'000L,
810 -151L,
811 0.0F,
812 7.56F,
813 0.91F,
814 -626L,
815 0.02F,
816 774L,
817 0.03F,
818 EAX2_ENVIRONMENT_PSYCHOTIC,
819 1.0F,
820 0.5F,
821 -5.0F,
822 EAX2LISTENERFLAGS_DECAYTIMESCALE |
823 EAX2LISTENERFLAGS_REFLECTIONSSCALE |
824 EAX2LISTENERFLAGS_REFLECTIONSDELAYSCALE |
825 EAX2LISTENERFLAGS_REVERBSCALE |
826 EAX2LISTENERFLAGS_REVERBDELAYSCALE,
829 } // namespace
831 const Eax2ReverbPresets EAX2REVERB_PRESETS{
832 EAX2REVERB_PRESET_GENERIC,
833 EAX2REVERB_PRESET_PADDEDCELL,
834 EAX2REVERB_PRESET_ROOM,
835 EAX2REVERB_PRESET_BATHROOM,
836 EAX2REVERB_PRESET_LIVINGROOM,
837 EAX2REVERB_PRESET_STONEROOM,
838 EAX2REVERB_PRESET_AUDITORIUM,
839 EAX2REVERB_PRESET_CONCERTHALL,
840 EAX2REVERB_PRESET_CAVE,
841 EAX2REVERB_PRESET_ARENA,
842 EAX2REVERB_PRESET_HANGAR,
843 EAX2REVERB_PRESET_CARPETTEDHALLWAY,
844 EAX2REVERB_PRESET_HALLWAY,
845 EAX2REVERB_PRESET_STONECORRIDOR,
846 EAX2REVERB_PRESET_ALLEY,
847 EAX2REVERB_PRESET_FOREST,
848 EAX2REVERB_PRESET_CITY,
849 EAX2REVERB_PRESET_MOUNTAINS,
850 EAX2REVERB_PRESET_QUARRY,
851 EAX2REVERB_PRESET_PLAIN,
852 EAX2REVERB_PRESET_PARKINGLOT,
853 EAX2REVERB_PRESET_SEWERPIPE,
854 EAX2REVERB_PRESET_UNDERWATER,
855 EAX2REVERB_PRESET_DRUGGED,
856 EAX2REVERB_PRESET_DIZZY,
857 EAX2REVERB_PRESET_PSYCHOTIC,
860 // EAX3+ ====================================================================
862 namespace {
864 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_GENERIC =
866 EAXREVERB_DEFAULTENVIRONMENT,
867 EAXREVERB_DEFAULTENVIRONMENTSIZE,
868 EAXREVERB_DEFAULTENVIRONMENTDIFFUSION,
869 EAXREVERB_DEFAULTROOM,
870 EAXREVERB_DEFAULTROOMHF,
871 EAXREVERB_DEFAULTROOMLF,
872 EAXREVERB_DEFAULTDECAYTIME,
873 EAXREVERB_DEFAULTDECAYHFRATIO,
874 EAXREVERB_DEFAULTDECAYLFRATIO,
875 EAXREVERB_DEFAULTREFLECTIONS,
876 EAXREVERB_DEFAULTREFLECTIONSDELAY,
877 EAXREVERB_DEFAULTREFLECTIONSPAN,
878 EAXREVERB_DEFAULTREVERB,
879 EAXREVERB_DEFAULTREVERBDELAY,
880 EAXREVERB_DEFAULTREVERBPAN,
881 EAXREVERB_DEFAULTECHOTIME,
882 EAXREVERB_DEFAULTECHODEPTH,
883 EAXREVERB_DEFAULTMODULATIONTIME,
884 EAXREVERB_DEFAULTMODULATIONDEPTH,
885 EAXREVERB_DEFAULTAIRABSORPTIONHF,
886 EAXREVERB_DEFAULTHFREFERENCE,
887 EAXREVERB_DEFAULTLFREFERENCE,
888 EAXREVERB_DEFAULTROOMROLLOFFFACTOR,
889 EAXREVERB_DEFAULTFLAGS,
892 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PADDEDCELL =
894 EAX_ENVIRONMENT_PADDEDCELL,
895 1.4F,
896 1.0F,
897 -1'000L,
898 -6'000L,
900 0.17F,
901 0.10F,
902 1.0F,
903 -1'204L,
904 0.001F,
905 EAXVECTOR{},
906 207L,
907 0.002F,
908 EAXVECTOR{},
909 0.250F,
910 0.0F,
911 0.250F,
912 0.0F,
913 -5.0F,
914 5'000.0F,
915 250.0F,
916 0.0F,
917 0x3FUL,
920 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_ROOM =
922 EAX_ENVIRONMENT_ROOM,
923 1.9F,
924 1.0F,
925 -1'000L,
926 -454L,
928 0.40F,
929 0.83F,
930 1.0F,
931 -1'646L,
932 0.002F,
933 EAXVECTOR{},
934 53L,
935 0.003F,
936 EAXVECTOR{},
937 0.250F,
938 0.0F,
939 0.250F,
940 0.0F,
941 -5.0F,
942 5'000.0F,
943 250.0F,
944 0.0F,
945 0x3FUL,
948 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_BATHROOM =
950 EAX_ENVIRONMENT_BATHROOM,
951 1.4F,
952 1.0F,
953 -1'000L,
954 -1'200L,
956 1.49F,
957 0.54F,
958 1.0F,
959 -370L,
960 0.007F,
961 EAXVECTOR{},
962 1'030L,
963 0.011F,
964 EAXVECTOR{},
965 0.250F,
966 0.0F,
967 0.250F,
968 0.0F,
969 -5.0F,
970 5'000.0F,
971 250.0F,
972 0.0F,
973 0x3FUL,
976 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_LIVINGROOM =
978 EAX_ENVIRONMENT_LIVINGROOM,
979 2.5F,
980 1.0F,
981 -1'000L,
982 -6'000L,
984 0.50F,
985 0.10F,
986 1.0F,
987 -1'376,
988 0.003F,
989 EAXVECTOR{},
990 -1'104L,
991 0.004F,
992 EAXVECTOR{},
993 0.250F,
994 0.0F,
995 0.250F,
996 0.0F,
997 -5.0F,
998 5'000.0F,
999 250.0F,
1000 0.0F,
1001 0x3FUL,
1004 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_STONEROOM =
1006 EAX_ENVIRONMENT_STONEROOM,
1007 11.6F,
1008 1.0F,
1009 -1'000L,
1010 -300L,
1012 2.31F,
1013 0.64F,
1014 1.0F,
1015 -711L,
1016 0.012F,
1017 EAXVECTOR{},
1018 83L,
1019 0.017F,
1020 EAXVECTOR{},
1021 0.250F,
1022 0.0F,
1023 0.250F,
1024 0.0F,
1025 -5.0F,
1026 5'000.0F,
1027 250.0F,
1028 0.0F,
1029 0x3FUL,
1032 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_AUDITORIUM =
1034 EAX_ENVIRONMENT_AUDITORIUM,
1035 21.6F,
1036 1.0F,
1037 -1'000L,
1038 -476L,
1040 4.32F,
1041 0.59F,
1042 1.0F,
1043 -789L,
1044 0.020F,
1045 EAXVECTOR{},
1046 -289L,
1047 0.030F,
1048 EAXVECTOR{},
1049 0.250F,
1050 0.0F,
1051 0.250F,
1052 0.0F,
1053 -5.0F,
1054 5'000.0F,
1055 250.0F,
1056 0.0F,
1057 0x3FUL,
1060 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CONCERTHALL =
1062 EAX_ENVIRONMENT_CONCERTHALL,
1063 19.6F,
1064 1.0F,
1065 -1'000L,
1066 -500L,
1068 3.92F,
1069 0.70F,
1070 1.0F,
1071 -1'230L,
1072 0.020F,
1073 EAXVECTOR{},
1074 -2L,
1075 0.029F,
1076 EAXVECTOR{},
1077 0.250F,
1078 0.0F,
1079 0.250F,
1080 0.0F,
1081 -5.0F,
1082 5'000.0F,
1083 250.0F,
1084 0.0F,
1085 0x3FUL,
1088 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CAVE =
1090 EAX_ENVIRONMENT_CAVE,
1091 14.6F,
1092 1.0F,
1093 -1'000L,
1096 2.91F,
1097 1.30F,
1098 1.0F,
1099 -602L,
1100 0.015F,
1101 EAXVECTOR{},
1102 -302L,
1103 0.022F,
1104 EAXVECTOR{},
1105 0.250F,
1106 0.0F,
1107 0.250F,
1108 0.0F,
1109 -5.0F,
1110 5'000.0F,
1111 250.0F,
1112 0.0F,
1113 0x1FUL,
1116 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_ARENA =
1118 EAX_ENVIRONMENT_ARENA,
1119 36.2F,
1120 1.0F,
1121 -1'000L,
1122 -698L,
1124 7.24F,
1125 0.33F,
1126 1.0F,
1127 -1'166L,
1128 0.020F,
1129 EAXVECTOR{},
1130 16L,
1131 0.030F,
1132 EAXVECTOR{},
1133 0.250F,
1134 0.0F,
1135 0.250F,
1136 0.0F,
1137 -5.0F,
1138 5'000.0F,
1139 250.0F,
1140 0.0F,
1141 0x3FUL,
1144 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_HANGAR =
1146 EAX_ENVIRONMENT_HANGAR,
1147 50.3F,
1148 1.0F,
1149 -1'000L,
1150 -1'000L,
1152 10.05F,
1153 0.23F,
1154 1.0F,
1155 -602L,
1156 0.020F,
1157 EAXVECTOR{},
1158 198L,
1159 0.030F,
1160 EAXVECTOR{},
1161 0.250F,
1162 0.0F,
1163 0.250F,
1164 0.0F,
1165 -5.0F,
1166 5'000.0F,
1167 250.0F,
1168 0.0F,
1169 0x3FUL,
1172 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CARPETTEDHALLWAY =
1174 EAX_ENVIRONMENT_CARPETEDHALLWAY,
1175 1.9F,
1176 1.0F,
1177 -1'000L,
1178 -4'000L,
1180 0.30F,
1181 0.10F,
1182 1.0F,
1183 -1'831L,
1184 0.002F,
1185 EAXVECTOR{},
1186 -1'630L,
1187 0.030F,
1188 EAXVECTOR{},
1189 0.250F,
1190 0.0F,
1191 0.250F,
1192 0.0F,
1193 -5.0F,
1194 5'000.0F,
1195 250.0F,
1196 0.0F,
1197 0x3FUL,
1200 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_HALLWAY =
1202 EAX_ENVIRONMENT_HALLWAY,
1203 1.8F,
1204 1.0F,
1205 -1'000L,
1206 -300L,
1208 1.49F,
1209 0.59F,
1210 1.0F,
1211 -1'219L,
1212 0.007F,
1213 EAXVECTOR{},
1214 441L,
1215 0.011F,
1216 EAXVECTOR{},
1217 0.250F,
1218 0.0F,
1219 0.250F,
1220 0.0F,
1221 -5.0F,
1222 5'000.0F,
1223 250.0F,
1224 0.0F,
1225 0x3FUL,
1228 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_STONECORRIDOR =
1230 EAX_ENVIRONMENT_STONECORRIDOR,
1231 13.5F,
1232 1.0F,
1233 -1'000L,
1234 -237L,
1236 2.70F,
1237 0.79F,
1238 1.0F,
1239 -1'214L,
1240 0.013F,
1241 EAXVECTOR{},
1242 395L,
1243 0.020F,
1244 EAXVECTOR{},
1245 0.250F,
1246 0.0F,
1247 0.250F,
1248 0.0F,
1249 -5.0F,
1250 5'000.0F,
1251 250.0F,
1252 0.0F,
1253 0x3FUL,
1256 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_ALLEY =
1258 EAX_ENVIRONMENT_ALLEY,
1259 7.5F,
1260 0.300F,
1261 -1'000L,
1262 -270L,
1264 1.49F,
1265 0.86F,
1266 1.0F,
1267 -1'204L,
1268 0.007F,
1269 EAXVECTOR{},
1270 -4L,
1271 0.011F,
1272 EAXVECTOR{},
1273 0.125F,
1274 0.950F,
1275 0.250F,
1276 0.0F,
1277 -5.0F,
1278 5'000.0F,
1279 250.0F,
1280 0.0F,
1281 0x3FUL,
1284 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_FOREST =
1286 EAX_ENVIRONMENT_FOREST,
1287 38.0F,
1288 0.300F,
1289 -1'000L,
1290 -3'300L,
1292 1.49F,
1293 0.54F,
1294 1.0F,
1295 -2'560L,
1296 0.162F,
1297 EAXVECTOR{},
1298 -229L,
1299 0.088F,
1300 EAXVECTOR{},
1301 0.125F,
1302 1.0F,
1303 0.250F,
1304 0.0F,
1305 -5.0F,
1306 5'000.0F,
1307 250.0F,
1308 0.0F,
1309 0x3FUL,
1312 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CITY =
1314 EAX_ENVIRONMENT_CITY,
1315 7.5F,
1316 0.500F,
1317 -1'000L,
1318 -800L,
1320 1.49F,
1321 0.67F,
1322 1.0F,
1323 -2'273L,
1324 0.007F,
1325 EAXVECTOR{},
1326 -1'691L,
1327 0.011F,
1328 EAXVECTOR{},
1329 0.250F,
1330 0.0F,
1331 0.250F,
1332 0.0F,
1333 -5.0F,
1334 5'000.0F,
1335 250.0F,
1336 0.0F,
1337 0x3FUL,
1340 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_MOUNTAINS =
1342 EAX_ENVIRONMENT_MOUNTAINS,
1343 100.0F,
1344 0.270F,
1345 -1'000L,
1346 -2'500L,
1348 1.49F,
1349 0.21F,
1350 1.0F,
1351 -2'780L,
1352 0.300F,
1353 EAXVECTOR{},
1354 -1'434L,
1355 0.100F,
1356 EAXVECTOR{},
1357 0.250F,
1358 1.0F,
1359 0.250F,
1360 0.0F,
1361 -5.0F,
1362 5'000.0F,
1363 250.0F,
1364 0.0F,
1365 0x1FUL,
1368 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_QUARRY =
1370 EAX_ENVIRONMENT_QUARRY,
1371 17.5F,
1372 1.0F,
1373 -1'000L,
1374 -1'000L,
1376 1.49F,
1377 0.83F,
1378 1.0F,
1379 -10'000L,
1380 0.061F,
1381 EAXVECTOR{},
1382 500L,
1383 0.025F,
1384 EAXVECTOR{},
1385 0.125F,
1386 0.700F,
1387 0.250F,
1388 0.0F,
1389 -5.0F,
1390 5'000.0F,
1391 250.0F,
1392 0.0F,
1393 0x3FUL,
1396 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PLAIN =
1398 EAX_ENVIRONMENT_PLAIN,
1399 42.5F,
1400 0.210F,
1401 -1'000L,
1402 -2'000L,
1404 1.49F,
1405 0.50F,
1406 1.0F,
1407 -2'466L,
1408 0.179F,
1409 EAXVECTOR{},
1410 -1'926L,
1411 0.100F,
1412 EAXVECTOR{},
1413 0.250F,
1414 1.0F,
1415 0.250F,
1416 0.0F,
1417 -5.0F,
1418 5'000.0F,
1419 250.0F,
1420 0.0F,
1421 0x3FUL,
1424 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PARKINGLOT =
1426 EAX_ENVIRONMENT_PARKINGLOT,
1427 8.3F,
1428 1.0F,
1429 -1'000L,
1432 1.65F,
1433 1.50F,
1434 1.0F,
1435 -1'363L,
1436 0.008F,
1437 EAXVECTOR{},
1438 -1'153L,
1439 0.012F,
1440 EAXVECTOR{},
1441 0.250F,
1442 0.0F,
1443 0.250F,
1444 0.0F,
1445 -5.0F,
1446 5'000.0F,
1447 250.0F,
1448 0.0F,
1449 0x1FUL,
1452 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_SEWERPIPE =
1454 EAX_ENVIRONMENT_SEWERPIPE,
1455 1.7F,
1456 0.800F,
1457 -1'000L,
1458 -1'000L,
1460 2.81F,
1461 0.14F,
1462 1.0F,
1463 429L,
1464 0.014F,
1465 EAXVECTOR{},
1466 1'023L,
1467 0.021F,
1468 EAXVECTOR{},
1469 0.250F,
1470 0.0F,
1471 0.250F,
1472 0.0F,
1473 -5.0F,
1474 5'000.0F,
1475 250.0F,
1476 0.0F,
1477 0x3FUL,
1480 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_UNDERWATER =
1482 EAX_ENVIRONMENT_UNDERWATER,
1483 1.8F,
1484 1.0F,
1485 -1'000L,
1486 -4'000L,
1488 1.49F,
1489 0.10F,
1490 1.0F,
1491 -449L,
1492 0.007F,
1493 EAXVECTOR{},
1494 1'700L,
1495 0.011F,
1496 EAXVECTOR{},
1497 0.250F,
1498 0.0F,
1499 1.180F,
1500 0.348F,
1501 -5.0F,
1502 5'000.0F,
1503 250.0F,
1504 0.0F,
1505 0x3FUL,
1508 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_DRUGGED =
1510 EAX_ENVIRONMENT_DRUGGED,
1511 1.9F,
1512 0.500F,
1513 -1'000L,
1516 8.39F,
1517 1.39F,
1518 1.0F,
1519 -115L,
1520 0.002F,
1521 EAXVECTOR{},
1522 985L,
1523 0.030F,
1524 EAXVECTOR{},
1525 0.250F,
1526 0.0F,
1527 0.250F,
1528 1.0F,
1529 -5.0F,
1530 5'000.0F,
1531 250.0F,
1532 0.0F,
1533 0x1FUL,
1536 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_DIZZY =
1538 EAX_ENVIRONMENT_DIZZY,
1539 1.8F,
1540 0.600F,
1541 -1'000L,
1542 -400L,
1544 17.23F,
1545 0.56F,
1546 1.0F,
1547 -1'713L,
1548 0.020F,
1549 EAXVECTOR{},
1550 -613L,
1551 0.030F,
1552 EAXVECTOR{},
1553 0.250F,
1554 1.0F,
1555 0.810F,
1556 0.310F,
1557 -5.0F,
1558 5'000.0F,
1559 250.0F,
1560 0.0F,
1561 0x1FUL,
1564 constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PSYCHOTIC =
1566 EAX_ENVIRONMENT_PSYCHOTIC,
1567 1.0F,
1568 0.500F,
1569 -1'000L,
1570 -151L,
1572 7.56F,
1573 0.91F,
1574 1.0F,
1575 -626L,
1576 0.020F,
1577 EAXVECTOR{},
1578 774L,
1579 0.030F,
1580 EAXVECTOR{},
1581 0.250F,
1582 0.0F,
1583 4.0F,
1584 1.0F,
1585 -5.0F,
1586 5'000.0F,
1587 250.0F,
1588 0.0F,
1589 0x1FUL,
1592 } // namespace
1594 const EaxReverbPresets EAXREVERB_PRESETS{{
1595 EAXREVERB_PRESET_GENERIC,
1596 EAXREVERB_PRESET_PADDEDCELL,
1597 EAXREVERB_PRESET_ROOM,
1598 EAXREVERB_PRESET_BATHROOM,
1599 EAXREVERB_PRESET_LIVINGROOM,
1600 EAXREVERB_PRESET_STONEROOM,
1601 EAXREVERB_PRESET_AUDITORIUM,
1602 EAXREVERB_PRESET_CONCERTHALL,
1603 EAXREVERB_PRESET_CAVE,
1604 EAXREVERB_PRESET_ARENA,
1605 EAXREVERB_PRESET_HANGAR,
1606 EAXREVERB_PRESET_CARPETTEDHALLWAY,
1607 EAXREVERB_PRESET_HALLWAY,
1608 EAXREVERB_PRESET_STONECORRIDOR,
1609 EAXREVERB_PRESET_ALLEY,
1610 EAXREVERB_PRESET_FOREST,
1611 EAXREVERB_PRESET_CITY,
1612 EAXREVERB_PRESET_MOUNTAINS,
1613 EAXREVERB_PRESET_QUARRY,
1614 EAXREVERB_PRESET_PLAIN,
1615 EAXREVERB_PRESET_PARKINGLOT,
1616 EAXREVERB_PRESET_SEWERPIPE,
1617 EAXREVERB_PRESET_UNDERWATER,
1618 EAXREVERB_PRESET_DRUGGED,
1619 EAXREVERB_PRESET_DIZZY,
1620 EAXREVERB_PRESET_PSYCHOTIC,