Mit WebRTC ist es einfach, Nutzern die Wahl von Audio- und Videoquellen im Browser zu ermöglichen. Allerdings implementieren nicht alle webbasierten Videoapps Steuerelemente zum Wechseln der Webcam-Videoquelle.
Bei manchen Browsern ist das kein Problem. Firefox und Edge lassen Nutzer beispielsweise eine Videoquelle pro Website auswählen. Google Chrome hingegen erlaubt es Nutzern zwar, über die spezielle chrome://settings/content/camera-URL ihre Standard-Webcam auszuwählen, aber diese Standardkamera wird von WebRTC nicht verwendet. Viele Nutzer haben sich in den Google-Chrome-Foren darüber beschwert, aber eine Lösung ist nicht in Sicht.
Wenn Nutzer also Apps verwenden, die keine Videoquellenauswahl unterstützen (wie vMix), und dabei einen Browser nutzen, der keine websitebasierte Videoquellenauswahl erlaubt (wie Chrome), sitzen sie fest. Videoapps, die keine Kamerawahl zulassen, treffen am Ende eine willkürliche Wahl, was bedeutet, dass Nutzer möglicherweise nicht die gewünschte Kamera verwenden können.
Zum Glück gibt es einen schnellen Trick, mit dem wir eine webbasierte Videoapp in Chrome dazu zwingen können, eine bestimmte Kamera auszuwählen.
So funktioniert es für den vmixcall.com-Dienst von vMix:
- Öffne Chrome und starte deine Videochat-Sitzung.
- Öffne die „Entwicklertools“ in Chrome mit der Tastenkombination
⌥ Option+⌘ Cmd+ioder über das MenüMore Tools→Developer Tools. - Füge den folgenden Code in den Standard-Tab „Konsole“ ein und drücke die Eingabetaste:
function gotDevices(deviceInfos) {
// Look for the Reincubate Camo video input device.
var deviceId;
for (deviceInfo of deviceInfos) {
if (deviceInfo.kind === 'videoinput' && deviceInfo.label === 'Reincubate Camo') {
deviceId = deviceInfo.deviceId
break;
}
}
if (deviceId) {
const constraints = {
audio: true,
video: { deviceId: { exact: deviceId } }
};
navigator.mediaDevices.getUserMedia(constraints).then(gotStream);
} else {
console.error('Unable to find Reincubate Camo video input device.');
}
}
function gotStream (stream) {
// Tell the vMix Call session to switch to a different stream.
try {
session.gotLocalStream(stream);
} catch {
console.error('Unable to trigger vMix Call session stream update.');
}
}
// Ask the browser for a list of media devices.
navigator.mediaDevices.enumerateDevices().then(gotDevices)
Danach sollte Chrome automatisch zur Camo-Videoquelle wechseln. Falls dieser Workaround bei dir nicht funktioniert, lass es uns bitte in den Kommentaren wissen oder wende dich direkt an uns, damit wir dir helfen können.
So sieht das aus:
Wenn du das in Zukunft vermeiden möchtest, wende dich an deinen Videoanbieter und bitte ihn, eine Videoauswahl in seine App einzubauen.
