我正在测试WebRTC API。更准确地说是网络摄像头部分。
所以我阅读了W3C草案并在firefox中使用它来从网页上记录自己。它起作用(不如预期好,但它确实如此)。我的意思是我可以下载格式化为webm的视频,该视频可由我的计算机读取。
我想在将视频发送到服务器之前对其进行预先视觉化。所以我编写了这段代码:
var url = URL.createObjectURL(e.data);
video.innerHTML = '<source src="' + url + '" type="video/webm"></source>';
video.play();
这根本不起作用。我的网页上只有一个空白元素......
是否有任何建议让它发挥作用?
答案 0 :(得分:1)
这个问题是Firefox的一个问题。使用e.data我们得到一个blob,但我们必须重新定义一个新的blob才能使它工作:
var new_blob = new Blob([e.data], { type: e.data.type });
请注意,目前(2014-09-30)firefox不支持官方视频编码,而且规范是草案中未经W3C验证的。
答案 1 :(得分:0)
问题是我不明白你在e.data中得到的对象是什么,你也可以检查mime是否正确console.log(e.data);;console.log(e.data.type);
,这些是什么输出,
你也试过这个,firefox webm capture,它们会显示视频的预览。