4

我正在尝试使用 AudioUnit 为 iPhone 项目渲染一系列高频声音(大约 8-20KHz),但是 12KHz 以上的所有声音都严重失真和/或完全错误的音调。我已经将波形渲染为图像,并意识到,因为 iPhone 的硬件采样率为 44,100Hz,所以应该归咎于混叠(我的 22KHz 正弦波更像是 100Hz 正弦波)。

有什么解决办法吗?我在商店里看到了许多“狗哨”应用程序,但我猜它们不太可能是“真实的”。更改 AudioStreamBasicDescription 的采样率似乎并没有太大帮助,但也许我做错了。

4

1 回答 1

2

我相信,您无法真正以 44.1K 样本/秒的速度渲染 22KHz 正弦波,而且您无法将最大采样率提高到该值之上。您可能可以使用 48KHz,我依稀记得这是支持的速率。

另一方面,您绝对可以以 44.1ks/s 的速度制作 22.05 KHz 方波,这将具有一些非常高的谐波频率。也许这就是狗哨应用程序的工作方式?

如果绝对频率控制不是很重要,您可以通过将频率四舍五入为采样率的倍数来获得更好的结果。这样,您至少可以确保混叠不会给您带来低频节拍。

于 2011-04-13T16:49:24.993 回答