diff options
author | Chris Robinson <[email protected]> | 2013-05-27 21:57:22 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2013-05-27 21:57:22 -0700 |
commit | 6556626055e9985251ebd782c8551839e6d67ac5 (patch) | |
tree | 49d8aa79dc8fc024fb7adc2abf5b61cced2f2fa6 /Alc/effects | |
parent | 59a38442acd9290f9bc95258bfcd854ad422c305 (diff) |
Simplify and fix some filter gain calculations
Diffstat (limited to 'Alc/effects')
-rw-r--r-- | Alc/effects/equalizer.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/Alc/effects/equalizer.c b/Alc/effects/equalizer.c index 9a1543e4..0a26cda7 100644 --- a/Alc/effects/equalizer.c +++ b/Alc/effects/equalizer.c @@ -123,27 +123,27 @@ static ALvoid ALequalizerState_Update(ALequalizerState *state, ALCdevice *device ALfloat gain; /* convert linear gains to filter gains */ - switch (it) + switch(it) { case 0: /* Low Shelf */ - gain = powf(10.0f, (20.0f * log10f(slot->EffectProps.Equalizer.LowGain)) / 40.0f); + gain = sqrtf(slot->EffectProps.Equalizer.LowGain); filter_frequency = slot->EffectProps.Equalizer.LowCutoff; type = ALfilterType_LowShelf; break; case 1: /* Peaking */ - gain = powf(10.0f, (20.0f * log10f(slot->EffectProps.Equalizer.Mid1Gain)) / 40.0f); + gain = sqrtf(slot->EffectProps.Equalizer.Mid1Gain); filter_frequency = slot->EffectProps.Equalizer.Mid1Center; bandwidth = slot->EffectProps.Equalizer.Mid1Width; type = ALfilterType_Peaking; break; case 2: /* Peaking */ - gain = powf(10.0f, (20.0f * log10f(slot->EffectProps.Equalizer.Mid2Gain)) / 40.0f); + gain = sqrtf(slot->EffectProps.Equalizer.Mid2Gain); filter_frequency = slot->EffectProps.Equalizer.Mid2Center; bandwidth = slot->EffectProps.Equalizer.Mid2Width; type = ALfilterType_Peaking; break; case 3: /* High Shelf */ - gain = powf(10.0f, (20.0f * log10f(slot->EffectProps.Equalizer.HighGain)) / 40.0f); + gain = sqrtf(slot->EffectProps.Equalizer.HighGain); filter_frequency = slot->EffectProps.Equalizer.HighCutoff; type = ALfilterType_HighShelf; break; |