我有一个来自http响应的音频数据流。我使用URLSessionDataDelegate方法接收字节包:urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive data: Data)
我已经成功地播放了音频后,追加所有的数据包到一个单一的数据对象,使用AVAudioPlayer
对象和它的initWithData:
初始化方法。
我真正想做的是在数据仍在输入时开始音频播放- * 有效地流式音频 *。我还没有看到任何答案,似乎优雅的这个用例。
我看到的选项有:
1.使用AudioToolbox:音频文件流服务和音频队列
1.使用NSStream API,写入文件并同时播放该文件中的音频
我如何实现音频流播放从数据包进来?
2条答案
按热度按时间6fe3ivhb1#
最简单的方法是使用
AVFoundation
框架的AVPlayer
。使用您的URL示例化playerItem并将其传递给播放器。下面的代码将为您做。n9vozmp42#
考虑
AVPlayer
来满足您的需求,类似于以下内容:更多信息请阅读:https://developer.apple.com/documentation/avfoundation/avplayer