ImageCapture: ImageCapture() constructor

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The ImageCapture() constructor creates a new ImageCapture object.

Syntax

js
new ImageCapture(videoTrack)

Parameters

videoTrack

A MediaStreamTrack from which the still images will be taken. This can be any source, such as an incoming stream of a video conference, a playing movie, or the stream from a webcam.

Return value

A new ImageCapture object which can be used to capture still frames from the specified video track.

Exceptions

NotSupportedError DOMException

Thrown if the videoTrack parameter's kind property is not video.

Examples

The following example shows how to use a call to MediaDevices.getUserMedia() to retrieve the MediaStreamTrack needed by the ImageCapture() constructor.

js
navigator.mediaDevices
  .getUserMedia({ video: true })
  .then((mediaStream) => {
    document.querySelector("video").srcObject = mediaStream;
    const track = mediaStream.getVideoTracks()[0];
    imageCapture = new ImageCapture(track);
  })
  .catch((error) => console.error(error));

Specifications

Specification
MediaStream Image Capture
# dom-imagecapture-imagecapture

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
ImageCapture() constructor
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.
User must explicitly enable this feature.