MediaTrackSettings: deviceId-Eigenschaft

Das deviceId-Attribut des MediaTrackSettings-Wörterbuchs ist ein String, der die Quelle für den entsprechenden MediaStreamTrack für den Ursprung der Browsersitzung eindeutig identifiziert. Dies ermöglicht es Ihnen festzustellen, welcher Wert ausgewählt wurde, um Ihren angegebenen Einschränkungen für den Wert dieser Eigenschaft zu entsprechen, wie in der MediaTrackConstraints.deviceId-Eigenschaft beschrieben, die Sie beim Aufrufen von getUserMedia() angegeben haben.

Falls erforderlich, können Sie überprüfen, ob diese Einschränkung unterstützt wird, indem Sie den Wert von MediaTrackSupportedConstraints.deviceId prüfen, wie er von einem Aufruf von MediaDevices.getSupportedConstraints() zurückgegeben wird. In der Regel ist dies jedoch nicht notwendig, da Browser alle ihnen unbekannten Einschränkungen ignorieren.

Da RTP diese Information nicht enthält, werden zu einer WebRTC RTCPeerConnection gehörende Tracks niemals diese Eigenschaft enthalten.

Wert

Ein String, dessen Wert ein ursprungs-eindeutiger Identifikator für die Quelle des Tracks ist. Diese ID ist über mehrere Browsersitzungen für den gleichen Ursprung gültig und wird garantiert für alle anderen Ursprünge unterschiedlich sein, sodass Sie sie bedenkenlos verwenden können, um zu verlangen, dass dieselbe Quelle für mehrere Sitzungen verwendet wird.

Der tatsächliche Wert des Strings wird jedoch von der Quelle des Tracks bestimmt, und es gibt keine Garantie, welche Form er annehmen wird, obwohl die Spezifikation empfiehlt, dass es sich um einen GUID handelt.

Da es eine Eins-zu-Eins-Zuordnung von ID mit jeder Quelle gibt, werden alle Tracks mit derselben Quelle für jeden gegebenen Ursprung dieselbe ID teilen, sodass MediaStreamTrack.getCapabilities() immer genau einen Wert für deviceId zurückgibt. Das macht die Geräte-ID nicht nützlich für Änderungen an Einschränkungen, wenn MediaStreamTrack.applyConstraints() aufgerufen wird.

Hinweis: Eine Ausnahme von der Regel, dass Geräte-IDs über Browsersitzungen hinweg gleich sind: Der private Modus verwendet eine andere ID und ändert sie jede Browsersitzung.

Beispiele

Siehe das Beispiel Constraint Exerciser.

Spezifikationen

Specification
Media Capture and Streams
# dom-mediatrackconstraintset-deviceid

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch