【发布时间】:2018-07-30 10:30:24
【问题描述】:
我有一个来自 http 响应的音频数据流。我使用 URLSessionDataDelegate 方法接收字节数据包:
urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data)
在使用AVAudioPlayer 对象和initWithData: 初始化方法将所有数据包附加到单个数据对象后,我已经成功播放了音频。
我真正想做的是在数据仍在进入时开始音频播放 - 有效地流式传输音频。对于这个用例,我还没有看到任何看起来很优雅的答案。
我见过的选项是:
- 使用 AudioToolbox:音频文件流服务和音频队列
- 使用 NSStream API,写入文件并同时播放该文件中的音频
如何从传入的数据包中实现音频流播放?
【问题讨论】:
-
您是否考虑过为此使用
AVPlayer? -
我看过一两个使用
AVAssetResouceLoader的例子,但并不深入。我对 AVPlayer 的解决方案持开放态度,那会是什么样子?
标签: ios swift audio audio-streaming http-streaming