Web/API/HTMLVideoElement

From Get docs


The HTMLVideoElement interface provides special properties and methods for manipulating video objects. It also inherits properties and methods of HTMLMediaElement and HTMLElement.

The list of supported media formats varies from one browser to the other. You should either provide your video in a single format that all the relevant browsers supports, or provide multiple video sources in enough different formats that all the browsers you need to support are covered.

Properties

Inherits properties from its ancestor interfaces, HTMLMediaElement, and HTMLElement.

HTMLVideoElement.height
Is a DOMString that reflects the height HTML attribute, which specifies the height of the display area, in CSS pixels.
HTMLVideoElement.poster
Is a DOMString that reflects the poster HTML attribute, which specifies an image to show while no video data is available.
HTMLVideoElement.videoHeight Read only
Returns an unsigned integer value indicating the intrinsic height of the resource in CSS pixels, or 0 if no media is available yet.
HTMLVideoElement.videoWidth Read only
Returns an unsigned integer value indicating the intrinsic width of the resource in CSS pixels, or 0 if no media is available yet.
HTMLVideoElement.width
Is a DOMString that reflects the width HTML attribute, which specifies the width of the display area, in CSS pixels.
HTMLVideoElement.autoPictureInPicture
The autoPictureInPicture attribute will automatically enter and leave the picture-in-picture mode for a video element when the user switches tab and/or applications
HTMLVideoElement.disablePictureInPicture
The disablePictureInPicture property will hint the user agent to not suggest the picture-in-picture to users or to request it automatically

Gecko-specific properties

HTMLVideoElement.mozParsedFrames  ' Read only
Returns an unsigned long with the count of video frames that have been parsed from the media resource.
HTMLVideoElement.mozDecodedFrames  ' Read only
Returns an unsigned long with the count of parsed video frames that have been decoded into images.
HTMLVideoElement.mozPresentedFrames  ' Read only
Returns an unsigned long with the count of decoded frames that have been presented to the rendering pipeline for painting.
HTMLVideoElement.mozPaintedFrames  ' Read only
Returns an unsigned long with the count of presented frames which were painted on the screen.
HTMLVideoElement.mozFrameDelay  ' Read only
Returns an double with the time which the last painted video frame was late by, in seconds.
HTMLVideoElement.mozHasAudio  ' Read only
Returns a boolean indicating if there is some audio associated with the video.

Microsoft Extensions

HTMLVideoElement.msFrameStep()  '
Steps the video by one frame forward or one frame backward.
HTMLVideoElement.msHorizontalMirror  '
Gets or sets whether a video element is flipped horizontally in the display.
HTMLVideoElement.msInsertVideoEffect()  '
Inserts the specified video effect into the media pipeline.
HTMLVideoElement.msIsLayoutOptimalForPlayback  ' Read only
Indicates whether the video can be rendered more efficiently.
HTMLVideoElement.msIsStereo3D  ' Read only
Determines whether the system considers the loaded video source to be stereo 3-D or not. Value set to true indicates source is stereo 3D.
HTMLVideoElement.msZoom  '
Controls whether the video frame is trimmed to fit the video display.

Methods

Inherits methods from its parent, HTMLMediaElement, and from its ancestor HTMLElement.

HTMLVideoElement.getVideoPlaybackQuality() '
Returns a VideoPlaybackQuality object that contains the current playback metrics. This information includes things like the number of dropped or corrupted frames, as well as the total number of frames.
HTMLVideoElement.requestPictureInPicture()
Requests that the user agent make video enters picture-in-picture mode

Events

Inherits events from its parent, HTMLMediaElement, and from its ancestor HTMLElement. Listen to these events using addEventListener() or by assigning an event listener to the oneventname property of this interface.

 

enterpictureinpicture
Sent to a HTMLVideoElement when it enters Picture-in-Picture mode. The associated event handler is HTMLVideoElement.onenterpictureinpicture
leavepictureinpicture
Sent to a HTMLVideoElement when it leaves Picture-in-Picture mode. The associated event handler is HTMLVideoElement.onleavepictureinpicture

Specifications

Specification Status Comment
HTML Living StandardThe definition of 'HTMLVideoElement' in that specification. Living Standard

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
HTMLVideoElement Chrome

Full support Yes

Edge

Full support 12

Firefox

Full support 4

IE

Full support 9

Opera

Full support 10.5

Safari

Full support Yes

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android

Full support 4

Opera Android

Full support Yes

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

cancelVideoFrameCallback

Experimental'Non-standard'

Chrome

Full support 83

Edge

Full support 83

Firefox

No support No

IE

No support No

Opera

Full support 69

Safari

No support No

WebView Android

Full support 83

Chrome Android

Full support 83

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 13.0

getVideoPlaybackQuality

Experimental'

Chrome

Full support 80

Edge

Full support 12

Firefox Full support 42


Full support 42


No support 25 — 42

Notes' Disabled'

Notes' Limited support to an allowed list of sites, for example YouTube, Netflix, and other popular streaming sites. The limitation was removed when Media Source Extensions was enabled by default in Firefox 42. Disabled' From version 25 until version 42 (exclusive): this feature is behind the media.mediasource.enabled preference. To change preferences in Firefox, visit about:config.

IE Full support 11

Notes'

Full support 11

Notes'

Notes' Only works on Windows 8+.

Opera

Full support 67

Safari

Full support 8

WebView Android

Full support 80

Chrome Android

Full support 80

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 13.0

height Chrome

Full support Yes

Edge

Full support 12

Firefox

Full support 4

IE

Full support 9

Opera

Full support 10.5

Safari

Full support Yes

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android

Full support 4

Opera Android

Full support Yes

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

mozDecodedFrames

Deprecated'Non-standard'

Chrome

No support No

Edge

No support No

Firefox

Full support 5

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

Full support 5

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

mozFrameDelay

Deprecated'Non-standard'

Chrome

No support No

Edge

No support No

Firefox

Full support 5

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

Full support 5

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

mozHasAudio

Deprecated'Non-standard'

Chrome

No support No

Edge

No support No

Firefox

Full support 15

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

Full support 15

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

mozPaintedFrames

Deprecated'Non-standard'

Chrome

No support No

Edge

No support No

Firefox

Full support 5

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

Full support 5

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

mozParsedFrames

Deprecated'Non-standard'

Chrome

No support No

Edge

No support No

Firefox

Full support 5

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

Full support 5

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

mozPresentedFrames

Deprecated'Non-standard'

Chrome

No support No

Edge

No support No

Firefox

Full support 5

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

Full support 5

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

msIsStereo3D

Non-standard'

Chrome

No support No

Edge

No support 12 — 79

Firefox

No support No

IE

Full support 10

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

poster Chrome

Full support Yes

Edge

Full support 12

Firefox

Full support 4

IE

Full support 9

Opera

Full support 10.5

Safari

Full support Yes

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android

Full support 4

Opera Android

Full support Yes

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

requestVideoFrameCallback

Experimental'Non-standard'

Chrome

Full support 83

Edge

Full support 83

Firefox

No support No

IE

No support No

Opera

Full support 69

Safari

No support No

WebView Android

Full support 83

Chrome Android

Full support 83

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 13.0

videoHeight Chrome

Full support Yes

Edge

Full support 12

Firefox

Full support 4

IE

Full support 9

Opera

Full support 10.5

Safari

Full support Yes

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android

Full support 4

Opera Android

Full support Yes

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

videoWidth Chrome

Full support Yes

Edge

Full support 12

Firefox

Full support 4

IE

Full support 9

Opera

Full support 10.5

Safari

Full support Yes

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android

Full support 4

Opera Android

Full support Yes

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

width Chrome

Full support Yes

Edge

Full support 12

Firefox

Full support 4

IE

Full support 9

Opera

Full support 10.5

Safari

Full support Yes

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android

Full support 4

Opera Android

Full support Yes

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
Non-standard. Expect poor cross-browser support.'
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.'
Deprecated. Not for use in new websites.
See implementation notes.'
See implementation notes.
User must explicitly enable this feature.'
User must explicitly enable this feature.


See also