ImageCapture: getPhotoCapabilities()-Methode
Die getPhotoCapabilities()
Methode der ImageCapture
Schnittstelle gibt ein Promise
zurück,
das mit einem Objekt aufgelöst wird, das die Bereiche der
verfügbaren Konfigurationsoptionen enthält.
Syntax
getPhotoCapabilities()
Parameter
Keine.
Rückgabewert
Ein Promise
, das mit einem Objekt aufgelöst wird, das die folgenden Eigenschaften enthält:
redEyeReduction
-
Gibt einen der Werte
"never"
,"always"
oder"controllable"
zurück. Der Wert"controllable"
bedeutet, dass die Reduzierung des Rote-Augen-Effekts durch den Benutzer steuerbar ist. imageHeight
-
Gibt ein Objekt zurück, das den vom Benutzeragenten unterstützten Höhenbereich des Bildes angibt.
imageWidth
-
Gibt ein Objekt zurück, das den vom Benutzeragenten unterstützten Breitenbereich des Bildes angibt.
fillLightMode
-
Gibt ein Array der verfügbaren Optionen für das Fülllicht zurück. Optionen umfassen
auto
,off
oderflash
.
Ausnahmen
InvalidStateError
DOMException
-
Wird ausgelöst, wenn die
readyState
-Eigenschaft desMediaStreamTrack
, das im Konstruktor übergeben wird, nichtlive
ist. OperationError
DOMException
-
Wird ausgelöst, wenn der Vorgang aus irgendeinem Grund nicht abgeschlossen werden kann.
Beispiele
Das folgende Beispiel, entnommen aus Chrome's Image Capture / Photo Resolution Sample, verwendet die Ergebnisse von
getPhotoCapabilities()
, um die Größe eines Eingabebereichs zu ändern. Dieses Beispiel
zeigt auch, wie das ImageCapture
-Objekt mit einem
MediaStreamTrack
erstellt wird, das von einem Gerät aus einem MediaStream
abgerufen wird.
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));
Spezifikationen
Specification |
---|
MediaStream Image Capture # dom-imagecapture-getphotocapabilities |
Browser-Kompatibilität
BCD tables only load in the browser