0

嗨,我正在使用 Audio Unit 开发 iOS 应用程序。我想做的是使用远程输入发出声音,采取延迟效果,然后输出。然而,问题在于它会产生啸叫,因为延迟语音将成为设备的另一个“远程输入”,并且这种情况会一次又一次地发生。

谁能给我建议如何防止输出嚎叫?我只需要一个重复的声音。(例如,如果我说“你好”,我可以在 1 到 2 秒内从设备中听到我说的“你好”。在我的情况下,录音不是可取的)

谢谢,

4

2 回答 2

2

您正在经历的是反馈

OSX 和 iOS 都带有一个称为 AUVoiceProcessingIO 的特殊输出音频单元,它可以提供帮助(它会自动执行 hotpaw2 描述的闪避)。如果您使用它而不是 RemoteIO,它会在触发输入时自动回避输出,这应该会减少或消除反馈。

于 2013-07-10T13:14:23.343 回答
0

当您的音频输出功率(根据输出缓冲区内容计算)高于某个阈值(导致反馈的阈值)时,您可以尝试将输入缓冲区归零。您可能必须尝试短暂的延迟,直到您停止将输入归零以解决延迟问题。

于 2013-07-10T00:16:19.897 回答