aboutsummaryrefslogtreecommitdiffstats
path: root/core/voice.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/voice.cpp')
-rw-r--r--core/voice.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/core/voice.cpp b/core/voice.cpp
index 1b979614..5fa9f677 100644
--- a/core/voice.cpp
+++ b/core/voice.cpp
@@ -84,6 +84,19 @@ inline MixerOutFunc SelectMixer()
return Mix_<CTag>;
}
+inline MixerOneFunc SelectMixerOne()
+{
+#ifdef HAVE_NEON
+ if((CPUCapFlags&CPU_CAP_NEON))
+ return Mix_<NEONTag>;
+#endif
+#ifdef HAVE_SSE
+ if((CPUCapFlags&CPU_CAP_SSE))
+ return Mix_<SSETag>;
+#endif
+ return Mix_<CTag>;
+}
+
inline HrtfMixerFunc SelectHrtfMixer()
{
#ifdef HAVE_NEON
@@ -153,6 +166,7 @@ void Voice::InitMixer(al::optional<std::string> resampler)
}
MixSamplesOut = SelectMixer();
+ MixSamplesOne = SelectMixerOne();
MixHrtfBlendSamples = SelectHrtfBlendMixer();
MixHrtfSamples = SelectHrtfMixer();
}