Formato HTTP Live Streaming (HLS) – Prós, contras e como funciona
Este blogue centra-se no HLS, ou HTTP live streaming, que é um dos protocolos mais populares utilizados atualmente para transmitir vídeo. O formato HLS é um protocolo de transmissão de vídeo em direto com taxa de bits adaptável. Originalmente desenvolvido pela Apple para utilização em dispositivos iOS, Mac OS e Apple TV, o streaming HLS tornou-se o protocolo de vídeo em direto mais utilizado.
Este artigo analisa os prós e os contras da transmissão em direto por HTTP. Iremos compará-lo também com alguns formatos alternativos. Também analisaremos a história do formato HLS e perguntaremos de onde ele veio e por quê.
Índice:
- Como funciona o HTTP Live Streaming (HLS)
- Prós da utilização do protocolo HLS
- Contras da utilização do protocolo HTTP Live Streaming
- Soluções para o problema da latência
- HLS vs. outros protocolos de streaming
- O que é HLS de baixa latência?
- Como funciona a solução de streaming de baixa latência Direct HLS da Dacast?
- Conclusão
Como funciona o HTTP Live Streaming (HLS)
O vídeo HLS é fornecido através do protocolo de comunicação da Web HTML5, o mais recente padrão on-line para conteúdo da Web. Os leitores de vídeo HTML5 suportam vídeo online fornecido através de uma variedade de protocolos. Estes incluem HTTP Live Streaming (HLS) e MPEG-DASH.
Pode pensar no protocolo de transmissão como o método que define o formato que o vídeo utiliza, a forma como é comprimido, o tamanho dos blocos enviados, etc.
O HLS foi desenvolvido para fornecer uma alternativa ao vídeo Flash. Em termos técnicos, utiliza a compressão de vídeo H.264, AAC ou MP3 para compressão de áudio e transmite fluxos utilizando o formato de contentor MPEG-TS.
O streaming de vídeo via HLS funciona cortando um fluxo de vídeo MP4 em pedaços de vídeo curtos, de aproximadamente 10 segundos. Os fluxos são descritos utilizando listas de reprodução M3U8 que são criadas pelo servidor HTTP. Esta lista de reprodução, também designada por ficheiro de manifesto, indexa os blocos de vídeo.
Vantagens da utilização do protocolo HLS
Nos últimos anos, o formato HLS tornou-se um protocolo padrão para vídeo na Web, e por um bom motivo. A ingestão de HLS é bastante simples de configurar, é gratuita e é suportada por uma vasta gama de dispositivos. Vejamos alguns dos prós da utilização do protocolo HLMS para a transmissão de vídeo.
1. Entrega em todos os dispositivos
Em primeiro lugar, o HTTP Live Streaming suporta vídeo em praticamente todos os dispositivos. Embora tenha sido originalmente criado para utilização no Safari e em dispositivos iOS, o formato HLS é agora suportado em todos os navegadores Web modernos – telemóvel, computador, tablet, etc.
Quer você e os seus espectadores estejam a aceder ao conteúdo num smartphone, tablet, computador de secretária ou portátil, smart TV, descodificador ou qualquer outro dispositivo, o vídeo HLS será reproduzido. A maioria dos navegadores Web também suporta a principal alternativa – MPEG-DASH– mas o iOS e o Safari não o fazem. Esta é uma grande vantagem. Por este motivo, a HLS continua a ser a norma de facto.
2. Excelente qualidade
O formato de vídeo HLS utiliza um método chamado Adaptive Bitrate Streaming. Este método mede a velocidade da Internet disponível para cada espetador de um determinado vídeo. Depois, a qualidade do vídeo que lhes está a ser fornecido é ajustada dinamicamente.
Por exemplo, pode começar a ver um vídeo em casa, onde tem uma ligação Wi-Fi rápida. Depois, pode sair de casa e entrar no carro com um amigo e continuar a ver o vídeo com uma ligação móvel. Esta Internet pode ser mais lenta. Poderá também passar por zonas com disponibilidade limitada de largura de banda. Mesmo uma ligação dedicada à Internet em casa ou no trabalho pode ter uma variação significativa nas velocidades da Internet.
O vídeo fornecido utilizando o formato HLS, se configurado corretamente, irá fornecer-lhe dinamicamente a melhor qualidade de vídeo possível, minimizando o armazenamento em buffer e o atraso. Esta abordagem conduz a uma experiência de utilizador superior. O vídeo tentará continuar a ser reproduzido tanto quanto possível. A qualidade será aumentada desde que a sua Internet seja suficientemente rápida para suportar a carga.
3. Custo-eficaz
Outra grande vantagem do formato HLS é o seu baixo custo. Como já dissemos, o formato é suportado por praticamente todos os dispositivos através do HTML5 e das extensões de fonte de multimédia. Não é necessário utilizar um dispositivo específico para ver os conteúdos. Os servidores Web normais podem lidar com a entrega de HLS sem problemas (dependendo da carga e de outros factores).
4. Privacidade e segurança
O último benefício do HLS que destacaremos aqui é a privacidade e a segurança. Comparado ao Flash, o HLS simplesmente fornece um navegador mais seguro para seus espectadores – tanto quando eles estão assistindo ao seu conteúdo quanto depois.
Contras da utilização do protocolo HTTP Live Streaming
Nenhum protocolo ou tecnologia é perfeito, e o HTTP Live Streaming não é diferente. Existem alguns contras na utilização do formato HLS. Vejamos um dos problemas mais comuns: a latência.
1. Latência
A latência refere-se ao tempo decorrido entre o momento em que um evento ocorre no mundo real e o momento em que os espectadores o podem ver. Essencialmente, é o tempo que demora um vídeo a ser gravado por uma câmara, processado por um codificador HLS, transmitido através da Internet, distribuído para servidores “edge” e descodificado para visualização.
Tenha em atenção que a latência do vídeo não tem em conta os abrandamentos devidos à velocidade da Internet e aos estrangulamentos; estas são questões distintas.
2. Velocidade da Internet
O HLS foi concebido para maximizar a qualidade, não para minimizar a latência absoluta. O seu intervalo de fotogramas, o tamanho do pacote e o requisito de memória intermédia de reprodução não são adequados para uma transmissão em direto super-rápida. Por conseguinte, acrescenta normalmente um atraso de 20 a 60 segundos ao seu fluxo. Estas plataformas de software de transmissão em direto oferecem soluções integradas de baixa latência, e são essas as que devem ser consideradas.
As velocidades lentas da Internet são apenas um problema para um pequeno subconjunto de utilizadores de transmissões em direto – nomeadamente, os jogadores de vídeo e os fãs de desporto. Nestas situações, a rapidez é importante. No entanto, a maioria dos utilizadores pode facilmente ignorar a pequena latência do alojamento de um fluxo HLS, uma vez que não terá qualquer impacto na satisfação ou experiência do espetador. Para quase todos os espectadores, um vídeo de alta qualidade que possa ser visto em qualquer altura, em qualquer dispositivo, é mais importante do que a latência.
Soluções para o problema da latência
O vídeo Flash proporcionava uma transmissão em direto de baixa latência. Mas com o declínio do Flash, o vídeo na Internet está num período de transição. Ainda não existem soluções fantásticas para o problema da latência do HLS. Mas muitas empresas diferentes estão a trabalhar nesse sentido, incluindo o fornecedor de CDN de topo Akamai. Estão a ser desenvolvidos substitutos para o HLS (como o MP4 fragmentado), mas os dispositivos ainda não estão preparados para os reproduzir. Essa próxima mudança pode estar ainda a alguns anos de distância.
Aqui na Dacast, estamos a oferecer uma solução de transmissão HLS de baixa latência para os nossos planos Premium e superiores. Esta solução reduz a latência para um intervalo de 10 segundos ou menos. Cumpre as normas de segurança dos browsers modernos através da entrega HTTPS e permite-lhe ainda aceder a todos os dispositivos móveis.
HLS vs. outros protocolos de streaming
Para que possa compreender melhor os prós do HLS, vamos analisar melhor o HLS em comparação com outros protocolos de transmissão – nomeadamente RTMP e MPEG-DASH.
Antes de o Flash ser descontinuado, o RTMP e o HLS eram escolhas populares para fornecer vídeo em fluxo contínuo aos espectadores. Agora que o Flash desapareceu, o MPEG-DASH é, sem dúvida, o maior concorrente do HLS. O MPEG-DASH é o mais recente e tem impulsionado positivamente o HLS para melhorar e resolver as deficiências do passado, como a baixa qualidade de vídeo.
Dito isto, vamos aprofundar as duas comparações.
HLS vs RTMP: A queda do Flash
O RTMP como protocolo de entrega está a ser gradualmente eliminado, mas o RTMP não está morto. Deixem-me explicar.
A Macromedia desenvolveu o RTMP para funcionar com o Adobe Flash Player no início da utilização generalizada da Internet. A fusão entre a Adobe e a Macromedia em 2005 deu à RTMP um enorme alcance. Considere-se que, no seu auge, cerca de 99% dos browsers para computadores de secretária no Ocidente tinham o plug-in Adobe Flash Player instalado.
O RTMP e o Flash trabalharam em estreita colaboração, pelo que muitas pessoas confundiram os dois como sendo a mesma coisa, mas não são. Por outras palavras, embora o Flash esteja morto, o RTMP não está.
Então, o que causou a queda do Flash (e do RTMP como o principal protocolo de entrega)?
Steve Jobs abordou a maior parte das deficiências do Flash numa carta intitulada Thoughts on Flash. Na carta, Jobs explicou por que razão o Flash não seria permitido nos dispositivos Apple. Na carta, Jobs explicou por que razão o Flash não seria permitido nos dispositivos Apple. Na sua carta, Steve Jobs referiu que o Flash era um sistema fechado e que tinha muitos problemas. É por isso que pode ter ouvido pessoas a brincar que Steve Jobs matou o Flash, e há alguma verdade nisso.
Em última análise, a morte do Flash resultou da incapacidade de corrigir os seus problemas de desempenho, bateria e segurança em linha com a concorrência, como o HTML5.
Assim, em termos técnicos, já não faz muito sentido comparar HLS e RTMP como protocolo de entrega, e isto tornar-se-á ainda mais verdadeiro com o passar do tempo. Mas, vamos fingir que estamos de volta aos dias do Flash por um segundo. Como se deve lembrar, o RTMP era poderoso porque conseguia uma latência muito baixa. Mesmo após o fim da vida útil do Flash em 31 de dezembro de 2020 (RIP), o mundo ainda está a trabalhar num substituto sólido de baixa latência para o RTMP.
Como o RTMP é poderoso, continua vivo, mas não como dantes.
Ingestão HLS vs. Ingestão RTMP
Como a maioria dos browsers deixou de suportar a entrega RTMP após o anúncio do fim da vida útil do Flash, tudo o que tenha a ver com entrega/streaming RTMP (ou entrega/streaming Flash) é praticamente inexistente. No entanto, o RTMP continua vivo em grande parte através do RTMP Ingest, que funciona muito bem com o HLS.
Por esse motivo, atualmente, é mais adequado comparar o RTMP Ingest com o HLS Ingest do que o RTMP com o HLS para entrega/streaming.
Se precisar de uma atualização, o ingest é a tecnologia responsável pela transmissão de ficheiros de vídeo do codificador de transmissão em direto para a plataforma de transmissão. Basicamente, para utilizar o RTMP Ingest, é necessário um codificador RTMP, e para utilizar o HLS Ingest, é necessário um codificador HLS, o que nos leva à primeira vantagem do RTMP Ingest.
Atualmente, os codificadores RTMP são muito mais comuns do que os codificadores HLS. No entanto, isto não é realmente um problema se estiver intencionalmente à procura de codificadores compatíveis com HLS, uma vez que existem muitas opções. Outro aspeto a ter em conta é que os sites populares de redes sociais, como o Facebook, suportam a ingestão RTMP e ainda não a ingestão HLS.
Em comparação com o HLS, o RTMP é optimizado para a latência, o que é uma das principais razões pelas quais o RTMP Ingest ainda é muito popular em comparação com o HLS Ingest. No entanto, a ingestão HLS é capaz de fornecer vídeo de maior qualidade e escalabilidade. É provável que o HLS venha a ganhar com o tempo, mas, por agora, o RTMP está a dar cartas.
HLS vs MPEG-DASH: A mais recente alternativa de código aberto
No que diz respeito à entrega/streaming, HLS vs. MPEG-DASH é uma comparação mais moderna em comparação com HLS vs. RTMP, por isso vamos lá.
O HLS é uma solução proprietária da Apple e, há cerca de uma década, a maior parte da sua concorrência era constituída por outros protocolos de transmissão proprietários. Por esse motivo, começou a ser trabalhado um protocolo alternativo de transmissão em fluxo contínuo com taxa de bits adaptável. O MPEG-Dash é uma norma de código aberto desenvolvida como um esforço coordenado entre mais de 50 organizações, incluindo gigantes como a Apple e a Microsoft.
Portanto, uma das principais coisas que você deve saber sobre o MPEG-DASH em comparação com o HLS é que ele é um padrão internacional. Mas a principal desvantagem do MPEG-DASH é que o browser Safari móvel não o suporta e, se alguma vez teve um iPhone ou iPad, sabe que o Safari é o browser predefinido. Tendo em conta que existem cerca de 1,8 mil milhões de dispositivos Apple activos em todo o mundo, esta é certamente uma enorme fraude para a DASH.
Outras comparações entre os dois mudaram ao longo do tempo. Por exemplo, no passado recente, a DASH proporcionava, sem dúvida, uma melhor qualidade, mas agora já não.
Para uma comparação mais detalhada, consulte a nossa publicação no blogue que compara os protocolos de transmissão MPEG-DASH e HLS.
O que é HLS de baixa latência?
Originalmente, a Apple desenvolveu o streaming HLS para favorecer a fiabilidade em detrimento da latência. Como já sabe, uma vantagem do RTMP sobre o HLS é a sua menor latência.
Para colmatar esta lacuna, a Apple anunciou o HLS de baixa latência, que permite a transmissão de vídeo de baixa latência e é uma extensão do protocolo HLS. Quando foi anunciado pela primeira vez em 2019, o HLS de baixa latência era um protocolo totalmente separado do HLS, mas agora a Apple fundiu ambos e tornou-se num único protocolo.
Um dos objectivos da fusão dos dois protocolos era acelerar a sua adoção. Uma vez que é relativamente novo, tem faltado o apoio dos fornecedores em todo o ecossistema de distribuição de vídeo. No entanto, a tecnologia é muito prometedora.
O HLS de baixa latência pode atingir 2 segundos ou menos de latência, o que é fantástico. Para pôr isto em perspetiva, a latência das transmissões em direto HLS tende geralmente a situar-se entre 15 e 30 segundos.
Como funciona a solução de streaming de baixa latência Direct HLS da Dacast?
Fomos a primeira plataforma de vídeo em linha a oferecer gratuitamente um codificador de transmissão em direto HLS de baixa latência. Este codificador baseia-se no codificador de código aberto OBS Studio, o que significa que inclui todas as vantagens que tornam o OBS Studio tão popular.
É compatível com Mac e Windows. Um aspeto que deve saber é que, ao contrário de muitos outros codificadores, requer apenas uma pequena quantidade de capacidade de processamento da CPU e de memória.
Quando comparámos HLS vs. RTMP, mencionámos que o RTMP-Ingest continua a ser popular. No entanto, isso não significa que será popular para sempre. A solução de streaming de baixa latência Direct HLS da Dacast utiliza a ingestão de HLS, embora a ingestão de RTMP continue a ser a predefinição.
Ao usar a ingestão de HLS, a solução de streaming de baixa latência Direct HLS da Dacast é HLS de ponta a ponta. Assim, em vez de o fluxo HLS começar com a ingestão RTMP e depois ser convertido para HLS, começa e termina com HLS. Isto proporciona aos espectadores uma latência muito mais baixa, e estamos a falar de 10 segundos ou menos de latência. Também cumpre as normas de segurança dos browsers modernos, o que significa que pode chegar a todos os dispositivos móveis.
Conclusão
O HLS é uma tecnologia poderosa que se tornou um dos padrões da indústria. Esperemos que este artigo o tenha instruído sobre os conceitos básicos desta tecnologia de transmissão em direto, como funciona e quais são as suas vantagens e desvantagens.
Alguma dúvida sobre o formato HLS? Pode fazer a sua primeira transmissão em direto hoje mesmo com o software de transmissão de vídeo Dacast HLS. Se está pronto para experimentar hoje, pode tirar partido da nossa teste gratuito de 14 dias. Não é necessário cartão de crédito.
Comece a trabalhar gratuitamente
Para ofertas exclusivas e dicas regulares de transmissão em direto, convidamo-lo também a juntar-se ao nosso grupo do LinkedIn.
Finalmente, tem mais perguntas, ideias ou comentários sobre este artigo? Gostaríamos de o ouvir nos comentários abaixo e entraremos em contacto consigo.
Obrigado pela sintonia e boa sorte com as vossas transmissões em direto!