Yesterday, the World Wide Web Consortium (W3C) published the HTML5 specification as Recommendation, which is their name for a final version of a standard.
This new HTML standard brings a lot of new HTML elements and APIs. There are mainly two parts of new elements.
The first group is the ones that aim for more semantic in web pages but don’t introduce new features. This group includes, but isn’t limited to, elements such as <nav>
(for navigational content), <article>
, <section>
. Elements of this group are meant as replacement for the generic elements, such as <div>
or <span>
. Using these new elements, search engines can better differentiate between what is navigational and what is “real” content – and what type of content it is.
The other group contains elements which introduce new features. This is the more interesting group as it enhances the possibilities for developers without the need for plugins, such as Adobe Flash, Microsoft Silverlight or Java. This is especially important as, for example Google has announced the removal of NPAPI (an API used by these plugins) and also Microsoft advocates plug-in free browsing. Although they still provide a Flash Player, it will probably be only a matter of time until they don’t. Furthermore, browsers on mobile devices are a step further, as most of them do not support plugins and Flash players are not available.
But let’s take a look at some of the new elements:
<canvas>
provides scripts to render graphs, game graphics, etc. This is sometimes refered to as the Canvas JavaScript API. The canvas element can also be used with WebGL to render 2D and 3D graphics, using the graphics card’s GPU.<video>
enables out-of-the-box playback of videos, which is really awesome. This finally enables plugin-free multimedia on the web. However, there is still a drawback. The decision as to which video codecs and container formats are supported, is left to the browser vendors – and they often can not agree on a single format which is supported in all browsers.<audio>
enables out-of-the-box playback of audio content in a web page. Similar to video, as well as for audio, the supported container formats and codecs is left to the browser vendors.<track>
can be used for time text tracks, such as subtitles or captions in a video. WebVTT files are supported out-of-the-box.
However, most of the new elements are already known and have been used for a while as they are implemented in all modern browsers. But now it’s the first time the specification is stable. Anyway, there is still a lot more work to do for the W3C to make the future of the web happen.
For us, the most important standard that the W3C is working on is the Media Source Extensions standard, which is currently in the state of a Candidate Recommendation. This JavaScript API allows it to generate media streams for e.g. the <video>
or <audio>
element, which enables MPEG-DASH in pure HTML5 and JavaScript.
Another interesting standard is the Encrypted Media Extensions standard, which allows playback of protected content in HTML5 and JavaScript. But this is currently a Working Draft and will take a while until finalization.
We welcome the new standard and are looking forward to time without the need for Flash players or plugins, a time where multimedia can be viewed on virtually any device with only a single implementation.
All the best,
Daniel & the Bitmovin Team
Follow us on Twitter: @bitmovin