aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2013-12-29 02:40:12 -0800
committerChris Robinson <[email protected]>2013-12-29 02:40:12 -0800
commitdeecbbc55d44a0043c92464949c83c9722d6be00 (patch)
treec00c75c006cce9167ecefe32fe9fa67cd59e8da6 /OpenAL32
parentd9aedc14167c7f5c4fc02f95de6be89ef8db63c2 (diff)
Add modulation envelope properties
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alMain.h8
-rw-r--r--OpenAL32/Include/alMidi.h10
-rw-r--r--OpenAL32/alFontsound.c72
3 files changed, 76 insertions, 14 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h
index 4c980b96..dc9cff60 100644
--- a/OpenAL32/Include/alMain.h
+++ b/OpenAL32/Include/alMain.h
@@ -51,6 +51,14 @@
#define AL_MOD_LFO_TO_PITCH_SOFT 0x0005
#define AL_VIBRATO_LFO_TO_PITCH_SOFT 0x0006
#define AL_MOD_ENV_TO_PITCH_SOFT 0x0007
+#define AL_MOD_ENV_DELAYTIME_SOFT 0x0019
+#define AL_MOD_ENV_ATTACKTIME_SOFT 0x001A
+#define AL_MOD_ENV_HOLDTIME_SOFT 0x001B
+#define AL_MOD_ENV_DECAYTIME_SOFT 0x001C
+#define AL_MOD_ENV_SUSTAINVOLUME_SOFT 0x001D
+#define AL_MOD_ENV_RELEASETIME_SOFT 0x002E
+#define AL_MOD_ENV_KEY_TO_HOLDTIME_SOFT 0x001F
+#define AL_MOD_ENV_KEY_TO_DECAYTIME_SOFT 0x0020
#define AL_VOLUME_ENV_DELAYTIME_SOFT 0x0021
#define AL_VOLUME_ENV_ATTACKTIME_SOFT 0x0022
#define AL_VOLUME_ENV_HOLDTIME_SOFT 0x0023
diff --git a/OpenAL32/Include/alMidi.h b/OpenAL32/Include/alMidi.h
index 8daeaf53..acf6bf1a 100644
--- a/OpenAL32/Include/alMidi.h
+++ b/OpenAL32/Include/alMidi.h
@@ -36,6 +36,16 @@ typedef struct ALfontsound {
ALint ReleaseTime;
ALint KeyToHoldTime;
ALint KeyToDecayTime;
+ } ModEnv;
+ struct {
+ ALint DelayTime;
+ ALint AttackTime;
+ ALint HoldTime;
+ ALint DecayTime;
+ ALint SustainVol;
+ ALint ReleaseTime;
+ ALint KeyToHoldTime;
+ ALint KeyToDecayTime;
} VolEnv;
ALuint Start;
diff --git a/OpenAL32/alFontsound.c b/OpenAL32/alFontsound.c
index e6abf677..6bbcaa72 100644
--- a/OpenAL32/alFontsound.c
+++ b/OpenAL32/alFontsound.c
@@ -142,34 +142,52 @@ AL_API void AL_APIENTRY alFontsoundiSOFT(ALuint id, ALenum param, ALint value)
sound->ModEnvToPitch = value;
break;
+ case AL_MOD_ENV_DELAYTIME_SOFT:
+ sound->ModEnv.DelayTime = value;
+ break;
+ case AL_MOD_ENV_ATTACKTIME_SOFT:
+ sound->ModEnv.AttackTime = value;
+ break;
+ case AL_MOD_ENV_HOLDTIME_SOFT:
+ sound->ModEnv.HoldTime = value;
+ break;
+ case AL_MOD_ENV_DECAYTIME_SOFT:
+ sound->ModEnv.DecayTime = value;
+ break;
+ case AL_MOD_ENV_SUSTAINVOLUME_SOFT:
+ sound->ModEnv.SustainVol = value;
+ break;
+ case AL_MOD_ENV_RELEASETIME_SOFT:
+ sound->ModEnv.ReleaseTime = value;
+ break;
+ case AL_MOD_ENV_KEY_TO_HOLDTIME_SOFT:
+ sound->ModEnv.KeyToHoldTime = value;
+ break;
+ case AL_MOD_ENV_KEY_TO_DECAYTIME_SOFT:
+ sound->ModEnv.KeyToDecayTime = value;
+ break;
+
case AL_VOLUME_ENV_DELAYTIME_SOFT:
sound->VolEnv.DelayTime = value;
break;
-
case AL_VOLUME_ENV_ATTACKTIME_SOFT:
sound->VolEnv.AttackTime = value;
break;
-
case AL_VOLUME_ENV_HOLDTIME_SOFT:
sound->VolEnv.HoldTime = value;
break;
-
case AL_VOLUME_ENV_DECAYTIME_SOFT:
sound->VolEnv.DecayTime = value;
break;
-
case AL_VOLUME_ENV_SUSTAINVOLUME_SOFT:
sound->VolEnv.SustainVol = value;
break;
-
case AL_VOLUME_ENV_RELEASETIME_SOFT:
sound->VolEnv.ReleaseTime = value;
break;
-
case AL_VOLUME_ENV_KEY_TO_HOLDTIME_SOFT:
sound->VolEnv.KeyToHoldTime = value;
break;
-
case AL_VOLUME_ENV_KEY_TO_DECAYTIME_SOFT:
sound->VolEnv.KeyToDecayTime = value;
break;
@@ -297,6 +315,14 @@ AL_API void AL_APIENTRY alFontsoundivSOFT(ALuint id, ALenum param, const ALint *
case AL_MOD_LFO_TO_PITCH_SOFT:
case AL_VIBRATO_LFO_TO_PITCH_SOFT:
case AL_MOD_ENV_TO_PITCH_SOFT:
+ case AL_MOD_ENV_DELAYTIME_SOFT:
+ case AL_MOD_ENV_ATTACKTIME_SOFT:
+ case AL_MOD_ENV_HOLDTIME_SOFT:
+ case AL_MOD_ENV_DECAYTIME_SOFT:
+ case AL_MOD_ENV_SUSTAINVOLUME_SOFT:
+ case AL_MOD_ENV_RELEASETIME_SOFT:
+ case AL_MOD_ENV_KEY_TO_HOLDTIME_SOFT:
+ case AL_MOD_ENV_KEY_TO_DECAYTIME_SOFT:
case AL_VOLUME_ENV_DELAYTIME_SOFT:
case AL_VOLUME_ENV_ATTACKTIME_SOFT:
case AL_VOLUME_ENV_HOLDTIME_SOFT:
@@ -363,34 +389,52 @@ AL_API void AL_APIENTRY alGetFontsoundivSOFT(ALuint id, ALenum param, ALint *val
values[0] = sound->ModEnvToPitch;
break;
+ case AL_MOD_ENV_DELAYTIME_SOFT:
+ values[0] = sound->ModEnv.DelayTime;
+ break;
+ case AL_MOD_ENV_ATTACKTIME_SOFT:
+ values[0] = sound->ModEnv.AttackTime;
+ break;
+ case AL_MOD_ENV_HOLDTIME_SOFT:
+ values[0] = sound->ModEnv.HoldTime;
+ break;
+ case AL_MOD_ENV_DECAYTIME_SOFT:
+ values[0] = sound->ModEnv.DecayTime;
+ break;
+ case AL_MOD_ENV_SUSTAINVOLUME_SOFT:
+ values[0] = sound->ModEnv.SustainVol;
+ break;
+ case AL_MOD_ENV_RELEASETIME_SOFT:
+ values[0] = sound->ModEnv.ReleaseTime;
+ break;
+ case AL_MOD_ENV_KEY_TO_HOLDTIME_SOFT:
+ values[0] = sound->ModEnv.KeyToHoldTime;
+ break;
+ case AL_MOD_ENV_KEY_TO_DECAYTIME_SOFT:
+ values[0] = sound->ModEnv.KeyToDecayTime;
+ break;
+
case AL_VOLUME_ENV_DELAYTIME_SOFT:
values[0] = sound->VolEnv.DelayTime;
break;
-
case AL_VOLUME_ENV_ATTACKTIME_SOFT:
values[0] = sound->VolEnv.AttackTime;
break;
-
case AL_VOLUME_ENV_HOLDTIME_SOFT:
values[0] = sound->VolEnv.HoldTime;
break;
-
case AL_VOLUME_ENV_DECAYTIME_SOFT:
values[0] = sound->VolEnv.DecayTime;
break;
-
case AL_VOLUME_ENV_SUSTAINVOLUME_SOFT:
values[0] = sound->VolEnv.SustainVol;
break;
-
case AL_VOLUME_ENV_RELEASETIME_SOFT:
values[0] = sound->VolEnv.ReleaseTime;
break;
-
case AL_VOLUME_ENV_KEY_TO_HOLDTIME_SOFT:
values[0] = sound->VolEnv.KeyToHoldTime;
break;
-
case AL_VOLUME_ENV_KEY_TO_DECAYTIME_SOFT:
values[0] = sound->VolEnv.KeyToDecayTime;
break;