O que é hls.js?

hls.js é uma biblioteca JavaScript que reproduz fluxos HLS por meio de Media Source Extensions em navegadores compatíveis. Ela associa mídia baseada em M3U8 a um elemento de vídeo HTML quando HLS nativo não está disponível.

Como hls.js funciona

hls.js implementa carregamento de playlists, adaptação, demultiplexação ou transmultiplexação, armazenamento em buffer e recuperação em torno da interface Media Source Extensions do navegador. Ela fornece fluxos elementares compatíveis a objetos SourceBuffer conectados a um elemento de vídeo comum. A biblioteca fornece a lógica de streaming, mas depende do navegador para a decodificação final de áudio e vídeo. Os stacks de reprodução na web a posicionam entre a entrega HLS e os controles da aplicação, recorrendo seletivamente à reprodução nativa quando apropriado.

Informações essenciais

  1. hls.js não pode adicionar um decodificador de codec que o navegador não tenha: Media Source Extensions pode aceitar o fluxo de trabalho do contêiner, mas as operações de anexação ainda podem falhar devido a um codec ou perfil sem suporte.
  2. Playlists, chaves, dados de inicialização e segmentos de outras origens precisam de respostas CORS adequadas porque a biblioteca os busca usando os recursos de rede do navegador, em vez do carregamento nativo e opaco de mídia.
  3. As aplicações devem usar os eventos de manifesto, nível, armazenamento em buffer e erro da biblioteca para telemetria e recuperação; uma associação bem-sucedida a um elemento de vídeo não comprova que o fluxo possa ser reproduzido.

Quando hls.js é relevante

Desenvolvedores web usam hls.js para controlar a reprodução adaptativa e inspecionar eventos do fluxo em navegadores compatíveis com MSE. O uso de HLS nativo ou de outra alternativa continua necessário onde Media Source Extensions não estão disponíveis.

Transforme conhecimento sobre mídia em um pipeline funcional

Conecte uploads, processamento, IA, armazenamento e entrega por meio de uma única API declarativa, com o stack de codificação, o ajuste de escala e as constantes mudanças de formatos gerenciados para você.

Experimente a Transloadit gratuitamente