HTMLMediaElement.canPlayType()

The HTMLMediaElement method canPlayType() reports how likely it is that the current browser will be able to play media of a given MIME type.

Note: This feature is not available in Web Workers.

Syntax

canPlayResponse = audioOrVideo.canPlayType(mediaType);

Parameters

mediaType
A DOMString containing the MIME type of the media.

Return value

A DOMString indicating how likely it is that the media can be played. The string will be one of the following values:

probably
Media of the type indicated by the mediaType parameter is probably playable on this device.
maybe
Not enough information is available to determine for sure whether or not the media will play until playback is actually attempted.
"" (empty string)
Media of the given type definitely can't be played on the current device.

Example

var obj = document.createElement('video');
console.log(obj.canPlayType('video/mp4')); // "maybe"

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'canplaytype' in that specification.
Living Standard
HTML5
The definition of 'HTMLMediaElement.canplaytype' in that specification.
Recommendation Initial definition.

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
canPlayType()Chrome Full support YesEdge Full support 12Firefox Full support 3.5
Notes
Full support 3.5
Notes
Notes Prior to Firefox 28, canPlayType() returned probably when asked about WebM audio or video files without the codecs parameter. Since multiple codecs are supported, this is not enough information to determine if a file can be played, so maybe is now correctly returned.
IE Full support 9Opera Full support YesSafari Full support 6WebView Android Full support YesChrome Android Full support YesFirefox Android Full support YesOpera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support
Full support
See implementation notes.
See implementation notes.

See also