From 6fd23f09842b81788298e1840b8626252fdf5e18 Mon Sep 17 00:00:00 2001 From: Raulshc <33253777+Raulshc@users.noreply.github.com> Date: Sun, 18 Mar 2018 17:47:17 +0100 Subject: EFX:Pitch Shifter implementation Add pitch shifter effect using standard phase vocoder, based on work of Stephan Bernsee. Only mono signal processing by now. --- OpenAL32/Include/alEffect.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'OpenAL32/Include/alEffect.h') diff --git a/OpenAL32/Include/alEffect.h b/OpenAL32/Include/alEffect.h index 95fa035e..50b64ee1 100644 --- a/OpenAL32/Include/alEffect.h +++ b/OpenAL32/Include/alEffect.h @@ -19,6 +19,7 @@ enum { EQUALIZER_EFFECT, FLANGER_EFFECT, MODULATOR_EFFECT, + PSHIFTER_EFFECT, DEDICATED_EFFECT, MAX_EFFECTS @@ -32,7 +33,7 @@ struct EffectList { int type; ALenum val; }; -#define EFFECTLIST_SIZE 11 +#define EFFECTLIST_SIZE 12 extern const struct EffectList EffectList[EFFECTLIST_SIZE]; @@ -66,6 +67,7 @@ extern const struct ALeffectVtable ALequalizer_vtable; extern const struct ALeffectVtable ALflanger_vtable; extern const struct ALeffectVtable ALmodulator_vtable; extern const struct ALeffectVtable ALnull_vtable; +extern const struct ALeffectVtable ALpshifter_vtable; extern const struct ALeffectVtable ALdedicated_vtable; @@ -149,6 +151,11 @@ typedef union ALeffectProps { ALint Waveform; } Modulator; + struct { + ALint CoarseTune; + ALint FineTune; + } Pshifter; + struct { ALfloat Gain; } Dedicated; -- cgit v1.2.3