FormatDrop
Video Format Comparison

M3U vs M3U8: Playlist Format vs HLS Streaming Playlist

M3U is a plain-text playlist format from the 1990s, used by media players to list local audio/video files. M3U8 is UTF-8 encoded M3U extended for HLS (HTTP Live Streaming), the adaptive streaming protocol developed by Apple and now used by virtually every major streaming platform. The same .m3u8 extension covers two very different use cases: local IPTV playlists and streaming manifests.

M3UvsM3U8

Quick Verdict

Use M3U when…

Use M3U for local media player playlists — Winamp, VLC, foobar2000, and most music players read M3U playlists. M3U is the correct format for organizing local music or video files into playlists.

Use M3U8 when…

Use M3U8 for streaming and IPTV: HLS streaming manifests for web video delivery, IPTV channel lists, and streaming server playlists. M3U8 is the format that enables adaptive bitrate streaming on Netflix, YouTube, and live streams.

M3U vs M3U8: Feature Comparison

FeatureM3UM3U8
EncodingASCII / Latin-1UTF-8 (handles all languages)
Primary useLocal media playlistsHLS streaming / IPTV
Adaptive bitrate streamingNoYes (HLS)
CDN / web deliveryNoYes
Live stream supportNoYes
Media player supportUniversalVLC, ffplay, web players
File referencesLocal file paths / URLsHTTPS segments (.ts files)

When M3U wins

  • Encoding: ASCII / Latin-1
  • Primary use: Local media playlists
  • Adaptive bitrate streaming: No

When M3U8 wins

  • Encoding: UTF-8 (handles all languages)
  • Primary use: HLS streaming / IPTV
  • Adaptive bitrate streaming: Yes (HLS)

Frequently asked questions

How do I play an M3U8 stream in VLC?
VLC → Media → Open Network Stream (Ctrl+N) → paste the M3U8 URL → click Play. Alternatively, drag a local .m3u8 file into VLC. VLC handles both HLS streams and local M3U8 playlists. For IPTV M3U8 playlists with hundreds of channels, use IPTV Smarters, TiviMate (Android), or the VLC network playlist feature.
What is HLS and why does it use M3U8?
HLS (HTTP Live Streaming) was developed by Apple in 2009 and works by breaking video into small segments (.ts files, typically 6–10 seconds each) served over HTTP. The M3U8 manifest file lists all segment URLs and bitrate variants. The player downloads the manifest, selects the appropriate bitrate for current bandwidth, and continuously fetches segments. This is why Netflix doesn't 'buffer' in the traditional sense — it switches to a lower quality stream before running out of data.
Can I download a video from an M3U8 URL?
Yes, with FFmpeg: `ffmpeg -i 'https://example.com/stream/playlist.m3u8' -c copy output.mp4`. FFmpeg downloads all .ts segments and muxes them into an MP4. For very long streams: this can take significant time and storage. Note that downloading DRM-protected HLS streams (Apple FairPlay, Widevine) requires the decryption key, which is not publicly accessible for protected commercial content.

Ready to convert?

Free, browser-based converters — no upload, no signup required.