【问题标题】:Rendering very high frequency sounds on iOS在 iOS 上渲染非常高频的声音
【发布时间】:2011-04-13 16:26:04
【问题描述】:

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

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

【问题讨论】:

    标签: iphone core-audio audiounit audio-aliasing


    【解决方案1】:

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

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

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

    【讨论】:

    • 在 44KHz 采样率下,22KHz 正弦波和相同频率的方波没有区别。你得到两个样本:高和低。输出 DAC 几乎可以肯定地呈现它们,而不会出现任何异常高的谐波。
    • 好提示!我最终在 freemosquitoringtones.org 上模仿了 mp3(我注意到一些应用程序只是嵌入)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    • 2011-06-10
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    相关资源
    最近更新 更多