Skip to content
Free tool · runs in your browser

M3U8 Playlist Analyzer

Paste or fetch an HLS .m3u8 playlist to see its renditions, bitrates, codecs, segment durations, encryption and tags, explained in plain English.

Notes will appear here.

What the analyzer reports

HLS playlists are plain text, but the tags pack in a lot of meaning. For a master playlist the analyzer lists every rendition sorted by bandwidth, with resolution, frame rate and codec strings, and flags missing attributes that Apple's HLS authoring rules require. For a media playlist it counts segments, adds up the duration, checks segment lengths against the target duration, and tells you whether the stream is live or on demand and whether it uses MPEG-TS or fMP4 segments.

Decoding the encryption line

An #EXT-X-KEY tag means segments are encrypted. METHOD=AES-128 with no key format is plain AES encryption with a key fetched from a URL, which is not DRM. A KEYFORMAT of com.apple.streamingkeydelivery means FairPlay. A Widevine system ID (edef8ba9-…) means Widevine over HLS. See AES-128 encryption vs DRM for why this difference matters.

Next steps

Once the playlist looks right, play it in our HLS player to confirm every rendition decodes. If you are designing a ladder from scratch, our guide to adaptive bitrate streaming explains how to space the rungs.

Frequently asked questions

What is the difference between a master and a media playlist?

A master (multivariant) playlist lists the available renditions with #EXT-X-STREAM-INF tags. A media playlist lists the actual segments of one rendition with #EXTINF durations.

Can the analyzer fetch a playlist from a URL?

Yes, if the server allows cross-origin requests. If it does not, open the URL in a new tab, copy the text and paste it into the box instead.

Does it check encryption?

It reports #EXT-X-KEY tags, including the method (AES-128, SAMPLE-AES or SAMPLE-AES-CTR) and the key format, which tells you whether a stream uses FairPlay, Widevine or plain AES.

More free tools

All tools →