mos*_*sad 6 c audio fft dft
我想开发音符探测器作为我的学位项目,我想从头开始.我已经编写了".wav"文件的代码,该文件从该音频音乐文件中提取所有信息,并为我提供振幅.
然后我为DFT编写了一个代码 - 它给出了一个复数的输出,其中一个轴(实/虚)是幅度/幅度,另一个是相位.
现在问题我想要频率的答案(赫兹不在矢量中)所以我可以检查我的DFT是否给了我正确的输出.如何将DFT输出转换为频率?
我必须用C语言编写代码,我不想使用任何内置库
Pau*_*l R 15
您需要找到峰值幅度然后计算出相应的频率:
magnitude = sqrt(re*re+im*im)
i_max
freq = i_max * Fs / N
Fs
N
有关bin索引和频率如何相关的更详细说明,请参阅此答案.
归档时间:
12 年,4 月 前
查看次数:
13675 次
最近记录: