2017-03-29 20 views
1

我已阅读MDN的Taking still photos,其中描述了如何从网络摄像头捕捉照片(使用视频元素和mediaDevices.getUserMedia)以使用画布向用户显示照片。拍摄隐藏的WebRTC /无画布/视频照片

但是我做不是需要(也不想要)将拍摄的图像显示给用户,因此我也不想使用画布,因为我会说,第一次绘制画布只是为了获得图像数据(如ImageData或DataUri)可能会影响性能。

那么有没有办法在不使用画布的情况下获取图像数据?

回答

0

使用画布完全正常,表现良好。只是不要将画布附加到文档,它不会显示。我认为你对绩效的担忧是没有根据的。

从数据流中获取数据的唯一方法是MediaRecorder,但它会以给定的帧速率生成视频,而不是您想要的,并且涉及更多。

关于imageCapture API的讨论,但尚未在任何浏览器中实现,但behind a flag除外。它将提供一种.takePhoto()方法,该方法还将提供可用的全分辨率照相机(即电话)。