Back to blog
Streaming HLS

What Is M3U8? How to Play HLS Videos Online in Your Browser

Published: Updated: Reading time: about 6 min
Share:

If you watch a lot of videos or live streams, you have probably come across a .m3u8 link. What exactly is it? And why can't the video be downloaded directly like a regular file? This article breaks down how the M3U8 playlist and the HLS protocol work, and shows you how to play them online right in your browser.

What Is M3U8 and HLS?

HLS (HTTP Live Streaming) is a streaming protocol introduced by Apple in 2009. It chops a video into several TS segments and indexes them with a single playlist file. That playlist is the M3U8 file.

  • M3U8: a plain-text playlist that records the URL, duration and encoding details of each video segment.
  • Advantages: adaptive bitrate, a natural fit for both live and on-demand streaming, delivery over plain HTTP, and acceleration across CDNs.
  • Common sources: HLS streams from platforms such as Bilibili, iQIYI and Youku, live stream pushes, and videos on overseas platforms.

Why Can't Browsers Play M3U8 Directly?

Native browser support for HLS in the <video> tag is limited: Safari plays it natively, while Chrome, Firefox and Edge need a JavaScript library such as hls.js to translate HLS into a format that MSE (Media Source Extensions) can recognize. That is exactly why an "M3U8 online player" exists.

Play M3U8 Videos Online in 3 Steps

  1. Get the link: copy a video address that ends with .m3u8.
  2. Paste and play: open the M3U8 online player, paste the link and hit play.
  3. Control the experience: fullscreen and playback speed are supported, and some sources even let you choose the quality.

Frequently Asked Questions

What if my M3U8 link won't open or shows a black screen?

The link may be dead, protected by anti-hotlinking (Referer restrictions), or only accessible with a specific User-Agent. Try switching networks or copying a clean .m3u8 address.

Can I download M3U8 videos?

This tool only offers online playback, not downloading. Please follow each platform's terms of use and copyright rules.

Can RTMP live streams be played too?

For RTMP/HTTP-FLV live streams, use the RTMP video stream player, which automatically falls back to HLS.

References

  1. HLS / M3U8 specification — IETF draft-pantos-hls-rfc8216bis: https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis
  2. hls.js open-source playback library: https://hls-js.netlify.app/

Related Reading