This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The grabFrame()
property of the ImageCapture
interface takes a snapshot of the live video in a MediaStreamTrack
, returning an ImageBitmap, if successful.
var imageBitmap = ImageCapture.grabFrame()
None.
An ImageBitmap
object.
This example is extracted from this Simple Image Capture demo. It shows how to use the Promise
returned by grabFrame()
to copy the returned frame to a <canvas>
element. For simplicy it does not show how to instantiate the image capture object.
var grabFrameButton = document.querySelector('button#grabFrame'); var canvas = document.querySelector('canvas'); grabFrameButton.onclick = grabFrame; function grabFrame() { imageCapture.grabFrame() .then(function(imageBitmap) { console.log('Grabbed frame:', imageBitmap); canvas.width = imageBitmap.width; canvas.height = imageBitmap.height; canvas.getContext('2d').drawImage(imageBitmap, 0, 0); canvas.classList.remove('hidden'); }) .catch(function(error) { console.log('grabFrame() error: ', error); }); }
Specification | Status | Comment |
---|---|---|
MediaStream Image Capture The definition of 'grabFrame()' in that specification. | Working Draft | Initial definition. |
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 59 | ? | ? | 46 | ? |
Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | 59 | 59 | ? | ? | ? | 46 | ? |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ImageCapture/grabFrame