我在一个应用程序中工作,可以使用AVPlayer实例播放流媒体广播的HLS m3u8播放列表(仅音频),而不会出现任何问题。使用Charles,我可以看到播放列表如何以正常速度正确更新(每个9-10秒,需要一个媒体段文件)。当我执行一次seekToTime :(时光倒流)时,播放器成功播放了我想要的时间流,但是在Charles中,我观察到播放器如何开始下载大量媒体段文件,从而消耗了大量数据。播放器似乎会下载所有媒体段文件,直到该时间,然后再恢复正常状态。
我了解正确的行为是在我要搜索的时间内下载媒体片段文件,开始播放,然后每9-10秒不断下载1或2个媒体片段文件,就像在播放流时一样没有时移。
我的问题是这是否是正常行为,或者我的m3u8播放列表或客户端实现是否有问题。有人可以帮我澄清一下吗?
更新:我可以确认在iOS 7中不会发生这种情况,因此这似乎是iOS 8引入的错误。
苹果告诉我,这不是错误,而是功能。自iOS 8起,他们使缓冲区更大。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句