是否有必要使用2画布进行html5视频操作?

时间:2013-11-22 10:16:32

标签: javascript html5 video canvas

我尝试在javascript中进行一些视频操作。我读了一些关于它的文章,看起来每个人都使用2个画布来做这个伎俩。首先,他们在第一个画布上绘制视频,他们从中读取图像数据,进行一些像素操作,然后在第二个画布上绘制它。我想知道我真的必须使用2个画布才能做到这一点?是否有任何方法直接从视频中获取图像数据?或者我们有一些性能问题,这是解决方案吗?

1 个答案:

答案 0 :(得分:0)

因为您无法从视频中获取像素数据。

Canvas API有一个方法getImageData(),它返回一个浮点数组,其中包含每个像素的每种颜色(和alpha)的值。不幸的是,视频元素不能这样做:(

您可以使用一个画布来绘制视频帧并对其进行操作。我想人们更喜欢在两个画布上做这件事,这样他们就可以保留原始的像素数据,以防你在加载新画面之前有一个改变操作......或者什么......