{
  "schemaVersion": 1,
  "contentVersion": "ca42e61ede0a24f789d7287a0001244ad22f4abf",
  "id": "docs/reference/browser-support-check",
  "collection": "docs",
  "title": "Check browser media support",
  "description": "See which codecs and containers this browser declares it can play, then test real encoded files on your target devices.",
  "canonicalUrl": "https://encode.wiki/reference/browser-support-check/",
  "apiUrl": "https://encode.wiki/api/v1/documents/docs/reference/browser-support-check.json",
  "markdownUrl": "https://encode.wiki/api/v1/markdown/docs/reference/browser-support-check.md",
  "status": "current",
  "tags": [],
  "license": "CC BY-SA 4.0",
  "dates": {
    "lastVerified": "2026-10-08T00:00:00.000Z"
  },
  "authors": [],
  "sources": [
    {
      "title": "HTML canPlayType",
      "url": "https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/canPlayType",
      "accessedAt": "2026-10-04T00:00:00.000Z"
    },
    {
      "title": "Media Source isTypeSupported",
      "url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaSource/isTypeSupported",
      "accessedAt": "2026-10-04T00:00:00.000Z"
    },
    {
      "title": "Media Capabilities decodingInfo",
      "url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaCapabilities/decodingInfo",
      "accessedAt": "2026-10-04T00:00:00.000Z"
    },
    {
      "title": "HTML media standard",
      "url": "https://html.spec.whatwg.org/multipage/media.html#dom-navigator-canplaytype",
      "accessedAt": "2026-10-04T00:00:00.000Z"
    },
    {
      "title": "Media Capabilities specification",
      "url": "https://www.w3.org/TR/media-capabilities/",
      "accessedAt": "2026-10-04T00:00:00.000Z"
    },
    {
      "title": "Media Source Extensions specification",
      "url": "https://www.w3.org/TR/media-source-2/#dom-mediasource-istypesupported",
      "accessedAt": "2026-10-04T00:00:00.000Z"
    },
    {
      "title": "VP9 levels",
      "url": "https://www.webmproject.org/vp9/levels/",
      "accessedAt": "2026-10-08T00:00:00.000Z"
    }
  ],
  "headings": [
    {
      "depth": 2,
      "text": "Interpret the declarations",
      "anchor": "interpret-the-declarations"
    }
  ],
  "sections": [
    {
      "id": "_preamble",
      "title": "Page introduction",
      "depth": 0,
      "canonicalUrl": "https://encode.wiki/reference/browser-support-check/",
      "apiUrl": "https://encode.wiki/api/v1/sections/docs/reference/browser-support-check/_preamble.json",
      "markdownUrl": "https://encode.wiki/api/v1/sections/docs/reference/browser-support-check/_preamble.md",
      "checksum": "eacf3ef60562f3211443ea8d4f0d0d21adae01f7d5d3590cee6792711a6b3a1b",
      "bytes": 240
    },
    {
      "id": "interpret-the-declarations",
      "title": "Interpret the declarations",
      "depth": 2,
      "anchor": "interpret-the-declarations",
      "canonicalUrl": "https://encode.wiki/reference/browser-support-check/#interpret-the-declarations",
      "apiUrl": "https://encode.wiki/api/v1/sections/docs/reference/browser-support-check/interpret-the-declarations.json",
      "markdownUrl": "https://encode.wiki/api/v1/sections/docs/reference/browser-support-check/interpret-the-declarations.md",
      "checksum": "738969b9d3b17097d5def0d14964bfe891be8e394b80cf53f92319d4655e09f7",
      "bytes": 2071
    }
  ],
  "outboundReferences": [
    "/codecs/audio/",
    "/codecs/images/",
    "/reference/video-codec-support/",
    "https://html.spec.whatwg.org/multipage/media.html#dom-navigator-canplaytype",
    "https://www.w3.org/TR/media-capabilities/",
    "https://www.w3.org/TR/media-source-2/#dom-mediasource-istypesupported",
    "https://www.webmproject.org/vp9/levels/"
  ],
  "checksum": "af61dfbc8ddd7e705c3ae38b614014434b826c8a96f8bcbb8ae347ed33fc606b",
  "contentFormat": "markdown",
  "markdown": "The table below asks this browser which codec and container combinations it supports, through three\nmedia APIs. A positive answer is a declaration, not a decoded file, so play a real output file before\nyou ship it.\n\n<BrowserSupportCheck />\n\n## Interpret the declarations\n\nEach result has a text label beside its icon:\n\n- **✅** is a positive declaration: HTML `probably`, MSE support, or a positive decode, smoothness or\n  power-efficiency prediction.\n- **❌** means the queried API does not advertise support for that configuration. A different\n  container, profile, API or application may still play.\n- **⚠️** is HTML `maybe`, a missing or rejected API, or a supported configuration without a positive\n  smoothness or power-efficiency prediction.\n\nFile decoding, smoothness and power efficiency have separate icons, so a supported result can appear\nwith warnings on the other two. The labels follow the\n[HTML media standard](https://html.spec.whatwg.org/multipage/media.html#dom-navigator-canplaytype),\nthe [MSE specification](https://www.w3.org/TR/media-source-2/#dom-mediasource-istypesupported) and the\n[Media Capabilities specification](https://www.w3.org/TR/media-capabilities/).\n\n- **HTML media** uses `canPlayType()`. An empty result means no declared support. `maybe` and\n  `probably` are predictions, not a successful decode.\n- **MSE** uses `MediaSource.isTypeSupported()`. You still need valid initialization segments,\n  timestamps and appends.\n- **File decode** uses `MediaCapabilities.decodingInfo()` for the listed size, frame rate and bitrate.\n  Its smoothness and power-efficiency predictions do not name a specific hardware decoder.\n\nThe VP9 queries use level 2.1 codec strings because the probe configuration (640×360, 30 fps,\n500 kbit/s) exceeds [VP9 level 1.0](https://www.webmproject.org/vp9/levels/) in picture size, sample\nrate and bitrate.\n\nThese probes do not cover image formats, DRM, encrypted media, WebCodecs encoding, or every codec in\nthis wiki. A missing API is not the same as an unsupported codec. A positive 8-bit 4:2:0 result does\nnot extend to 10- or 12-bit, 4:2:2, 4:4:4 or HDR playback.\n\nFor format-level detail, see [video codec support](/reference/video-codec-support/), the\n[image codec overview](/codecs/images/) and the [audio codec overview](/codecs/audio/).\n"
}
