【问题标题】:HTML5 buffer video one by one and play seamlesslyHTML5 视频一一缓冲,无缝播放
【发布时间】:2012-08-09 17:31:48
【问题描述】:

在 iOS 上,我认为是 Safari,我们有 Apple 的 HTTP Live 流,它可以获取特定格式的视频文件的播放列表,一个一个地缓冲它们,然后无缝地背靠背播放。

有没有办法在其他浏览器中实现这一点?我当然可以检测到视频结束,然后开始缓冲并播放下一个,但我想通过在每个较早的视频结束时下载后续视频来消除缓冲。我不想通过堆叠视频元素并在它们之间切换来破解这一点。这种方法有各种严重的后果。

也许有办法使用 javascript 将文件下载到内存缓冲区中,并以某种方式将视频元素从这些缓冲区中播放?

【问题讨论】:

    标签: html video html5-video


    【解决方案1】:

    我已经看到尝试为每个片段交换视频元素,但它从来都不是流畅的。

    有一个 HTML 规范正在编写中,它准确地定义了您所描述的过程,将媒体段连接到一个缓冲区中,该缓冲区可以馈送到一个媒体元素中。 http://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html

    这在今天的浏览器中不可用,但正在进入 Chrome/Safari。即使是这样,实施这个过程也需要大量的工作。

    如果您现在需要它,最好的选择是使用可以处理 HLS 的 Flash 播放器,例如 OSMF、JWplayer 和即将推出的 Video.js。

    【讨论】:

      【解决方案2】:

      在 html5 中,您可以预加载视频、预加载元信息或完全不预加载。当然,唯一的问题是 Internet Explorer,它会下载所有内容或什么都不下载(甚至不显示控件)。

      这也可以通过 javascript 进行控制。但是,如果您想自动连续播放它们,则需要使用 javascript 或某些第三方工具来完成。可以通过 API 读取文件正在播放的位置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-28
        • 1970-01-01
        • 2013-10-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多