Data format

M3U8 converter

An .m3u8 file is a UTF-8 encoded M3U playlist. The extension began as nothing more than an encoding signal, and then became the manifest format for HTTP Live Streaming, where it lists media segments or alternate bitrate renditions rather than songs.

Private for supported formats — processed in your browser

Convert supported files

Runs on your device

Drop M3U8 files here

Batch files can each use a different output. Nothing uploads for local conversions.

Working inputs include camera RAW, browser-local audio/video, PDF, CBZ/CBR comics, office documents, ebooks, markup, 3D models, structured text, images, and archives.

Where M3U8 comes from

The extension was introduced to disambiguate UTF-8 playlists from codepage-encoded .m3u files. Apple then built HTTP Live Streaming on top of it in 2009, adding a large vocabulary of #EXT-X- tags, and RFC 8216 documented the result in 2017. The consequence is that .m3u8 now means two quite different things depending on whether the file carries HLS tags.

How M3U8 works

  • Always UTF-8 — that was the original and only reason the extension exists.
  • HLS media playlists list segments with #EXTINF durations under an #EXT-X-TARGETDURATION ceiling.
  • HLS master playlists list alternate renditions with #EXT-X-STREAM-INF bandwidth and resolution attributes.
  • #EXT-X-ENDLIST marks a finished presentation; its absence means the stream is live and the playlist will be re-fetched.
  • Without any #EXT-X- tags the file is simply a UTF-8 M3U playlist.

When to use M3U8

  • Serving adaptive-bitrate video over HTTP to browsers and mobile devices
  • Describing a live stream whose segment list grows over time
  • Carrying a plain playlist with non-ASCII track names safely
  • Inspecting a stream manifest's segment structure

Strengths and limitations

Strengths

  • Encoding is unambiguous, unlike .m3u
  • The basis of HLS, which is how most video reaches phones and browsers
  • Plain text, so a stream manifest can be diagnosed by reading it

Limitations

  • One extension covers both trivial playlists and full HLS manifests
  • HLS tag vocabulary is large and its versioning rules are subtle
  • Segment references break as soon as the manifest is moved

Compatibility

Native in Safari and on iOS, supported in other browsers through Media Source Extensions, and read by VLC, ffmpeg and every streaming stack. Novus Convert parses it locally and converts to M3U and JSON, which is useful for inspecting a manifest's structure without a player.

Segment and rendition references with their durations are preserved. HLS-specific tags such as encryption keys and discontinuity markers are not represented in simpler targets.