MediaStreamTrack: getCapabilities()-Methode
Die getCapabilities()
-Methode der Schnittstelle MediaStreamTrack
gibt ein Objekt zurück, das die akzeptierten Werte oder Wertbereiche für jede einschränkbare 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 für die Anpassung des Tracks an ideale oder akzeptable Einstellungen zu bitten. Siehe Capabilities, constraints, and settings für Details dazu, wie mit einschränkbaren Eigenschaften gearbeitet wird.
Syntax
getCapabilities()
Parameter
Keine.
Rückgabewert
Ein MediaTrackCapabilities
-Objekt, das die akzeptierten Werte oder Wertbereiche angibt, die für jede der einschränkbaren Eigenschaften des User-Agents unterstützt werden. 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 das Eingangssignal automatisch steuern kann. Wenn das Feature durch ein Skript gesteuert werden kann, meldet die Quelle sowohl true als auch false als mögliche Werte. channelCount
-
Ein
ConstrainULong
-Objekt, das die Anzahl der Kanäle oder den Bereich der Kanäle enthält. echoCancellation
-
Ein
ConstrainBoolean
-Objekt, das angibt, ob die Quelle Echounterdrückung bieten kann. Wenn das Feature durch ein Skript gesteuert werden kann, meldet die Quelle sowohltrue
als auchfalse
als mögliche Werte. latency
-
Ein
ConstrainDouble
-Objekt, das die Latenz oder den Bereich der Latenzen enthält. noiseSuppression
-
Ein
ConstrainBoolean
-Objekt, das angibt, ob die Quelle Rauschunterdrückung bieten kann. Wenn das Feature durch ein Skript gesteuert werden kann, meldet die Quelle sowohltrue
als auchfalse
als mögliche Werte. sampleRate
-
Ein
ConstrainULong
-Objekt, das die Abtastrate oder den Bereich der Abtastraten enthält. sampleSize
-
Ein
ConstrainULong
-Objekt, das die Abtastgröße oder den Bereich der Abtastgrößen enthält. aspectRatio
-
Ein
ConstrainDouble
-Objekt, das das Video-Seitenverhältnis (Breite in Pixeln geteilt durch Höhe in Pixeln) oder den Bereich der Seitenverhältnisse enthält. facingMode
-
Ein
ConstrainDOMString
-Objekt, das den Kameramodus enthält. Eine Kamera kann mehrere Ausrichtungen melden, zum Beispiel "left" und "user". frameRate
-
Ein
ConstrainDouble
-Objekt, das die Bildrate oder den Bereich akzeptabler Bildraten enthält. height
-
Ein
ConstrainULong
-Objekt, das die Videohöhe oder den Bereich, in Pixeln genannt, enthält. width
-
Ein
ConstrainULong
-Objekt, das die Videobreite oder den Bereich, in Pixeln genannt, enthält. resizeMode
-
Ein
ConstrainDOMString
-Objekt, das den Modus oder ein Array von Modi enthält, die der User-Agent verwenden kann, um die Auflösung der Videospur abzuleiten.
Beispiele
Der folgende Codeausschnitt führt dazu, dass der Benutzer um Erlaubnis gebeten wird, auf seine lokale Kamera und sein Mikrofon zuzugreifen. Sobald die Erlaubnis erteilt wird, werden MediaTrackCapabilities
-Objekte im Konsolenprotokoll angezeigt, die die Fähigkeiten jeder 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 so 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 Medienhardware ab.
Spezifikationen
Specification |
---|
Media Capture and Streams # dom-mediastreamtrack-getcapabilities |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
InputDeviceInfo.getCapabilities()
, die ebenfalls einMediaTrackCapabilities
-Objekt zurückgibt.