Cómo cambiar la fuente de video de la cámara web en aplicaciones web que no la admiten
Es fácil con WebRTC permitir que el usuario elija fuentes de audio y video en un navegador. Sin embargo, no todas las aplicaciones de video basadas en web implementan controles para cambiar la fuente de video de la cámara web.
Con algunos navegadores esto no es un problema. Por ejemplo, tanto Firefox como Edge permiten a los usuarios seleccionar una fuente de video por sitio . Sin embargo, aunque Google Chrome permite a los usuarios elegir su cámara web predeterminada utilizando la URL especial chrome://settings/content/camera
, WebRTC no utiliza esta opción de cámara predeterminada. Muchos usuarios se han quejado de esto en los foros de Google Chrome, pero no hay una solución en el horizonte.
Como tal, cuando los usuarios usan aplicaciones que no implementan la selección de fuente de video (como vMix) y usan un navegador que no permite la selección de fuente de video basada en el sitio (como Chrome), están bloqueados. Las aplicaciones de video que no permiten a los usuarios elegir una cámara de video terminan haciendo una elección arbitraria, lo que significa que es posible que los usuarios no puedan usar la cámara que desean.
Afortunadamente, hay un truco rápido que podemos usar para forzar a una aplicación de video basada en la web en Chrome a seleccionar una cámara específica.
A continuación, le indicamos cómo hacerlo para el servicio vmixcall.com de vMix:
Cargue Chrome e inicie su sesión de chat de video.
Abra "Herramientas para desarrolladores" en Chrome con el método abreviado de teclado
⌥ Option
+⌘ Cmd
+i
, o use el menúMore Tools
→Developer Tools
.Pegue el siguiente código en la pestaña "Consola" predeterminada y presione Intro:
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)
Una vez hecho esto, Chrome debería cambiar automáticamente a la fuente de video Camo. Si esta solución no funciona para usted, háganoslo saber en los comentarios o comuníquese con nosotros directamente para que podamos ayudarlo.
Así es como se ve eso:
Si desea evitar la necesidad de esto en el futuro, presione a su proveedor de video para que agregue una selección de video en su aplicación.