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

13

我正在处理音频数据,使用的是Java语言。我已经将音频数据提取到一个数组中。现在,我需要将N个数据样本传递给一个函数,该函数计算离散傅里叶变换(或更有效的快速傅里叶变换)。我已经阅读了文档,但越来越糊涂了。我想要计算的是幅度谱(|X(k)|)。有人能帮帮我吗?谢谢

3个回答

18

Richard G. Baldwin在Developer.com网站上有很多关于Java中快速傅里叶变换算法的非常好的文章。尤其是以下文章应该会很有用:

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-the-FFT-Algorithm.htm


3
如果您只需要音频的幅度谱,则可以使用jAudio API

它提供了一个用于计算MS的类。


3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接