如何从录制的声音中获取PCM数据进行傅立叶分析

How to get PCM data from recorded sound for Fourier analysis

本文关键字:数据 PCM 傅立叶 获取 声音      更新时间:2023-10-16

我一直在编写c++代码,它将接收声音并输出其核心频率,就像吉他调谐器一样。我可以生成我自己的随机正弦波,并成功地执行FFT从一个文本文件,只是幅度与时间。我只是不知道如何从麦克风或声音文件中产生可用的数据。

是否有一个简单的方法来采样声音,并有它在振幅与时间文本文件中输出数据?

我已经研究了WAV文件格式和各种块是如何工作的,但它有点高于我的水平。

如果你能确保你的WAV是单声道的,未压缩的,16位的,并且在一个已知的采样率下,你可以跳过WAV/RIFF/任何头文件,或者把它当作样本来吸收(如果文件很长,这应该不会影响你的FFT结果)。

除此之外,未压缩的WAV并不是一种可怕的复杂格式。通过更多的努力,您将解析它。