Free tool by DCAST

Why Won't It Play?

Follow this checklist when your stream or video link does not play. Then test the URL below or in the Stream Checker.

URL & format

Is the link a direct stream URL? It should end with .m3u8 for HLS or point to a playlist.

Is it a master playlist (multiple #EXT-X-STREAM-INF) or a single media playlist? Both are valid; some players expect one or the other.

Does the URL start with https:// or http://? Some players block mixed content.

Expired or invalid URL? Live stream links and tokens often expire.

Server & CORS

If it works in our player but not in your app or embed, the issue may be CORS: the server must allow your origin.

Try opening the stream in a new tab or in our HLS Player to isolate player vs server.

Codec & player

Audio codec: most browsers expect AAC in HLS. If the stream uses AC-3 or other codecs, some players will not play audio.

Video codec: H.264 is widely supported; HEVC/AV1 support varies by device and browser.

Check that your player or device supports the codecs in the stream. Use Stream Checker to see the playlist.

Live vs VOD

For live streams, ensure the encoder is pushing and the stream is not offline.

Master playlist should be updated with new segments; if the server is stuck, playback may freeze.

Test your stream

Paste your stream URL and open it in our player (new tab):

Or use Stream Lab to see if the URL is HLS and peek the playlist. For full spec validation, use HLS Report (external).

Explain this error

Paste an error message or playlist snippet for a short explanation and next step.

About this playback checklist

This checklist covers the most common reasons an HLS or M3U8 link does not play: wrong URL format, CORS, codec support, or expired links. Work through each section, then test your URL in the HLS Player or Stream Lab. For full playlist validation, use external tools like HLS Report.

Q:My stream works in the HLS player but not in my app. Why?
A:Often the server allows this site (CORS) but not your app's origin. Ask your stream host to add your domain to CORS allowed origins, or use a proxy that adds the correct headers.
Q:What if the URL returns 404 or expires?
A:Live stream URLs and tokens often expire. Generate a new link from your streaming platform or CDN. For VOD, check that the path and token are still valid.

All tools · HLS Player · Stream Lab

Part of DCAST — streaming platform for creators.

Why Won't It Play? — HLS Stream Playback Checklist | dcast