使用Java中的傅立叶变换处理音频数据

我正在尝试处理音频数据。 我正在使用Java。 我已将音频数据提取到数组中。 现在我应该将N个数据样本传递给计算离散傅立叶变换(或快速傅里叶变换,这样更有效)的函数。 我读过文档,但是我越来越困惑了。 我想要计算的是幅度谱(| X(k)|)。 谁能帮我? 谢谢

Richard G. Baldwin在Developer.com网站上发表了许多关于Java快速傅里叶变换算法的非常好的文章。 特别是,以下文章应certificate是有用的:

Java的乐趣,了解快速傅立叶变换(FFT)算法 http://www.developer.com/java/other/article.php/3457251/Fun-with-Java-Understanding-the-Fast-Fourier-Transform-FFT -Algorithm.htm

使用Java,采样频率,折叠频率和FFT算法进行频谱分析 http://www.developer.com/java/other/article.php/3380031/Spectrum-Analysis-using-Java-Sampling-Frequency-Folding-Frequency -and-的-FFT-Algorithm.htm

如果您只想要音频的Magnitude Spectrum,请选择jAudio API 。

它提供了计算MS的类。

@Sher的链接现在已经破了。 有一个用于相同目的的API http://code.google.com/p/musicg/