Entrar em Contato

Programa do Curso

Gerenciamento de Dispositivos de Mídia

1. Permissões do Navegador com navigator.permissions

  • Acesso ao hardware:
    • Webcam
    • Microfone
  • Permissões opcionais:
    • Geolocalização
    • Notificações
    • Área de transferência (leitura/gravação)
  • Consulta e status das permissões
  • Limitações e compatibilidade entre navegadores

2. Leitura de Dispositivos de Mídia com navigator.mediaDevices

  • Listagem de dispositivos
  • Manipulação de mudanças nos dispositivos

3. Compatibilidade entre Navegadores

  • Uso das APIs:
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • Estratégia de fallback para Safari

4. Manipulação de Dispositivos de Mídia

  • Inicialização do dispositivo: getUserMedia(constraints)
  • Restrições de dispositivos de mídia
  • Início e parada de fluxos de mídia
  • Manipulação de mudanças nos dispositivos

5. Gravação de Dispositivos com MediaRecorder

  • Iniciar/parar streaming e gravação
  • Baixar arquivo .webm
  • Pré-visualização da forma de onda em tempo real

Add-ons Opcionais:

  • Salvar no formato .wav usando ScriptProcessorNode
  • Visualização do espectro FFT do áudio
  • Barras de volume em decibéis
  • Reconhecimento de voz com webkitSpeechRecognition

Conexão Peer (Peer Connection)

1. Servidores de Sinalização

  • Opções de canais bidirecionais:
    • WebSocket
    • Socket.io
    • SignalR
  • Estrutura da mensagem
  • Cliente WebRTC simplificado
  • Fluxo completo de sinalização

2. Chat de Vídeo via WebRTC

  • Arquitetura: Node.js + ws
  • Cliente WebRTC: RTCPeerConnection
  • Teste E2E local

Funcionalidades Opcionais:

  • Desligar a chamada (fechar conexão, parar mídia)
  • Chamadas em grupo (salas multiusuário)
  • Autenticação simples baseada em tokens

3. Compartilhamento de Tela

  • Uso do getDisplayMedia()
  • Arquitetura e opções

4. Protocolo de Descrição de Sessão (SDP)

  • Introdução e conteúdos
  • Leitura e interpretação do SDP
  • Codecs:
    • Áudio & Vídeo
    • Negociação e controle
    • Estratégias de fallback

5. Estatísticas do WebRTC com getStats()

  • Tipos de estatísticas
  • Como interpretar as estatísticas
  • Gráficos de taxa de bits/jitter ao vivo
  • Estratégias de adaptação de qualidade

6. Todos os tópicos são

  • Casos práticos

Requisitos

Este curso é ideal para desenvolvedores frontend e full-stack, arquitetos técnicos e engenheiros que estejam construindo recursos de comunicação em tempo real baseados no navegador, como chat de vídeo, compartilhamento de tela ou streaming de áudio. Os participantes devem ter um conhecimento prático de JavaScript e tecnologias web, sendo opcional experiência com Node.js e comunicação baseada em WebSocket.

 14 Horas

Número de participantes


Preço por participante

Testemunhos de Clientes (3)

Próximas Formações Provisórias

Categorias Relacionadas