Partilhar via


Visão geral dos problemas de vídeo

Estabelecer uma chamada de vídeo envolve muitos componentes e processos. As etapas incluem a aquisição do fluxo de vídeo de um dispositivo de câmera, codificação do navegador, decodificação do navegador, renderização de vídeo e assim por diante. Se houver um problema em qualquer um desses estágios, os usuários podem enfrentar problemas relacionados ao vídeo. Por exemplo, os utilizadores podem queixar-se de não conseguirem ver o vídeo ou da má qualidade do mesmo. Portanto, entender como o conteúdo de vídeo flui do emissor para o recetor é crucial para depurar e mitigar problemas de vídeo.

Como funciona uma chamada de vídeo de uma perspetiva de ponta a ponta

Diagrama do fluxo de ponta a ponta de dados de fluxo de vídeo

Aqui usamos uma chamada de grupo dos Serviços de Comunicação do Azure como exemplo.

Quando o remetente inicia o vídeo em uma chamada, o SDK recupera internamente o fluxo de vídeo da câmera por meio de uma API do navegador. Depois que o SDK conclui o handshake na camada de sinalização com o servidor, ele começa a enviar o fluxo de vídeo para o servidor. O navegador executa codificação de vídeo e empacotamento na camada RTP (Real-time Transport Protocol) para transmissão. Os outros participantes da chamada recebem notificações do servidor, indicando a disponibilidade de um fluxo de vídeo do remetente. Seu aplicativo pode decidir se deseja assinar o fluxo de vídeo ou não. Se o seu aplicativo se inscrever no fluxo de vídeo do servidor (por exemplo, usando createView API), o servidor encaminhará os pacotes de vídeo do remetente para o recetor. O navegador do recetor decodifica e processa o vídeo recebido.

Quando você usa o SDK de chamada na Web do ACS para chamadas de vídeo, o SDK e o navegador podem ajustar a qualidade de vídeo do remetente com base na largura de banda disponível. O ajuste pode incluir alterações na resolução, quadros por segundo e taxa de bits de destino. Além disso, a sobrecarga da CPU no lado do remetente também pode influenciar a decisão do navegador sobre a resolução de destino para codificação.

Problemas comuns em videochamadas

Podemos ver que todo o processo envolve fatores como o dispositivo de câmera do remetente. As condições de rede na extremidade emissora e recetora também desempenham um papel importante. Largura de banda e pacotes perdidos podem afetar a qualidade de vídeo percebida pelos usuários.

Aqui listamos vários problemas comuns de vídeo, juntamente com possíveis causas para cada problema:

O usuário não pode ver o vídeo do participante remoto

  • O vídeo do remetente não está disponível quando o usuário o assina
  • O vídeo remoto torna-se indisponível durante a subscrição do vídeo
  • O aplicativo descarta o renderizador de vídeo ao assinar o vídeo
  • O número máximo de assinaturas de vídeo ativas foi atingido
  • O navegador do remetente do vídeo está em segundo plano
  • O remetente do vídeo abandonou a chamada inesperadamente
  • O remetente de vídeo enfrenta problemas de rede
  • O recetor experimenta problemas de rede
  • Os quadros são recebidos, mas não decodificados

O usuário só vê vídeo preto do participante remoto

  • O navegador do remetente do vídeo está em segundo plano

O usuário experimenta má qualidade de vídeo

  • O remetente do vídeo tem uma rede fraca
  • O recetor tem rede pobre
  • Carga pesada no ambiente do emissor ou recetor de vídeo
  • O recetor subscreve vários fluxos de vídeo de entrada