ImageCapture: getPhotoCapabilities() method
The getPhotoCapabilities()
method of the ImageCapture
interface returns a Promise
that resolves with an object containing the ranges of available configuration options.
Syntax
Parameters
Return value
A Promise
that resolves with an object containing the following properties:
-
redEyeReduction
-
Returns one of "never"
, "always"
, or "controllable"
. The "controllable"
value means the device's red-eye reduction is controllable by the user.
-
imageHeight
-
Returns an object indicating the image height range supported by the user agent.
-
imageWidth
-
Returns an object indicating the image width range supported by the user agent.
-
fillLightMode
-
Returns an array of available fill light options. Options include auto
, off
, or flash
.
Examples
The following example, extracted from Chrome's Image Capture / Photo Resolution Sample, uses the results from getPhotoCapabilities()
to modify the size of an input range. This example also shows how the ImageCapture
object is created using a MediaStreamTrack
retrieved from a device's MediaStream
.
const input = document.querySelector('input[type="range"]');
let imageCapture;
navigator.mediaDevices
.getUserMedia({ video: true })
.then((mediaStream) => {
document.querySelector("video").srcObject = mediaStream;
const track = mediaStream.getVideoTracks()[0];
imageCapture = new ImageCapture(track);
return imageCapture.getPhotoCapabilities();
})
.then((photoCapabilities) => {
const settings = imageCapture.track.getSettings();
input.min = photoCapabilities.imageWidth.min;
input.max = photoCapabilities.imageWidth.max;
input.step = photoCapabilities.imageWidth.step;
return imageCapture.getPhotoSettings();
})
.then((photoSettings) => {
input.value = photoSettings.imageWidth;
})
.catch((error) => console.error("Argh!", error.name || error));
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
getPhotoCapabilities |
59 |
79 |
No |
No |
46 |
No |
59 |
59 |
No |
43 |
No |
7.0 |