Browser-based HLS testing
M3U8 Player Online
Play and test M3U8/HLS streams directly in your browser. Use this tool only with streams you own or are authorized to access.
Quality
Shown when the stream provides multiple levels.
Diagnostics Collapsed
Diagnostics will appear here after playback starts.
- Playback errors stay in your browser.
- CORS, authorization, codec, and media segment issues may be reported here.
- This panel is collapsed by default to keep the player focused.
How to test your stream
- Paste an authorized HTTPS playlist URL and press Play. The browser contacts the stream provider directly; the provider must allow browser access to the playlist and segments.
- If playback is blocked by the browser, press the video play button. For multi-level HLS.js streams, choose a quality or Auto to adapt to the connection.
- If playback fails, open Diagnostics. Check for an expired URL, missing source permissions, unsupported codecs, or CORS configuration with the stream owner.
- Use History to replay a URL, add a local note, delete an entry, or clear all entries.
Share links, embed code, and page QR codes include the stream URL. Share only public or explicitly shareable URLs; never share private access tokens.
About this M3U8 player
M3U8 is a playlist format commonly used by HLS streams. This page is designed for quick testing, previewing, and troubleshooting authorized streams without uploading the URL to a server.
Safari may use native HLS; other compatible browsers use HLS.js. Quality selection is available for multi-level playlists in HLS.js mode. Playback depends on the source permissions, browser codecs, and network connection.
FAQ
Why does an M3U8 stream fail to play?
Common causes include CORS restrictions, expired URLs, unsupported codecs, source authorization, or malformed media segments.
Does this tool provide video sources?
No. It does not host, index, search, or recommend media content.
Where is my history stored?
History uses localStorage, so entries stay in your browser.