The getPhotoCapabilities()
method of the ImageCapture
interface returns a Promise
that resolves with a PhotoCapabilities
object containing the ranges of available configuration options.
Syntax
const capabilitiesPromise = imageCaptureObj.getPhotoCapabilities()
Return value
A Promise
that resolves with a PhotoCapabilities
object.
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 | Status | Comment |
---|---|---|
MediaStream Image Capture The definition of 'getPhotoCapabilities()' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
getPhotoCapabilities | Chrome Full support 59 | Edge Full support ≤79 | Firefox ? | IE ? | Opera Full support 46 | Safari ? | WebView Android Full support 59 | Chrome Android Full support 59 | Firefox Android ? | Opera Android Full support 43 | Safari iOS ? | Samsung Internet Android Full support 7.0 |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.