我目前正在开发一个播放音频文件的应用程序(mp3,但可以更改为WAV以减少解码时间),并同时录制音频。
出于同步目的,我想估计音频开始播放的确切时间。
使用AudioQueue控制每个缓冲区,我可以估计第一个缓冲区耗尽的时间。我的问题是:
谢谢!
答案 0 :(得分:0)
音频队列API运行在音频单元之上,因此使用原始未压缩音频的RemoteIO音频单元将允许更低且更确定的延迟。可以在某些iOS设备上设置的最小RemoteIO缓冲持续时间(使用音频会话API)大约为6到24毫秒,具体取决于应用程序状态。这可能会设置播放和录制延迟的下限,具体取决于您用于延迟测量点的事件。
解码压缩音频可以在解码开始时增加一个数量级或两个延迟。