Javascript - 缓冲来自 blob 源的视频?

标签 javascript video cross-browser buffer blob

上下文:

摆弄 javascript。

HTML5 浏览器。

问题:

是否有可能拥有两个视频 blob 并将它们的内容缓冲在视频标签中并流畅地播放它们而无需一开始就将它们连接起来?

底层是:是否有可能在浏览器中随时动态地将数据添加到javascript中的视频缓冲区(视频可能已经开始播放,我们仍然从blob添加数据之后)?

所有的解决方案一开始似乎都需要完整的数据。

最佳答案

不幸的是,Media Source API 只能在 Chrome 上使用。据我所知,它仅适用于 webm 容器和 vorbis 以及 vp8 编解码器。

var ms = new MediaSource();

var video = document.querySelector('video');
video.src = window.URL.createObjectURL(ms);

ms.addEventListener('sourceopen', function(e) {
    ...
    var sourceBuffer = ms.addSourceBuffer('video/webm; codecs="vorbis,vp8"');
    sourceBuffer.appendBuffer(oneVideoWebMChunk);
    ....
}, false);

Here is a little demo

W3C draft

关于Javascript - 缓冲来自 blob 源的视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29454982/

相关文章:

c# - 使用 C# 从浏览器本地存储中检索数据

javascript - 我想做一个简单的视频分享网站。我应该从哪里开始?

css - 即 css hack star

javascript - 拆分器不适用于 &lt;iframe&gt; 或 <object>

javascript - 使用 jquery 在表中使用 Json 变量

android - 如何控制捕获视频的帧高和宽度: setVideoSize() does not work

loops - 如何用ffmpeg循环一帧?所有其他框架都应该指向第一个没有变化,也许就像一个回避

java - JSF <trh :script>rendering and running order

javascript - 如何在 grunt 中创建许多单独的 uglify 任务?

javascript - 从回调中调用原型(prototype)方法