Nos últimos 20 anos a internet se tornou a maior fonte de informação do planeta. Se no início da era digital trafegar vídeos era lento, difícil e caro atualmente mais de 82% dos dados que são trocados na rede mundial de computadores são vídeos.
Isso foi possível por diversos motivos, mas principalmente devido à evolução dos dispositivos móveis — que estão na mão das pessoas durante a maior parte do dia — como da evolução das redes móveis: mais especificamente o 4G e o recém-lançado 5G, que promete acelerar ainda mais as conexões e a as trocas de conteúdo na internet.
A transmissão de conteúdo ao vivo se tornou parte indispensável da rotina de produtores de conteúdo, em especial das empresas de mídia. À medida que a tecnologia avança, se abrem novas possibilidades, como receber a colaboração de várias fontes de vídeo em uma mesma transmissão, adicionar efeitos e fundos virtuais como chroma key ou fazer cortes de vídeos ao vivo — com o nome técnico de live video clipping, em português clipagem de vídeo ao vivo.
Para entender esse universo que envolve o fluxo de live streaming você vai se deparar sempre com um protocolo chamado RTMP. Ele é tão versátil e popular que está presente em operações de gamers, streamers e até de operações de emissoras de TV.
O que é RTMP?
O Real Time Messaging Protocol (RTMP) foi desenvolvido pela desenvolvido pela empresa Macromedia para streaming de áudio, vídeo e dados para internet. Inicialmente foi usado para o Flash Player. Desde o lançamento a Adobe — que comprou a Macromedia — passou por diversos conflitos com projetos que quebravam a exclusividade do protocolo, até que em 2009 ele acabou sendo liberado.
O mais importante é que a partir do RTMP novas linhas de negócio foram possíveis e o streaming de vídeo na internet cresceu assustadoramente. Neste artigo você vai entender as aplicações e as diferenças entre os padrões RTMP pull e push.
A especificação RTMP é um protocolo de streaming inicialmente projetado para a transmissão de áudio, vídeo e outros dados entre um servidor de streaming dedicado e o Adobe Flash Player. Embora antes proprietário, o RTMP agora é um protocolo aberto.
Prós do streaming RTMP
- Conhecido por possuir baixa latência (semelhante à latência broadcast via cabo)
- Cria uma experiência de streaming confiável, mantendo contato constante entre o player de vídeo e o servidor – um avanço em relação aos seus antecessores.
- Fornece streaming seguro baseado em nuvem por meio do RTMPS, que oferece conveniência e segurança para necessidades de streaming ao vivo.
O que é um link RTMP Pull?
Um RTMP pull é um link reproduzível de uma transmissão ao vivo, que pode ser configurada como fonte em outra transmissão. O recurso RTMP Pull permite que você reproduza uma transmissão ao vivo dentro da outra. Você pode reproduzir um fluxo original em segundo plano e suas próprias sobreposições gráficas com comentários em áudio em primeiro plano.
O RTMP Pull é especialmente útil quando você deseja ter várias transmissões ao vivo em uma tela. Os torneios e convenções de eSports dependem muito do RTMP Pull. Replays ao vivo durante as transmissões, traduções de entrevistas e comentários em vários idiomas podem ser adicionados a uma tela graças aos links RTMP Pull.
O RTMP pull funciona com a geração de uma URL de stream e uma chave de acesso, que devem ser informados ao sistema que irá gerar o vídeo. No exemplo acima esta é a tela de geração de um link em RTMP pull no Crabber.
Casos de uso de pull de RTMP
- Incorpore uma transmissão RTMP Pull à sua transmissão principal ao vivo . Essa opção é especialmente útil nos casos em que você precisa de uma sobreposição de tradução de áudio. Você também pode tratar os fluxos Pull como separados e enviá-los para outros destinos.
- Combine dois ou mais fluxos para assistir simultaneamente. O RTMP Pull permite incorporar vários fluxos de contas diferentes em um único fluxo ao vivo.
- Alterne entre várias emissoras em um fluxo . A criação de vários pontos de vista a partir de fluxos recebidos torna sua transmissão mais interessante e envolvente.
- Monitore sua transmissão ao vivo em um player de vídeo MPC-HC em tempo real. Lembre-se de que as transmissões ao vivo RTMP têm uma pequena latência (dois a cinco segundos).
O que é um link RTMP Push?
Os links de RTMP push funcionam de forma semelhante ao RTMP pull, mas com uma lógica invertida. Enquanto no modo pull você insere a URL e a chave do streaming, no modo push o sistema vai gerar a URL e chave temporária para ser inserida no software que irá enviar o fluxo de vídeo.
Para facilitar o entendimento, vamos pensar que sempre teremos um produtor e um consumidor deste streaming. Nos protocolos pull, os consumidores solicitam valores periodicamente a seus produtores. Eles ficam sempre aguardando o recebimento do vídeo. Já nos protocolos push, os consumidores abrem uma conexão com o servidor e manter o fluxo aberto para receber vídeos.
Saiba mais sobre o protocolo RTMP
O protocolo RTMP era a “mágica” por trás do streaming ao vivo e sob demanda que rodava com Adobe Flash Player. Como esse popular plugin, o Flash alimentou 98% dos navegadores da internet em seu auge, o RTMP foi usado de forma onipresente. Podemos dizer que foi um dos elementos que conseguiram tangibilizar de forma tão avassaladora o sucesso do Flash.
Por isso, até hoje a maioria dos encoders é capaz de transmitir RTMP e a maioria dos servidores de mídia também pode recebê-lo. Mesmo grandes players de mídia social como Facebook, YouTube, Twitch e Periscope aceitam o protocolo.
Como funciona o streaming RTMP?
A Macromedia desenvolveu a especificação RTMP para transmissão de alto desempenho de dados de áudio e vídeo. O RTMP mantém uma conexão constante entre o cliente do reprodutor e o servidor, permitindo que o protocolo atue como um canal e mova rapidamente os dados de vídeo para o visualizador.
Como o RTMP fica sobre o Transmission Control Protocol (TCP), ele usa um handshake de três vias ao transportar dados. O iniciador (cliente) pede ao aceitante (servidor) para iniciar uma conexão; o aceitante responde; então, o iniciador confirma a resposta e mantém uma sessão entre as duas extremidades. Por esse motivo, o RTMP é bastante confiável.
História do Streaming RTMP
Flash Player e RTMP foram os mecanismos de entrega dominantes para streaming ao vivo até o início de 2010. Quando usadas juntas, essas tecnologias oferecem suporte à entrega de vídeo ultrarrápida com cerca de cinco segundos de latência.
Mas o streaming de vídeo HTML5 , os padrões abertos e a entrega de taxa de bits adaptável acabaram superando o streaming de RTMP quando se tratava de entrega de última milha.
Embora o RTMP funcione bem, ele tem historicamente encontrado problemas para ultrapassar os firewalls. E como um protocolo stateful, RTMP requer um servidor de streaming dedicado.
A indústria agora favorece protocolos baseados em HTTP (Protocolo de Transferência de Hipertexto) que usam servidores da web simples e antigos. Isso melhora a escalabilidade e a experiência de visualização, permitindo que os servidores locais armazenem em cache o conteúdo de streaming. Com essa mudança, o streaming de taxa de bits adaptável se tornou mais comum, permitindo que as emissoras otimizem o conteúdo para os dispositivos e conectividade dos telespectadores.
Então, o RTMP está morto?
Muito pelo contrário! O padrão RTMP ainda está presente em boa parte da internet. Observe o gráfico abaixo. Segundo estudos recentes ele é o 2º padrão mais popular na internet.
Muitos broadcasters escolhem transportar streams ao vivo para seus servidores de mídia usando RTMP e então transcodificá- los para entrega a uma variedade de jogadores e dispositivos. Em outras palavras, o streaming RTMP está vivo e bom para contribuição de conteúdo – não apenas entrega de última milha.