All VAST error codes
405Linear / media file errors · VAST 2.0+

VAST Error 405: Problem displaying media file

A media file was selected and fetched, then failed to actually play — codec mismatch inside the container, corruption, or a CORS block.

Error 405 is the last-mile failure: selection passed, download worked, playback broke. The file's declared attributes said one thing; its contents said another — or the environment (CORS, DRM, decoder limits) refused it at render time.

Because everything looked valid until the decoder touched the file, 405 almost always requires inspecting the actual bytes, not the XML.

Why error 405 happens

Declared codec doesn't match the encode

The MediaFile says video/mp4 H.264, the file is actually HEVC in an MP4 container. Selection passes on the declaration; the decoder fails on the contents.

Missing CORS headers

Web players fetching media cross-origin need Access-Control-Allow-Origin on the file response. Without it, the browser blocks playback after the download succeeds.

Corrupt or badly muxed file

Truncated uploads, broken moov atoms, or non-faststart MP4s that can't begin playback until fully downloaded.

Encoding profile beyond the device decoder

High 10-bit profiles, unusual frame rates, or oversized resolutions that the hardware decoder rejects at open time.

How to fix VAST error 405

  1. 1

    Download the file and probe it

    Inspect the real codec, profile, and container structure (a validator with media inspection, or ffprobe, shows this). Compare against the declaration in the tag.

  2. 2

    Check response headers for CORS

    Confirm the CDN sends Access-Control-Allow-Origin on media responses if web players consume the tag.

  3. 3

    Re-encode to a compliant baseline

    H.264 high profile or lower, AAC audio, faststart MP4. Fix the declaration if the encode is intentional.

  4. 4

    Verify on the affected device class

    If 405 clusters on specific devices, test the exact file there — decoder limits are device-specific and invisible in desktop testing.

Free VAST validator

Seeing error 405 on a live tag?

Paste the tag URL or XML — the validator resolves the full wrapper chain, validates the schema, downloads every media file, and shows exactly which stage fails.

Validate your VAST tag

VAST error 405 — frequently asked questions

The file plays in VLC — why does the player throw 405?+

Desktop players like VLC ship software decoders for nearly everything. Ad environments rely on the device's hardware decoder and the browser's security rules (CORS), both far stricter.

What is faststart and why does it matter for VAST?+

MP4s store an index (moov atom) that players need before playback. Faststart puts it at the file's front so streaming can begin immediately; without it, some players must download the whole file first — which surfaces as 405 or 402.

Related error codes

Keep reading