summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/audio/FFTFrame.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/platform/audio/FFTFrame.h')
-rw-r--r--WebCore/platform/audio/FFTFrame.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/WebCore/platform/audio/FFTFrame.h b/WebCore/platform/audio/FFTFrame.h
index 6147fc1..1a82ef0 100644
--- a/WebCore/platform/audio/FFTFrame.h
+++ b/WebCore/platform/audio/FFTFrame.h
@@ -35,6 +35,10 @@
#include <Accelerate/Accelerate.h>
#endif
+#if !OS(DARWIN) && USE(WEBAUDIO_MKL)
+#include "mkl_dfti.h"
+#endif
+
#include <wtf/PassOwnPtr.h>
#include <wtf/Platform.h>
@@ -95,6 +99,23 @@ private:
AudioFloatArray m_realData;
AudioFloatArray m_imagData;
#endif // OS(DARWIN)
+#if !OS(DARWIN) && USE(WEBAUDIO_MKL)
+ // Interleaves the planar real and imaginary data and returns a
+ // pointer to the resulting storage which can be used for in-place
+ // or out-of-place operations. FIXME: ideally all of the MKL
+ // routines would operate on planar data and this method would be
+ // removed.
+ float* getUpToDateComplexData();
+
+ static DFTI_DESCRIPTOR_HANDLE descriptorHandleForSize(unsigned fftSize);
+
+ static DFTI_DESCRIPTOR_HANDLE* descriptorHandles;
+
+ DFTI_DESCRIPTOR_HANDLE m_handle;
+ AudioFloatArray m_complexData;
+ AudioFloatArray m_realData;
+ AudioFloatArray m_imagData;
+#endif // !OS(DARWIN) && USE(WEBAUDIO_MKL)
};
} // namespace WebCore