我有一个问题。我在C#上使用NAudio。我的采样率= 40960.我的麦克风,每100毫秒(4096字节)给我一个缓冲区。我发送给fft。如果我只关注4096个元素,那么关于2048 Hz以上的声音频率是否正确?或者我需要使用这个缓冲区大小超过这个?
答案 0 :(得分:4)
您的采样率,Fs = 40960 Hz,因此您的FFT将代表从0到Fs / 2(奈奎斯特)= 0 Hz到20480 Hz的实际正频率。
FFT的分辨率是Fs / N = 40960/4096 = 10 Hz。因此每个箱的宽度为10 Hz,前2048个复合输出箱表示0到20480 Hz的频率,增量为10 Hz(您可以忽略其他2048个输出箱,因为它们不包含纯粹实际输入信号的附加信息)。 / p>
有关更完整的说明,请参阅this answer。