我正在为HTML5视频播放器实现回退机制。我有办法用swfobject Flash播放器替换它,但是如何检测是否有任何问题?
换句话说,如果我们使用以下可抛出的错误事件列表,哪一个应该触发Flash播放器替换?或者,如果抛出任何错误,我们应该简单地进行替换吗?
此外,应该在哪里调用onError处理程序?我正在考虑视频标签,但想要确定。非常感谢您的指导。感谢。
function failed(e) {
// video playback failed - show a message saying why
switch (e.target.error.code) {
case e.target.error.MEDIA_ERR_ABORTED:
alert('You aborted the video playback.');
break;
case e.target.error.MEDIA_ERR_NETWORK:
alert('A network error caused the video download to fail part-way.');
break;
case e.target.error.MEDIA_ERR_DECODE:
alert('The video playback was aborted due to a corruption problem or because the video used features your browser did not support.');
break;
case e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED:
alert('The video could not be loaded, either because the server or network failed or because the format is not supported.');
break;
default:
alert('An unknown error occurred.');
break;
}
}
答案 0 :(得分:9)
此处的问题是,切换到Flash无法解决许多问题。事实上,当你有一个MP4可以播放时,唯一一次真正受益于切换到Flash的是IE,FF和Opera,而当你拥有一个FLV时,在所有浏览器中。 (这显然可以根据对webm / Theora的本机Flash支持进行更改。)
出于这个原因,我们为JW Player for HTML5做了以下工作:
这个解决方案并非万无一失,但它可以让你获得90%以上的解决方案。
最佳,
扎克
开发者,LongTail视频