Iphone 停止并快速重播音频队列

Iphone 停止并快速重播音频队列,iphone,objective-c,core-audio,audiotoolbox,audioqueue,Iphone,Objective C,Core Audio,Audiotoolbox,Audioqueue,我有一个音频队列,可以正确地播放、停止和暂停,但我发现AudioQueueStop()函数需要很长时间才能执行 我想立即停止,然后重新开始播放音频队列,我想知道最快的方法是什么 在我的项目中,我有多个音频队列,我会不断地播放特定的声音。在这种情况下,我必须停止其中一些声音,然后立即播放它们,并且一次播放更多。如果我只对几个音频队列执行此操作,这并不是很糟糕,但是如果有许多音频队列需要停止并重新启动,则需要花费很长时间 我可以通过在音频队列中调用stop,然后创建一个具有相同声音的新队列来伪装它,

我有一个音频队列,可以正确地播放、停止和暂停,但我发现AudioQueueStop()函数需要很长时间才能执行

我想立即停止,然后重新开始播放音频队列,我想知道最快的方法是什么

在我的项目中,我有多个音频队列,我会不断地播放特定的声音。在这种情况下,我必须停止其中一些声音,然后立即播放它们,并且一次播放更多。如果我只对几个音频队列执行此操作,这并不是很糟糕,但是如果有许多音频队列需要停止并重新启动,则需要花费很长时间


我可以通过在音频队列中调用stop,然后创建一个具有相同声音的新队列来伪装它,但我想知道是否有更好的方法来实现这一点。

AudioQueue
对于这类东西来说可能很混乱。很难在缓冲区中间停止队列,这意味着当前缓冲区将继续播放。此外,您还必须处理延迟问题

对于低延迟的快速停止和播放,我建议使用RemoteIO音频单元

您可以在此处找到一个包含代码的优秀教程: