MediaTrackConstraints
Das MediaTrackConstraints
Wörterbuch wird verwendet, um eine Reihe von Fähigkeiten zu beschreiben und den Wert oder die Werte, die jede davon annehmen kann. Ein Constraints-Wörterbuch wird in applyConstraints()
übergeben, damit ein Skript eine Reihe von genauen (erforderlichen) Werten oder Bereichen und/oder bevorzugten Werten oder Bereichen für den Track festlegen kann. Der zuletzt angeforderte Satz benutzerdefinierter Einschränkungen kann durch Aufrufen von getConstraints()
abgerufen werden.
Einschränkungen
Die folgenden Typen werden verwendet, um eine Einschränkung für eine Eigenschaft anzugeben. Sie ermöglichen es Ihnen, einen oder mehrere exact
Werte anzugeben, von denen einer der Parameterwert sein muss, oder eine Reihe von ideal
Werten, die nach Möglichkeit verwendet werden sollten. Sie können auch einen einzelnen Wert (oder ein Array von Werten) angeben, den der Benutzeragent nach Möglichkeit erfüllen wird, sobald alle strengeren Einschränkungen angewendet wurden.
Um mehr darüber zu erfahren, wie Einschränkungen funktionieren, siehe Fähigkeiten, Einschränkungen und Einstellungen.
Note:
min
undexact
Werte sind in Einschränkungen, die inMediaDevices.getDisplayMedia()
Aufrufen verwendet werden, nicht erlaubt — sie erzeugen einenTypeError
— aber sie sind in Einschränkungen erlaubt, die inMediaStreamTrack.applyConstraints()
Aufrufen verwendet werden.
ConstrainBoolean
Der ConstrainBoolean
Einschränkungs-Typ wird verwendet, um eine Einschränkung für eine Eigenschaft zu spezifizieren, deren Wert ein Boolean-Wert ist. Sein Wert kann entweder auf einen Boolean (true
oder false
) gesetzt werden oder auf ein Objekt, das die folgenden Eigenschaften enthält:
exact
-
Ein Boolean, der der Wert der Eigenschaft sein muss. Wenn die Eigenschaft nicht auf diesen Wert gesetzt werden kann, schlägt die Übereinstimmung fehl.
ideal
-
Ein Boolean, der einen idealen Wert für die Eigenschaft spezifiziert. Wenn möglich, wird dieser Wert verwendet, aber wenn es nicht möglich ist, verwendet der Benutzeragent die nächstmögliche Übereinstimmung.
ConstrainDouble
Der ConstrainDouble
Einschränkungs-Typ wird verwendet, um eine Einschränkung für eine Eigenschaft zu spezifizieren, deren Wert eine doppelt-precise Fließkommazahl ist. Sein Wert kann entweder auf eine Zahl gesetzt werden oder auf ein Objekt, das die folgenden Eigenschaften enthält:
max
-
Eine Dezimalzahl, die den größten zulässigen Wert der beschriebenen Eigenschaft angibt. Wenn der Wert nicht gleich oder kleiner als dieser Wert bleiben kann, schlägt die Übereinstimmung fehl.
min
-
Eine Dezimalzahl, die den kleinsten zulässigen Wert der beschriebenen Eigenschaft angibt. Wenn der Wert nicht gleich oder größer als dieser Wert bleiben kann, schlägt die Übereinstimmung fehl.
exact
-
Eine Dezimalzahl, die einen bestimmten, erforderlichen Wert anzeigt, den die Eigenschaft haben muss, um als akzeptabel zu gelten.
ideal
-
Eine Dezimalzahl, die einen idealen Wert für die Eigenschaft spezifiziert. Wenn möglich, wird dieser Wert verwendet, aber wenn es nicht möglich ist, verwendet der Benutzeragent die nächstmögliche Übereinstimmung.
ConstrainDOMString
Der ConstrainDOMString
Einschränkungs-Typ wird verwendet, um eine Einschränkung für eine Eigenschaft festzulegen, deren Wert eine Zeichenkette ist. Sein Wert kann entweder auf eine Zeichenkette, ein Array von Zeichenketten, oder ein Objekt gesetzt werden, das die folgenden Eigenschaften enthält:
exact
-
Eine Zeichenkette oder ein Array von Zeichenketten, von denen eine der Wert der Eigenschaft sein muss. Wenn die Eigenschaft nicht auf einen der aufgelisteten Werte gesetzt werden kann, schlägt die Übereinstimmung fehl.
ideal
-
Eine Zeichenkette oder ein Array von Zeichenketten, die ideale Werte für die Eigenschaft angeben. Wenn möglich, wird einer der aufgelisteten Werte verwendet, aber wenn es nicht möglich ist, verwendet der Benutzeragent die nächstmögliche Übereinstimmung.
ConstrainULong
Der ConstrainULong
Einschränkungs-Typ wird verwendet, um eine Einschränkung für eine Eigenschaft festzulegen, deren Wert eine ganze Zahl ist. Sein Wert kann entweder auf eine Zahl gesetzt werden oder auf ein Objekt, das die folgenden Eigenschaften enthält:
max
-
Eine ganze Zahl, die den größten zulässigen Wert der beschriebenen Eigenschaft angibt. Wenn der Wert nicht gleich oder kleiner als dieser Wert bleiben kann, schlägt die Übereinstimmung fehl.
min
-
Eine ganze Zahl, die den kleinsten zulässigen Wert der beschriebenen Eigenschaft angibt. Wenn der Wert nicht gleich oder größer als dieser Wert bleiben kann, schlägt die Übereinstimmung fehl.
exact
-
Eine ganze Zahl, die einen bestimmten, erforderlichen Wert anzeigt, den die Eigenschaft haben muss, um als akzeptabel zu gelten.
ideal
-
Eine ganze Zahl, die einen idealen Wert für die Eigenschaft angibt. Wenn möglich, wird dieser Wert verwendet, aber wenn es nicht möglich ist, verwendet der Benutzeragent die nächstmögliche Übereinstimmung.
Instanzeigenschaften
Eine Kombination, aber nicht unbedingt alle, der folgenden Eigenschaften werden im Objekt vorhanden sein. Dies kann daran liegen, dass ein bestimmter Browser die Eigenschaft nicht unterstützt oder weil sie nicht zutrifft. Zum Beispiel, weil RTP einige dieser Werte während der Verhandlung einer WebRTC-Verbindung nicht bereitstellt, wird ein Track, der mit einer RTCPeerConnection
verbunden ist, bestimmte Werte nicht enthalten, wie facingMode
oder groupId
.
Instanzeigenschaften aller Medienspuren
deviceId
-
Ein
ConstrainDOMString
Objekt, das eine Geräte-ID oder ein Array von Geräte-IDs angibt, die akzeptabel und/oder erforderlich sind. groupId
-
Ein
ConstrainDOMString
Objekt, das eine Gruppen-ID oder ein Array von Gruppen-IDs angibt, die akzeptabel und/oder erforderlich sind.
Instanzeigenschaften von Audiospuren
autoGainControl
-
Ein
ConstrainBoolean
Objekt, das angibt, ob die automatische Gain-Kontrolle bevorzugt und/oder erforderlich ist. channelCount
-
Ein
ConstrainULong
, der die Kanalanzahl oder den Bereich der Kanalanzahlen angibt, die akzeptabel und/oder erforderlich sind. echoCancellation
-
Ein
ConstrainBoolean
Objekt, das angibt, ob die Echounterdrückung bevorzugt und/oder erforderlich ist. latency
-
Ein
ConstrainDouble
, der die Latenz oder den Bereich der Latenzen angibt, die akzeptabel und/oder erforderlich sind. noiseSuppression
-
Ein
ConstrainBoolean
, der festlegt, ob die Geräuschunterdrückung bevorzugt und/oder erforderlich ist. sampleRate
-
Ein
ConstrainULong
, der die Abtastrate oder den Bereich der Abtastraten angibt, die akzeptabel und/oder erforderlich sind. sampleSize
-
Ein
ConstrainULong
, der die Abtastgröße oder den Bereich der Abtastgrößen angibt, die akzeptabel und/oder erforderlich sind. volume
Veraltet Nicht standardisiert-
Ein
ConstrainDouble
, der das Volumen oder den Bereich der Volumina angibt, die akzeptabel und/oder erforderlich sind.
Instanzeigenschaften von Bildspuren
- whiteBalanceMode
-
Ein
String
, der eines von"none"
,"manual"
,"single-shot"
, oder"continuous"
spezifiziert. - exposureMode
-
Ein
String
, der eines von"none"
,"manual"
,"single-shot"
, oder"continuous"
spezifiziert. - focusMode
-
Ein
String
, der eines von"none"
,"manual"
,"single-shot"
, oder"continuous"
spezifiziert. - pointsOfInterest
-
Die Pixelkoordinaten auf dem Sensor eines oder mehrerer interessanter Punkte. Dies ist entweder ein Objekt in der Form { x:value, y:value } oder ein Array solcher Objekte, wobei value ein doppelt-precise Integer ist.
- exposureCompensation
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der die Anpassung der Blendenstufe um bis zu ±3 angibt. - colorTemperature
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der eine gewünschte Farbtemperatur in Grad Kelvin angibt. - iso
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der eine gewünschte ISO-Einstellung angibt. - brightness
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der eine gewünschte Helligkeitseinstellung angibt. - contrast
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der den Grad des Unterschieds zwischen hell und dunkel angibt. - saturation
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der den Grad der Farbintensität angibt. -
Ein
ConstrainDouble
(ein doppelt-precise Integer), der die Intensität von Kanten angibt. - focusDistance
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der den Abstand zu einem fokussierten Objekt angibt. - zoom
-
Ein
ConstrainDouble
(ein doppelt-precise Integer), der die gewünschte Brennweite angibt. - torch
-
Ein boolescher Wert, der definiert, ob das Fülllicht kontinuierlich verbunden ist, was bedeutet, dass es eingeschaltet bleibt, solange die Spur aktiv ist.
Instanzeigenschaften von Videospuren
aspectRatio
-
Ein
ConstrainDouble
, der das Video Seitenverhältnis oder den Bereich von Seitenverhältnissen angibt, die akzeptabel und/oder erforderlich sind. facingMode
-
Ein
ConstrainDOMString
Objekt, das eine Richtung oder ein Array von Richtungen angibt, die akzeptabel und/oder erforderlich sind. frameRate
-
Ein
ConstrainDouble
, das die Bildrate oder den Bereich von Bildraten angibt, die akzeptabel und/oder erforderlich sind. height
-
Ein
ConstrainULong
, der die Videohöhe oder den Bereich von Höhen angibt, die akzeptabel und/oder erforderlich sind. width
-
Ein
ConstrainULong
, der die Videobreite oder den Bereich von Breiten angibt, die akzeptabel und/oder erforderlich sind. - resizeMode
-
Ein
ConstrainDOMString
Objekt, das einen Modus oder ein Array von Modi angibt, die der UA verwenden kann, um die Auflösung eines Video-Tracks abzuleiten. Erlaubte Werte sindnone
undcrop-and-scale
.none
bedeutet, dass der Benutzeragent die Auflösung verwendet, die von der Kamera, ihrem Treiber oder dem Betriebssystem geliefert wird.crop-and-scale
bedeutet, dass der Benutzeragent Zuschneiden und Verkleinern am Kameraausgang verwenden kann, um andere Einschränkungen zu erfüllen, die die Auflösung betreffen.
Instanzeigenschaften von freigegebenen Bildschirmspuren
Diese Einschränkungen gelten für die video Eigenschaft des Objekts, das in getDisplayMedia()
übergeben wird, um einen Stream für die Bildschirmfreigabe zu erhalten.
displaySurface
-
Ein
ConstrainDOMString
, der die Arten von Bildschirmoberflächen angibt, die vom Benutzer ausgewählt werden dürfen. Dies kann eine der folgenden Zeichenketten sein oder eine Liste von ihnen, um mehrere Quelloberflächen zu ermöglichen:browser
-
Der Stream enthält die Inhalte eines einzelnen Browser-Tabs, der vom Benutzer ausgewählt wurde.
monitor
-
Die Videospur des Streams enthält die vollständigen Inhalte von einem oder mehreren Bildschirmen des Benutzers.
window
-
Der Stream enthält ein einzelnes Fenster, das vom Benutzer zur Freigabe ausgewählt wurde.
logicalSurface
-
Ein
ConstrainBoolean
Wert, der einen einzelnen booleschen Wert oder eine Menge davon enthalten kann, um anzugeben, ob es erlaubt ist, dass der Benutzer Quelloberflächen auswählt, die nicht direkt den Anzeigebereichen entsprechen. Diese können Hintergrundpuffer für Fenster umfassen, um die Erfassung von Fensterinhalten zu ermöglichen, die von anderen davor befindlichen Fenstern verdeckt werden, oder Puffer, die größere Dokumente enthalten, die zum vollständigen Anzeigen in ihren Fenstern durchgescrollt werden müssen. suppressLocalAudioPlayback
Experimentell-
Ein
ConstrainBoolean
Wert, der die angeforderten oder zwingend erforderlichen Einschränkungen beschreibt, die auf den Wert dersuppressLocalAudioPlayback
einschränkbaren Eigenschaft angewendet werden. Diese Eigenschaft steuert, ob der Ton, der in einem Tab abgespielt wird, weiterhin über die lokalen Lautsprecher eines Benutzers wiedergegeben wird, wenn der Tab erfasst wird.
Spezifikationen
Specification |
---|
Media Capture and Streams # dom-mediatrackconstraints |
Siehe auch
- Media Capture und Streams API
- Fähigkeiten, Einschränkungen und Einstellungen
- Screen Capture API
- Verwendung der Screen Capture API
MediaDevices.getUserMedia()
MediaStreamTrack.getConstraints()
MediaStreamTrack.applyConstraints()
MediaDevices.getSupportedConstraints()
MediaTrackSupportedConstraints
MediaStreamTrack.getSettings()