The State of HTML5 Video: Fullscreen & WebVTT Advance
We just pushed our 8th version of the State of HTML5 Video Report, hitting 2 years of coverage for this exciting tech. In this post, I’ll provide some highlights of the progress made, plus work that’s still to come.
Market Share Changes
80% of the market supports HTML5
There are several interesting developments on the market share side. Let’s take a look at the trends to gain some perspective. As always, data is provided by Statcounter.com.
On the desktop side, Chrome is on a roll, while Safari and Internet Explorer are holding their ground. Firefox is in slow decline, amplified by the fact the over the last two years overall desktop market share has shrunk from 90% to 75%. Another casualty is Internet Explorer 8, which slid from 17% to 7%. IE6 and IE7 are all but gone. Yay!
On the mobile front, iOS & Android are growing fast, jumping from a combined 6% to 16% market share. Interestingly, the global share of non-HTML5 mobile browsers is also growing, from 4% to 9%. These so-called proxy browsers (think Nokia XPress, Opera Mini and UC Browser) are popular in countries like India and Nigeria. Both IE and Firefox have no traction (yet) on the mobile side.
At the end of the day, the combined market share of browsers supporting HTML5 grows modestly from 76% to 81. That is only part of the story though…
Fullscreen & WebVTT Progress
Soon fullscreen support will be ubiquitous
- The new Internet Explorer 11 supports the W3C Fullscreen API. All desktop browsers now have built-in fullscreen video support. Both iOS and Android use the slightly older Webkit fullscreen API.
- Internet Explorer 11 also runs VTT styling and a full Cue API for <track> elements. On the mobile side, iOS7 and Android KitKat now have VTT support. This leaves Firefox as the only browser that still needs to implement it.
Adaptive Streaming – the Final Frontier
iOS is the only platform with streaming
Does that mean HTML5 video is all but done? Not quite. The one area left is adaptive streaming. Without it, live and long-form video cannot thrive on the web. The wheels are in motion here too, but there is a split in what browsers support:
- iOS and Safari, of course, play Apple’s popular HLS Streaming protocol. Android also supports it (quirks included) for IceCreamSandwich and above.
- Chrome and IE11 (Win8.1 only) support the W3C Media Source Extensions (MSE). Firefox has a basic demo working, but hasn’t shipped the MSE API yet.
While MSE can theoretically be used to build any kind of adaptive streaming, there is a limiting factor around the container format(s) browsers support. Chrome does WebM and fMP4; IE11 only fMP4. This means developers cannot build HLS into HTML5 (it uses the TS container). Moreover, fMP4 – meaning fragmented MP4 – is not the same as regular MP4. Existing MP4 files therefore cannot be re-used for adaptive streaming. Ouch…
Clearly, more work has to be done here. A logical step would be Chrome adding TS support, so JW Player and others can move to HTML5 for HLS playback. As Apple then adds MSE to iOS and Safari, we can then collectively move to DASH with fMP4. Or DASH with H.265. Or DASH with VP9?
To be continued…