StreamTest

DASH validator

Validate an MPD, including the live timing problems that only show up in the field.

Where to run the fetch
Request headers

For signed URLs and protected origins. In this browser mode, User-Agent, Referer and Cookie cannot be set — browsers forbid it — so use server mode for those.

For DRM streams with a cleartext key. Format kid:key or a 32-character hex key. Used only to play the stream in your browser — the key never leaves this page.

No analysis yet.

Enter a dash manifest url above, or paste the content, to see results here.

What this checks

  • UTCTiming presence — the usual cause of live DASH that stalls on some devices
  • Clock drift between availabilityStartTime and the origin’s own Date header
  • Segment addressing: SegmentTemplate, SegmentTimeline, SegmentBase and BaseURL
  • Adaptation set integrity: codec families, alignment and bitrate ordering
  • DRM: Widevine, PlayReady, FairPlay and ClearKey signalling, and inline PSSH

Privacy

Results are never shared. Choose “This browser” and the fetch and the analysis both happen on your machine — the URL, any headers you set and the results never reach our servers, which is also how you test a stream on a private network or behind a login. Pasted content is always analysed locally.

Common DASH findings, explained

Every finding links to a write-up on what it means and how to fix it.

Frequently asked questions

What does the DASH validator check?
UTCTiming presence — the usual cause of live DASH that stalls on some devices. Clock drift between availabilityStartTime and the origin’s own Date header. Segment addressing: SegmentTemplate, SegmentTimeline, SegmentBase and BaseURL. Adaptation set integrity: codec families, alignment and bitrate ordering. DRM: Widevine, PlayReady, FairPlay and ClearKey signalling, and inline PSSH.
Is the DASH validator free?
Yes. Every tool on StreamTest is free and works without an account. Sign in only to keep a private history.
Can I test a stream on a private network or behind a login?
Yes. Choose "This browser" and the fetch and the analysis both run on your machine — the URL, any headers you set and the results never reach our servers, so local, staging and authenticated origins work.
Do you support custom request headers and DRM keys?
Yes. You can set Authorization, User-Agent, Referer and Cookie headers per test, and supply cleartext ClearKey keys for encrypted DASH so the preview plays.