.mpd MIME type
MPEG-DASH manifestvideo
application/dash+xmlThe manifest of an MPEG-DASH adaptive stream — the XML counterpart to an HLS .m3u8 playlist.
| MIME type | application/dash+xml |
|---|---|
| Extensions | .mpd |
| Content-Type | application/dash+xml; charset=utf-8 |
| Compress in transit? | Yes — enable gzip or Brotli |
Good to know
- Browsers don't play DASH natively. Players like dash.js and Shaka Player fetch the manifest and feed the segments to Media Source Extensions.
- Apple devices have long preferred HLS, so services that stream everywhere usually publish both an
.mpdand an.m3u8, often over the same segments. - Live manifests change constantly: give them a short cache lifetime while the segments cache for a long time.
Useful here: Cache-Control header
Serve .mpd files with the right type
The response header to send:
Content-Type: application/dash+xml; charset=utf-8
Most servers pick the type from the file extension. If yours sends the wrong one, map it explicitly:
nginx (inside the types block in mime.types)
application/dash+xml mpd;
Apache (.htaccess or server config)
AddType application/dash+xml .mpd
Express
res.set("Content-Type", "application/dash+xml; charset=utf-8");Python
import mimetypes
mimetypes.add_type("application/dash+xml", ".mpd")HTML file input
<input type="file" accept=".mpd,application/dash+xml">
Check it
See what a server sends for a file, and what type a local file really is by its contents:
curl -sI https://example.com/file.mpd | grep -i '^content-type:' file --mime-type file.mpd
Frequently asked questions
What is the MIME type for .mpd files?
application/dash+xml.
What Content-Type header should a .mpd file be served with?
Content-Type: application/dash+xml; charset=utf-8. As a text format, include the charset so browsers don't guess the encoding. It compresses well, so let the server apply gzip or Brotli.
Related types
Headers that go with it: Content-Type · Content-Disposition · X-Content-Type-Options