diff --git a/reaction/code/client/qal_efx.h b/reaction/code/client/qal_efx.h index 7c62a2a4..1e83e859 100644 --- a/reaction/code/client/qal_efx.h +++ b/reaction/code/client/qal_efx.h @@ -1,737 +1,737 @@ -#ifndef __qefx_h_ -#define __qefx_h_ - - -#ifdef __cplusplus -extern "C" { -#endif - -#define ALC_EXT_EFX_NAME "ALC_EXT_EFX" - -/** - * Context definitions to be used with alcCreateContext. - * These values must be unique and not conflict with other - * al context values. - */ -#define ALC_EFX_MAJOR_VERSION 0x20001 -#define ALC_EFX_MINOR_VERSION 0x20002 -#define ALC_MAX_AUXILIARY_SENDS 0x20003 - - - - -/** - * Listener definitions to be used with alListener functions. - * These values must be unique and not conflict with other - * al listener values. - */ -#define AL_METERS_PER_UNIT 0x20004 - - - - -/** - * Source definitions to be used with alSource functions. - * These values must be unique and not conflict with other - * al source values. - */ -#define AL_DIRECT_FILTER 0x20005 -#define AL_AUXILIARY_SEND_FILTER 0x20006 -#define AL_AIR_ABSORPTION_FACTOR 0x20007 -#define AL_ROOM_ROLLOFF_FACTOR 0x20008 -#define AL_CONE_OUTER_GAINHF 0x20009 -#define AL_DIRECT_FILTER_GAINHF_AUTO 0x2000A -#define AL_AUXILIARY_SEND_FILTER_GAIN_AUTO 0x2000B -#define AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO 0x2000C - - - - -/** - * Effect object definitions to be used with alEffect functions. - * - * Effect parameter value definitions, ranges, and defaults - * appear farther down in this file. - */ - -/* Reverb Parameters */ -#define AL_REVERB_DENSITY 0x0001 -#define AL_REVERB_DIFFUSION 0x0002 -#define AL_REVERB_GAIN 0x0003 -#define AL_REVERB_GAINHF 0x0004 -#define AL_REVERB_DECAY_TIME 0x0005 -#define AL_REVERB_DECAY_HFRATIO 0x0006 -#define AL_REVERB_REFLECTIONS_GAIN 0x0007 -#define AL_REVERB_REFLECTIONS_DELAY 0x0008 -#define AL_REVERB_LATE_REVERB_GAIN 0x0009 -#define AL_REVERB_LATE_REVERB_DELAY 0x000A -#define AL_REVERB_AIR_ABSORPTION_GAINHF 0x000B -#define AL_REVERB_ROOM_ROLLOFF_FACTOR 0x000C -#define AL_REVERB_DECAY_HFLIMIT 0x000D - -/* Chorus Parameters */ -#define AL_CHORUS_WAVEFORM 0x0001 -#define AL_CHORUS_PHASE 0x0002 -#define AL_CHORUS_RATE 0x0003 -#define AL_CHORUS_DEPTH 0x0004 -#define AL_CHORUS_FEEDBACK 0x0005 -#define AL_CHORUS_DELAY 0x0006 - -/* Distortion Parameters */ -#define AL_DISTORTION_EDGE 0x0001 -#define AL_DISTORTION_GAIN 0x0002 -#define AL_DISTORTION_LOWPASS_CUTOFF 0x0003 -#define AL_DISTORTION_EQCENTER 0x0004 -#define AL_DISTORTION_EQBANDWIDTH 0x0005 - -/* Echo Parameters */ -#define AL_ECHO_DELAY 0x0001 -#define AL_ECHO_LRDELAY 0x0002 -#define AL_ECHO_DAMPING 0x0003 -#define AL_ECHO_FEEDBACK 0x0004 -#define AL_ECHO_SPREAD 0x0005 - -/* Flanger Parameters */ -#define AL_FLANGER_WAVEFORM 0x0001 -#define AL_FLANGER_PHASE 0x0002 -#define AL_FLANGER_RATE 0x0003 -#define AL_FLANGER_DEPTH 0x0004 -#define AL_FLANGER_FEEDBACK 0x0005 -#define AL_FLANGER_DELAY 0x0006 - -/* Frequencyshifter Parameters */ -#define AL_FREQUENCY_SHIFTER_FREQUENCY 0x0001 -#define AL_FREQUENCY_SHIFTER_LEFT_DIRECTION 0x0002 -#define AL_FREQUENCY_SHIFTER_RIGHT_DIRECTION 0x0003 - -/* Vocalmorpher Parameters */ -#define AL_VOCAL_MORPHER_PHONEMEA 0x0001 -#define AL_VOCAL_MORPHER_PHONEMEA_COARSE_TUNING 0x0002 -#define AL_VOCAL_MORPHER_PHONEMEB 0x0003 -#define AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING 0x0004 -#define AL_VOCAL_MORPHER_WAVEFORM 0x0005 -#define AL_VOCAL_MORPHER_RATE 0x0006 - -/* Pitchshifter Parameters */ -#define AL_PITCH_SHIFTER_COARSE_TUNE 0x0001 -#define AL_PITCH_SHIFTER_FINE_TUNE 0x0002 - -/* Ringmodulator Parameters */ -#define AL_RING_MODULATOR_FREQUENCY 0x0001 -#define AL_RING_MODULATOR_HIGHPASS_CUTOFF 0x0002 -#define AL_RING_MODULATOR_WAVEFORM 0x0003 - -/* Autowah Parameters */ -#define AL_AUTOWAH_ATTACK_TIME 0x0001 -#define AL_AUTOWAH_RELEASE_TIME 0x0002 -#define AL_AUTOWAH_RESONANCE 0x0003 -#define AL_AUTOWAH_PEAK_GAIN 0x0004 - -/* Compressor Parameters */ -#define AL_COMPRESSOR_ONOFF 0x0001 - -/* Equalizer Parameters */ -#define AL_EQUALIZER_LOW_GAIN 0x0001 -#define AL_EQUALIZER_LOW_CUTOFF 0x0002 -#define AL_EQUALIZER_MID1_GAIN 0x0003 -#define AL_EQUALIZER_MID1_CENTER 0x0004 -#define AL_EQUALIZER_MID1_WIDTH 0x0005 -#define AL_EQUALIZER_MID2_GAIN 0x0006 -#define AL_EQUALIZER_MID2_CENTER 0x0007 -#define AL_EQUALIZER_MID2_WIDTH 0x0008 -#define AL_EQUALIZER_HIGH_GAIN 0x0009 -#define AL_EQUALIZER_HIGH_CUTOFF 0x000A - -/* Effect type */ -#define AL_EFFECT_FIRST_PARAMETER 0x0000 -#define AL_EFFECT_LAST_PARAMETER 0x8000 -#define AL_EFFECT_TYPE 0x8001 - -/* Effect type definitions to be used with AL_EFFECT_TYPE. */ -#define AL_EFFECT_NULL 0x0000 /* Can also be used as an Effect Object ID */ -#define AL_EFFECT_REVERB 0x0001 -#define AL_EFFECT_CHORUS 0x0002 -#define AL_EFFECT_DISTORTION 0x0003 -#define AL_EFFECT_ECHO 0x0004 -#define AL_EFFECT_FLANGER 0x0005 -#define AL_EFFECT_FREQUENCY_SHIFTER 0x0006 -#define AL_EFFECT_VOCAL_MORPHER 0x0007 -#define AL_EFFECT_PITCH_SHIFTER 0x0008 -#define AL_EFFECT_RING_MODULATOR 0x0009 -#define AL_EFFECT_AUTOWAH 0x000A -#define AL_EFFECT_COMPRESSOR 0x000B -#define AL_EFFECT_EQUALIZER 0x000C - -/** - * Auxiliary Slot object definitions to be used with alAuxiliaryEffectSlot functions. - */ -#define AL_EFFECTSLOT_EFFECT 0x0001 -#define AL_EFFECTSLOT_GAIN 0x0002 -#define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003 - -/** - * Value to be used as an Auxiliary Slot ID to disable a source send.. - */ -#define AL_EFFECTSLOT_NULL 0x0000 - - - -/** - * Filter object definitions to be used with alFilter functions. - */ - -/* Lowpass parameters. */ -#define AL_LOWPASS_GAIN 0x0001 -#define AL_LOWPASS_GAINHF 0x0002 - -/* Highpass Parameters */ -#define AL_HIGHPASS_GAIN 0x0001 -#define AL_HIGHPASS_GAINLF 0x0002 - -/* Bandpass Parameters */ -#define AL_BANDPASS_GAIN 0x0001 -#define AL_BANDPASS_GAINLF 0x0002 -#define AL_BANDPASS_GAINHF 0x0003 - -/* Filter type */ -#define AL_FILTER_FIRST_PARAMETER 0x0000 -#define AL_FILTER_LAST_PARAMETER 0x8000 -#define AL_FILTER_TYPE 0x8001 - -/* Filter type definitions to be used with AL_FILTER_TYPE. */ -#define AL_FILTER_NULL 0x0000 /* Can also be used as a Filter Object ID */ -#define AL_FILTER_LOWPASS 0x0001 -#define AL_FILTER_HIGHPASS 0x0002 -#define AL_FILTER_BANDPASS 0x0003 - - -/** - * Effect object functions. - */ - -/* Create Effect objects. */ -typedef void (ALCAPIENTRY *LPALGENEFFECTS)( ALsizei n, ALuint* effects ); - -/* Delete Effect objects. */ -typedef void (ALCAPIENTRY *LPALDELETEEFFECTS)( ALsizei n, ALuint* effects ); - -/* Verify a handle is a valid Effect. */ -typedef ALboolean (ALCAPIENTRY *LPALISEFFECT)( ALuint eid ); - -/* Set an integer parameter for an Effect object. */ -typedef void (ALCAPIENTRY *LPALEFFECTI)( ALuint eid, ALenum param, ALint value); -typedef void (ALCAPIENTRY *LPALEFFECTIV)( ALuint eid, ALenum param, ALint* values ); - -/* Set a floating point parameter for an Effect object. */ -typedef void (ALCAPIENTRY *LPALEFFECTF)( ALuint eid, ALenum param, ALfloat value); -typedef void (ALCAPIENTRY *LPALEFFECTFV)( ALuint eid, ALenum param, ALfloat* values ); - -/* Get an integer parameter for an Effect object. */ -typedef void (ALCAPIENTRY *LPALGETEFFECTI)( ALuint eid, ALenum pname, ALint* value ); -typedef void (ALCAPIENTRY *LPALGETEFFECTIV)( ALuint eid, ALenum pname, ALint* values ); - -/* Get a floating point parameter for an Effect object. */ -typedef void (ALCAPIENTRY *LPALGETEFFECTF)( ALuint eid, ALenum pname, ALfloat* value ); -typedef void (ALCAPIENTRY *LPALGETEFFECTFV)( ALuint eid, ALenum pname, ALfloat* values ); - - -/** - * Filter object functions - */ - -/* Create Filter objects. */ -typedef void (ALCAPIENTRY *LPALGENFILTERS)( ALsizei n, ALuint* filters ); - -/* Delete Filter objects. */ -typedef void (ALCAPIENTRY *LPALDELETEFILTERS)( ALsizei n, ALuint* filters ); - -/* Verify a handle is a valid Filter. */ -typedef ALboolean (ALCAPIENTRY *LPALISFILTER)( ALuint fid ); - -/* Set an integer parameter for a Filter object. */ -typedef void (ALCAPIENTRY *LPALFILTERI)( ALuint fid, ALenum param, ALint value ); -typedef void (ALCAPIENTRY *LPALFILTERIV)( ALuint fid, ALenum param, ALint* values ); - -/* Set a floating point parameter for an Filter object. */ -typedef void (ALCAPIENTRY *LPALFILTERF)( ALuint fid, ALenum param, ALfloat value); -typedef void (ALCAPIENTRY *LPALFILTERFV)( ALuint fid, ALenum param, ALfloat* values ); - -/* Get an integer parameter for a Filter object. */ -typedef void (ALCAPIENTRY *LPALGETFILTERI)( ALuint fid, ALenum pname, ALint* value ); -typedef void (ALCAPIENTRY *LPALGETFILTERIV)( ALuint fid, ALenum pname, ALint* values ); - -/* Get a floating point parameter for a Filter object. */ -typedef void (ALCAPIENTRY *LPALGETFILTERF)( ALuint fid, ALenum pname, ALfloat* value ); -typedef void (ALCAPIENTRY *LPALGETFILTERFV)( ALuint fid, ALenum pname, ALfloat* values ); - - -/** - * Auxiliary Slot object functions - */ - -/* Create Auxiliary Slot objects. */ -typedef void (ALCAPIENTRY *LPALGENAUXILIARYEFFECTSLOTS)( ALsizei n, ALuint* slots ); - -/* Delete Auxiliary Slot objects. */ -typedef void (ALCAPIENTRY *LPALDELETEAUXILIARYEFFECTSLOTS)( ALsizei n, ALuint* slots ); - -/* Verify a handle is a valid Auxiliary Slot. */ -typedef ALboolean (ALCAPIENTRY *LPALISAUXILIARYEFFECTSLOT)( ALuint slot ); - -/* Set an integer parameter for a Auxiliary Slot object. */ -typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTI)( ALuint asid, ALenum param, ALint value ); -typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTIV)( ALuint asid, ALenum param, ALint* values ); - -/* Set a floating point parameter for an Auxiliary Slot object. */ -typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTF)( ALuint asid, ALenum param, ALfloat value ); -typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTFV)( ALuint asid, ALenum param, ALfloat* values ); - -/* Get an integer parameter for a Auxiliary Slot object. */ -typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTI)( ALuint asid, ALenum pname, ALint* value ); -typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTIV)( ALuint asid, ALenum pname, ALint* values ); - -/* Get a floating point parameter for a Auxiliary Slot object. */ -typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTF)( ALuint asid, ALenum pname, ALfloat* value ); -typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTFV)( ALuint asid, ALenum pname, ALfloat* values ); - - - - -/********************************************************** - * Filter ranges and defaults. - */ - -/** - * Lowpass filter - */ - -#define LOWPASS_MIN_GAIN 0.0f -#define LOWPASS_MAX_GAIN 1.0f -#define LOWPASS_DEFAULT_GAIN 1.0f - -#define LOWPASS_MIN_GAINHF 0.0f -#define LOWPASS_MAX_GAINHF 1.0f -#define LOWPASS_DEFAULT_GAINHF 1.0f - -/** - * Highpass filter - */ - -#define HIGHPASS_MIN_GAIN 0.0f -#define HIGHPASS_MAX_GAIN 1.0f -#define HIGHPASS_DEFAULT_GAIN 1.0f - -#define HIGHPASS_MIN_GAINLF 0.0f -#define HIGHPASS_MAX_GAINLF 1.0f -#define HIGHPASS_DEFAULT_GAINLF 1.0f - -/** - * Bandpass filter - */ - -#define BANDPASS_MIN_GAIN 0.0f -#define BANDPASS_MAX_GAIN 1.0f -#define BANDPASS_DEFAULT_GAIN 1.0f - -#define BANDPASS_MIN_GAINHF 0.0f -#define BANDPASS_MAX_GAINHF 1.0f -#define BANDPASS_DEFAULT_GAINHF 1.0f - -#define BANDPASS_MIN_GAINLF 0.0f -#define BANDPASS_MAX_GAINLF 1.0f -#define BANDPASS_DEFAULT_GAINLF 1.0f - - - - - /********************************************************** - * Effect parameter structures, value definitions, ranges and defaults. - */ - -/** - * AL reverb effect parameter ranges and defaults - */ -#define AL_REVERB_MIN_DENSITY 0.0f -#define AL_REVERB_MAX_DENSITY 1.0f -#define AL_REVERB_DEFAULT_DENSITY 1.0f - -#define AL_REVERB_MIN_DIFFUSION 0.0f -#define AL_REVERB_MAX_DIFFUSION 1.0f -#define AL_REVERB_DEFAULT_DIFFUSION 1.0f - -#define AL_REVERB_MIN_GAIN 0.0f -#define AL_REVERB_MAX_GAIN 1.0f -#define AL_REVERB_DEFAULT_GAIN 0.32f - -#define AL_REVERB_MIN_GAINHF 0.0f -#define AL_REVERB_MAX_GAINHF 1.0f -#define AL_REVERB_DEFAULT_GAINHF 0.89f - -#define AL_REVERB_MIN_DECAY_TIME 0.1f -#define AL_REVERB_MAX_DECAY_TIME 20.0f -#define AL_REVERB_DEFAULT_DECAY_TIME 1.49f - -#define AL_REVERB_MIN_DECAY_HFRATIO 0.1f -#define AL_REVERB_MAX_DECAY_HFRATIO 2.0f -#define AL_REVERB_DEFAULT_DECAY_HFRATIO 0.83f - -#define AL_REVERB_MIN_REFLECTIONS_GAIN 0.0f -#define AL_REVERB_MAX_REFLECTIONS_GAIN 3.16f -#define AL_REVERB_DEFAULT_REFLECTIONS_GAIN 0.05f - -#define AL_REVERB_MIN_REFLECTIONS_DELAY 0.0f -#define AL_REVERB_MAX_REFLECTIONS_DELAY 0.3f -#define AL_REVERB_DEFAULT_REFLECTIONS_DELAY 0.007f - -#define AL_REVERB_MIN_LATE_REVERB_GAIN 0.0f -#define AL_REVERB_MAX_LATE_REVERB_GAIN 10.0f -#define AL_REVERB_DEFAULT_LATE_REVERB_GAIN 1.26f - -#define AL_REVERB_MIN_LATE_REVERB_DELAY 0.0f -#define AL_REVERB_MAX_LATE_REVERB_DELAY 0.1f -#define AL_REVERB_DEFAULT_LATE_REVERB_DELAY 0.011f - -#define AL_REVERB_MIN_AIR_ABSORPTION_GAINHF 0.892f -#define AL_REVERB_MAX_AIR_ABSORPTION_GAINHF 1.0f -#define AL_REVERB_DEFAULT_AIR_ABSORPTION_GAINHF 0.994f - -#define AL_REVERB_MIN_ROOM_ROLLOFF_FACTOR 0.0f -#define AL_REVERB_MAX_ROOM_ROLLOFF_FACTOR 10.0f -#define AL_REVERB_DEFAULT_ROOM_ROLLOFF_FACTOR 0.0f - -#define AL_REVERB_MIN_DECAY_HFLIMIT AL_FALSE -#define AL_REVERB_MAX_DECAY_HFLIMIT AL_TRUE -#define AL_REVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE - -/** - * AL chorus effect parameter ranges and defaults - */ -#define AL_CHORUS_MIN_WAVEFORM 0 -#define AL_CHORUS_MAX_WAVEFORM 1 -#define AL_CHORUS_DEFAULT_WAVEFORM 1 - -#define AL_CHORUS_WAVEFORM_SINUSOID 0 -#define AL_CHORUS_WAVEFORM_TRIANGLE 1 - -#define AL_CHORUS_MIN_PHASE (-180) -#define AL_CHORUS_MAX_PHASE 180 -#define AL_CHORUS_DEFAULT_PHASE 90 - -#define AL_CHORUS_MIN_RATE 0.0f -#define AL_CHORUS_MAX_RATE 10.0f -#define AL_CHORUS_DEFAULT_RATE 1.1f - -#define AL_CHORUS_MIN_DEPTH 0.0f -#define AL_CHORUS_MAX_DEPTH 1.0f -#define AL_CHORUS_DEFAULT_DEPTH 0.1f - -#define AL_CHORUS_MIN_FEEDBACK (-1.0f) -#define AL_CHORUS_MAX_FEEDBACK 1.0f -#define AL_CHORUS_DEFAULT_FEEDBACK 0.25f - -#define AL_CHORUS_MIN_DELAY 0.0f -#define AL_CHORUS_MAX_DELAY 0.016f -#define AL_CHORUS_DEFAULT_DELAY 0.016f - -/** - * AL distortion effect parameter ranges and defaults - */ -#define AL_DISTORTION_MIN_EDGE 0.0f -#define AL_DISTORTION_MAX_EDGE 1.0f -#define AL_DISTORTION_DEFAULT_EDGE 0.2f - -#define AL_DISTORTION_MIN_GAIN 0.01f -#define AL_DISTORTION_MAX_GAIN 1.0f -#define AL_DISTORTION_DEFAULT_GAIN 0.05f - -#define AL_DISTORTION_MIN_LOWPASS_CUTOFF 80.0f -#define AL_DISTORTION_MAX_LOWPASS_CUTOFF 24000.0f -#define AL_DISTORTION_DEFAULT_LOWPASS_CUTOFF 8000.0f - -#define AL_DISTORTION_MIN_EQCENTER 80.0f -#define AL_DISTORTION_MAX_EQCENTER 24000.0f -#define AL_DISTORTION_DEFAULT_EQCENTER 3600.0f - -#define AL_DISTORTION_MIN_EQBANDWIDTH 80.0f -#define AL_DISTORTION_MAX_EQBANDWIDTH 24000.0f -#define AL_DISTORTION_DEFAULT_EQBANDWIDTH 3600.0f - -/** - * AL echo effect parameter ranges and defaults - */ -#define AL_ECHO_MIN_DELAY 0.0f -#define AL_ECHO_MAX_DELAY 0.207f -#define AL_ECHO_DEFAULT_DELAY 0.1f - -#define AL_ECHO_MIN_LRDELAY 0.0f -#define AL_ECHO_MAX_LRDELAY 0.404f -#define AL_ECHO_DEFAULT_LRDELAY 0.1f - -#define AL_ECHO_MIN_DAMPING 0.0f -#define AL_ECHO_MAX_DAMPING 0.99f -#define AL_ECHO_DEFAULT_DAMPING 0.5f - -#define AL_ECHO_MIN_FEEDBACK 0.0f -#define AL_ECHO_MAX_FEEDBACK 1.0f -#define AL_ECHO_DEFAULT_FEEDBACK 0.5f - -#define AL_ECHO_MIN_SPREAD (-1.0f) -#define AL_ECHO_MAX_SPREAD 1.0f -#define AL_ECHO_DEFAULT_SPREAD (-1.0f) - -/** - * AL flanger effect parameter ranges and defaults - */ -#define AL_FLANGER_MIN_WAVEFORM 0 -#define AL_FLANGER_MAX_WAVEFORM 1 -#define AL_FLANGER_DEFAULT_WAVEFORM 1 - -#define AL_FLANGER_WAVEFORM_SINUSOID 0 -#define AL_FLANGER_WAVEFORM_TRIANGLE 1 - -#define AL_FLANGER_MIN_PHASE (-180) -#define AL_FLANGER_MAX_PHASE 180 -#define AL_FLANGER_DEFAULT_PHASE 0 - -#define AL_FLANGER_MIN_RATE 0.0f -#define AL_FLANGER_MAX_RATE 10.0f -#define AL_FLANGER_DEFAULT_RATE 0.27f - -#define AL_FLANGER_MIN_DEPTH 0.0f -#define AL_FLANGER_MAX_DEPTH 1.0f -#define AL_FLANGER_DEFAULT_DEPTH 1.0f - -#define AL_FLANGER_MIN_FEEDBACK (-1.0f) -#define AL_FLANGER_MAX_FEEDBACK 1.0f -#define AL_FLANGER_DEFAULT_FEEDBACK (-0.5f) - -#define AL_FLANGER_MIN_DELAY 0.0f -#define AL_FLANGER_MAX_DELAY 0.004f -#define AL_FLANGER_DEFAULT_DELAY 0.002f - -/** - * AL frequency shifter effect parameter ranges and defaults - */ -#define AL_FREQUENCY_SHIFTER_MIN_FREQUENCY 0.0f -#define AL_FREQUENCY_SHIFTER_MAX_FREQUENCY 24000.0f -#define AL_FREQUENCY_SHIFTER_DEFAULT_FREQUENCY 0.0f - -#define AL_FREQUENCY_SHIFTER_MIN_LEFT_DIRECTION 0 -#define AL_FREQUENCY_SHIFTER_MAX_LEFT_DIRECTION 2 -#define AL_FREQUENCY_SHIFTER_DEFAULT_LEFT_DIRECTION 0 - -#define AL_FREQUENCY_SHIFTER_MIN_RIGHT_DIRECTION 0 -#define AL_FREQUENCY_SHIFTER_MAX_RIGHT_DIRECTION 2 -#define AL_FREQUENCY_SHIFTER_DEFAULT_RIGHT_DIRECTION 0 - -#define AL_FREQUENCY_SHIFTER_DIRECTION_DOWN 0 -#define AL_FREQUENCY_SHIFTER_DIRECTION_UP 1 -#define AL_FREQUENCY_SHIFTER_DIRECTION_OFF 2 - -/** - * AL vocal morpher effect parameter ranges and defaults - */ -#define AL_VOCAL_MORPHER_MIN_PHONEMEA 0 -#define AL_VOCAL_MORPHER_MAX_PHONEMEA 29 -#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA 0 - -#define AL_VOCAL_MORPHER_MIN_PHONEMEA_COARSE_TUNING (-24) -#define AL_VOCAL_MORPHER_MAX_PHONEMEA_COARSE_TUNING 24 -#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA_COARSE_TUNING 0 - -#define AL_VOCAL_MORPHER_MIN_PHONEMEB 0 -#define AL_VOCAL_MORPHER_MAX_PHONEMEB 29 -#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB 10 - -#define AL_VOCAL_MORPHER_PHONEME_A 0 -#define AL_VOCAL_MORPHER_PHONEME_E 1 -#define AL_VOCAL_MORPHER_PHONEME_I 2 -#define AL_VOCAL_MORPHER_PHONEME_O 3 -#define AL_VOCAL_MORPHER_PHONEME_U 4 -#define AL_VOCAL_MORPHER_PHONEME_AA 5 -#define AL_VOCAL_MORPHER_PHONEME_AE 6 -#define AL_VOCAL_MORPHER_PHONEME_AH 7 -#define AL_VOCAL_MORPHER_PHONEME_AO 8 -#define AL_VOCAL_MORPHER_PHONEME_EH 9 -#define AL_VOCAL_MORPHER_PHONEME_ER 10 -#define AL_VOCAL_MORPHER_PHONEME_IH 11 -#define AL_VOCAL_MORPHER_PHONEME_IY 12 -#define AL_VOCAL_MORPHER_PHONEME_UH 13 -#define AL_VOCAL_MORPHER_PHONEME_UW 14 -#define AL_VOCAL_MORPHER_PHONEME_B 15 -#define AL_VOCAL_MORPHER_PHONEME_D 16 -#define AL_VOCAL_MORPHER_PHONEME_F 17 -#define AL_VOCAL_MORPHER_PHONEME_G 18 -#define AL_VOCAL_MORPHER_PHONEME_J 19 -#define AL_VOCAL_MORPHER_PHONEME_K 20 -#define AL_VOCAL_MORPHER_PHONEME_L 21 -#define AL_VOCAL_MORPHER_PHONEME_M 22 -#define AL_VOCAL_MORPHER_PHONEME_N 23 -#define AL_VOCAL_MORPHER_PHONEME_P 24 -#define AL_VOCAL_MORPHER_PHONEME_R 25 -#define AL_VOCAL_MORPHER_PHONEME_S 26 -#define AL_VOCAL_MORPHER_PHONEME_T 27 -#define AL_VOCAL_MORPHER_PHONEME_V 28 -#define AL_VOCAL_MORPHER_PHONEME_Z 29 - -#define AL_VOCAL_MORPHER_MIN_PHONEMEB_COARSE_TUNING (-24) -#define AL_VOCAL_MORPHER_MAX_PHONEMEB_COARSE_TUNING 24 -#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB_COARSE_TUNING 0 - -#define AL_VOCAL_MORPHER_MIN_WAVEFORM 0 -#define AL_VOCAL_MORPHER_MAX_WAVEFORM 2 -#define AL_VOCAL_MORPHER_DEFAULT_WAVEFORM 0 - -#define AL_VOCAL_MORPHER_WAVEFORM_SINUSOID 0 -#define AL_VOCAL_MORPHER_WAVEFORM_TRIANGLE 1 -#define AL_VOCAL_MORPHER_WAVEFORM_SAWTOOTH 2 - -#define AL_VOCAL_MORPHER_MIN_RATE 0.0f -#define AL_VOCAL_MORPHER_MAX_RATE 10.0f -#define AL_VOCAL_MORPHER_DEFAULT_RATE 1.41f - -/** - * AL pitch shifter effect parameter ranges and defaults - */ -#define AL_PITCH_SHIFTER_MIN_COARSE_TUNE (-12) -#define AL_PITCH_SHIFTER_MAX_COARSE_TUNE 12 -#define AL_PITCH_SHIFTER_DEFAULT_COARSE_TUNE 12 - -#define AL_PITCH_SHIFTER_MIN_FINE_TUNE (-50) -#define AL_PITCH_SHIFTER_MAX_FINE_TUNE 50 -#define AL_PITCH_SHIFTER_DEFAULT_FINE_TUNE 0 - -/** - * AL ring modulator effect parameter ranges and defaults - */ -#define AL_RING_MODULATOR_MIN_FREQUENCY 0.0f -#define AL_RING_MODULATOR_MAX_FREQUENCY 8000.0f -#define AL_RING_MODULATOR_DEFAULT_FREQUENCY 440.0f - -#define AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF 0.0f -#define AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF 24000.0f -#define AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF 800.0f - -#define AL_RING_MODULATOR_MIN_WAVEFORM 0 -#define AL_RING_MODULATOR_MAX_WAVEFORM 2 -#define AL_RING_MODULATOR_DEFAULT_WAVEFORM 0 - -#define AL_RING_MODULATOR_SINUSOID 0 -#define AL_RING_MODULATOR_SAWTOOTH 1 -#define AL_RING_MODULATOR_SQUARE 2 - -/** - * AL autowah effect parameter ranges and defaults - */ -#define AL_AUTOWAH_MIN_ATTACK_TIME 0.0001f -#define AL_AUTOWAH_MAX_ATTACK_TIME 1.0f -#define AL_AUTOWAH_DEFAULT_ATTACK_TIME 0.06f - -#define AL_AUTOWAH_MIN_RELEASE_TIME 0.0001f -#define AL_AUTOWAH_MAX_RELEASE_TIME 1.0f -#define AL_AUTOWAH_DEFAULT_RELEASE_TIME 0.06f - -#define AL_AUTOWAH_MIN_RESONANCE 2.0f -#define AL_AUTOWAH_MAX_RESONANCE 1000.0f -#define AL_AUTOWAH_DEFAULT_RESONANCE 1000.0f - -#define AL_AUTOWAH_MIN_PEAK_GAIN 0.00003f -#define AL_AUTOWAH_MAX_PEAK_GAIN 31621.0f -#define AL_AUTOWAH_DEFAULT_PEAK_GAIN 11.22f - -/** - * AL compressor effect parameter ranges and defaults - */ -#define AL_COMPRESSOR_MIN_ONOFF 0 -#define AL_COMPRESSOR_MAX_ONOFF 1 -#define AL_COMPRESSOR_DEFAULT_ONOFF 1 - -/** - * AL equalizer effect parameter ranges and defaults - */ -#define AL_EQUALIZER_MIN_LOW_GAIN 0.126f -#define AL_EQUALIZER_MAX_LOW_GAIN 7.943f -#define AL_EQUALIZER_DEFAULT_LOW_GAIN 1.0f - -#define AL_EQUALIZER_MIN_LOW_CUTOFF 50.0f -#define AL_EQUALIZER_MAX_LOW_CUTOFF 800.0f -#define AL_EQUALIZER_DEFAULT_LOW_CUTOFF 200.0f - -#define AL_EQUALIZER_MIN_MID1_GAIN 0.126f -#define AL_EQUALIZER_MAX_MID1_GAIN 7.943f -#define AL_EQUALIZER_DEFAULT_MID1_GAIN 1.0f - -#define AL_EQUALIZER_MIN_MID1_CENTER 200.0f -#define AL_EQUALIZER_MAX_MID1_CENTER 3000.0f -#define AL_EQUALIZER_DEFAULT_MID1_CENTER 500.0f - -#define AL_EQUALIZER_MIN_MID1_WIDTH 0.01f -#define AL_EQUALIZER_MAX_MID1_WIDTH 1.0f -#define AL_EQUALIZER_DEFAULT_MID1_WIDTH 1.0f - -#define AL_EQUALIZER_MIN_MID2_GAIN 0.126f -#define AL_EQUALIZER_MAX_MID2_GAIN 7.943f -#define AL_EQUALIZER_DEFAULT_MID2_GAIN 1.0f - -#define AL_EQUALIZER_MIN_MID2_CENTER 1000.0f -#define AL_EQUALIZER_MAX_MID2_CENTER 8000.0f -#define AL_EQUALIZER_DEFAULT_MID2_CENTER 3000.0f - -#define AL_EQUALIZER_MIN_MID2_WIDTH 0.01f -#define AL_EQUALIZER_MAX_MID2_WIDTH 1.0f -#define AL_EQUALIZER_DEFAULT_MID2_WIDTH 1.0f - -#define AL_EQUALIZER_MIN_HIGH_GAIN 0.126f -#define AL_EQUALIZER_MAX_HIGH_GAIN 7.943f -#define AL_EQUALIZER_DEFAULT_HIGH_GAIN 1.0f - -#define AL_EQUALIZER_MIN_HIGH_CUTOFF 4000.0f -#define AL_EQUALIZER_MAX_HIGH_CUTOFF 16000.0f -#define AL_EQUALIZER_DEFAULT_HIGH_CUTOFF 6000.0f - - - - -/********************************************************** - * Source parameter value definitions, ranges and defaults. - */ -#define AL_MIN_AIR_ABSORPTION_FACTOR 0.0f -#define AL_MAX_AIR_ABSORPTION_FACTOR 10.0f -#define AL_DEFAULT_AIR_ABSORPTION_FACTOR 0.0f - -#define AL_MIN_ROOM_ROLLOFF_FACTOR 0.0f -#define AL_MAX_ROOM_ROLLOFF_FACTOR 10.0f -#define AL_DEFAULT_ROOM_ROLLOFF_FACTOR 0.0f - -#define AL_MIN_CONE_OUTER_GAINHF 0.0f -#define AL_MAX_CONE_OUTER_GAINHF 1.0f -#define AL_DEFAULT_CONE_OUTER_GAINHF 1.0f - -#define AL_MIN_DIRECT_FILTER_GAINHF_AUTO AL_FALSE -#define AL_MAX_DIRECT_FILTER_GAINHF_AUTO AL_TRUE -#define AL_DEFAULT_DIRECT_FILTER_GAINHF_AUTO AL_TRUE - -#define AL_MIN_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_FALSE -#define AL_MAX_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE -#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE - -#define AL_MIN_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_FALSE -#define AL_MAX_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE -#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE - - - - -/********************************************************** - * Listener parameter value definitions, ranges and defaults. - */ -#define AL_MIN_METERS_PER_UNIT FLT_MIN -#define AL_MAX_METERS_PER_UNIT FLT_MAX -#define AL_DEFAULT_METERS_PER_UNIT 1.0f - - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif /* __qefx_h_ */ +#ifndef __qefx_h_ +#define __qefx_h_ + + +#ifdef __cplusplus +extern "C" { +#endif + +#define ALC_EXT_EFX_NAME "ALC_EXT_EFX" + +/** + * Context definitions to be used with alcCreateContext. + * These values must be unique and not conflict with other + * al context values. + */ +#define ALC_EFX_MAJOR_VERSION 0x20001 +#define ALC_EFX_MINOR_VERSION 0x20002 +#define ALC_MAX_AUXILIARY_SENDS 0x20003 + + + + +/** + * Listener definitions to be used with alListener functions. + * These values must be unique and not conflict with other + * al listener values. + */ +#define AL_METERS_PER_UNIT 0x20004 + + + + +/** + * Source definitions to be used with alSource functions. + * These values must be unique and not conflict with other + * al source values. + */ +#define AL_DIRECT_FILTER 0x20005 +#define AL_AUXILIARY_SEND_FILTER 0x20006 +#define AL_AIR_ABSORPTION_FACTOR 0x20007 +#define AL_ROOM_ROLLOFF_FACTOR 0x20008 +#define AL_CONE_OUTER_GAINHF 0x20009 +#define AL_DIRECT_FILTER_GAINHF_AUTO 0x2000A +#define AL_AUXILIARY_SEND_FILTER_GAIN_AUTO 0x2000B +#define AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO 0x2000C + + + + +/** + * Effect object definitions to be used with alEffect functions. + * + * Effect parameter value definitions, ranges, and defaults + * appear farther down in this file. + */ + +/* Reverb Parameters */ +#define AL_REVERB_DENSITY 0x0001 +#define AL_REVERB_DIFFUSION 0x0002 +#define AL_REVERB_GAIN 0x0003 +#define AL_REVERB_GAINHF 0x0004 +#define AL_REVERB_DECAY_TIME 0x0005 +#define AL_REVERB_DECAY_HFRATIO 0x0006 +#define AL_REVERB_REFLECTIONS_GAIN 0x0007 +#define AL_REVERB_REFLECTIONS_DELAY 0x0008 +#define AL_REVERB_LATE_REVERB_GAIN 0x0009 +#define AL_REVERB_LATE_REVERB_DELAY 0x000A +#define AL_REVERB_AIR_ABSORPTION_GAINHF 0x000B +#define AL_REVERB_ROOM_ROLLOFF_FACTOR 0x000C +#define AL_REVERB_DECAY_HFLIMIT 0x000D + +/* Chorus Parameters */ +#define AL_CHORUS_WAVEFORM 0x0001 +#define AL_CHORUS_PHASE 0x0002 +#define AL_CHORUS_RATE 0x0003 +#define AL_CHORUS_DEPTH 0x0004 +#define AL_CHORUS_FEEDBACK 0x0005 +#define AL_CHORUS_DELAY 0x0006 + +/* Distortion Parameters */ +#define AL_DISTORTION_EDGE 0x0001 +#define AL_DISTORTION_GAIN 0x0002 +#define AL_DISTORTION_LOWPASS_CUTOFF 0x0003 +#define AL_DISTORTION_EQCENTER 0x0004 +#define AL_DISTORTION_EQBANDWIDTH 0x0005 + +/* Echo Parameters */ +#define AL_ECHO_DELAY 0x0001 +#define AL_ECHO_LRDELAY 0x0002 +#define AL_ECHO_DAMPING 0x0003 +#define AL_ECHO_FEEDBACK 0x0004 +#define AL_ECHO_SPREAD 0x0005 + +/* Flanger Parameters */ +#define AL_FLANGER_WAVEFORM 0x0001 +#define AL_FLANGER_PHASE 0x0002 +#define AL_FLANGER_RATE 0x0003 +#define AL_FLANGER_DEPTH 0x0004 +#define AL_FLANGER_FEEDBACK 0x0005 +#define AL_FLANGER_DELAY 0x0006 + +/* Frequencyshifter Parameters */ +#define AL_FREQUENCY_SHIFTER_FREQUENCY 0x0001 +#define AL_FREQUENCY_SHIFTER_LEFT_DIRECTION 0x0002 +#define AL_FREQUENCY_SHIFTER_RIGHT_DIRECTION 0x0003 + +/* Vocalmorpher Parameters */ +#define AL_VOCAL_MORPHER_PHONEMEA 0x0001 +#define AL_VOCAL_MORPHER_PHONEMEA_COARSE_TUNING 0x0002 +#define AL_VOCAL_MORPHER_PHONEMEB 0x0003 +#define AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING 0x0004 +#define AL_VOCAL_MORPHER_WAVEFORM 0x0005 +#define AL_VOCAL_MORPHER_RATE 0x0006 + +/* Pitchshifter Parameters */ +#define AL_PITCH_SHIFTER_COARSE_TUNE 0x0001 +#define AL_PITCH_SHIFTER_FINE_TUNE 0x0002 + +/* Ringmodulator Parameters */ +#define AL_RING_MODULATOR_FREQUENCY 0x0001 +#define AL_RING_MODULATOR_HIGHPASS_CUTOFF 0x0002 +#define AL_RING_MODULATOR_WAVEFORM 0x0003 + +/* Autowah Parameters */ +#define AL_AUTOWAH_ATTACK_TIME 0x0001 +#define AL_AUTOWAH_RELEASE_TIME 0x0002 +#define AL_AUTOWAH_RESONANCE 0x0003 +#define AL_AUTOWAH_PEAK_GAIN 0x0004 + +/* Compressor Parameters */ +#define AL_COMPRESSOR_ONOFF 0x0001 + +/* Equalizer Parameters */ +#define AL_EQUALIZER_LOW_GAIN 0x0001 +#define AL_EQUALIZER_LOW_CUTOFF 0x0002 +#define AL_EQUALIZER_MID1_GAIN 0x0003 +#define AL_EQUALIZER_MID1_CENTER 0x0004 +#define AL_EQUALIZER_MID1_WIDTH 0x0005 +#define AL_EQUALIZER_MID2_GAIN 0x0006 +#define AL_EQUALIZER_MID2_CENTER 0x0007 +#define AL_EQUALIZER_MID2_WIDTH 0x0008 +#define AL_EQUALIZER_HIGH_GAIN 0x0009 +#define AL_EQUALIZER_HIGH_CUTOFF 0x000A + +/* Effect type */ +#define AL_EFFECT_FIRST_PARAMETER 0x0000 +#define AL_EFFECT_LAST_PARAMETER 0x8000 +#define AL_EFFECT_TYPE 0x8001 + +/* Effect type definitions to be used with AL_EFFECT_TYPE. */ +#define AL_EFFECT_NULL 0x0000 /* Can also be used as an Effect Object ID */ +#define AL_EFFECT_REVERB 0x0001 +#define AL_EFFECT_CHORUS 0x0002 +#define AL_EFFECT_DISTORTION 0x0003 +#define AL_EFFECT_ECHO 0x0004 +#define AL_EFFECT_FLANGER 0x0005 +#define AL_EFFECT_FREQUENCY_SHIFTER 0x0006 +#define AL_EFFECT_VOCAL_MORPHER 0x0007 +#define AL_EFFECT_PITCH_SHIFTER 0x0008 +#define AL_EFFECT_RING_MODULATOR 0x0009 +#define AL_EFFECT_AUTOWAH 0x000A +#define AL_EFFECT_COMPRESSOR 0x000B +#define AL_EFFECT_EQUALIZER 0x000C + +/** + * Auxiliary Slot object definitions to be used with alAuxiliaryEffectSlot functions. + */ +#define AL_EFFECTSLOT_EFFECT 0x0001 +#define AL_EFFECTSLOT_GAIN 0x0002 +#define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003 + +/** + * Value to be used as an Auxiliary Slot ID to disable a source send.. + */ +#define AL_EFFECTSLOT_NULL 0x0000 + + + +/** + * Filter object definitions to be used with alFilter functions. + */ + +/* Lowpass parameters. */ +#define AL_LOWPASS_GAIN 0x0001 +#define AL_LOWPASS_GAINHF 0x0002 + +/* Highpass Parameters */ +#define AL_HIGHPASS_GAIN 0x0001 +#define AL_HIGHPASS_GAINLF 0x0002 + +/* Bandpass Parameters */ +#define AL_BANDPASS_GAIN 0x0001 +#define AL_BANDPASS_GAINLF 0x0002 +#define AL_BANDPASS_GAINHF 0x0003 + +/* Filter type */ +#define AL_FILTER_FIRST_PARAMETER 0x0000 +#define AL_FILTER_LAST_PARAMETER 0x8000 +#define AL_FILTER_TYPE 0x8001 + +/* Filter type definitions to be used with AL_FILTER_TYPE. */ +#define AL_FILTER_NULL 0x0000 /* Can also be used as a Filter Object ID */ +#define AL_FILTER_LOWPASS 0x0001 +#define AL_FILTER_HIGHPASS 0x0002 +#define AL_FILTER_BANDPASS 0x0003 + + +/** + * Effect object functions. + */ + +/* Create Effect objects. */ +typedef void (ALCAPIENTRY *LPALGENEFFECTS)( ALsizei n, ALuint* effects ); + +/* Delete Effect objects. */ +typedef void (ALCAPIENTRY *LPALDELETEEFFECTS)( ALsizei n, ALuint* effects ); + +/* Verify a handle is a valid Effect. */ +typedef ALboolean (ALCAPIENTRY *LPALISEFFECT)( ALuint eid ); + +/* Set an integer parameter for an Effect object. */ +typedef void (ALCAPIENTRY *LPALEFFECTI)( ALuint eid, ALenum param, ALint value); +typedef void (ALCAPIENTRY *LPALEFFECTIV)( ALuint eid, ALenum param, ALint* values ); + +/* Set a floating point parameter for an Effect object. */ +typedef void (ALCAPIENTRY *LPALEFFECTF)( ALuint eid, ALenum param, ALfloat value); +typedef void (ALCAPIENTRY *LPALEFFECTFV)( ALuint eid, ALenum param, ALfloat* values ); + +/* Get an integer parameter for an Effect object. */ +typedef void (ALCAPIENTRY *LPALGETEFFECTI)( ALuint eid, ALenum pname, ALint* value ); +typedef void (ALCAPIENTRY *LPALGETEFFECTIV)( ALuint eid, ALenum pname, ALint* values ); + +/* Get a floating point parameter for an Effect object. */ +typedef void (ALCAPIENTRY *LPALGETEFFECTF)( ALuint eid, ALenum pname, ALfloat* value ); +typedef void (ALCAPIENTRY *LPALGETEFFECTFV)( ALuint eid, ALenum pname, ALfloat* values ); + + +/** + * Filter object functions + */ + +/* Create Filter objects. */ +typedef void (ALCAPIENTRY *LPALGENFILTERS)( ALsizei n, ALuint* filters ); + +/* Delete Filter objects. */ +typedef void (ALCAPIENTRY *LPALDELETEFILTERS)( ALsizei n, ALuint* filters ); + +/* Verify a handle is a valid Filter. */ +typedef ALboolean (ALCAPIENTRY *LPALISFILTER)( ALuint fid ); + +/* Set an integer parameter for a Filter object. */ +typedef void (ALCAPIENTRY *LPALFILTERI)( ALuint fid, ALenum param, ALint value ); +typedef void (ALCAPIENTRY *LPALFILTERIV)( ALuint fid, ALenum param, ALint* values ); + +/* Set a floating point parameter for an Filter object. */ +typedef void (ALCAPIENTRY *LPALFILTERF)( ALuint fid, ALenum param, ALfloat value); +typedef void (ALCAPIENTRY *LPALFILTERFV)( ALuint fid, ALenum param, ALfloat* values ); + +/* Get an integer parameter for a Filter object. */ +typedef void (ALCAPIENTRY *LPALGETFILTERI)( ALuint fid, ALenum pname, ALint* value ); +typedef void (ALCAPIENTRY *LPALGETFILTERIV)( ALuint fid, ALenum pname, ALint* values ); + +/* Get a floating point parameter for a Filter object. */ +typedef void (ALCAPIENTRY *LPALGETFILTERF)( ALuint fid, ALenum pname, ALfloat* value ); +typedef void (ALCAPIENTRY *LPALGETFILTERFV)( ALuint fid, ALenum pname, ALfloat* values ); + + +/** + * Auxiliary Slot object functions + */ + +/* Create Auxiliary Slot objects. */ +typedef void (ALCAPIENTRY *LPALGENAUXILIARYEFFECTSLOTS)( ALsizei n, ALuint* slots ); + +/* Delete Auxiliary Slot objects. */ +typedef void (ALCAPIENTRY *LPALDELETEAUXILIARYEFFECTSLOTS)( ALsizei n, ALuint* slots ); + +/* Verify a handle is a valid Auxiliary Slot. */ +typedef ALboolean (ALCAPIENTRY *LPALISAUXILIARYEFFECTSLOT)( ALuint slot ); + +/* Set an integer parameter for a Auxiliary Slot object. */ +typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTI)( ALuint asid, ALenum param, ALint value ); +typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTIV)( ALuint asid, ALenum param, ALint* values ); + +/* Set a floating point parameter for an Auxiliary Slot object. */ +typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTF)( ALuint asid, ALenum param, ALfloat value ); +typedef void (ALCAPIENTRY *LPALAUXILIARYEFFECTSLOTFV)( ALuint asid, ALenum param, ALfloat* values ); + +/* Get an integer parameter for a Auxiliary Slot object. */ +typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTI)( ALuint asid, ALenum pname, ALint* value ); +typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTIV)( ALuint asid, ALenum pname, ALint* values ); + +/* Get a floating point parameter for a Auxiliary Slot object. */ +typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTF)( ALuint asid, ALenum pname, ALfloat* value ); +typedef void (ALCAPIENTRY *LPALGETAUXILIARYEFFECTSLOTFV)( ALuint asid, ALenum pname, ALfloat* values ); + + + + +/********************************************************** + * Filter ranges and defaults. + */ + +/** + * Lowpass filter + */ + +#define LOWPASS_MIN_GAIN 0.0f +#define LOWPASS_MAX_GAIN 1.0f +#define LOWPASS_DEFAULT_GAIN 1.0f + +#define LOWPASS_MIN_GAINHF 0.0f +#define LOWPASS_MAX_GAINHF 1.0f +#define LOWPASS_DEFAULT_GAINHF 1.0f + +/** + * Highpass filter + */ + +#define HIGHPASS_MIN_GAIN 0.0f +#define HIGHPASS_MAX_GAIN 1.0f +#define HIGHPASS_DEFAULT_GAIN 1.0f + +#define HIGHPASS_MIN_GAINLF 0.0f +#define HIGHPASS_MAX_GAINLF 1.0f +#define HIGHPASS_DEFAULT_GAINLF 1.0f + +/** + * Bandpass filter + */ + +#define BANDPASS_MIN_GAIN 0.0f +#define BANDPASS_MAX_GAIN 1.0f +#define BANDPASS_DEFAULT_GAIN 1.0f + +#define BANDPASS_MIN_GAINHF 0.0f +#define BANDPASS_MAX_GAINHF 1.0f +#define BANDPASS_DEFAULT_GAINHF 1.0f + +#define BANDPASS_MIN_GAINLF 0.0f +#define BANDPASS_MAX_GAINLF 1.0f +#define BANDPASS_DEFAULT_GAINLF 1.0f + + + + + /********************************************************** + * Effect parameter structures, value definitions, ranges and defaults. + */ + +/** + * AL reverb effect parameter ranges and defaults + */ +#define AL_REVERB_MIN_DENSITY 0.0f +#define AL_REVERB_MAX_DENSITY 1.0f +#define AL_REVERB_DEFAULT_DENSITY 1.0f + +#define AL_REVERB_MIN_DIFFUSION 0.0f +#define AL_REVERB_MAX_DIFFUSION 1.0f +#define AL_REVERB_DEFAULT_DIFFUSION 1.0f + +#define AL_REVERB_MIN_GAIN 0.0f +#define AL_REVERB_MAX_GAIN 1.0f +#define AL_REVERB_DEFAULT_GAIN 0.32f + +#define AL_REVERB_MIN_GAINHF 0.0f +#define AL_REVERB_MAX_GAINHF 1.0f +#define AL_REVERB_DEFAULT_GAINHF 0.89f + +#define AL_REVERB_MIN_DECAY_TIME 0.1f +#define AL_REVERB_MAX_DECAY_TIME 20.0f +#define AL_REVERB_DEFAULT_DECAY_TIME 1.49f + +#define AL_REVERB_MIN_DECAY_HFRATIO 0.1f +#define AL_REVERB_MAX_DECAY_HFRATIO 2.0f +#define AL_REVERB_DEFAULT_DECAY_HFRATIO 0.83f + +#define AL_REVERB_MIN_REFLECTIONS_GAIN 0.0f +#define AL_REVERB_MAX_REFLECTIONS_GAIN 3.16f +#define AL_REVERB_DEFAULT_REFLECTIONS_GAIN 0.05f + +#define AL_REVERB_MIN_REFLECTIONS_DELAY 0.0f +#define AL_REVERB_MAX_REFLECTIONS_DELAY 0.3f +#define AL_REVERB_DEFAULT_REFLECTIONS_DELAY 0.007f + +#define AL_REVERB_MIN_LATE_REVERB_GAIN 0.0f +#define AL_REVERB_MAX_LATE_REVERB_GAIN 10.0f +#define AL_REVERB_DEFAULT_LATE_REVERB_GAIN 1.26f + +#define AL_REVERB_MIN_LATE_REVERB_DELAY 0.0f +#define AL_REVERB_MAX_LATE_REVERB_DELAY 0.1f +#define AL_REVERB_DEFAULT_LATE_REVERB_DELAY 0.011f + +#define AL_REVERB_MIN_AIR_ABSORPTION_GAINHF 0.892f +#define AL_REVERB_MAX_AIR_ABSORPTION_GAINHF 1.0f +#define AL_REVERB_DEFAULT_AIR_ABSORPTION_GAINHF 0.994f + +#define AL_REVERB_MIN_ROOM_ROLLOFF_FACTOR 0.0f +#define AL_REVERB_MAX_ROOM_ROLLOFF_FACTOR 10.0f +#define AL_REVERB_DEFAULT_ROOM_ROLLOFF_FACTOR 0.0f + +#define AL_REVERB_MIN_DECAY_HFLIMIT AL_FALSE +#define AL_REVERB_MAX_DECAY_HFLIMIT AL_TRUE +#define AL_REVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE + +/** + * AL chorus effect parameter ranges and defaults + */ +#define AL_CHORUS_MIN_WAVEFORM 0 +#define AL_CHORUS_MAX_WAVEFORM 1 +#define AL_CHORUS_DEFAULT_WAVEFORM 1 + +#define AL_CHORUS_WAVEFORM_SINUSOID 0 +#define AL_CHORUS_WAVEFORM_TRIANGLE 1 + +#define AL_CHORUS_MIN_PHASE (-180) +#define AL_CHORUS_MAX_PHASE 180 +#define AL_CHORUS_DEFAULT_PHASE 90 + +#define AL_CHORUS_MIN_RATE 0.0f +#define AL_CHORUS_MAX_RATE 10.0f +#define AL_CHORUS_DEFAULT_RATE 1.1f + +#define AL_CHORUS_MIN_DEPTH 0.0f +#define AL_CHORUS_MAX_DEPTH 1.0f +#define AL_CHORUS_DEFAULT_DEPTH 0.1f + +#define AL_CHORUS_MIN_FEEDBACK (-1.0f) +#define AL_CHORUS_MAX_FEEDBACK 1.0f +#define AL_CHORUS_DEFAULT_FEEDBACK 0.25f + +#define AL_CHORUS_MIN_DELAY 0.0f +#define AL_CHORUS_MAX_DELAY 0.016f +#define AL_CHORUS_DEFAULT_DELAY 0.016f + +/** + * AL distortion effect parameter ranges and defaults + */ +#define AL_DISTORTION_MIN_EDGE 0.0f +#define AL_DISTORTION_MAX_EDGE 1.0f +#define AL_DISTORTION_DEFAULT_EDGE 0.2f + +#define AL_DISTORTION_MIN_GAIN 0.01f +#define AL_DISTORTION_MAX_GAIN 1.0f +#define AL_DISTORTION_DEFAULT_GAIN 0.05f + +#define AL_DISTORTION_MIN_LOWPASS_CUTOFF 80.0f +#define AL_DISTORTION_MAX_LOWPASS_CUTOFF 24000.0f +#define AL_DISTORTION_DEFAULT_LOWPASS_CUTOFF 8000.0f + +#define AL_DISTORTION_MIN_EQCENTER 80.0f +#define AL_DISTORTION_MAX_EQCENTER 24000.0f +#define AL_DISTORTION_DEFAULT_EQCENTER 3600.0f + +#define AL_DISTORTION_MIN_EQBANDWIDTH 80.0f +#define AL_DISTORTION_MAX_EQBANDWIDTH 24000.0f +#define AL_DISTORTION_DEFAULT_EQBANDWIDTH 3600.0f + +/** + * AL echo effect parameter ranges and defaults + */ +#define AL_ECHO_MIN_DELAY 0.0f +#define AL_ECHO_MAX_DELAY 0.207f +#define AL_ECHO_DEFAULT_DELAY 0.1f + +#define AL_ECHO_MIN_LRDELAY 0.0f +#define AL_ECHO_MAX_LRDELAY 0.404f +#define AL_ECHO_DEFAULT_LRDELAY 0.1f + +#define AL_ECHO_MIN_DAMPING 0.0f +#define AL_ECHO_MAX_DAMPING 0.99f +#define AL_ECHO_DEFAULT_DAMPING 0.5f + +#define AL_ECHO_MIN_FEEDBACK 0.0f +#define AL_ECHO_MAX_FEEDBACK 1.0f +#define AL_ECHO_DEFAULT_FEEDBACK 0.5f + +#define AL_ECHO_MIN_SPREAD (-1.0f) +#define AL_ECHO_MAX_SPREAD 1.0f +#define AL_ECHO_DEFAULT_SPREAD (-1.0f) + +/** + * AL flanger effect parameter ranges and defaults + */ +#define AL_FLANGER_MIN_WAVEFORM 0 +#define AL_FLANGER_MAX_WAVEFORM 1 +#define AL_FLANGER_DEFAULT_WAVEFORM 1 + +#define AL_FLANGER_WAVEFORM_SINUSOID 0 +#define AL_FLANGER_WAVEFORM_TRIANGLE 1 + +#define AL_FLANGER_MIN_PHASE (-180) +#define AL_FLANGER_MAX_PHASE 180 +#define AL_FLANGER_DEFAULT_PHASE 0 + +#define AL_FLANGER_MIN_RATE 0.0f +#define AL_FLANGER_MAX_RATE 10.0f +#define AL_FLANGER_DEFAULT_RATE 0.27f + +#define AL_FLANGER_MIN_DEPTH 0.0f +#define AL_FLANGER_MAX_DEPTH 1.0f +#define AL_FLANGER_DEFAULT_DEPTH 1.0f + +#define AL_FLANGER_MIN_FEEDBACK (-1.0f) +#define AL_FLANGER_MAX_FEEDBACK 1.0f +#define AL_FLANGER_DEFAULT_FEEDBACK (-0.5f) + +#define AL_FLANGER_MIN_DELAY 0.0f +#define AL_FLANGER_MAX_DELAY 0.004f +#define AL_FLANGER_DEFAULT_DELAY 0.002f + +/** + * AL frequency shifter effect parameter ranges and defaults + */ +#define AL_FREQUENCY_SHIFTER_MIN_FREQUENCY 0.0f +#define AL_FREQUENCY_SHIFTER_MAX_FREQUENCY 24000.0f +#define AL_FREQUENCY_SHIFTER_DEFAULT_FREQUENCY 0.0f + +#define AL_FREQUENCY_SHIFTER_MIN_LEFT_DIRECTION 0 +#define AL_FREQUENCY_SHIFTER_MAX_LEFT_DIRECTION 2 +#define AL_FREQUENCY_SHIFTER_DEFAULT_LEFT_DIRECTION 0 + +#define AL_FREQUENCY_SHIFTER_MIN_RIGHT_DIRECTION 0 +#define AL_FREQUENCY_SHIFTER_MAX_RIGHT_DIRECTION 2 +#define AL_FREQUENCY_SHIFTER_DEFAULT_RIGHT_DIRECTION 0 + +#define AL_FREQUENCY_SHIFTER_DIRECTION_DOWN 0 +#define AL_FREQUENCY_SHIFTER_DIRECTION_UP 1 +#define AL_FREQUENCY_SHIFTER_DIRECTION_OFF 2 + +/** + * AL vocal morpher effect parameter ranges and defaults + */ +#define AL_VOCAL_MORPHER_MIN_PHONEMEA 0 +#define AL_VOCAL_MORPHER_MAX_PHONEMEA 29 +#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA 0 + +#define AL_VOCAL_MORPHER_MIN_PHONEMEA_COARSE_TUNING (-24) +#define AL_VOCAL_MORPHER_MAX_PHONEMEA_COARSE_TUNING 24 +#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA_COARSE_TUNING 0 + +#define AL_VOCAL_MORPHER_MIN_PHONEMEB 0 +#define AL_VOCAL_MORPHER_MAX_PHONEMEB 29 +#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB 10 + +#define AL_VOCAL_MORPHER_PHONEME_A 0 +#define AL_VOCAL_MORPHER_PHONEME_E 1 +#define AL_VOCAL_MORPHER_PHONEME_I 2 +#define AL_VOCAL_MORPHER_PHONEME_O 3 +#define AL_VOCAL_MORPHER_PHONEME_U 4 +#define AL_VOCAL_MORPHER_PHONEME_AA 5 +#define AL_VOCAL_MORPHER_PHONEME_AE 6 +#define AL_VOCAL_MORPHER_PHONEME_AH 7 +#define AL_VOCAL_MORPHER_PHONEME_AO 8 +#define AL_VOCAL_MORPHER_PHONEME_EH 9 +#define AL_VOCAL_MORPHER_PHONEME_ER 10 +#define AL_VOCAL_MORPHER_PHONEME_IH 11 +#define AL_VOCAL_MORPHER_PHONEME_IY 12 +#define AL_VOCAL_MORPHER_PHONEME_UH 13 +#define AL_VOCAL_MORPHER_PHONEME_UW 14 +#define AL_VOCAL_MORPHER_PHONEME_B 15 +#define AL_VOCAL_MORPHER_PHONEME_D 16 +#define AL_VOCAL_MORPHER_PHONEME_F 17 +#define AL_VOCAL_MORPHER_PHONEME_G 18 +#define AL_VOCAL_MORPHER_PHONEME_J 19 +#define AL_VOCAL_MORPHER_PHONEME_K 20 +#define AL_VOCAL_MORPHER_PHONEME_L 21 +#define AL_VOCAL_MORPHER_PHONEME_M 22 +#define AL_VOCAL_MORPHER_PHONEME_N 23 +#define AL_VOCAL_MORPHER_PHONEME_P 24 +#define AL_VOCAL_MORPHER_PHONEME_R 25 +#define AL_VOCAL_MORPHER_PHONEME_S 26 +#define AL_VOCAL_MORPHER_PHONEME_T 27 +#define AL_VOCAL_MORPHER_PHONEME_V 28 +#define AL_VOCAL_MORPHER_PHONEME_Z 29 + +#define AL_VOCAL_MORPHER_MIN_PHONEMEB_COARSE_TUNING (-24) +#define AL_VOCAL_MORPHER_MAX_PHONEMEB_COARSE_TUNING 24 +#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB_COARSE_TUNING 0 + +#define AL_VOCAL_MORPHER_MIN_WAVEFORM 0 +#define AL_VOCAL_MORPHER_MAX_WAVEFORM 2 +#define AL_VOCAL_MORPHER_DEFAULT_WAVEFORM 0 + +#define AL_VOCAL_MORPHER_WAVEFORM_SINUSOID 0 +#define AL_VOCAL_MORPHER_WAVEFORM_TRIANGLE 1 +#define AL_VOCAL_MORPHER_WAVEFORM_SAWTOOTH 2 + +#define AL_VOCAL_MORPHER_MIN_RATE 0.0f +#define AL_VOCAL_MORPHER_MAX_RATE 10.0f +#define AL_VOCAL_MORPHER_DEFAULT_RATE 1.41f + +/** + * AL pitch shifter effect parameter ranges and defaults + */ +#define AL_PITCH_SHIFTER_MIN_COARSE_TUNE (-12) +#define AL_PITCH_SHIFTER_MAX_COARSE_TUNE 12 +#define AL_PITCH_SHIFTER_DEFAULT_COARSE_TUNE 12 + +#define AL_PITCH_SHIFTER_MIN_FINE_TUNE (-50) +#define AL_PITCH_SHIFTER_MAX_FINE_TUNE 50 +#define AL_PITCH_SHIFTER_DEFAULT_FINE_TUNE 0 + +/** + * AL ring modulator effect parameter ranges and defaults + */ +#define AL_RING_MODULATOR_MIN_FREQUENCY 0.0f +#define AL_RING_MODULATOR_MAX_FREQUENCY 8000.0f +#define AL_RING_MODULATOR_DEFAULT_FREQUENCY 440.0f + +#define AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF 0.0f +#define AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF 24000.0f +#define AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF 800.0f + +#define AL_RING_MODULATOR_MIN_WAVEFORM 0 +#define AL_RING_MODULATOR_MAX_WAVEFORM 2 +#define AL_RING_MODULATOR_DEFAULT_WAVEFORM 0 + +#define AL_RING_MODULATOR_SINUSOID 0 +#define AL_RING_MODULATOR_SAWTOOTH 1 +#define AL_RING_MODULATOR_SQUARE 2 + +/** + * AL autowah effect parameter ranges and defaults + */ +#define AL_AUTOWAH_MIN_ATTACK_TIME 0.0001f +#define AL_AUTOWAH_MAX_ATTACK_TIME 1.0f +#define AL_AUTOWAH_DEFAULT_ATTACK_TIME 0.06f + +#define AL_AUTOWAH_MIN_RELEASE_TIME 0.0001f +#define AL_AUTOWAH_MAX_RELEASE_TIME 1.0f +#define AL_AUTOWAH_DEFAULT_RELEASE_TIME 0.06f + +#define AL_AUTOWAH_MIN_RESONANCE 2.0f +#define AL_AUTOWAH_MAX_RESONANCE 1000.0f +#define AL_AUTOWAH_DEFAULT_RESONANCE 1000.0f + +#define AL_AUTOWAH_MIN_PEAK_GAIN 0.00003f +#define AL_AUTOWAH_MAX_PEAK_GAIN 31621.0f +#define AL_AUTOWAH_DEFAULT_PEAK_GAIN 11.22f + +/** + * AL compressor effect parameter ranges and defaults + */ +#define AL_COMPRESSOR_MIN_ONOFF 0 +#define AL_COMPRESSOR_MAX_ONOFF 1 +#define AL_COMPRESSOR_DEFAULT_ONOFF 1 + +/** + * AL equalizer effect parameter ranges and defaults + */ +#define AL_EQUALIZER_MIN_LOW_GAIN 0.126f +#define AL_EQUALIZER_MAX_LOW_GAIN 7.943f +#define AL_EQUALIZER_DEFAULT_LOW_GAIN 1.0f + +#define AL_EQUALIZER_MIN_LOW_CUTOFF 50.0f +#define AL_EQUALIZER_MAX_LOW_CUTOFF 800.0f +#define AL_EQUALIZER_DEFAULT_LOW_CUTOFF 200.0f + +#define AL_EQUALIZER_MIN_MID1_GAIN 0.126f +#define AL_EQUALIZER_MAX_MID1_GAIN 7.943f +#define AL_EQUALIZER_DEFAULT_MID1_GAIN 1.0f + +#define AL_EQUALIZER_MIN_MID1_CENTER 200.0f +#define AL_EQUALIZER_MAX_MID1_CENTER 3000.0f +#define AL_EQUALIZER_DEFAULT_MID1_CENTER 500.0f + +#define AL_EQUALIZER_MIN_MID1_WIDTH 0.01f +#define AL_EQUALIZER_MAX_MID1_WIDTH 1.0f +#define AL_EQUALIZER_DEFAULT_MID1_WIDTH 1.0f + +#define AL_EQUALIZER_MIN_MID2_GAIN 0.126f +#define AL_EQUALIZER_MAX_MID2_GAIN 7.943f +#define AL_EQUALIZER_DEFAULT_MID2_GAIN 1.0f + +#define AL_EQUALIZER_MIN_MID2_CENTER 1000.0f +#define AL_EQUALIZER_MAX_MID2_CENTER 8000.0f +#define AL_EQUALIZER_DEFAULT_MID2_CENTER 3000.0f + +#define AL_EQUALIZER_MIN_MID2_WIDTH 0.01f +#define AL_EQUALIZER_MAX_MID2_WIDTH 1.0f +#define AL_EQUALIZER_DEFAULT_MID2_WIDTH 1.0f + +#define AL_EQUALIZER_MIN_HIGH_GAIN 0.126f +#define AL_EQUALIZER_MAX_HIGH_GAIN 7.943f +#define AL_EQUALIZER_DEFAULT_HIGH_GAIN 1.0f + +#define AL_EQUALIZER_MIN_HIGH_CUTOFF 4000.0f +#define AL_EQUALIZER_MAX_HIGH_CUTOFF 16000.0f +#define AL_EQUALIZER_DEFAULT_HIGH_CUTOFF 6000.0f + + + + +/********************************************************** + * Source parameter value definitions, ranges and defaults. + */ +#define AL_MIN_AIR_ABSORPTION_FACTOR 0.0f +#define AL_MAX_AIR_ABSORPTION_FACTOR 10.0f +#define AL_DEFAULT_AIR_ABSORPTION_FACTOR 0.0f + +#define AL_MIN_ROOM_ROLLOFF_FACTOR 0.0f +#define AL_MAX_ROOM_ROLLOFF_FACTOR 10.0f +#define AL_DEFAULT_ROOM_ROLLOFF_FACTOR 0.0f + +#define AL_MIN_CONE_OUTER_GAINHF 0.0f +#define AL_MAX_CONE_OUTER_GAINHF 1.0f +#define AL_DEFAULT_CONE_OUTER_GAINHF 1.0f + +#define AL_MIN_DIRECT_FILTER_GAINHF_AUTO AL_FALSE +#define AL_MAX_DIRECT_FILTER_GAINHF_AUTO AL_TRUE +#define AL_DEFAULT_DIRECT_FILTER_GAINHF_AUTO AL_TRUE + +#define AL_MIN_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_FALSE +#define AL_MAX_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE +#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE + +#define AL_MIN_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_FALSE +#define AL_MAX_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE +#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE + + + + +/********************************************************** + * Listener parameter value definitions, ranges and defaults. + */ +#define AL_MIN_METERS_PER_UNIT FLT_MIN +#define AL_MAX_METERS_PER_UNIT FLT_MAX +#define AL_DEFAULT_METERS_PER_UNIT 1.0f + + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* __qefx_h_ */ diff --git a/reaction/code/client/snd_alreverbs.h b/reaction/code/client/snd_alreverbs.h index 90c37736..d2deb723 100644 --- a/reaction/code/client/snd_alreverbs.h +++ b/reaction/code/client/snd_alreverbs.h @@ -1,874 +1,874 @@ -#define REVERB_PRESET_CITY \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.5f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.398107f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.67f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.0730298f, \ - /*flReflectionsDelay*/ 0.007f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.142725f, \ - /*flLateReverbDelay*/ 0.011f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_CITY_SUBWAY \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.74f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.707946f, \ - /*flGainLF*/ 0.891251f, \ - /*flDecayTime*/ 3.01f, \ - /*flDecayHFRatio*/ 1.23f, \ - /*flDecayLFRatio*/ 0.91f, \ - /*flReflectionsGain*/ 0.707946f, \ - /*flReflectionsDelay*/ 0.046f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.25893f, \ - /*flLateReverbDelay*/ 0.028f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.125f, \ - /*flEchoDepth*/ 0.21f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_CITY_UNDERPASS \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.82f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.446684f, \ - /*flGainLF*/ 0.891251f, \ - /*flDecayTime*/ 3.57f, \ - /*flDecayHFRatio*/ 1.12f, \ - /*flDecayLFRatio*/ 0.91f, \ - /*flReflectionsGain*/ 0.398107f, \ - /*flReflectionsDelay*/ 0.059f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.891251f, \ - /*flLateReverbDelay*/ 0.037f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.14f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.991973f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_CITY_ABANDONED \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.69f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.794328f, \ - /*flGainLF*/ 0.891251f, \ - /*flDecayTime*/ 3.28f, \ - /*flDecayHFRatio*/ 1.17f, \ - /*flDecayLFRatio*/ 0.91f, \ - /*flReflectionsGain*/ 0.446684f, \ - /*flReflectionsDelay*/ 0.044f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.281838f, \ - /*flLateReverbDelay*/ 0.024f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.2f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.996552f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_ALLEY \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.3f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.732825f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.86f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.250035f, \ - /*flReflectionsDelay*/ 0.007f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.995405f, \ - /*flLateReverbDelay*/ 0.011f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.125f, \ - /*flEchoDepth*/ 0.95f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_PARKINGLOT \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 1.f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.65f, \ - /*flDecayHFRatio*/ 1.5f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.208209f, \ - /*flReflectionsDelay*/ 0.008f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.265155f, \ - /*flLateReverbDelay*/ 0.012f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_SEWERPIPE \ - { \ - /*flDensity*/ 0.307063f, \ - /*flDiffusion*/ 0.8f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.316228f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 2.81f, \ - /*flDecayHFRatio*/ 0.14f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 1.6387f, \ - /*flReflectionsDelay*/ 0.014f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 3.24713f, \ - /*flLateReverbDelay*/ 0.021f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_BATHROOM \ - { \ - /*flDensity*/ 0.1715f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.251189f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.54f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.653131f, \ - /*flReflectionsDelay*/ 0.007f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 3.27341f, \ - /*flLateReverbDelay*/ 0.011f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_STONEROOM \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.707946f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 2.31f, \ - /*flDecayHFRatio*/ 0.64f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.441062f, \ - /*flReflectionsDelay*/ 0.012f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.10027f, \ - /*flLateReverbDelay*/ 0.017f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_DUSTYROOM \ - { \ - /*flDensity*/ 0.3645f, \ - /*flDiffusion*/ 0.56f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.794328f, \ - /*flGainLF*/ 0.707946f, \ - /*flDecayTime*/ 1.79f, \ - /*flDecayHFRatio*/ 0.38f, \ - /*flDecayLFRatio*/ 0.21f, \ - /*flReflectionsGain*/ 0.501187f, \ - /*flReflectionsDelay*/ 0.002f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.25893f, \ - /*flLateReverbDelay*/ 0.006f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.202f, \ - /*flEchoDepth*/ 0.05f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.988553f, \ - /*flHFReference*/ 13046.f, \ - /*flLFReference*/ 163.3f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_HALLWAY \ - { \ - /*flDensity*/ 0.3645f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.707946f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.59f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.245754f, \ - /*flReflectionsDelay*/ 0.007f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.6615f, \ - /*flLateReverbDelay*/ 0.011f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_CHAPEL \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.84f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.562341f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 4.62f, \ - /*flDecayHFRatio*/ 0.64f, \ - /*flDecayLFRatio*/ 1.23f, \ - /*flReflectionsGain*/ 0.446684f, \ - /*flReflectionsDelay*/ 0.032f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.794328f, \ - /*flLateReverbDelay*/ 0.049f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.11f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_AUDITORIUM \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.578096f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 4.32f, \ - /*flDecayHFRatio*/ 0.59f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.403181f, \ - /*flReflectionsDelay*/ 0.02f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.716968f, \ - /*flLateReverbDelay*/ 0.03f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_SPORT_GYMNASIUM \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.81f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.446684f, \ - /*flGainLF*/ 0.891251f, \ - /*flDecayTime*/ 3.14f, \ - /*flDecayHFRatio*/ 1.06f, \ - /*flDecayLFRatio*/ 1.35f, \ - /*flReflectionsGain*/ 0.398107f, \ - /*flReflectionsDelay*/ 0.029f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.562341f, \ - /*flLateReverbDelay*/ 0.045f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.146f, \ - /*flEchoDepth*/ 0.14f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 7176.9f, \ - /*flLFReference*/ 211.2f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_SPORT_EMPTYSTADIUM \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.446684f, \ - /*flGainLF*/ 0.794328f, \ - /*flDecayTime*/ 6.26f, \ - /*flDecayHFRatio*/ 0.51f, \ - /*flDecayLFRatio*/ 1.1f, \ - /*flReflectionsGain*/ 0.0630957f, \ - /*flReflectionsDelay*/ 0.183f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.398107f, \ - /*flLateReverbDelay*/ 0.038f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_ARENA \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.447713f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 7.24f, \ - /*flDecayHFRatio*/ 0.33f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.261216f, \ - /*flReflectionsDelay*/ 0.02f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.01859f, \ - /*flLateReverbDelay*/ 0.03f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_HANGAR \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.316228f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 10.05f, \ - /*flDecayHFRatio*/ 0.23f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.500035f, \ - /*flReflectionsDelay*/ 0.02f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.25603f, \ - /*flLateReverbDelay*/ 0.03f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_DRIVING_TUNNEL \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.81f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.398107f, \ - /*flGainLF*/ 0.891251f, \ - /*flDecayTime*/ 3.42f, \ - /*flDecayHFRatio*/ 0.94f, \ - /*flDecayLFRatio*/ 1.31f, \ - /*flReflectionsGain*/ 0.707946f, \ - /*flReflectionsDelay*/ 0.051f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.707946f, \ - /*flLateReverbDelay*/ 0.047f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.214f, \ - /*flEchoDepth*/ 0.05f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 155.3f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_MOUNTAINS \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.27f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.0562341f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.21f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.040738f, \ - /*flReflectionsDelay*/ 0.3f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.191867f, \ - /*flLateReverbDelay*/ 0.1f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 1.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_FOREST \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.3f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.0223872f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.54f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.0524807f, \ - /*flReflectionsDelay*/ 0.162f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 0.768245f, \ - /*flLateReverbDelay*/ 0.088f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.125f, \ - /*flEchoDepth*/ 1.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_UNDERWATER \ - { \ - /*flDensity*/ 0.3645f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.01f, \ - /*flGainLF*/ 1.f, \ - /*flDecayTime*/ 1.49f, \ - /*flDecayHFRatio*/ 0.1f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.596348f, \ - /*flReflectionsDelay*/ 0.007f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 7.07946f, \ - /*flLateReverbDelay*/ 0.011f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 1.18f, \ - /*flModulationDepth*/ 0.348f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_MOOD_HEAVEN \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.94f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.794328f, \ - /*flGainLF*/ 0.446684f, \ - /*flDecayTime*/ 5.04f, \ - /*flDecayHFRatio*/ 1.12f, \ - /*flDecayLFRatio*/ 0.56f, \ - /*flReflectionsGain*/ 0.242661f, \ - /*flReflectionsDelay*/ 0.02f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.25893f, \ - /*flLateReverbDelay*/ 0.029f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.08f, \ - /*flModulationTime*/ 2.742f, \ - /*flModulationDepth*/ 0.05f, \ - /*flAirAbsorptionGainHF*/ 0.9977f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_MOOD_HELL \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.57f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.354813f, \ - /*flGainLF*/ 0.446684f, \ - /*flDecayTime*/ 3.57f, \ - /*flDecayHFRatio*/ 0.49f, \ - /*flDecayLFRatio*/ 2.f, \ - /*flReflectionsGain*/ 0.f, \ - /*flReflectionsDelay*/ 0.02f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.41254f, \ - /*flLateReverbDelay*/ 0.03f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.11f, \ - /*flEchoDepth*/ 0.04f, \ - /*flModulationTime*/ 2.109f, \ - /*flModulationDepth*/ 0.52f, \ - /*flAirAbsorptionGainHF*/ 0.99426f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 139.5f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_MOOD_MEMORY \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 0.85f, \ - /*flGain*/ 0.316228f, \ - /*flGainHF*/ 0.630957f, \ - /*flGainLF*/ 0.354813f, \ - /*flDecayTime*/ 4.06f, \ - /*flDecayHFRatio*/ 0.82f, \ - /*flDecayLFRatio*/ 0.56f, \ - /*flReflectionsGain*/ 0.0398107f, \ - /*flReflectionsDelay*/ 0.f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.12202f, \ - /*flLateReverbDelay*/ 0.f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.474f, \ - /*flModulationDepth*/ 0.45f, \ - /*flAirAbsorptionGainHF*/ 0.988553f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 0 \ - } - -#define REVERB_PRESET_MIN \ - { \ - /*flDensity*/ 1.f, \ - /*flDiffusion*/ 1.f, \ - /*flGain*/ 0.32f, \ - /*flGainHF*/ 0.89f, \ - /*flGainLF*/ 0.f, \ - /*flDecayTime*/ 0.1f, \ - /*flDecayHFRatio*/ 0.83f, \ - /*flDecayLFRatio*/ 1.f, \ - /*flReflectionsGain*/ 0.05f, \ - /*flReflectionsDelay*/ 0.007f, \ - {\ - /*flReflectionsPan[0]*/ 0.f, \ - /*flReflectionsPan[1]*/ 0.f, \ - /*flReflectionsPan[2]*/ 0.f, \ - },\ - /*flLateReverbGain*/ 1.26f, \ - /*flLateReverbDelay*/ 0.011f, \ - {\ - /*flLateReverbPan[0]*/ 0.f, \ - /*flLateReverbPan[1]*/ 0.f, \ - /*flLateReverbPan[2]*/ 0.f, \ - },\ - /*flEchoTime*/ 0.25f, \ - /*flEchoDepth*/ 0.f, \ - /*flModulationTime*/ 0.25f, \ - /*flModulationDepth*/ 0.f, \ - /*flAirAbsorptionGainHF*/ 0.994f, \ - /*flHFReference*/ 5000.f, \ - /*flLFReference*/ 250.f, \ - /*flRoomRolloffFactor*/ 0.f, \ - /*iDecayHFLimit*/ 1, \ - } +#define REVERB_PRESET_CITY \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.5f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.398107f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.67f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.0730298f, \ + /*flReflectionsDelay*/ 0.007f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.142725f, \ + /*flLateReverbDelay*/ 0.011f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_CITY_SUBWAY \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.74f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.707946f, \ + /*flGainLF*/ 0.891251f, \ + /*flDecayTime*/ 3.01f, \ + /*flDecayHFRatio*/ 1.23f, \ + /*flDecayLFRatio*/ 0.91f, \ + /*flReflectionsGain*/ 0.707946f, \ + /*flReflectionsDelay*/ 0.046f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.25893f, \ + /*flLateReverbDelay*/ 0.028f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.125f, \ + /*flEchoDepth*/ 0.21f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_CITY_UNDERPASS \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.82f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.446684f, \ + /*flGainLF*/ 0.891251f, \ + /*flDecayTime*/ 3.57f, \ + /*flDecayHFRatio*/ 1.12f, \ + /*flDecayLFRatio*/ 0.91f, \ + /*flReflectionsGain*/ 0.398107f, \ + /*flReflectionsDelay*/ 0.059f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.891251f, \ + /*flLateReverbDelay*/ 0.037f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.14f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.991973f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_CITY_ABANDONED \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.69f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.794328f, \ + /*flGainLF*/ 0.891251f, \ + /*flDecayTime*/ 3.28f, \ + /*flDecayHFRatio*/ 1.17f, \ + /*flDecayLFRatio*/ 0.91f, \ + /*flReflectionsGain*/ 0.446684f, \ + /*flReflectionsDelay*/ 0.044f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.281838f, \ + /*flLateReverbDelay*/ 0.024f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.2f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.996552f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_ALLEY \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.3f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.732825f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.86f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.250035f, \ + /*flReflectionsDelay*/ 0.007f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.995405f, \ + /*flLateReverbDelay*/ 0.011f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.125f, \ + /*flEchoDepth*/ 0.95f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_PARKINGLOT \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 1.f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.65f, \ + /*flDecayHFRatio*/ 1.5f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.208209f, \ + /*flReflectionsDelay*/ 0.008f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.265155f, \ + /*flLateReverbDelay*/ 0.012f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_SEWERPIPE \ + { \ + /*flDensity*/ 0.307063f, \ + /*flDiffusion*/ 0.8f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.316228f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 2.81f, \ + /*flDecayHFRatio*/ 0.14f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 1.6387f, \ + /*flReflectionsDelay*/ 0.014f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 3.24713f, \ + /*flLateReverbDelay*/ 0.021f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_BATHROOM \ + { \ + /*flDensity*/ 0.1715f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.251189f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.54f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.653131f, \ + /*flReflectionsDelay*/ 0.007f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 3.27341f, \ + /*flLateReverbDelay*/ 0.011f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_STONEROOM \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.707946f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 2.31f, \ + /*flDecayHFRatio*/ 0.64f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.441062f, \ + /*flReflectionsDelay*/ 0.012f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.10027f, \ + /*flLateReverbDelay*/ 0.017f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_DUSTYROOM \ + { \ + /*flDensity*/ 0.3645f, \ + /*flDiffusion*/ 0.56f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.794328f, \ + /*flGainLF*/ 0.707946f, \ + /*flDecayTime*/ 1.79f, \ + /*flDecayHFRatio*/ 0.38f, \ + /*flDecayLFRatio*/ 0.21f, \ + /*flReflectionsGain*/ 0.501187f, \ + /*flReflectionsDelay*/ 0.002f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.25893f, \ + /*flLateReverbDelay*/ 0.006f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.202f, \ + /*flEchoDepth*/ 0.05f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.988553f, \ + /*flHFReference*/ 13046.f, \ + /*flLFReference*/ 163.3f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_HALLWAY \ + { \ + /*flDensity*/ 0.3645f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.707946f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.59f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.245754f, \ + /*flReflectionsDelay*/ 0.007f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.6615f, \ + /*flLateReverbDelay*/ 0.011f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_CHAPEL \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.84f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.562341f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 4.62f, \ + /*flDecayHFRatio*/ 0.64f, \ + /*flDecayLFRatio*/ 1.23f, \ + /*flReflectionsGain*/ 0.446684f, \ + /*flReflectionsDelay*/ 0.032f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.794328f, \ + /*flLateReverbDelay*/ 0.049f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.11f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_AUDITORIUM \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.578096f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 4.32f, \ + /*flDecayHFRatio*/ 0.59f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.403181f, \ + /*flReflectionsDelay*/ 0.02f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.716968f, \ + /*flLateReverbDelay*/ 0.03f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_SPORT_GYMNASIUM \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.81f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.446684f, \ + /*flGainLF*/ 0.891251f, \ + /*flDecayTime*/ 3.14f, \ + /*flDecayHFRatio*/ 1.06f, \ + /*flDecayLFRatio*/ 1.35f, \ + /*flReflectionsGain*/ 0.398107f, \ + /*flReflectionsDelay*/ 0.029f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.562341f, \ + /*flLateReverbDelay*/ 0.045f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.146f, \ + /*flEchoDepth*/ 0.14f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 7176.9f, \ + /*flLFReference*/ 211.2f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_SPORT_EMPTYSTADIUM \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.446684f, \ + /*flGainLF*/ 0.794328f, \ + /*flDecayTime*/ 6.26f, \ + /*flDecayHFRatio*/ 0.51f, \ + /*flDecayLFRatio*/ 1.1f, \ + /*flReflectionsGain*/ 0.0630957f, \ + /*flReflectionsDelay*/ 0.183f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.398107f, \ + /*flLateReverbDelay*/ 0.038f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_ARENA \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.447713f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 7.24f, \ + /*flDecayHFRatio*/ 0.33f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.261216f, \ + /*flReflectionsDelay*/ 0.02f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.01859f, \ + /*flLateReverbDelay*/ 0.03f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_HANGAR \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.316228f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 10.05f, \ + /*flDecayHFRatio*/ 0.23f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.500035f, \ + /*flReflectionsDelay*/ 0.02f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.25603f, \ + /*flLateReverbDelay*/ 0.03f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_DRIVING_TUNNEL \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.81f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.398107f, \ + /*flGainLF*/ 0.891251f, \ + /*flDecayTime*/ 3.42f, \ + /*flDecayHFRatio*/ 0.94f, \ + /*flDecayLFRatio*/ 1.31f, \ + /*flReflectionsGain*/ 0.707946f, \ + /*flReflectionsDelay*/ 0.051f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.707946f, \ + /*flLateReverbDelay*/ 0.047f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.214f, \ + /*flEchoDepth*/ 0.05f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 155.3f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_MOUNTAINS \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.27f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.0562341f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.21f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.040738f, \ + /*flReflectionsDelay*/ 0.3f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.191867f, \ + /*flLateReverbDelay*/ 0.1f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 1.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_FOREST \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.3f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.0223872f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.54f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.0524807f, \ + /*flReflectionsDelay*/ 0.162f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 0.768245f, \ + /*flLateReverbDelay*/ 0.088f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.125f, \ + /*flEchoDepth*/ 1.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_UNDERWATER \ + { \ + /*flDensity*/ 0.3645f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.01f, \ + /*flGainLF*/ 1.f, \ + /*flDecayTime*/ 1.49f, \ + /*flDecayHFRatio*/ 0.1f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.596348f, \ + /*flReflectionsDelay*/ 0.007f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 7.07946f, \ + /*flLateReverbDelay*/ 0.011f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 1.18f, \ + /*flModulationDepth*/ 0.348f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_MOOD_HEAVEN \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.94f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.794328f, \ + /*flGainLF*/ 0.446684f, \ + /*flDecayTime*/ 5.04f, \ + /*flDecayHFRatio*/ 1.12f, \ + /*flDecayLFRatio*/ 0.56f, \ + /*flReflectionsGain*/ 0.242661f, \ + /*flReflectionsDelay*/ 0.02f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.25893f, \ + /*flLateReverbDelay*/ 0.029f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.08f, \ + /*flModulationTime*/ 2.742f, \ + /*flModulationDepth*/ 0.05f, \ + /*flAirAbsorptionGainHF*/ 0.9977f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_MOOD_HELL \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.57f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.354813f, \ + /*flGainLF*/ 0.446684f, \ + /*flDecayTime*/ 3.57f, \ + /*flDecayHFRatio*/ 0.49f, \ + /*flDecayLFRatio*/ 2.f, \ + /*flReflectionsGain*/ 0.f, \ + /*flReflectionsDelay*/ 0.02f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.41254f, \ + /*flLateReverbDelay*/ 0.03f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.11f, \ + /*flEchoDepth*/ 0.04f, \ + /*flModulationTime*/ 2.109f, \ + /*flModulationDepth*/ 0.52f, \ + /*flAirAbsorptionGainHF*/ 0.99426f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 139.5f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_MOOD_MEMORY \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 0.85f, \ + /*flGain*/ 0.316228f, \ + /*flGainHF*/ 0.630957f, \ + /*flGainLF*/ 0.354813f, \ + /*flDecayTime*/ 4.06f, \ + /*flDecayHFRatio*/ 0.82f, \ + /*flDecayLFRatio*/ 0.56f, \ + /*flReflectionsGain*/ 0.0398107f, \ + /*flReflectionsDelay*/ 0.f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.12202f, \ + /*flLateReverbDelay*/ 0.f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.474f, \ + /*flModulationDepth*/ 0.45f, \ + /*flAirAbsorptionGainHF*/ 0.988553f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 0 \ + } + +#define REVERB_PRESET_MIN \ + { \ + /*flDensity*/ 1.f, \ + /*flDiffusion*/ 1.f, \ + /*flGain*/ 0.32f, \ + /*flGainHF*/ 0.89f, \ + /*flGainLF*/ 0.f, \ + /*flDecayTime*/ 0.1f, \ + /*flDecayHFRatio*/ 0.83f, \ + /*flDecayLFRatio*/ 1.f, \ + /*flReflectionsGain*/ 0.05f, \ + /*flReflectionsDelay*/ 0.007f, \ + {\ + /*flReflectionsPan[0]*/ 0.f, \ + /*flReflectionsPan[1]*/ 0.f, \ + /*flReflectionsPan[2]*/ 0.f, \ + },\ + /*flLateReverbGain*/ 1.26f, \ + /*flLateReverbDelay*/ 0.011f, \ + {\ + /*flLateReverbPan[0]*/ 0.f, \ + /*flLateReverbPan[1]*/ 0.f, \ + /*flLateReverbPan[2]*/ 0.f, \ + },\ + /*flEchoTime*/ 0.25f, \ + /*flEchoDepth*/ 0.f, \ + /*flModulationTime*/ 0.25f, \ + /*flModulationDepth*/ 0.f, \ + /*flAirAbsorptionGainHF*/ 0.994f, \ + /*flHFReference*/ 5000.f, \ + /*flLFReference*/ 250.f, \ + /*flRoomRolloffFactor*/ 0.f, \ + /*iDecayHFLimit*/ 1, \ + }