Android上的傅立叶变换

时间:2011-09-01 10:29:07

标签: android api fft

是否有任何Android的API,使用。来实现傅立叶变换 设备的DSP?或者是否有任何API允许使用设备的DSP?

感谢。

4 个答案:

答案 0 :(得分:3)

不,没有用于执行硬件加速FFT的公共API。

您可以通过定位armeabi-v7a ABI来优化本机代码,以便使用FPU。这对浮点FFT非常有用。

请参阅Android NDK的文档/目录中的CPU-ARCH-ABIS

答案 1 :(得分:2)

对不起,这有点晚了,但是如果你想在Android中计算真实或复数的傅里叶变换,你最好使用jTransfrom或libgdx.FFT。 libgdx使用KissFFT后端,不太清楚jTransform使用什么。

查看有关如何实现libgdx的示例:

http://www.digiphd.com/android-java-simple-fft-libgdx/

希望这有帮助。

答案 2 :(得分:1)

首先,并非所有设备都有DSP。实际上大多数都只有CPU和GPU。

截至今天,如果没有自定义ROM /固件,您可能无法真正做到您想要的。好消息是他们正在努力。查看从Honeycomb开始提供的Renderscript。它目前只在CPU上运行(虽然它可以使用多个内核),但计划是为了允许在GPU(也可能是DSP)上执行的未来版本,您的代码几乎不需要更改。有关详细信息,请参阅this post

答案 3 :(得分:0)

据说Visualiyer能够从音频播放中导出FFT:

http://developer.android.com/reference/android/media/audiofx/Visualizer.html

但肯定不是你喜欢的。