Ingestão de streams do IVS | Streaming em tempo real - Amazon IVS

Ingestão de streams do IVS | Streaming em tempo real

Como alternativa ao uso do SDK de transmissão do IVS, você pode publicar vídeo em um palco do IVS de uma origem WHIP ou RTMP. Essa abordagem oferece flexibilidade para fluxos de trabalho em que o uso do SDK não é viável ou preferencial, como ao publicar vídeos do OBS Studio ou de um codificador de hardware. Sempre que possível, recomendamos o uso do SDK de transmissão do IVS, pois não podemos garantir a performance ou a compatibilidade de soluções de terceiros com o IVS.

Este diagrama ilustra como a publicação com o WHIP e RTMP funciona:

Publicar com o WHIP e RTMP.

Protocolos compatíveis

O streaming em tempo real do IVS é compatível com vários protocolos de ingestão:

  • O RTMP (protocolo de mensagens em tempo real): é um padrão da indústria para transmissão de vídeo em uma rede.

  • RTMPS: a versão segura do RTMP que opera por meio do TLS.

  • WHIP (protocolo de ingestão de WebRTC-HTTP): um esboço do IETF desenvolvido para padronizar a ingestão de WebRTC.

O RTMP geralmente tem maior latência do que o WHIP, o que o torna ideal para transmissões ao vivo de um-para-muitos. Para obter orientações detalhadas sobre o uso desses protocolos, consulte nossa documentação sobre RTMP e WHIP.

Especificações de mídia compatível

  • Formato de entrada de áudio

    • Codec: AAC-LC para RTMP e Opus para WHIP

    • Canais: 2 (estéreo) ou 1 (mono)

    • Taxa de amostragem: 44,1 kHz ou 48 kHz

    • Taxa de bits máxima: 160 Kbps

  • Formato de entrada de vídeo

    • Codec: H.264

    • Perfil H.264: linha de base

    • Intervalo IDR: 1 ou 2 segundos

    • Taxa de quadros: 10 a 60 FPS

    • Quadros B: 0

      Nota: o SDK de Transmissão do IVS tem quadros B habilitados por padrão ao usar RTMP. Portanto, os desenvolvedores devem desabilitar os quadros B: no iOS, use o método usesBFrames; no Android, setUseBFrames. Se os desenvolvedores não desabilitarem os quadros B, os streams serão desconectados.

    • Resolução: máxima: 720p; mínima: 160p

    • Taxa de bits máxima: 8,5 Mbps

    • Configuração do codificador: recomendamos usar as configurações veryfast e zerolatency para um codificador H.264. Além disso: a opção sliced_threads x264 está incluída nas predefinições zerolatency, e recomendamos que você a desabilite. Por exemplo, ao usar FFmpeg, o comando deve incluir: -preset:v veryfast -tune zerolatency -x264-params sliced-threads=0