aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/mixer_defs.h
diff options
context:
space:
mode:
authorChris Robinson <chris.kcat@gmail.com>2016-08-12 05:26:36 -0700
committerChris Robinson <chris.kcat@gmail.com>2016-08-12 05:26:36 -0700
commit770e2ff7ed516a41721d6cde931b3cefc07c190e (patch)
treece6d59d89039aba7339575e5bb0783032289e401 /Alc/mixer_defs.h
parentc6c6e3324dd9d5d864b6146ca7a6c6e6369978a6 (diff)
Use a more specialized mixer function for B-Format to HRTF
Diffstat (limited to 'Alc/mixer_defs.h')
-rw-r--r--Alc/mixer_defs.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/Alc/mixer_defs.h b/Alc/mixer_defs.h
index 8b934c58..be88379b 100644
--- a/Alc/mixer_defs.h
+++ b/Alc/mixer_defs.h
@@ -25,6 +25,10 @@ void MixHrtf_C(ALfloat (*restrict OutBuffer)[BUFFERSIZE], ALuint lidx, ALuint ri
const ALfloat *data, ALuint Counter, ALuint Offset, ALuint OutPos,
const ALuint IrSize, const struct MixHrtfParams *hrtfparams,
struct HrtfState *hrtfstate, ALuint BufferSize);
+void MixDirectHrtf_C(ALfloat (*restrict OutBuffer)[BUFFERSIZE], ALuint lidx, ALuint ridx,
+ const ALfloat *data, ALuint Offset, const ALuint IrSize,
+ ALfloat (*restrict Coeffs)[2], ALfloat (*restrict Values)[2],
+ ALuint BufferSize);
void Mix_C(const ALfloat *data, ALuint OutChans, ALfloat (*restrict OutBuffer)[BUFFERSIZE],
struct MixGains *Gains, ALuint Counter, ALuint OutPos, ALuint BufferSize);
void MixRow_C(ALfloat *OutBuffer, const ALfloat *Mtx, ALfloat (*restrict data)[BUFFERSIZE],
@@ -35,6 +39,10 @@ void MixHrtf_SSE(ALfloat (*restrict OutBuffer)[BUFFERSIZE], ALuint lidx, ALuint
const ALfloat *data, ALuint Counter, ALuint Offset, ALuint OutPos,
const ALuint IrSize, const struct MixHrtfParams *hrtfparams,
struct HrtfState *hrtfstate, ALuint BufferSize);
+void MixDirectHrtf_SSE(ALfloat (*restrict OutBuffer)[BUFFERSIZE], ALuint lidx, ALuint ridx,
+ const ALfloat *data, ALuint Offset, const ALuint IrSize,
+ ALfloat (*restrict Coeffs)[2], ALfloat (*restrict Values)[2],
+ ALuint BufferSize);
void Mix_SSE(const ALfloat *data, ALuint OutChans, ALfloat (*restrict OutBuffer)[BUFFERSIZE],
struct MixGains *Gains, ALuint Counter, ALuint OutPos, ALuint BufferSize);
void MixRow_SSE(ALfloat *OutBuffer, const ALfloat *Mtx, ALfloat (*restrict data)[BUFFERSIZE],
@@ -78,6 +86,10 @@ void MixHrtf_Neon(ALfloat (*restrict OutBuffer)[BUFFERSIZE], ALuint lidx, ALuint
const ALfloat *data, ALuint Counter, ALuint Offset, ALuint OutPos,
const ALuint IrSize, const struct MixHrtfParams *hrtfparams,
struct HrtfState *hrtfstate, ALuint BufferSize);
+void MixDirectHrtf_Neon(ALfloat (*restrict OutBuffer)[BUFFERSIZE], ALuint lidx, ALuint ridx,
+ const ALfloat *data, ALuint Offset, const ALuint IrSize,
+ ALfloat (*restrict Coeffs)[2], ALfloat (*restrict Values)[2],
+ ALuint BufferSize);
void Mix_Neon(const ALfloat *data, ALuint OutChans, ALfloat (*restrict OutBuffer)[BUFFERSIZE],
struct MixGains *Gains, ALuint Counter, ALuint OutPos, ALuint BufferSize);
void MixRow_Neon(ALfloat *OutBuffer, const ALfloat *Mtx, ALfloat (*restrict data)[BUFFERSIZE],