Você pode trocar câmera, microfone ou alto-falante durante a chamada — sem sair, sem recarregar a página. Dois caminhos pra acessar: chevron rápido (estilo Google Meet) e engrenagem completa.
Caminho rápido: chevrons ao lado de mic/cam
Na Control Bar (barra inferior), ao lado dos botões Microfone e Câmera, há chevrons (setinhas pra cima ⌃):
Chevron do mic:
- Click abre popover compacto com 2 selectors:
- Microfone — lista de microfones disponíveis
- Alto-falante — lista de saídas de áudio (só aparece em Chrome/Edge desktop, ver limitação abaixo)
- Selecione → troca instantâneo, sem fechar a chamada
Chevron da câmera:
- Click abre popover com 1 selector:
- Câmera — lista de câmeras disponíveis
- Selecione → troca instantâneo
O chevron é igual ao do Google Meet/Teams. Se você esquece o atalho, simplesmente clica e vê.
Caminho completo: engrenagem na ControlBar
Botão engrenagem (⚙️) na Control Bar abre o MediaSettingsMenu com:
- Câmera — selector
- Microfone — selector
- Alto-falante — selector
- ─────
- Reconectar mídia — restart câmera + toggle mic (sem leave/join)
- Recarregar chamada — leave + join completo (último recurso)
Use o caminho completo quando:
- Quer ver as 3 listas de uma vez
- Quer fazer recovery (reconectar mídia ou recarregar)
- Conferir qual dispositivo está selecionado agora
Limitação do alto-falante
Trocar alto-falante via API só funciona em Chrome e Edge no desktop (suportam setSinkId corretamente). Em outros browsers:
- Safari (macOS/iOS): usa o output do sistema operacional. Pra mudar, troca em Configurações → Som → Saída
- Firefox: idem (limitação do navegador, não nossa)
- Chrome/Edge mobile: limitação parcial — pode não funcionar dependendo da versão Android
Se o selector de alto-falante não aparece no popover/engrenagem, é porque seu navegador não suporta. Use o sistema operacional.
APIs Daily por trás
Tecnicamente, a Kontato chama:
daily.setInputDevicesAsync({ videoDeviceId })— troca câmeradaily.setInputDevicesAsync({ audioDeviceId })— troca microfonedaily.setOutputDeviceAsync({ outputDeviceId })— troca alto-falante (Chrome/Edge)
A troca é assíncrona mas instantânea — em ~1-2 segundos o novo dispositivo está ativo. Sem perder áudio/vídeo das outras pessoas.
Diferença: trocar vs. Reconectar vs. Recarregar
| Ação | O que faz | Quando usar |
|---|---|---|
| Trocar dispositivo (chevron ou engrenagem) | Muda input/output sem mexer na sessão | Camera ficou pixelada, mic capta ruído, fone tá no Bluetooth errado |
| Reconectar mídia (engrenagem) | startCamera() + toggle mic. Mantém sessão Daily ativa | Câmera congelou, mic mudou pra outro app sem você ver, USB engasgou |
| Recarregar chamada (engrenagem) | daily.leave() + daily.join(). Reentra na sala em ~3s | Tile de outro participante congelou, conexão muito instável, último recurso |
Sempre tente do mais leve pro mais agressivo: trocar → reconectar → recarregar.
Casos comuns
"Plugou um headset USB durante a chamada e ele não foi reconhecido"
- Click no chevron do mic → o headset deve aparecer na lista (USB headsets aparecem como
Headset USB Audioou similar) - Selecione → áudio passa pro headset
- Mesmo pra alto-falante (se Chrome/Edge desktop)
"Câmera externa parou de funcionar, quero voltar pra integrada"
- Click no chevron da câmera → escolha a integrada do notebook
- Câmera externa "engasgou" pode precisar ser desplugada e replugada (Daily às vezes cacheia o stream)
"Áudio sai pelo speaker do laptop em vez do AirPods"
- Em Chrome/Edge: chevron do mic → selecione AirPods em alto-falante
- Em Safari/Firefox: vá em Configurações → Som → Saída e mude lá
"Cliente reclama que o som dele tá baixo"
- O alto-falante DELE é controlado pelo navegador dele — você não consegue trocar do seu lado
- Oriente ele pra ajustar volume do dispositivo + verificar se o dispositivo de saída certo está ativo
Persistência
Daily não persiste a escolha de dispositivo entre sessões — cada nova chamada pega o default do navegador. Se você sempre quer usar headset USB:
- Troca antes do pre-call test (no
PreCallTest) — esse fica armazenado pra essa sessão - Ou troca via chevron/engrenagem nas primeiras frações de segundo da chamada
Próximos artigos
- Layouts da sala — Grid, Speaker, Screen-share automático
- Qualidade da conexão — adaptive bitrate, reconectar
- Glossário de botões da sala — referência rápida