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 und exact Werte sind in Einschränkungen, die in MediaDevices.getDisplayMedia() Aufrufen verwendet werden, nicht erlaubt — sie erzeugen einen TypeError — aber sie sind in Einschränkungen erlaubt, die in MediaStreamTrack.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.

sharpness

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 sind none und crop-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 der suppressLocalAudioPlayback 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