--- title: PhotoCapabilities slug: Web/API/PhotoCapabilities tags: - API - Experimental - Interface - MediaStream Image Capture API - PhotoCapabilities - Reference translation_of: Web/API/PhotoCapabilities ---
MediaStream Image Capture API의 PhotoCapabilities 인터페이스는 장착된 촬영 장치에서 사용 가능한 설정 옵션을 제공합니다. PhotoCapabilities 객체는 {{domxref("ImageCapture.getPhotoCapabilities()")}}를 사용해 가져올 수 있습니다..
"never", "always", "controllable"로, "controllable"이어야 설정 가능합니다.auto, off, flash입니다.다음 예제는 Chrome의 Image Capture / Photo Resolution Sample에서 가져온 코드로, {{domxref("ImageCapture.getPhotoCapabilities", "getPhotoCapabilities()")}}를 사용해 범위 입력 칸의 크기를 수정합니다. 또한 장치의 {{domxref("MediaStream")}}에서 가져온 {{domxref("MediaStreamTrack")}} 객체를 사용해 {{domxref("ImageCapture")}} 객체를 생성하는 부분도 포함하고 있습니다.
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));
| Specification | Status | Comment |
|---|---|---|
| {{SpecName('MediaStream Image','#photocapabilities-section','PotoCapabilities')}} | {{Spec2('MediaStream Image')}} | Initial definition. |
{{Compat("api.PhotoCapabilities")}}