我想制作一个使用 PortAudio 录制音频数据的程序(我已经完成了这部分),然后显示录制的音频的频率信息(现在,我想显示每组样本的平均频率当他们进来时)。
根据我所做的一些研究,我知道我需要进行 FFT。因此,我在 C 中搜索了一个库来执行此操作,并找到了 FFTW。
不过,现在我有点失落了。我究竟应该如何处理我记录的样本以从中提取一些频率信息?我应该使用什么样的 FFT(我假设我需要一个真实的 1D 数据?)?
一旦我做了 FFT,我如何从它给我的数据中获取频率信息?
编辑:我现在也发现了自相关算法。好点吗?更简单?
提前非常感谢,对不起,如果这样,我绝对没有经验。我希望它至少有点意义。