Audio 我是否试图使用FFT正确识别输入信号?

Audio 我是否试图使用FFT正确识别输入信号?,audio,signal-processing,fft,frequency-analysis,Audio,Signal Processing,Fft,Frequency Analysis,我正在尝试实现FFT,我想问一下我所做的是否正确。我正在使用GSL(GNU科学库)来实现FFT函数。我一直在阅读FFT的教程,但我仍然想请别人验证我的方向是否正确 以下是我通过网络材料提出的方法: The input is a list of the amplitudes of a sin wave generated in audacity at 440Hz (A). The sample rate is 44100 # FFT points: 1024 有人能解释一下如何选择FF

我正在尝试实现FFT,我想问一下我所做的是否正确。我正在使用GSL(GNU科学库)来实现FFT函数。我一直在阅读FFT的教程,但我仍然想请别人验证我的方向是否正确

以下是我通过网络材料提出的方法:

The input is a list of the amplitudes of a sin wave generated 
in audacity at 440Hz (A).  

The sample rate is 44100

# FFT points: 1024
有人能解释一下如何选择FFT点数吗?或者它是否重要。我可能忽略了它,但我似乎找不到选择这个号码的方法。
编辑:我认为将这个FFT窗口命名更合适,因为在样本上滑动一个1024点的窗口,以便找到频率

 bin size = 44100 / 1024 = 43.066
运行FFT后,我有另一个振幅列表,根据它们所在的位置,即检测到的频率,对吗?所以为了找到生成信号的频率,我想找到最高峰值

A bin is defined as a peak if and only if the bin has an amplitude greater than 
2 bins to the left and 2 bins to the right.

该方法在获取输入信号频率方面是否正确?

单独使用FFT无法可靠地识别基音,因为基音可能不同于峰值频率。对于基音,您需要研究基音估计算法,其中一些算法使用FFT作为过程的一部分,但许多算法没有


至于使用FFT进行频谱估计,FFT越长,频率上的FFT单元间距越近,如果所估计的频率在窗口期间是固定的,这一点很有用。

FFT窗口大小取决于您的需要,您没有告诉我们。它需要多精确?垃圾箱越小,越准确,也需要更多的数字运算。对不起,我需要它来识别别人声音的音调。我想这是需要实时完成的。