A Primer on HTML5 <Video> and Why You Should Care About It
There is good news: the “open Web”, a vision for the future of the Internet that is participatory, collaborative and free from vendor lock-in is finally coming to fruition. Following Mozilla Firefox's successful introduction of open Web standards into their browser platform and the rapid adoption of Android on mobile phone, today we see many browser vendors and Web-enabled device manufacturers gravitating toward supporting vendor-neutral platforms for rich-media Web experiences. Only a few years ago, it seemed unlikely that tech giants (such as Google, Apple and Microsoft) and nonprofits (such as Mozilla) could agree on something so contentious as future standards for the Web. But because of the fragmented market across devices and the increasingly fragmented browser market on desktop computers, browser vendors and device makers are forced to move forward together or fall behind.
There is bad news too. The vision of "write once publish anywhere" is far from reality. Like many contentious agreements, the devil is in the details, and there are a lot of details. The open future of media on the Web is far from guaranteed. In this article, I highlight how the industry is transitioning away from targeting a single vendor for rich-media Web experiences to targeting multiple rich-media Web browsers instead. In this environment, middle-layer solutions will bridge the small differences between implementations.
The open Web traditionally has faced significant challenges when it comes to handling rich media such as video and audio. Rich media on the Web has been a battleground for proprietary solutions for years. Adobe Flash has won the current battle and is now the de facto standard for rich media on the desktop Web. However, Flash, is proprietary and is not supported by many devices, such as the iPhone and iPad. The new specifications for rich-media handling that are part of the W3C’s HTML5 standard, namely the <VIDEO> and <AUDIO> tags, are a great leap forward in addressing these challenges. They specify a vendor-neutral, device-neutral way of including rich media in Web pages, just like images are handled today.
Some HTML5 Background and the Future of Rich Media on the Web
HTML5 is the proposed next standard for HTML, the basic format for the Web. It aims to reduce the need for proprietary plugin-based rich Internet applications. The promise of HTML5 is that developers can write rich-media applications once and run them on any browser, on any device, from PCs through tablets and smartphones to set-top boxes and IP-enabled televisions.
The HTML5 working group, WHATWG, is trusted with the mission of upgrading the Web to support rich Web experiences without depending on proprietary technologies. True to its mission, the group has been operating in a very open manner. Although key working-group members are employed by major vendors, the standard creation process is open and encourages large-scale participation from Web developers and browser engineers. This is no small task when vendors like Microsoft, Apple, Google and Adobe compete for dominance in the area of rich media, which they all perceive to be key for the Web's future. With Microsoft’s announcement that HTML5 will be supported in the next release of IE, the standard got a big boost. But while the standard sets a high bar for interoperability, debates about the underlying technologies put the whole endeavor in jeopardy.
The most heated debate revolves around the codec-agnostic nature of the HTML5 <VIDEO> tag. Many open Web advocates promoted the idea of having a baseline royalty-free codec supported by all the browsers as part of the specification. However, when trying to get "buy-in" from all the stakeholders, the standard was not able to specify a standard codec, leaving codec selection open to vendors. The result of this "flexibility" is that today Apple’s Safari and Microsoft IE9 support H.264.
Google's Chrome supports the open-source and royalty-free VP8 codec as well as H.264 and OGG. Firefox supports VP8 and OGG/Theora. Google also recently announced that its open WebM project would also use VP8. The situation is further complicated by multiple delivery options. For example, an Apple platform will support Apple http adaptive streaming, while the Google Chrome browser can decode only normal http H.264 assets. And, Microsoft is likely to support Silverlight Smoothstream as a delivery option. This highlights that although all the browser vendors are participating in the HTML5 standard around video, it does not necessarily mean the same video with the same Web page will work on all browsers.
For example, imagine a visitor who comes to your site with IE6 and Flash or iPad and Safari. Delivering a high-quality Web video experience becomes almost impossible once again, despite the standard, as the codec and delivery options require, once again, browser-specific, device-specific behavior and back-end support. Moreover, as we have seen with other standards, there are likely to be many idiosyncrasies among other HTML5 feature implementations or simply incomplete support among browsers. This will make it even more difficult to take advantage of the new features without leaving a sizable percentage of Web visitors literally in the dark.
We Have Been Here Before
Html5video.org and Kaltura’s JS Library
Kaltura, the world's first open-source video platform, has developed one such library available at www.html5video.org and has created an industry resource to involve developers. The library was developed in partnership with the Wikimedia Foundation to handle video on Wikipedia, where only patent unencumbered free formats are permitted. Kaltura’s HTML5 media library uses a "fallback" method to provide viewers with the optimal viewing experience by detecting the browser and supported formats on the back end automatically. It can then display the right content in the right format and in the right container, while maintaining a single look and feel and feature set. For example, if you want to deliver an H.264 video to a Firefox client, the Kaltura library would switch to a Flash player automatically in a manner that is completely transparent to the developers’ custom interface components and to the viewer.
To learn more, experience HTML5 video in action, give feedback, get involved or help change the way video is done on the Web, go to Html5video.org.
Dr. Shay David is VP Business and Community Development at Kaltura.
Free DevOps eBooks, Videos, and more!
Regardless of where you are in your DevOps process, Linux Journal can help!
We offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, and advice & help from the expert sources like:
- Linux Journal
Web Development News
- New Products
- The Awesome Program You Never Should Use
- New Products
- RSS Feeds
- Tech Tip: Really Simple HTTP Server with Python
- Synchronize Your Life with ownCloud
- Days Between Dates?
- Returning Values from Bash Functions
- Ubuntu & SUSE & CentOS, Oh My!
- Getting Started with Salt Stack-the Other Configuration Management System Built with Python