Please note that the contents of this offline web site may be out of date. To access the most recent documentation visit the online version .
Note that links that point to online resources are green in color and will open in a new window.
We would love it if you could give us feedback about this material by filling this form (You have to be online to fill it)



Video

Provide alternatives for legacy platforms

Not all video formats are supported on all platforms. Check which formats are supported on the major platforms and make sure your video works in each of these.

Check which formats are supported

Use canPlayType() to find out which video formats are supported. The method takes a string argument consistent of a mime-type and optional codecs and returns one of the following values:

Return value Description
(empty string) The container and/or codec isn't supported.
maybe The container and codec(s) might be supported, but the browser will need to download some video to check.
probably The format appears to be supported.

Here are some examples of canPlayType() arguments and return values when run in Chrome:

Type Response
video/xyz (empty string)
video/xyz; codecs="avc1.42E01E, mp4a.40.2" (empty string)
video/xyz; codecs="nonsense, noise" (empty string)
video/mp4; codecs="avc1.42E01E, mp4a.40.2" probably
video/webm maybe
video/webm; codecs="vp8, vorbis" probably

Produce video in multiple formats

There are lots of tools to help save the same video in different formats:

Check which format was used

Want to know which video format was actually chosen by the browser?

In JavaScript, use the video’s currentSrc property to return the source used.

To see this in action, check out this demo : Chrome and Firefox choose chrome.webm (because that’s the first in the list of potential sources these browsers support) whereas Safari chooses chrome.mp4 .

Updated on 2014-04-29

Authors

Sam Dutton

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License , and code samples are licensed under the Apache 2.0 License . For details, see our Site Policies .