【发布时间】:2017-05-30 01:07:55
【问题描述】:
我正在开发一个需要播放两个数据(例如:dataA 和 dataB)的音频应用。就应用而言,它应该按以下顺序播放音频数据:
|数据A |数据B |数据B | ......重复N次数据B ... |
一个简单的解决方案是创建一个包含上述数据结构(1 dataA + N dataB)的超大 NSData。但是,它是低效的,尤其是当 N > 10000 时。
在 Android 或其他我可以直接控制音频播放缓冲区的系统中,我可以简单地将 dataA 推送到播放缓冲区,然后有一个 for 循环将 dataB 放入我想要的次数(无需分配超大缓冲区保存重复的数据B)。
AVAudioPlayer 是如何实现的? (注意:为了应用程序的目的,我需要在dataA之后直接播放dataB,延迟为0。所以不可能使用多个AVAudioPlayer类)
【问题讨论】:
标签: ios audio avaudioplayer