diff options
Diffstat (limited to 'Alc/mixer.c')
-rw-r--r-- | Alc/mixer.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Alc/mixer.c b/Alc/mixer.c index 3f80434e..ae049ac8 100644 --- a/Alc/mixer.c +++ b/Alc/mixer.c @@ -192,6 +192,7 @@ ALvoid MixSource(ALvoice *voice, ALsource *Source, ALCdevice *Device, ALuint Sam ALuint NumChannels; ALuint SampleSize; ALint64 DataSize64; + ALuint IrSize; ALuint chan, j; /* Get source info */ @@ -217,6 +218,8 @@ ALvoid MixSource(ALvoice *voice, ALsource *Source, ALCdevice *Device, ALuint Sam BufferListItem = BufferListItem->next; } + IrSize = (Device->Hrtf ? GetHrtfIrSize(Device->Hrtf) : 0); + Mix = SelectMixer(); HrtfMix = SelectHrtfMixer(); Resample = ((increment == FRACTIONONE && DataPosFrac == 0) ? @@ -436,7 +439,7 @@ ALvoid MixSource(ALvoice *voice, ALsource *Source, ALCdevice *Device, ALuint Sam parms->Counter, OutPos, DstBufferSize); else HrtfMix(parms->OutBuffer, samples, parms->Counter, voice->Offset, - OutPos, parms->Hrtf.IrSize, &parms->Hrtf.Params[chan], + OutPos, IrSize, &parms->Hrtf.Params[chan], &parms->Hrtf.State[chan], DstBufferSize); } |