MediaTrackSettings
Das MediaTrackSettings
Wörterbuch wird verwendet, um die aktuellen konfigurierten Werte für jede Einstellung eines MediaStreamTrack
zurückzugeben. Diese Werte werden so genau wie möglich den zuvor mit einem MediaTrackConstraints
Objekt beschriebenen Einschränkungen entsprechen und mit applyConstraints()
festgelegt wurden. Sie werden den Standardeinschränkungen für alle Eigenschaften entsprechen, deren Einschränkungen nicht geändert wurden oder deren angepasste Einschränkungen nicht erfüllt werden konnten.
Um mehr darüber zu erfahren, wie Einschränkungen und Einstellungen funktionieren, siehe Fähigkeiten, Einschränkungen und Einstellungen.
Instanz-Eigenschaften
Einige oder alle der folgenden Punkte werden im Objekt enthalten sein, entweder weil sie vom Browser nicht unterstützt werden oder weil sie aufgrund des Kontexts nicht verfügbar sind. Zum Beispiel, weil RTP einige dieser Werte während der Verhandlung einer WebRTC-Verbindung nicht bereitstellt, wird ein mit einer RTCPeerConnection
assoziierter Track bestimmte Werte wie facingMode
oder groupId
nicht enthalten.
Instanz-Eigenschaften aller Medientracks
deviceId
-
Ein String, der den aktuellen Wert der
deviceId
Eigenschaft angibt. Die Geräte-ID ist ein herkunftseindeutiger String, der die Quelle des Tracks identifiziert; dies ist normalerweise eine GUID. Dieser Wert ist spezifisch für die Quelle der Track-Daten und kann nicht zur Festlegung von Einschränkungen verwendet werden; er kann jedoch bei der anfänglichen Auswahl von Medien bei einem Aufruf vonMediaDevices.getUserMedia()
verwendet werden. groupId
-
Ein String, der den aktuellen Wert der
groupId
Eigenschaft angibt. Die Gruppen-ID ist ein sitzungseindeutiger String, der die Quellgruppe des Tracks identifiziert. Zwei Geräte (wie durch diedeviceId
identifiziert) gelten als Teil derselben Gruppe, wenn sie vom selben physischen Gerät stammen. Beispielsweise würden die Audioein- und -ausgabegeräte für den Lautsprecher und das Mikrofon, die in ein Telefon eingebaut sind, dieselbe Gruppen-ID teilen, da sie Teil desselben physischen Geräts sind. Das Mikrofon eines Headsets hätte jedoch eine andere ID. Dieser Wert ist spezifisch für die Quelle der Track-Daten und kann nicht zur Festlegung von Einschränkungen verwendet werden; er kann jedoch bei der anfänglichen Auswahl von Medien bei einem Aufruf vonMediaDevices.getUserMedia()
verwendet werden.
Instanz-Eigenschaften von Audiotracks
autoGainControl
-
Ein Boolean, der den aktuellen Wert der
autoGainControl
Eigenschaft angibt, dietrue
ist, wenn die automatische Verstärkungsregelung aktiviert ist, andernfallsfalse
. channelCount
-
Ein Long-Integer-Wert, der den aktuellen Wert der
channelCount
Eigenschaft angibt und die Anzahl der Audiokanäle auf dem Track spezifiziert (daher wird angegeben, wie viele Audio-Samples in jedem Audio-Frame existieren). Dies ist 1 für Mono, 2 für Stereo usw. echoCancellation
-
Ein Boolean, der den aktuellen Wert der
echoCancellation
Eigenschaft angibt, dertrue
ist, wenn die Echounterdrückung aktiviert ist, andernfallsfalse
. latency
-
Ein Gleitkommawert mit doppelter Genauigkeit, der den aktuellen Wert der
latency
Eigenschaft angibt, welche die Audiolatenz in Sekunden spezifiziert. Latenz ist die Zeit, die zwischen dem Beginn der Verarbeitung des Audios und der Datenverfügbarkeit bis zum nächsten Schritt im Audiowiedergabeprozess vergeht. Dieser Wert ist ein Zielwert; die tatsächliche Latenz kann aus verschiedenen Gründen variieren. noiseSuppression
-
Ein Boolean, der den aktuellen Wert der
noiseSuppression
Eigenschaft angibt, dietrue
ist, wenn die Geräuschunterdrückung aktiviert ist, andernfallsfalse
. sampleRate
-
Ein Long-Integer-Wert, der den aktuellen Wert der
sampleRate
Eigenschaft angibt und die Abtastrate in Samples pro Sekunde der Audiodaten spezifiziert. Standard-CD-Qualität-Audio hat beispielsweise eine Abtastrate von 41.000 Samples pro Sekunde. sampleSize
-
Ein Long-Integer-Wert, der den aktuellen Wert der
sampleSize
Eigenschaft angibt und die lineare Größe, in Bits, jedes Audiosamples spezifiziert. CD-Qualität-Audio ist zum Beispiel 16-Bit, also wäre dieser Wert in diesem Fall 16. suppressLocalAudioPlayback
-
Steuert, ob das Audio, das in einem Tab abgespielt wird, weiterhin aus den lokalen Lautsprechern des Benutzers gespielt wird, wenn der Tab aufgenommen wird.
volume
Veraltet Nicht standardisiert-
Ein Gleitkommawert mit doppelter Genauigkeit, der den aktuellen Wert der
volume
Eigenschaft angibt und den Lautstärkepegel des Tracks spezifiziert. Dieser Wert liegt zwischen 0.0 (stumm) und 1.0 (maximale unterstützte Lautstärke).
Instanz-Eigenschaften von Videotracks
aspectRatio
-
Ein Gleitkommawert mit doppelter Genauigkeit, der den aktuellen Wert der
aspectRatio
Eigenschaft angibt und auf 10 Dezimalstellen genau angegeben ist. Dies ist die Breite des Bildes in Pixeln geteilt durch die Höhe in Pixeln. Häufige Werte sind 1.3333333333 (für das klassische 4:3-Fernseh-"Standard"-Seitenverhältnis, das auch auf Tablets wie dem iPad von Apple verwendet wird), 1.7777777778 (für das 16:9-Breitbild hochauflösend) und 1.6 (für das 16:10-Seitenverhältnis, das bei Breitbildcomputern und -tablets üblich ist). facingMode
-
Ein String, der den aktuellen Wert der
facingMode
Eigenschaft angibt und die Richtung des Kamerablicks spezifiziert. Der Wert wird einer der folgenden sein:"user"
-
Eine Kamera, die auf den Benutzer zeigt (allgemein bekannt als "Selfie-Kamera"), die für Selbstporträts und Videoanrufe verwendet wird.
"environment"
-
Eine Kamera, die vom Benutzer weg zeigt (wenn der Benutzer auf den Bildschirm schaut). Dies ist typischerweise die qualitativ hochwertigste Kamera auf dem Gerät, die für allgemeine Fotografie verwendet wird.
"left"
-
Eine Kamera, die in die Umgebung zur Linken des Benutzers zeigt.
"right"
-
Eine Kamera, die in die Umgebung zur Rechten des Benutzers zeigt.
frameRate
-
Ein Gleitkommawert mit doppelter Genauigkeit, der den aktuellen Wert der
frameRate
Eigenschaft angibt, welche die Anzahl der Video-Frames pro Sekunde beschreibt, die der Track enthält. Wenn der Wert aus irgendeinem Grund nicht bestimmt werden kann, wird der Wert mit der vertikalen Synchronisierungsrate des Geräts übereinstimmen, auf dem der Benutzeragent läuft. height
-
Ein Long-Integer-Wert, der den aktuellen Wert der
height
Eigenschaft angibt und die Höhe der Video-Daten des Tracks in Pixeln spezifiziert. width
-
Ein Long-Integer-Wert, der den aktuellen Wert der
width
Eigenschaft angibt und die Breite der Video-Daten des Tracks in Pixeln spezifiziert. resizeMode
-
Ein String, der den aktuellen Wert der
resizeMode
Eigenschaft angibt und den Modus beschreibt, der vom Benutzeragenten verwendet wird, um die Auflösung des Tracks abzuleiten. Der Wert wird einer der folgenden sein:"none"
-
Der Track hat die Auflösung, die von der Kamera, ihrem Treiber oder dem Betriebssystem angeboten wird.
"crop-and-scale"
-
Die Auflösung des Tracks könnte das Ergebnis davon sein, dass der Benutzeragent Zuschneiden oder Herunterskalieren von einer höheren Kameraauflösung verwendet.
Instanz-Eigenschaften von freigegebenen Bildschirm-Tracks
Tracks, die Video enthalten, das von einem Benutzerbildschirm geteilt wird (unabhängig davon, ob die Bildschirmdaten vom gesamten Bildschirm oder einem Teil eines Bildschirms wie einem Fenster oder Tab stammen), werden im Allgemeinen wie Videotracks behandelt, mit der Ausnahme, dass sie auch die folgenden zusätzlichen Einstellungen unterstützen:
cursor
-
Ein String, der angibt, ob der Mauszeiger im erzeugten Stream enthalten ist und unter welchen Bedingungen. Mögliche Werte sind:
always
-
Die Maus ist im Video-Inhalt des
MediaStream