[英]Extract Time Domain double[] of Wav file for input into FFT - Java
我有一个wav文件,无法弄清楚如何从中提取我需要的数据,将其放入快速傅里叶变换(FFT)进行进一步分析......
我做了大量的谷歌搜索和搜索,但没有找到具体的东西......
The FFT algorithm code:
public class ShortTimeFourierTransform {
public static double[][] magnitudeSpectrum(double[] signal, int windowSize, int hopSize) { ... }
...}
对信号采用double [],所以我假设我必须弄清楚如何解析wav文件并获得double [t],其中“t”是时间,double [t]将是wav文件在时间t。
我不知道该怎么办。 大多数解决方案似乎都将wav导出为字节,并且根据( https://ccrma.stanford.edu/courses/422/projects/WaveFormat/ ),按字节解析wav文件似乎要复杂得多。
非常感谢!
.wav格式只是围绕音频编码的包装格式。 你需要:
除非您可以更改文件的格式,否则没有真正的方法。
如果您可以更改文件格式,我建议使用程序(如Audacity)打开wav文件,并保存其原始PCM编码字节。 这将使您不必担心.wav格式。
一个好的第三方图书馆可以帮助你。 我没有建议。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.