基本上我尝试了很多来查找java中以.wav
格式录制的音频的频率。我从以前的问题中了解到我需要对录制的音频应用FFT。我搜索了很多,但我无法理解如何应用FFT。我想帮助解决这两个问题......
1.从java文档中我读到... PCM编码接受基于时域的音频数据。它根据数组中的采样率存储音频的压力点(例如,如果sampleRate是44100,那么在编码期间,java中的AudioFormat方法将检查每秒44100个后续压力点)。但是对于应用FFT,我们需要获取音频的这个时间域信息。我尝试使用以下代码来打印该数组......但我不确定这是否是实际的时域信息..pz帮我这个
targetLine.start();
data = new byte[targetLine.getBufferSize() /5];
.
.
.
for(int j=0;j<data.length;j++)
{
System.out.print(data[j]+",");
}
(&#39;数据&#39;是那个数组)
输出如下:
95,45,-49,51,-127,57,-51,62,119,67,-82,71,98,75,79,78,-54,80,-87,82,-15,83,-6,84,123,85,-104,85,121,85,...
直到达到data.length。
和
2.如何在这个时域信息上应用FFT ....我检查了许多教程......许多算法但我无法理解。 PLZ建议我学习如何应用FFT的任何网站或教程。