如何创建像瑞典广播iPhone应用程序一样的音频流预缓冲区?
我已经下载了这个应用程序,并且很长时间以来我一直在搜索如何创建预缓冲区。
例如: 我点击播放 我的应用程序将流加载到缓冲区中 10秒后(我的缓冲区提前10秒) 我在前 10 秒内启动流(如果我的可达性失败或其他原因,我还有 10 秒的时间) 当我的手机无法访问时(我的流持续 10 秒并且缓冲区为空),如果可访问性恢复(拒绝并播放)
http://itunes.apple.com/us/app/sveriges-radio-play/id300548244?mt=8
I've download this app and i search since long time how to create the pre buffer.
For example:
I click on play
My app load the stream in the buffer
After 10 seconds (my buffer get 10 seconds in advance)
I start the stream for the first 10 secs (i've got 10 secs if my reachability failed or something else)
When my phone is unreachable (my stream continue for 10 sec and the buffer is empty) if the reachability is back (rebuffed & play)
http://itunes.apple.com/us/app/sveriges-radio-play/id300548244?mt=8
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个非常广泛的问题。您将不得不使用 NSURLRequest 将 X 秒的原始数据放入本地字节缓冲区。您必须根据传入数据的类型(即 mp3 @ 8Khz 等)计算 10 秒。完成此操作后,您可以开始将数据放入 AudioQueue(它有自己的缓冲区)。
This is a really broad question. You're going to have to play with NSURLRequest to get your raw data of X seconds into a local byte buffer. The 10 seconds you will have to calculate based on the type of data coming in (i.e. mp3 @ 8Khz etc). Once you do that, you can start throwing your data into an AudioQueue (which has its own buffers).