summaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2009-04-11 17:04:55 -0700
committerChris Robinson <[email protected]>2009-04-11 17:04:55 -0700
commit1c540181116a875f708890bc9c380b71cd1fd6ba (patch)
tree1b971f21c0c5e50901cd1663d50b0af278730ab3 /OpenAL32
parente80e1b6d9f4c31521dd3e6437280c851ea94d82e (diff)
Move the WetBuffer into the effect slot object
This should make it easier to support multiple slots
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alAuxEffectSlot.h2
-rw-r--r--OpenAL32/Include/alu.h2
-rw-r--r--OpenAL32/alAuxEffectSlot.c4
3 files changed, 7 insertions, 1 deletions
diff --git a/OpenAL32/Include/alAuxEffectSlot.h b/OpenAL32/Include/alAuxEffectSlot.h
index cc5b9d34..a818bb47 100644
--- a/OpenAL32/Include/alAuxEffectSlot.h
+++ b/OpenAL32/Include/alAuxEffectSlot.h
@@ -25,6 +25,8 @@ typedef struct ALeffectslot
ALverbState *ReverbState;
+ ALfloat WetBuffer[BUFFERSIZE];
+
ALuint refcount;
// Index to itself
diff --git a/OpenAL32/Include/alu.h b/OpenAL32/Include/alu.h
index 913b0a51..7c6e95b7 100644
--- a/OpenAL32/Include/alu.h
+++ b/OpenAL32/Include/alu.h
@@ -22,6 +22,8 @@ enum {
OUTPUTCHANNELS
};
+#define BUFFERSIZE 24000
+
extern ALboolean DuplicateStereo;
__inline ALuint aluBytesFromFormat(ALenum format);
diff --git a/OpenAL32/alAuxEffectSlot.c b/OpenAL32/alAuxEffectSlot.c
index dd524f02..65db34b3 100644
--- a/OpenAL32/alAuxEffectSlot.c
+++ b/OpenAL32/alAuxEffectSlot.c
@@ -38,7 +38,7 @@ static ALvoid InitializeEffect(ALCcontext *Context, ALeffectslot *ALEffectSlot,
ALvoid AL_APIENTRY alGenAuxiliaryEffectSlots(ALsizei n, ALuint *effectslots)
{
ALCcontext *Context;
- ALsizei i;
+ ALsizei i, j;
Context = alcGetCurrentContext();
if(!Context)
@@ -74,6 +74,8 @@ ALvoid AL_APIENTRY alGenAuxiliaryEffectSlots(ALsizei n, ALuint *effectslots)
(*list)->Gain = 1.0;
(*list)->AuxSendAuto = AL_TRUE;
+ for(j = 0;j < BUFFERSIZE;j++)
+ (*list)->WetBuffer[j] = 0.0f;
(*list)->refcount = 0;
effectslots[i] = (ALuint)ALTHUNK_ADDENTRY(*list);