3

我实现了一个带有媒体源扩展的自适应 html5 播放器,并且卡在关于播放的逻辑到最后。

我发现mediaSource.endOfStream()必须在播放结束之前调用它,以便查看元素ended发出的事件。<video>

调用 endOfStream 后,mediaSource.readyState将变为ended,并且已经附加到它的 sourceBuffers 仍然存在。(未删除)

在 mediaSource 规范中结束了 readyState 描述:

源仍然附加到媒体元素,但 endOfStream() 已被调用。

换句话说,mediaSource 标记为已结束但仍附加到视频元素。

场景是:我想重播这个回放。

有什么方法可以“重启”这个 mediaSource?

b/c mediaSource 仍附加到视频元素,因此videoElement.src = window.URL.createObjectURL(mediaSource)不起作用。而且也只能closed附加一个 mediaSource,所以在调用它时,mediaSource 被关闭,并且 sourceBuffers 被删除。

我在规范中看不到任何其他方法,或者我的尝试(重新启动 mediaSource)完全错误?

有人有什么主意吗?任何评论/建议将不胜感激。

谢谢。

4

0 回答 0