audio - 用于乐器调谐器的iphone AurioTouch &

  显示原文与译文双语对照的内容

我正在编写一个简单的调谐器( 。不,不是为了制作另一个调谐器应用程序),我正在查看AurioTouch示例源( 。是否有人试图注释这里代码) 。

我担心,在查看频率域图时,aurioTouch似乎没有很好的工作。 我在乐器上播放一个单一的音符,并且没有看到有一个字符串峰值的顺序。

有人使用aurioTouch来了解底层代码是否正常运行,或者它是否只是一个粗略的示例?

我的其他选择是使用FFTW或者 KISS FFT 。 谁有任何经验?

谢谢。

时间: 原作者:

FFT使用频率箱和频率宽度是基于参数的。 要找到频率,你需要记录它的采样速率至少是在样本中最高频率的两倍。 然后找出周期之间的时间。 如果它不是纯粹的频率,这当然会更加困难。

原作者:

因为频率轴是线性的,所以aurioTouch看起来很奇怪。 当x 轴不是对数刻度( 传统上 log2 ) 以外的任何东西时,很难解释FFT输出。

如果你不能使用aurioTouch的整数 fft,请查看我的库: http://github.com/alexbw/iPhoneFFT

它采用双精度,支持多种窗口类型,并实现了Welch的( 随着时间的推移,它可以给你更稳定的光谱) 方法。

@zaph, 算法计算了 true 离散傅里叶变换。 它只是一种有效的算法,利用数字信号的位位表示。

原作者:
...