HTMLVideoElement

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  This API has not been standardized. Read only This deprecated API should no longer be used, but will probably still work.
Returns an unsigned long with the count of video frames that have been parsed from the media resource.
HTMLVideoElement.mozDecodedFrames  This API has not been standardized. Read only This deprecated API should no longer be used, but will probably still work.
Returns an unsigned long with the count of parsed video frames that have been decoded into images.
HTMLVideoElement.mozPresentedFrames  This API has not been standardized. Read only This deprecated API should no longer be used, but will probably still work.
Returns an unsigned long with the count of decoded frames that have been presented to the rendering pipeline for painting.
HTMLVideoElement.mozPaintedFrames  This API has not been standardized. Read only This deprecated API should no longer be used, but will probably still work.
Returns an unsigned long with the count of presented frames which were painted on the screen.
HTMLVideoElement.mozFrameDelay  This API has not been standardized. Read only This deprecated API should no longer be used, but will probably still work.
Returns an double with the time which the last painted video frame was late by, in seconds.
HTMLVideoElement.mozHasAudio  This API has not been standardized. Read only This deprecated API should no longer be used, but will probably still work.
Returns a boolean indicating if there is some audio associated with the video.

Microsoft Extensions

HTMLVideoElement.msFrameStep()  This API has not been standardized.
Steps the video by one frame forward or one frame backward.
HTMLVideoElement.msHorizontalMirror  This API has not been standardized.
Gets or sets whether a video element is flipped horizontally in the display.
HTMLVideoElement.msInsertVideoEffect()  This API has not been standardized.
Inserts the specified video effect into the media pipeline.
HTMLVideoElement.msIsLayoutOptimalForPlayback  This API has not been standardized. Read only
Indicates whether the video can be rendered more efficiently.
HTMLVideoElement.msIsStereo3D  This API has not been standardized. 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  This API has not been standardized.
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() This is an experimental API that should not be used in production code.
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 Standard
The definition of 'HTMLVideoElement' in that specification.
Living Standard

Browser compatibility

BCD tables only load in the browser

See also