【发布时间】:2011-07-08 16:13:04
【问题描述】:
我想用 Java (ME) 分析音频文件的频谱。我想像一些媒体播放器一样绘制频谱。但是有些地方我不明白:
- FFT 算法的输入,我必须从音频文件中获取。我现在不知道它叫什么,它是什么,更重要的是,我不知道如何得到它。
- 输出:如果输入是一个数组(范围?)我得到另一个数组,它的范围是:0-1,对(或不是)?那我和它有什么关系?
【问题讨论】:
标签: java audio java-me media fft
我想用 Java (ME) 分析音频文件的频谱。我想像一些媒体播放器一样绘制频谱。但是有些地方我不明白:
【问题讨论】:
标签: java audio java-me media fft
除了 FFT 之外,您还需要一些额外的步骤。这已经在之前关于 SO 的类似问题中多次介绍过,您可以通过搜索“dsp”、“fft”、“spectrum”、“spectrogram”等找到其他材料,但基本上您需要执行以下操作:
N / 2 FFT 输出 bin (re * re + im * im) 的平方幅度10 * log10(squared_magnitude))【讨论】:
20 * log10 (sqrt(re * re + im * im))(注意 20)或 10 * log10 (re * re + im * im),这将得到相同的结果。