Como alterar a fonte de vídeo da webcam em aplicativos da web que não são compatíveis
É fácil com o WebRTC permitir que o usuário escolha fontes de áudio e vídeo em um navegador. No entanto, nem todos os aplicativos de vídeo baseados na web implementam controles para alterar a fonte de vídeo da webcam.
Com alguns navegadores, isso não é um problema. Por exemplo, o Firefox e o Edge permitem que os usuários selecionem uma fonte de vídeo por site . No entanto, embora o Google Chrome permita que os usuários escolham sua webcam padrão usando o URL especial chrome://settings/content/camera
, esta opção de câmera padrão não é usada pelo WebRTC. Muitos usuários reclamaram sobre isso nos fóruns do Google Chrome, mas nenhuma solução está no horizonte.
Assim, quando os usuários usam aplicativos que não implementam a seleção da fonte de vídeo (como o vMix) e usam um navegador que não permite a seleção da fonte de vídeo baseada no site (como o Chrome), eles ficam presos. Os aplicativos de vídeo que não permitem que os usuários escolham uma câmera de vídeo acabam fazendo uma escolha arbitrária, o que significa que os usuários podem não conseguir usar a câmera que desejam.
Felizmente, há um hack rápido que podemos usar para forçar um aplicativo de vídeo baseado na web no Chrome a selecionar uma câmera específica.
Veja como fazer isso para o serviço vmixcall.com do vMix:
Carregue o Chrome e inicie sua sessão de chat de vídeo.
Abra "Ferramentas do desenvolvedor" no Chrome com o atalho de teclado
⌥ Option
+⌘ Cmd
+i
ou usando oMore Tools
→Developer Tools
.Cole o seguinte código na guia "Console" padrão e pressione Enter:
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)
Feito isso, o Chrome deve mudar automaticamente para a fonte de vídeo Camo. Se esta solução alternativa não funcionar para você, informe-nos nos comentários ou entre em contato conosco diretamente para que possamos ajudá-lo.
Isto é o que parece:
Se você quiser evitar a necessidade disso no futuro, peça ao seu provedor de vídeo para adicionar uma seleção de vídeo em seu aplicativo.