MediaTrackConstraints: deviceId-Eigenschaft
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2017 browserübergreifend verfügbar.
Die deviceId-Eigenschaft des MediaTrackConstraints-Dictionaries ist ein ConstrainDOMString, der die gewünschten oder zwingenden Einschränkungen für den Wert der einschränkbaren Eigenschaft deviceId beschreibt.
Falls erforderlich, können Sie prüfen, ob diese Einschränkung unterstützt wird, indem Sie den Wert von deviceId überprüfen, den ein Aufruf von MediaDevices.getSupportedConstraints() zurückgibt. Normalerweise ist dies jedoch nicht nötig, da Browser ihnen unbekannte Einschränkungen ignorieren.
Da RTP diese Information nicht enthält, weisen Tracks, die mit einer WebRTC-RTCPeerConnection verknüpft sind, diese Eigenschaft niemals auf.
Wert
Ein auf ConstrainDOMString basierendes Objekt, das eine oder mehrere akzeptable, bevorzugte und/oder exakte (zwingende) Geräte-IDs angibt, die als Quelle für Medieninhalte infrage kommen.
Geräte-IDs sind für einen bestimmten Ursprung eindeutig und bleiben über Browsersitzungen hinweg für denselben Ursprung gleich. Der Wert von deviceId wird jedoch durch die Quelle des Track-Inhalts bestimmt, und die Spezifikation schreibt kein bestimmtes Format vor (empfiehlt aber eine Art GUID). Das bedeutet, dass ein bestimmter Track beim Aufruf von getCapabilities() nur einen Wert für deviceId zurückgibt.
Deshalb ist die Geräte-ID beim Aufruf von MediaStreamTrack.applyConstraints() nicht nützlich, da es nur einen möglichen Wert gibt. Sie können eine deviceId jedoch speichern und damit sicherstellen, dass Sie bei mehreren Aufrufen von getUserMedia() dieselbe Quelle erhalten.
Hinweis: Eine Ausnahme von der Regel, dass Geräte-IDs über Browsersitzungen hinweg gleich bleiben, ist der private Modus: Er verwendet eine andere ID, die sich mit jeder Browsersitzung ändert.
Beispiele
Sehen Sie sich das Beispiel Constraint exerciser an.
Spezifikationen
| Spezifikation |
|---|
| Media Capture and Streams> # dom-mediatrackconstraintset-deviceid> |