StreamTest

MPD declares no profile

Without @profiles a player cannot tell which DASH feature set the manifest expects.

What it means

The @profiles attribute on <MPD> names the DASH profile, such as urn:mpeg:dash:profile:isoff-live:2011. It is absent.

Why it matters

The profile is how a manifest states its contract — which addressing modes and features are in play. Some players use it to choose a parsing strategy, and conformance tooling needs it. It is a required attribute, so its absence also suggests the manifest was assembled by hand.

How to fix it

  1. Add @profiles to the <MPD> element.
  2. Live streams generally use urn:mpeg:dash:profile:isoff-live:2011.
  3. On-demand generally uses urn:mpeg:dash:profile:isoff-on-demand:2011.

Check your own stream

The free DASH validator runs this check on every analysis and links each finding straight back here.

Open the DASH validator →

Frequently asked questions

What does "MPD declares no profile" mean?
The @profiles attribute on <MPD> names the DASH profile, such as urn:mpeg:dash:profile:isoff-live:2011. It is absent.
Why does it matter?
The profile is how a manifest states its contract — which addressing modes and features are in play. Some players use it to choose a parsing strategy, and conformance tooling needs it. It is a required attribute, so its absence also suggests the manifest was assembled by hand.
How do I fix it?
1. Add @profiles to the <MPD> element. 2. Live streams generally use urn:mpeg:dash:profile:isoff-live:2011. 3. On-demand generally uses urn:mpeg:dash:profile:isoff-on-demand:2011.
Can a validator catch this before viewers do?
Yes. The free DASH MPD validator checks this on every run, together with UTCTiming, clock drift and segment addressing — the live problems that only appear on other people's devices.
What is the first thing to try?
Add @profiles to the <MPD> element.

Related DASH checks