MediaStreamTrack: getCapabilities() Methode
Baseline 2024Newly available
Since October 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Die getCapabilities()
Methode der
MediaStreamTrack
Schnittstelle gibt ein Objekt zurück, das die akzeptierten Werte oder den Wertebereich für jede begrenzbare Eigenschaft des zugehörigen MediaStreamTrack
beschreibt, basierend auf der Plattform und dem User-Agent.
Sobald Sie wissen, was die Fähigkeiten des Browsers sind, kann Ihr Skript
applyConstraints()
verwenden, um zu verlangen, dass der Track so konfiguriert wird, dass er ideale oder akzeptable Einstellungen erfüllt. Siehe Capabilities, constraints, and settings für Details, wie man mit begrenzbaren Eigenschaften arbeitet.
Syntax
getCapabilities()
Parameter
Keine.
Rückgabewert
Ein MediaTrackCapabilities
Objekt, das den akzeptierten Wert oder den Wertebereich für jede begrenzbare Eigenschaft des User-Agents angibt. Dies kann die folgenden Mitglieder enthalten:
deviceId
-
Ein
ConstrainDOMString
Objekt, das die Geräte-ID enthält. groupId
-
Ein
ConstrainDOMString
Objekt, das eine Gruppen-ID enthält. autoGainControl
-
Ein
ConstrainBoolean
Objekt, das angibt, ob die Quelle automatisch die Verstärkung des Eingangssignals steuern kann. Wenn die Funktion von einem Skript gesteuert werden kann, wird die Quelle sowohltrue
als auchfalse
als mögliche Werte melden. channelCount
-
Ein
ConstrainULong
Objekt, das die Kanalanzahl oder den Kanalanzahlbereich enthält. echoCancellation
-
Ein
ConstrainBoolean
Objekt, das angibt, ob die Quelle Echo-Unterdrückung bereitstellen kann. Wenn die Funktion von einem Skript gesteuert werden kann, wird die Quelle sowohltrue
als auchfalse
als mögliche Werte melden. latency
-
Ein
ConstrainDouble
Objekt, das die Latenz oder den Latenzbereich enthält. noiseSuppression
-
Ein
ConstrainBoolean
Objekt, das angibt, ob die Quelle Rauschunterdrückung bereitstellen kann. Wenn die Funktion von einem Skript gesteuert werden kann, wird die Quelle sowohltrue
als auchfalse
als mögliche Werte melden. sampleRate
-
Ein
ConstrainULong
Objekt, das die Abtastrate oder den Abtastratebereich enthält. sampleSize
-
Ein
ConstrainULong
Objekt, das die Abtastgröße oder den Abtastgrößenbereich enthält. aspectRatio
-
Ein
ConstrainDouble
Objekt, das das Video-Seitenverhältnis (Breite in Pixeln geteilt durch Höhe in Pixeln) oder den Seitenverhältnisbereich enthält. facingMode
-
Ein
ConstrainDOMString
Objekt, das den Kameramodus enthält. Eine Kamera kann mehrere Modus-Werte melden, zum Beispiel "left" und "user". frameRate
-
Ein
ConstrainDouble
Objekt, das die Bildrate oder den Bildratenbereich angibt, der akzeptabel ist. height
-
Ein
ConstrainULong
Objekt, das die Videohöhe oder den Höhenbereich in Pixeln enthält. width
-
Ein
ConstrainULong
Objekt, das die Videobreite oder den Breitenbereich in Pixeln enthält. resizeMode
-
Ein
ConstrainDOMString
Objekt, das den Modus oder eine Liste von Modi enthält, die der User-Agent verwenden kann, um die Auflösung des Videotracks abzuleiten.
Beispiele
Das folgende Fragment führt dazu, dass der Benutzer um Erlaubnis gebeten wird, auf seine lokale Kamera und sein Mikrofon zuzugreifen. Sobald die Erlaubnis erteilt ist, werden MediaTrackCapabilities
Objekte in die Konsole protokolliert, die die Fähigkeiten jedes MediaStreamTrack
beschreiben:
navigator.mediaDevices
.getUserMedia({ video: true, audio: true })
.then((stream) => {
const tracks = stream.getTracks();
tracks.map((t) => console.log(t.getCapabilities()));
});
Ein Beispiel für ein Fähigkeitenobjekt sieht folgendermaßen aus:
{
"autoGainControl": [true, false],
"channelCount": {
"max": 1,
"min": 1
},
"deviceId": "jjxEMqxIhGdryqbTjDrXPWrkjy55Vte70kWpMe3Lge8=",
"echoCancellation": [true, false],
"groupId": "o2tZiEj4MwOdG/LW3HwkjpLm1D8URat4C5kt742xrVQ=",
"noiseSuppression": [true, false]
}
Der genaue Inhalt des Objekts hängt vom Browser und der Medien-Hardware ab.
Spezifikationen
Specification |
---|
Media Capture and Streams # dom-mediastreamtrack-getcapabilities |
Browser-Kompatibilität
Siehe auch
InputDeviceInfo.getCapabilities()
, das ebenfalls einMediaTrackCapabilities
Objekt zurückgibt.