Swift

Como funciona

Fluxo de processamento de quadros de vídeo

  1. Recepção no Frame: As chamadas do SDK da Vonage renderVideoFrame(_:) no seu CustomVideoRender instância para cada quadro do vídeo
  2. Processamento de quadros: O quadro é passado para CustomRenderView, que processa os dados do quadro e cria uma imagem
  3. Exibição: O draw(_:) O método é chamado na thread principal para exibir a imagem processada na tela

A implementação de exemplo converte os quadros para escala de cinza, mas você pode modificar a lógica de processamento em renderVideoFrame(_:) para aplicar qualquer transformação que você precisar.

Opções de personalização

Você pode modificar o processamento de quadros em CustomRenderView.renderVideoFrame(_:) para aplicar diferentes efeitos ou transformações. O OTVideoFrame O objeto fornece acesso aos dados brutos do quadro por meio de seu planes propriedade, que você pode processar da maneira que precisar.

Para um processamento mais avançado, você também pode usar as estruturas Metal ou Core Image para aplicar filtros e efeitos aos quadros do vídeo.

Testes

Teste no Simulador do iOS

  1. Execute o aplicativo no Simulador do iOS
  2. O simulador utilizará um vídeo de demonstração (sem acesso à câmera)
  3. Você deve ver a transmissão de vídeo em escala de cinza

Teste em dispositivo físico

  1. Conecte um dispositivo iOS
  2. Selecione-o como destino de execução
  3. Conceda as permissões de câmera quando solicitado
  4. Você deve ver a imagem da câmera em escala de cinza

Teste com vários participantes

  1. Execute o aplicativo em um dispositivo ou simulador
  2. Use o Vonage Video Playground para participar da mesma sessão
  3. Você deve ver tanto o seu fluxo renderizado de forma personalizada quanto o fluxo padrão do assinante