aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32/Include/alEffect.h
diff options
context:
space:
mode:
authorRaulshc <[email protected]>2018-05-20 17:23:03 +0200
committerGitHub <[email protected]>2018-05-20 17:23:03 +0200
commitd3a81f4f28484b246084a5ec5cac5619adcfa819 (patch)
tree9b32b8f2815b390f2da3ebe6cc3af0c67b109046 /OpenAL32/Include/alEffect.h
parentdd51ba396babac675846f14d9159e32c1c864cb8 (diff)
EFX: Frequency Shifter implementation
Add frequency shifter effect using discrete Hilbert transform. Only mono signal processing by now (LEFT_DIRECTION).
Diffstat (limited to 'OpenAL32/Include/alEffect.h')
-rw-r--r--OpenAL32/Include/alEffect.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/OpenAL32/Include/alEffect.h b/OpenAL32/Include/alEffect.h
index 50b64ee1..206c495b 100644
--- a/OpenAL32/Include/alEffect.h
+++ b/OpenAL32/Include/alEffect.h
@@ -18,6 +18,7 @@ enum {
ECHO_EFFECT,
EQUALIZER_EFFECT,
FLANGER_EFFECT,
+ FSHIFTER_EFFECT,
MODULATOR_EFFECT,
PSHIFTER_EFFECT,
DEDICATED_EFFECT,
@@ -33,7 +34,7 @@ struct EffectList {
int type;
ALenum val;
};
-#define EFFECTLIST_SIZE 12
+#define EFFECTLIST_SIZE 13
extern const struct EffectList EffectList[EFFECTLIST_SIZE];
@@ -65,6 +66,7 @@ extern const struct ALeffectVtable ALdistortion_vtable;
extern const struct ALeffectVtable ALecho_vtable;
extern const struct ALeffectVtable ALequalizer_vtable;
extern const struct ALeffectVtable ALflanger_vtable;
+extern const struct ALeffectVtable ALfshifter_vtable;
extern const struct ALeffectVtable ALmodulator_vtable;
extern const struct ALeffectVtable ALnull_vtable;
extern const struct ALeffectVtable ALpshifter_vtable;
@@ -145,6 +147,12 @@ typedef union ALeffectProps {
ALfloat HighGain;
} Equalizer;
+ struct {
+ ALfloat Frequency;
+ ALint Left_direction;
+ ALint Right_direction;
+ } Fshifter;
+
struct {
ALfloat Frequency;
ALfloat HighPassCutoff;