我目前正在开发一款基于 iPhone 和 iPad 的录音应用程序。在这里,我自己完成了基本的音频录制功能,但我不知道如何录制高于特定频率的音频,例如高于 17,000 Hz。那么,有人可以帮助我实现这一目标吗?这确实对我的职业生涯有很大帮助。
最佳答案
我认为你需要使用加速框架,里面有一个vDSP API可以做FFT(快速傅里叶变换)。它将数据从时域转换到频域。根据bin size信息,您可以提取特定bin size之后的幅度/幅度。
我认为这可以解决您的问题。
对于vDSP,您可以引用aurioTouch 2来自苹果网站。
关于FFT在那里的工作原理,你可以引用这个问题 - Understanding FFT in aurioTouch2
我希望这会有所帮助。
P.S. AurioTouch 或 AurioTouch 1 未使用 vDSP API。我记得在 iOS 4 之前有一个 FFT 函数可以做类似的事情,但速度较慢。所以你可能会认为vDSP是iOS4.0之后才有的
关于iPhone应用程序录音仅在特定频率以上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10825941/