Home

m3u8

m3u8 is the UTF-8 encoded form of the M3U playlist used by HTTP Live Streaming (HLS). It is a text-based format that lists media segment URIs and streaming metadata, and files typically use the .m3u8 extension. Unlike the original M3U, which is ASCII, m3u8 supports Unicode characters and a richer set of tags.

An HLS playlist can be a master playlist or a media playlist. A master playlist begins with

Usage-wise, m3u8 enables adaptive streaming by providing multiple renditions in a single master playlist. Players download

Security and licensing aspects can be expressed via #EXT-X-KEY for encrypted streams (methods like AES-128 or

Common tooling includes FFmpeg for generation, and many streaming servers or players provide built-in support for

#EXTM3U
and
lists
variant
streams
using
#EXT-X-STREAM-INF,
followed
by
the
URL
of
each
variant’s
media
playlist.
These
variants
differ
in
bandwidth,
resolution
or
codecs.
A
media
playlist
contains
the
actual
media
segment
URIs
and
durations.
Each
segment
line
is
preceded
by
#EXTINF:duration,
and
the
playlist
includes
tags
such
as
#EXT-X-TARGETDURATION
and
#EXT-X-VERSION;
it
ends
with
#EXT-X-ENDLIST
when
the
stream
is
complete.
Segments
are
typically
MPEG-TS
or
fragmented
MP4
files
delivered
over
HTTP.
the
appropriate
variant
and
switch
between
segments
as
network
conditions
change.
The
media
playlists
then
reference
the
segment
files,
which
are
served
over
standard
HTTP
servers
or
CDNs.
SAMPLE-AES),
and
additional
DRM
workflows
may
apply
outside
the
core
HLS
playlist
syntax.
HLS
and
m3u8
files.