第一次播放播放列表时,我总是得到缓冲区StalledError。
我可以检测到这个错误,但是,如果我解决了这个错误,则视频回放中会发生跳转或跳过,并且它停止发生。
但是,如果我忽略它,它将播放而不会出现明显的中断,并且视频将继续播放续出现,但没有任何可通知的问题。
然而,有时,相同的错误将导致溢出,hls.js将无法自动恢复,并且在发生此类故障后,不会报告比上次缓冲区暂停错误更多的错误。
我必须通过销毁并再次连接重新启动视频,恢复hls.js无法自动执行的播放功能,或者通过recoverMediaErrors()重新开始播放。
唯一的问题是,我无法订阅一个显示视频正在播放或被卡住的活动。bufferStalledMediaError发生后,hls.js会自动恢复,不会出现故障,但有时无法恢复。在这两种情况下,都不会报告更多错误。
但是,是否有另一个事件报告说它正在播放,而不是错误报告?
是否存在hls.on(hls.Events.ALL,…)事件?
设置TimeLineController怎么样?它没有记录在案。
参考:https://github.com/dailymotion/hls.js/blob/master/API.md
我不认为有一种内置的方式可以监听所有事件,但您可以随时订阅每个事件:
Object.keys(Hls.Events).forEach(function (e) {
_hlsInstance.on(Hls.Events[e], console.info.bind(console));
});