The HTML DOM Video Object in HTML represents the <video> element.
Creating a <video> element
var videoObject = document.createElement(“VIDEO”)
Here, “videoObject” can have the following properties −
| Property | Description |
|---|---|
| audioTracks | Itreturns an AudioTrackList object representing available audiotracks |
| autoplay | Itsets/returns whether a video should start playing as soon as it isready |
| buffered | Itreturns a TimeRanges object representing the buffered parts of avideo |
| controller | Itreturns the MediaController object representing the current mediacontroller of a video |
| controls | Itsets/returns whether a video should have controls displayed(play/pause etc) |
| crossOrigin | Itsets/returns the CORS settings of a video |
| currentSrc | Itreturns the URL of the current video |
| currentTime | Itsets/returns the current playback position in a video (in seconds) |
| defaultMuted | Itsets/returns whether the video should be muted by default |
| defaultPlaybackRate | Itsets/returns whether the default playback speed of the video |
| duration | Itreturns the length of a video (in seconds) |
| ended | Itreturns whether the playback of the video has ended |
| error | Itreturns a MediaError object representing the error state of thevideo |
| height | Itsets/returns the value of the height attribute of a video |
| loop | Itsets/returns whether the video should start playing over again,every time it is finished |
| mediaGroup | Itsets/returns the name of the media group the video(s) is a part of |
| muted | Itsets/returns whether the sound of a video should be turned off |
| networkState | Itreturns the current network state of a video |
| paused | Itreturns whether a video is paused or not |
| playbackRate | Itsets/returns the speed of the video playback |
| played | Itreturns a TimeRanges object representing the played parts of thevideo |
| poster | Itsets/returns the value of the poster attribute of a video |
| preload | Itsets/returns the value of the preload attribute of a video |
| readyState | Itreturns the current ready state of a video |
| seekable | Itreturns a TimeRanges object representing the seekable parts of avideo |
| seeking | Itreturns whether the user is currently seeking in the video |
| src | Itsets/returns the value of the src attribute of a video |
| startDate | Itreturns a Date object representing the current time offset |
| textTracks | Itreturns a TextTrackList object representing the available texttracks |
| videoTracks | Itreturns a VideoTrackList object representing the available videotracks |
| volume | Itsets/returns the audio volume of a video |
| width | Itsets/returns the value of the width attribute of a video |
Let us see an example of one of the properties i.e. HTML DOM Video networkState property −
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML DOM Video networkState</title>
<style>
* {
padding: 2px;
margin:5px;
}
form {
width:70%;
margin: 0 auto;
text-align: center;
}
input[type="button"] {
border-radius: 10px;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>HTML-DOM-Video-networkState</legend>
<video id="demo" width="320" controls><source src="https://www.tutorialspoint.com/html5/foo.mp4" type="video/mp4"></video><br>
<input type="button" onclick="setTrackDetails()" value="Set Source">
<input type="button" onclick="getTrackDetails()" value="Get Network State">
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById("divDisplay");
var demo = document.getElementById("demo");
var srcOfMedia = 'https://www.tutorialspoint.com/html5/foo.mp4';
function getTrackDetails() {
divDisplay.textContent = 'Network State: '+demo.networkState;
}
function setTrackDetails() {
demo.src = srcOfMedia;
demo.load();
}
</script>
</body>
</html>Output
Clicking ‘Get Network State’ button with no source defined &inus;

Clicking ‘Get Network State’ button with source defined but browser downloading data −

Also, “videoObject” can have the following methods −
| Method | Description |
|---|---|
| addTextTrack() | Itadds a new text track to the video |
| canPlayType() | Itchecks whether the browser can play the specified video type ornot |
| load() | Itre-renders the video element |
| play() | Itis used to start playback of the video |
| pause() | Itis used to pause a playing video |
Let us see an example of Video canPlayType() property −
Example
<!DOCTYPE html>
<html>
<head>
<title>HTML DOM Video canPlayType()</title>
<style>
* {
padding: 2px;
margin:5px;
}
form {
width:70%;
margin: 0 auto;
text-align: center;
}
input[type="button"] {
border-radius: 10px;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>HTML-DOM-Video-canPlayType( )</legend>
<video id="demo" width="320" controls><source src="" type="video/mp4"></video><br>
<input type="button" onclick="getTrackDetails()" value="Does Browser Supports video/mp4?">
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById("divDisplay");
var demo = document.getElementById("demo");
var srcOfMedia = 'https://www.tutorialspoint.com/html5/foo.mp4';
function getTrackDetails() {
var ans = demo.canPlayType('video/mp4');
if(ans !== ''){
divDisplay.textContent = 'Browser supports mp4';
demo.src = srcOfMedia;
demo.load();
}
else
divDisplay.textContent = 'Browser does not supports mp4';
}
</script>
</body>
</html>Output
Before clicking ‘Does Browser Supports video/mp4?’ button −

After clicking ‘Does Browser Supports video/mp4’ button −
