我是iOS的相对较新的开发人员,并且正在编写一个用于处理网站上mp3文件中的流音频的应用程序。
我想在播放音频时播放音频,并且希望用户能够在音频中进行擦洗。
我看过其他帖子的用法
NSData *songData=[NSData dataWithContentsOfURL:url];
[[AVAudioPlayer alloc] initWithData:songData error:nil];
但是dataWithContentsOfURL:是同步的,将阻塞主线程,并且不会流式传输,也不是我想要的。
理想情况下,我正在寻找某种方式来访问收到的数据字节,将其存储在缓冲区中,然后在获取其余数据时在某个时候(不一定立即)播放可能不完整的缓冲区
我不确定是否可以使用AVPlayer做到这一点,或者是否需要研究Core Audio等。
有人可以给我正确的方向吗?
最佳答案
这是Apple提供的示例,说明如何接收流并对其进行解析。
Apple example
audioFileStreamParser Reference