我正在尝试使用苹果的 Accelerate Framework 来设置 FFT、窗口化、重叠和下采样,以及从设备麦克风获取的输入。我一直在寻找一些关于如何使用它的示例代码/应用程序,但我并没有完全弄清楚如何在实际项目中实现这样的东西。你能帮我指出正确的方向吗?谢谢
更新
这是迄今为止我从各种来源收集的代码,包括这里回答的其他一些问题。它缺少的是下采样功能和重叠。在 Apple 的文档中,我找到了以下用于去采样的函数vDSP_zrdesamp,但我在实现它时遇到了麻烦。
真正的问题是试图把它放在一个实际的项目中。我已经尝试修改这个github 项目,但我没有设法适应它,所以任何帮助都会非常受欢迎。实际的 FFT(我需要修改)发生在 RIOInterface 类的音频回调函数中。
请注意,我在 github 上提到的项目不属于我,但它没有禁止我为自己的目的修改它的许可证。此外,该项目仅用于测试,直到我达到更稳定的算法。