From 3fd0f23e48fc71718f438e035ffb09d4ba9a47a3 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Wed, 13 Mar 2013 23:31:12 -0700 Subject: Add Chorus and Flanger effects Code provided by Mike Gorchak --- OpenAL32/alEffect.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'OpenAL32/alEffect.c') diff --git a/OpenAL32/alEffect.c b/OpenAL32/alEffect.c index 2c684626..07bbaa8e 100644 --- a/OpenAL32/alEffect.c +++ b/OpenAL32/alEffect.c @@ -470,6 +470,40 @@ static void InitEffectParams(ALeffect *effect, ALenum type) effect->GetParamf = ded_GetParamf; effect->GetParamfv = ded_GetParamfv; break; + case AL_EFFECT_CHORUS: + effect->Chorus.Waveform = AL_CHORUS_DEFAULT_WAVEFORM; + effect->Chorus.Phase = AL_CHORUS_DEFAULT_PHASE; + effect->Chorus.Rate = AL_CHORUS_MAX_RATE; + effect->Chorus.Depth = AL_CHORUS_DEFAULT_DEPTH; + effect->Chorus.Feedback = AL_CHORUS_DEFAULT_FEEDBACK; + effect->Chorus.Delay = AL_CHORUS_DEFAULT_DELAY; + + effect->SetParami = chorus_SetParami; + effect->SetParamiv = chorus_SetParamiv; + effect->SetParamf = chorus_SetParamf; + effect->SetParamfv = chorus_SetParamfv; + effect->GetParami = chorus_GetParami; + effect->GetParamiv = chorus_GetParamiv; + effect->GetParamf = chorus_GetParamf; + effect->GetParamfv = chorus_GetParamfv; + break; + case AL_EFFECT_FLANGER: + effect->Flanger.Waveform = AL_FLANGER_DEFAULT_WAVEFORM; + effect->Flanger.Phase = AL_FLANGER_DEFAULT_PHASE; + effect->Flanger.Rate = AL_FLANGER_MAX_RATE; + effect->Flanger.Depth = AL_FLANGER_DEFAULT_DEPTH; + effect->Flanger.Feedback = AL_FLANGER_DEFAULT_FEEDBACK; + effect->Flanger.Delay = AL_FLANGER_DEFAULT_DELAY; + + effect->SetParami = flanger_SetParami; + effect->SetParamiv = flanger_SetParamiv; + effect->SetParamf = flanger_SetParamf; + effect->SetParamfv = flanger_SetParamfv; + effect->GetParami = flanger_GetParami; + effect->GetParamiv = flanger_GetParamiv; + effect->GetParamf = flanger_GetParamf; + effect->GetParamfv = flanger_GetParamfv; + break; default: effect->SetParami = null_SetParami; effect->SetParamiv = null_SetParamiv; -- cgit v1.2.3