声音 FFT 频率

Posted

技术标签:

【中文标题】声音 FFT 频率【英文标题】:Frequency of sound FFT 【发布时间】:2012-11-09 08:13:22 【问题描述】:

我有一个问题。我在 C# 上使用 NAudio。我的采样率 = 40960。我的麦克风,每 100 毫秒(4096 字节)给我一个缓冲区。我把这个发给fft。如果我只看 4096 个元素,正确地说声音频率超过 2048 Hz?或者我需要使用这个缓冲区大小而不是这个?

【问题讨论】:

您似乎一遍又一遍地问几乎相同的问题 - 如果您无法理解人们给您的答案,也许您需要阅读一本很好的 DSP 入门书籍?跨度> 【参考方案1】:

您的采样率 Fs = 40960 Hz,因此您的 FFT 将代表从 0 到 Fs / 2(奈奎斯特)= 0 Hz 到 20480 Hz 的真实正频率。

FFT 的分辨率为 Fs / N = 40960 / 4096 = 10 Hz。因此,每个 bin 的宽度为 10 Hz,前 2048 个复数输出 bin 表示以 10 Hz 为增量从 0 到 20480 Hz 的频率(您可以忽略其他 2048 个输出 bin,因为它们不包含纯实输入信号的附加信息)。

更完整的解释见this answer。

【讨论】:

以上是关于声音 FFT 频率的主要内容,如果未能解决你的问题,请参考以下文章

swift 3 FFT获取声音m4a的频率

声音分析 FFT

如何正确 FFT 声音阵列?

AurioTouch2声音频率

如果有任何方法可以获得声音的频率。

FFT 声音分析