Publicação RTMP do IVS | Streaming em tempo real - Amazon IVS

Publicação RTMP do IVS | Streaming em tempo real

Este documento descreve o processo de publicação em um palco do IVS usando RTMP. Para obter detalhes adicionais sobre várias opções de ingestão, consulte a documentação de ingestão de streams

Pré-requisitos

Criar um palco

Para criar um palco, use o seguinte comando:

aws ivs-realtime create-stage --name "test-stage"

Consulte CreateStage para obter detalhes, incluindo a resposta.

Importante: na resposta, observe o campo endpoints, que lista os endpoints RTMP e RTMPS. Eles são necessários para configurar o codificador RTMP.

Criar uma configuração de ingestão

Para publicar em um palco usando RTMP, primeiro você deve criar uma configuração de ingestão e associá-la ao seu palco. Quando você publica no palco (usando a chave de transmissão da configuração de ingestão e o endpoint RTMP do palco), a mídia será publicada no palco como participante. Você tem a opção de especificar um userId e personalizar attributes, que serão associados ao participante que se conectar ao palco.

aws ivs-realtime create-ingest-configuration \ --name 'test' \ --stage-arn arn:aws:ivs:us-east-1:123456789012:stage/8faHz1SQp0ik \ --user-id '123' \ --ingest-protocol 'RTMPS'

Consulte CreateIngestConfiguration para obter detalhes, incluindo a resposta.

Ao criar uma configuração de ingestão, você pode associá-la antecipadamente a um ARN de palco específico. Sem essa associação, a chave do stream fica inutilizada. Além disso, as configurações de ingestão (incluindo o campo stageArn) podem ser atualizadas por meio da operação UpdateIngestConfiguration, permitindo que você reutilize a mesma configuração em diferentes estágios.

Observação: o campo insecureIngest de configuração de ingestão é padronizado como false, exigindo o uso de RTMPS. As conexões RTMP serão rejeitadas. Caso precise usar RTMP, defina insecureIngest como true. Recomendamos o uso de RTMPS, a menos que você tenha casos de uso específicos e verificados que requeiram RTMP.

Vídeo com faixa única do RTMP

Abaixo, descrevemos como usar o OBS Studio; no entanto, você pode usar qualquer codificador RTMP que atenda às especificações de mídia do IVS.

Guia para o OBS

  1. Faça download e instale o software: https://obsproject.com/download.

  2. Clique em Settings (Configurações). Na seção Stream do painel Configurações, selecione Personalizar no menu suspenso Serviço.

  3. Para o Servidor, insira o endpoint RTMP ou RTMPS do palco.

  4. Para a Chave de transmissão, insira a streamKey da configuração da ingestão.

  5. Defina as configurações de vídeo como faria normalmente, com algumas restrições:

    1. O streaming em tempo real do IVS é compatível com entrada de até 720p a 8,5 Mbps. Se você exceder um desses limites, seu stream será desconectado.

    2. Recomendamos definir o intervalo de quadros-chave no painel Saída para 1s ou 2s. Um intervalo baixo de quadros-chave permite que a reprodução do vídeo comece mais rapidamente para os espectadores. Também recomendamos definir Predefinição de uso da CPU para veryfast e Ajuste para zerolatency, para permitir a menor latência.

    3. Como o OBS não é compatível com a transmissão simultânea, recomendamos manter sua taxa de bits abaixo de 2,5 Mbps. Isso permite que os espectadores em conexões de baixa largura de banda assistam.

    4. Desabilite os quadros B, pois os fluxos com quadros B serão automaticamente desconectados. Execute um destes procedimentos:

      • Nas opções x264, insira bframes=0 sliced-threads=0.

      • Defina quadros B como 0 se for uma opção (por exemplo, para NVENC).

    Observação: os streams RTMP devem incluir trilhas de áudio e de vídeo, ou serão desconectados.

  6. Selecione Iniciar streaming.

Importante: se a taxa de bits máxima do seu codificador estiver definida como 8,5 Mbps, o publicador eventualmente desaparecerá da sessão. Isso ocorre porque a configuração máxima da taxa de bits é apenas uma meta, e os codificadores ocasionalmente ultrapassam a meta. Para evitar esse problema, defina a taxa de bits máxima do seu codificador mais baixa, por exemplo, para 6 Mbps.

Vídeo com várias faixas do E-RTMP

O IVS suporta o recurso de vídeo com várias faixas do E-RTMP (Enhanced Real-Time Messaging Protocol), que permite publicar várias qualidades de vídeo em um único fluxo do RTMP em seu estágio do IVS. Isso permite o streaming de taxa de bits adaptável, para que os assinantes possam assistir automaticamente com a melhor qualidade para sua conexão de rede.

Uma vez ingeridas, as diferentes qualidades de vídeo são entregues aos assinantes como camadas de transmissão simultânea. Para configurar quais camadas são recebidas pelos assinantes, consulte as seções "Codificação em camadas com transmissão simultânea" nos guias do SDK de streaming em tempo real: Android, iOS e Web.

Este diagrama ilustra como a publicação com o vídeo com várias faixas funciona:

Publicação de vídeo com várias faixas em um estágio."

Guia para o OBS

  1. Baixe e instale o OBS Studio:

    1. Windows: o vídeo com várias faixas é suportado a partir do OBS Studio 30.2.

    2. macOS: o vídeo com várias faixas é suportado a partir do OBS Studio 31.1 Beta (somente com chip Apple Silicon).

    3. Faça o download em: https://obsproject.com/download.

  2. Clique em Settings (Configurações). Na seção Transmissão do painel Configurações, selecione Amazon IVS no menu suspenso Serviço.

  3. Em Servidor, deixe a configuração como Auto.

  4. Para a Chave de transmissão, insira a streamKey da configuração da ingestão.

  5. Na seção Vídeo com várias faixas, marque Habilitar vídeo com várias faixas.

  6. No painel Vídeo, defina as resoluções desejadas para Resolução de base (tela) e Resolução de base (saída). O streaming em tempo real do IVS é compatível com entrada de até 720p . Se você exceder esse limite, sua transmissão será desconectada.

    Quando o vídeo com várias faixas está habilitado, as configurações como o número de faixas de vídeo, suas taxas de bits e o intervalo de quadros-chave são configuradas automaticamente com base nas capacidades do dispositivo.

  7. Selecione Iniciar transmissão.