Comparing HTML5 with Flash is like comparing apples and oranges. HTML5 is a specification and Flash is software. But there has been so much buzz in the IT world about these 2 technologies that it's worth taking a detailed look. HTML5 is the new specification for Hyper Text Markup Language (HTML) which is the language of the web. This latest specification includes native support for audio and video which is why Flash is threatened. Adobe Flash, on the other hand, has owned rich media on the web for more than a decade and has become virtually ubiquitous. The battleground for the debate between HTML5 and Flash is rich media, or more specifically, streaming video. But let's start with a primer on HTML5 and Flash and then we will move on to comparing the technologies.
HTML5 is currently in development and is the next generation of the HTML standard. The HTML5 specification is governed by the Web Hypertext Application Technology Working Group (WHATWG). Members of the group include folks from Apple, Mozilla, Opera Software and others. The new group came about because they were disappointed with the direction of the prior group, W3C. As it turns out, both groups are working on the HTML5 specification.
We have already seen HTML editors include HTML5 add-ons which is good for software developers. One of the key features in HTML5 is that it is backward compatible to HTML4. Everything that worked in HTML4 will continue to work in HTML5. Upgrading an HTML page from HTML4 to HTML5 couldn't be easier. Simply change the doctype to "HTML". It looks like this: "<!DOCTYPE HTML>". Your page is now an HTML5 page.
HTML5 includes a host of new mark-up elements to improve structure, such as:
- <article> Designed for external content like a blog, forum, or any other content from an external source
- <header> Can be used as an introduction of a document or section
- <nav> Designed for a section of navigation
- <section> Designed for a section in a document like chapters, headers, footers, or any other sections of the document
The most talked about part of the HTML5 specification is the new media elements. This is where HTML5 and Flash cross paths. HTML5 supports audio and video without the use of any add-ons such as the Flash Player.
The HTML5 new media elements include (partial list):
- <audio> Used for multimedia content, such as sound, music or audio streams
- <video> Used for video content, such as a movie clips or video streams
To learn more about the new elements in HTML5, see the article, What's New in HTML 5 by Jennifer Kyrnin (About.com).
There has been discussion around the codecs required to actually play the audio and/or video. The term codec refers to any technology used in compressing and decompressing data 1(COmpressing/DECompressing). WHATWG recently announced that it would be removing the section from the HTML5 specification, stating which codec would be required. It came to this conclusion because they didn't feel that all vendors could agree on a single codec. They instead left the codec "undefined". This is similar to the image tag in earlier versions of HTML. The image tag supports multiple formats such as JPEG and GIF.
The 2 codecs used in HTML5 are H.264 and Ogg Theora. Both are supported by the current version of HTML5.
The H.264 codec is a video compression standard developed and governed by the MPEG Licensing Association (MPEG LA) which is a partnership between the ITU-T Video Coding Experts Group (VCEG) and the ISO/IEC Moving Picture Experts Group (MPEG). The H.264 codec is used across many applications from compressed video for internet streaming applications to HDTV broadcast and digital cinema applications. H.264 is also one of the compression standards used in Blu-ray Disc format. Google, YouTube, Vimeo and Apple have all announced their support for the H.264 standard.
One of the key issues regarding the H.264 is licensing. In August 2010, MPEG LA announced that they will not charge a royalty fee for videos encoded using H.264, provided that the videos are free to the end user until at least 2016. This is really good news for supporters of H.264.
- Ogg Theora
The Theora codec is a video compression framework developed by the Xiph.Org Foundation. The mission of the Xiph.Org Foundation is to protect the foundations of internet multimedia from control by private interests. All of the foundation's projects support open standards and are license free. Ogg is the media container that delivers the video and was also developed by the Xiph.Org Foundation. The open source community has been outspoken in its support for Ogg Theora. In addition, both Mozilla and Opera Software support the Ogg Theora video format.
Browser support for the HTML5 specification continues to increase, with 4 out of the top 5 browsers currently supporting some or all of the HTML5 specification. This is the list of the top 5 browsers in the order of HTML5 compatibility.
Mozilla has been an early adopter of the HTML5 standard. Beginning with Firefox 3.5, you started to see the first support of the HTML5 standard. This corresponded to the 1.8.1 version of the Gecko engine, the heart of Firefox. Mozilla continued adding more support for HTML5 with subsequent releases of their browser. The current release, Mozilla Firefox 3.6.9 (Gecko engine 1.9.2) has virtually full support for the HTML5 specification, including audio and video. Mozilla also offers a mobile web browser which is based on the same engine as the regular web browser.
Google Chrome was released in 2008. The current Chrome version is 6.0.472.55. Google Chrome has solid support when it comes to HTML5. With the exception of just a couple of features, it supports pretty much everything including audio and video. Google has a number of mobile applications for phones but they don't have a mobile version of Chrome just yet. Chrome only runs on the Microsoft Windows operating system.