diff options
author | Chris Robinson <[email protected]> | 2019-11-03 00:30:33 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2019-11-03 00:30:33 -0700 |
commit | d2608e4bde41b3005a06346bea99bbe06404ef22 (patch) | |
tree | b57b085c64bff88056b07437c41ddf6e09d7d9de /alc/mixer/defs.h | |
parent | 2741a94e58ed2f9a17d05fd2499e1a3ea4ac43e8 (diff) |
Avoid holding HRTF accumulation samples per-source
It notably simplifies things to mix HRTF sources into an accumulation buffer
together, which the Dry buffer's Ambisonic-to-HRTF decode is then added to,
before being mixed to the Real output.
Diffstat (limited to 'alc/mixer/defs.h')
-rw-r--r-- | alc/mixer/defs.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/alc/mixer/defs.h b/alc/mixer/defs.h index b2535265..1e5b40d8 100644 --- a/alc/mixer/defs.h +++ b/alc/mixer/defs.h @@ -41,13 +41,11 @@ void MixRow_(const al::span<float> OutBuffer, const al::span<const float> Gains, const float *InSamples, const size_t InStride); template<InstSetType InstTag> -void MixHrtf_(FloatBufferLine &LeftOut, FloatBufferLine &RightOut, const float *InSamples, - float2 *AccumSamples, const size_t OutPos, const ALuint IrSize, MixHrtfFilter *hrtfparams, - const size_t BufferSize); +void MixHrtf_(const float *InSamples, float2 *AccumSamples, const ALuint IrSize, + MixHrtfFilter *hrtfparams, const size_t BufferSize); template<InstSetType InstTag> -void MixHrtfBlend_(FloatBufferLine &LeftOut, FloatBufferLine &RightOut, const float *InSamples, - float2 *AccumSamples, const size_t OutPos, const ALuint IrSize, const HrtfFilter *oldparams, - MixHrtfFilter *newparams, const size_t BufferSize); +void MixHrtfBlend_(const float *InSamples, float2 *AccumSamples, const ALuint IrSize, + const HrtfFilter *oldparams, MixHrtfFilter *newparams, const size_t BufferSize); template<InstSetType InstTag> void MixDirectHrtf_(FloatBufferLine &LeftOut, FloatBufferLine &RightOut, const al::span<const FloatBufferLine> InSamples, float2 *AccumSamples, DirectHrtfState *State, |