Ios AVPlayer缓冲后未恢复

Ios AVPlayer缓冲后未恢复,ios,audio,streaming,avplayer,Ios,Audio,Streaming,Avplayer,我的iOS应用程序使用AVPlayer从web流媒体。我使用KVO来检测诸如缓冲(playbackufferempty)和被捕获(playbackLikelyToKeepUp)之类的事件。然而,我注意到一个奇怪的特定bug。虽然在大多数网络减速期间,playbackufferemptyKVO会被命中,当它恢复时,playbackLikelyToKeepUpKVO会像预期的那样被命中,但我注意到,AVPlayer会缓冲一段时间,恢复,playbackLikelyToKeepUp会被命中,音频可能会

我的iOS应用程序使用
AVPlayer
从web流媒体。我使用KVO来检测诸如缓冲(
playbackufferempty
)和被捕获(
playbackLikelyToKeepUp
)之类的事件。然而,我注意到一个奇怪的特定bug。虽然在大多数网络减速期间,
playbackufferempty
KVO会被命中,当它恢复时,
playbackLikelyToKeepUp
KVO会像预期的那样被命中,但我注意到,
AVPlayer
会缓冲一段时间,恢复,
playbackLikelyToKeepUp
会被命中,音频可能会播放1-3秒,然后音频会停止播放,就好像它正在缓冲,而不会再次点击
playbackufferempty
KVO。它不会从中恢复过来

TL;DR:
playbackufferty
(10-20秒)->
playbackLikelyToKeepUp
->播放1-3秒->停止播放,但未点击KVO

最糟糕的情况是,当发生这种情况时,
AVPlayer
不会像从缓冲恢复时那样自动重新开始播放,并且在手动停止/重新启动
AVPlayer
之前,应用程序处于静默状态。最终,每次我流的时候或多或少都会发生这种情况。这是AVPlayer的已知问题吗?这是我可以观看的第三个KVO事件吗?或者关于如何调试它的任何提示?谢谢

编辑:其他信息:
AVPlayer
error
属性为
nil
发生这种情况时,
status
属性已准备好播放,
rate
属性为1。据我所知,没有什么奇怪的事情发生。

我也遇到过
AVPlayer
从缓冲/网络问题中恢复的问题,我也遇到过同样的情况,
AVPlayer.status
.readyToPlay
AVPlayer.error
nil
,和
avPlayer.rate
1
。说不可靠!我还检查了
errorLog()
,除了一般的internet连接错误之外,它没有提供任何相关信息

我试图通过设置一个计时器来检测这种状态,当计时器超时时,我检查当前视频时间和计时器启动的时间,如果时间相同(视频没有进展),我们可以假设视频在声称它正在播放时真的没有播放

然后我将其视为不可恢复状态,并通过创建新的
AVPlayerItem
来重新加载整个流