PhotoCapabilities
The PhotoCapabilities interface of the MediaStream Image Capture API provides available configuration options for an attached photographic device. A PhotoCapabilities object is retrieved by calling ImageCapture.getPhotoCapabilities().
Properties
-
PhotoCapabilities.redEyeReductionRead only -
Returns one of
"never","always", or"controllable". The"controllable"value means the device's red-eye reduction is controllable by the user. -
PhotoCapabilities.imageHeightRead only -
Returns a
MediaSettingsRangeobject indicating the image height range supported by the user agent. -
PhotoCapabilities.imageWidthRead only -
Returns a
MediaSettingsRangeobject indicating the image width range supported by the user agent. -
PhotoCapabilities.fillLightModeRead only -
Returns an array of available fill light options. Options may include
auto,off, orflash.
Example
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"]'); var 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.log('Argh!', error.name || error));
Specifications
| Specification |
|---|
| MediaStream Image Capture # photocapabilities-section |
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 | |
PhotoCapabilities |
59 |
≤79 |
No |
No |
46 |
No |
59 |
59 |
No |
43 |
No |
7.0 |
fillLightMode |
59 |
≤79 |
No |
No |
46 |
No |
59 |
59 |
No |
43 |
No |
7.0 |
imageHeight |
59 |
≤79 |
No |
No |
46 |
No |
59 |
59 |
No |
43 |
No |
7.0 |
imageWidth |
59 |
≤79 |
No |
No |
46 |
No |
59 |
59 |
No |
43 |
No |
7.0 |
redEyeReduction |
59 |
≤79 |
No |
No |
46 |
No |
59 |
59 |
No |
43 |
No |
7.0 |
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PhotoCapabilities