HTML and CSS Reference
What HTML5 multimedia isn't good for
Regardless of the somewhat black and white headlines of the
tech journalists, HTML5 won't “kill” all plugins overnight. There
are use-cases for plugins not covered by the new spec.
Copy protection is one area not dealt with by HTML5—unsur-
prisingly, given that it's a standard based on openness. So
people who need DRM are probably not going to want to use
HTML5 video or audio, as they will be as easy to download to
a hard drive as an <img> is now. Some browsers offer simple
context-menu access to the URL of the video, or even to save
the video. (Of course, you don't need us to point out that DRM is
a fools' errand, anyway. All you do is alienate your honest users
while causing minor inconvenience to dedicated pirates.)
Plugins remain the best option for a browser to transmit video
and audio from the user's machine to a web page such as Daily
Mugshot or Chat Roulette. (There is a highly nascent <device>
element rudimentarily specifi ed for “post-5” HTML, but there is
no support in browsers for it.) After shuddering at the unimagi-
nable loneliness that a world without Chat Roulette would repre-
sent, consider also the massive amount of content out there that
will require plugins to render it for a long time to come.
Anatomy of the video element
At its simplest, including video on a page in HTML5 merely
requires this code:
The .ogv file extension is used here to point to an Ogg Theora video.
Similar to <object> , you can put fallback markup between the
tags, for older Web browsers that do not support native video.
Yo u s h o u l d a t l e a s t s u p p l y a l i n k t o t h e v i d e o s o u s e r s c a n
download it to their hard drives and watch it later on the operat-
ing system's media player. Figure 4.1 shows this code in a mod-
ern browser and fallback content in a legacy browser.
<h1>Video and legacy browser fallback</h1>
Download the <a href=leverage-a-synergy.ogv>How to
¬ leverage a synergy video</a>
NOTE So long as the http
end point is a streaming
resource on the web, you can
just point the <video> or
<audio> element at it to
stream the content.