HTML Videos
Videos can be played in HTML by many different methods.
Playing Videos in HTML
Example
<source src="movie.mp4" type="video/mp4" />
<source src="movie.ogg" type="video/ogg" />
<source src="movie.webm" type="video/webm" />
<object data="movie.mp4" width="320" height="240">
<embed src="movie.swf" width="320" height="240" />
</object>
</video>
Try it yourself »
Problems, Problems, and Solutions
Displaying videos in HTML is not easy!
You must add a lot of tricks to make sure your video will play in all browsers (Internet Explorer, Chrome, Firefox, Safari, Opera) and on all hardware (PC, Mac , iPad, iPhone).
In this chapter W3Schools summarizes the problems and the solutions.
The <embed> Tag
The purpose of the <embed> tag is to embed multimedia elements in HTML pages.
The following HTML fragment displays a Flash video embedded in a web page:
Problems
- The <embed> tag is unknown to HTML 4. Your page will not validate correctly.
- If the browser does not support Flash, your video will not play.
- iPad and iPhone cannot display Flash videos.
- If you convert the video to another format, it will still not play in all browsers.
Using The <object> Tag
The purpose of the <object> tag is to embed multimedia elements in HTML pages.
The following HTML fragment displays a Flash video embedded in a web page:
Problems:
- If the browser does not support Flash, your video will not play.
- iPad and iPhone cannot display Flash videos.
- If you convert the video to another format, it will still not play in all browsers.
Using the <video> Tag
The <video> element is new in HTML 5.
The purpose of the <video> tag is to embed video elements in HTML pages.
The following HTML fragment displays a video in ogg, mp4, or webm format embedded in a web page:
Example
<source src="movie.mp4" type="video/mp4" />
<source src="movie.ogg" type="video/ogg" />
<source src="movie.webm" type="video/webm" />
Your browser does not support the video tag.
</video>
Try it yourself »
Problems:
- You must convert your videos to many different formats.
- The <video> element does not work in older browsers.
- The <video> element does not validate in HTML 4 and XHTML.
The Best HTML Solution
HTML 5 + <object> + <embed>
<source src="movie.mp4" type="video/mp4" />
<source src="movie.ogg" type="video/ogg" />
<source src="movie.webm" type="video/webm" />
<object data="movie.mp4" width="320" height="240">
<embed src="movie.swf" width="320" height="240" />
</object>
</video>
Try it yourself »
The example above uses 4 different video formats. The HTML 5 <video> element tries to play the video either in mp4, ogg, or webm formats. If this fails, the code "falls back" to try the <object> element. If this also fails, it "falls back" to the <embed> element.
Problems:
- You must convert your videos to many different formats.
- The <video> element does not validate in HTML 4 and XHTML.
- The <embed> element does not validate in HTML 4 and XHTML.
NOTE: Using <!DOCTYPE html> solves the validation problem.
The YouTube Solution
The easiest way to display videos in HTML is to use YouTube (see next chapter).
Using A Hyperlink
If a web page includes a hyperlink to a media file, most browsers will use a "helper application" to play the file.
The following code fragment displays a link to a Flash video. If a user clicks on the link, the browser will launch a helper application, like Windows Media Player to play the AVI file:
A Note About Inline Videos
When a video is included in a web page it is called inline video.
If you plan to use inline videos in your web applications, be aware that many people find inline videos annoying. Also note that some users might have turned off the inline video option in their browser.
Our best advice is to include inline videos only in web pages where the user expects to see a video. An example of this is a page which opens after the user has clicked on a link to see the video.
HTML 4.01 Multimedia Tags
Tag | Description |
---|---|
<applet> | Deprecated. Defines an embedded applet |
<embed> | Deprecated in HTML4 but not in HTML5. Defines an embedded object |
<object> | Defines an embedded object |
<param> | Defines a parameter for an object |
14,336,250 Sites Built with Wix. Create yours today!
Click here to make a stunning website for Free.
Wix.com offers an easy-to-use online platform that enables anyone to design and publish professional, beautiful websites for free.
With total design control, eCommerce features and superior search engine results, Wix offers a complete solution for launching an exquisite website while saving tons of money.
Award-winning XML Tools: Altova MissionKit
![Altova MissionKit](http://www.w3schools.com/images/altova_missionkit_2012.gif)
The Altova MissionKit is an integrated suite of tools ideal for: