是否可以从HTML5 / Flash / iOS播放器的视频流中获取图像?

时间:2012-10-19 02:58:50

标签: ios html5 flash video-streaming

好的,这里的上下文是我有一个带有Flash播放器或HTML5播放器的网页,或者带有本机播放器的原生iOS应用程序。

在播放视频时,是否可以从视频中抓取一帧并将其发送回服务器?

例如:

闪存

因此,在播放器中,有一个RTMP或HDS流进来。使用ActionScript甚至可以从播放器正在播放的流中抓取帧?

HTML5

我想这个答案是否定的,因为我只有javascript和DOM,但视频标签的任何实现都允许这种类型的交互?如果是这样,哪些?我真的只对iOS Safari和Android 3+感兴趣,因为流将是HLS。

原生iOS

与Flash解决方案类似,Apple是否在iOS中提供API,允许我在应用中从HLS流中捕获帧?

1 个答案:

答案 0 :(得分:0)

您可以使用此代码将视频作为数据URI

var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var width = $('#video').outerWidth();
var height = $('#video').outerHeight();
canvas.width = width;  canvas.height = height;
var videoElem = document.getElementById('video');
context.drawImage(videoElem, 0, 0, width, height);
var dataURL = canvas.toDataURL();
console.log(dataURL);