我想做精确的吉他调音器,通常这是许多人通过计算FFT并获得峰值来完成的。但这是低电设备,原因有几个:
对于具有单频正弦曲线形状的信号,应该采用更简单的方法。给定足够小的缓冲区(例如以960kHz的采样率进行256个采样)-如何测量基本(低)频率?
简单地说:如何找到频率F
,以使“ 频率F
的正弦信号”和“ 实际记录的信号”会给出最小错误,而不是F
以外的任何频率? (因此,我们可以明确地得出结论,频率F
的正弦曲线是录制的声音缓冲区的最佳近似值)。
PS。任何东西,但不使用FFT!
答案 0 :(得分:2)
这是基于零交叉的简单方法。它依赖于能够将仪器信号映射到简单的正弦曲线。当信噪比很高时,这可能会很好,但不是很可靠的方法。
您还可以计算周期的分位数,以估计该方法的可靠性。如果他们给出的数字与中位数相差很大,则该方法效果不佳。
可以通过在零交叉点上计算自相关来扩展该方法,如 https://www.cycfi.com/2018/03/fast-and-efficient-pitch-detection-bitstream-autocorrelation/