调用AVAudioPlayer
后,是否可以知道prepareToPlay
何时准备就绪?
如果没有,是否还有其他类提供此功能?
我想实现这样的事情:
- (void) prepare {
[audioPlayer prepareToPlay];
// Update UI to indicate that the audio is being prepared
}
- (void) onAudioReady {
// Update UI to indicate that the audio is ready
}
答案 0 :(得分:0)
这个类可以帮助初始化音频,然后立即在onAudioReady方法中播放。
https://github.com/nicklockwood/SoundManager
参考这篇文章:https://stackoverflow.com/a/10417762/1474080
OR
您可以检查来自[audioPlayer prepareToPlay]的BOOL结果,以查看是否已根据文档初始化音频硬件。如果结果为YES,您可以生成一些UI供用户查看。
prepareToPlay 通过预加载缓冲区来准备播放音频播放器。
- (BOOL)prepareToPlay返回值成功时返回YES,失败时返回NO。
讨论调用此方法预加载缓冲区并获取音频 播放所需的硬件,最大限度地减少了呼叫之间的延迟 播放方法和声音输出的开始。
调用停止方法或允许声音完成播放,撤消 这个设置。