Protocolo RTMP / RTMPS¶
RTMP (Real-Time Messaging Protocol) está disponível no Perfect Streamer tanto para recepção (input) quanto para transmissão (output), com base no FFmpeg avformat. Os cenários típicos são a publicação de um canal de TV em plataformas externas (YouTube, Facebook e quaisquer receptores RTMP) e a recepção de um fluxo de um servidor RTMP. A variante segura RTMPS (RTMP sobre TLS) é suportada em ambas as direções; nesse caso, o Perfect Streamer atua como cliente TLS.
RTMP é um protocolo single-program, portanto input e output RTMP estão disponíveis apenas para fluxos SPTS.
RTMP input (recepção)
O Perfect Streamer conecta-se como cliente RTMP à fonte rtmp:// ou rtmps:// indicada e captura o fluxo (modo pull). Os fluxos elementares recebidos (vídeo H.264 ou HEVC, áudio AAC) são remultiplexados no MPEG-TS integrado e injetados no pipeline do fluxo. Não há um modo de espera por uma publicação recebida (listen / push) — a recepção é sempre iniciada pelo próprio Perfect Streamer.
Configurações de RTMP input:
URL — o endereço completo da sessão RTMP, por exemplo
rtmp://origin.example/live/streamkey. São aceitos os esquemasrtmpertmps.Bind Interface — a interface local ou o endereço IP a partir do qual a conexão de saída é estabelecida. Por padrão, é escolhida pelo roteamento do sistema operacional.
Timeout — tempo limite de conexão e leitura, de 1 a 120 segundos. Padrão: 10.
TLS Verify — para
rtmps, verificar o certificado do servidor. Desativado por padrão.Trace — log detalhado para diagnóstico da conexão.
RTMP output (publicação)
O Perfect Streamer publica um fluxo SPTS em um receptor RTMP externo: conecta-se como cliente RTMP ao endereço de publicação da plataforma e envia o fluxo (modo publish). RTMP é um formato single-program: é publicado um vídeo (H.264 ou HEVC) e no máximo uma faixa de áudio AAC. Se a fonte tiver várias faixas, é selecionada uma faixa de vídeo e uma de áudio; as excedentes e incompatíveis (por exemplo, áudio não AAC) não são transmitidas. Uma fonte multifaixa pode ser restringida previamente com os filtros PID Accept / PID Reject (consulte «Filtragem e modificação de MPEG-TS»).
O vídeo HEVC é publicado via Enhanced RTMP — ativado pela opção Allow HEVC. Se a plataforma receptora não suportar HEVC, desative a opção: então apenas H.264 é publicado.
Antes do início da publicação, o fluxo é analisado. Se não houver vídeo compatível, a publicação não é realizada. O resultado da análise está disponível nas estatísticas do fluxo: um indicador da possibilidade de publicação, os codecs de vídeo e áudio selecionados, a lista de faixas descartadas e o estado da conexão.
Configurações de RTMP output:
URL — o endereço de publicação da plataforma, por exemplo
rtmp://a.rtmp.youtube.com/live2/<stream-key>. São aceitos os esquemasrtmpertmps.Bind Interface — a interface local ou o endereço IP da conexão de saída. Padrão: o roteamento do sistema operacional.
Timeout — tempo limite de conexão e transmissão, de 1 a 120 segundos. Padrão: 10.
Allow HEVC — permitir a publicação de vídeo HEVC via Enhanced RTMP. Ativado por padrão; quando desativado, apenas H.264 é transmitido.
TLS Verify — para
rtmps, verificar o certificado do servidor. Desativado por padrão.Trace — log detalhado para diagnóstico da publicação.
Exemplos de endereços de publicação:
YouTube —
rtmp://a.rtmp.youtube.com/live2/<stream-key>Facebook —
rtmps://live-api-s.facebook.com:443/rtmp/<stream-key>