WTF is... WebRTC?
Voice and video communications game changer
Firefox 18’s release sees the browser join Google’s Chrome - from version 23 - and Opera - version 12 - as one of just three desktop browsers supporting WebRTC in their public releases. This is a big step forward for a technology that’s been in the public domain for more than 18 months, but has been in development even longer than that. But it’s one that will start to make its presence felt in 2013.
WebRTC means real-time communications between browsers, in particular sound and video communications, on a peer-to-peer, page-to-page basis. It comprises browser code that Google open sourced back in June 2011 and which implements an emerging standard API being developed co-operatively by web standards bodies the Worldwide Web Consortium (W3C) and the Internet Engineering Task Force (IETF). Their efforts derive from the work on HTML 5 and related technologies carried out by the Web Hypertext Application Technology Working Group (WHATWG).
WebRTC is part of HTML 5, even though its developers’ efforts are still a work in progress. THe ITEF’s role is to define what functionality the APIs need to expose and to establish the foundations for that functionality through new or evolved protocols, such as connection management, quality of service, security and such. The W3C has to define the details of the APIs web developers will use to deliver WebRTC services: to initiate connections and to access the user’s hardware - microphone and webcam, for instance.
The ITEF has been working on WebRTC protocols since May 2011, and while its various drafts were all updated during Q4 2012, they are nonetheless some way from completion. The W3C’s specification was last formally updated in August 2012 and “is not complete”, the organisation’s WebRT working group warns. The current version of the API “is subject to major changes and... not intended for implementation”, even though that’s exactly what Google, Mozilla and co. are doing.
The W3C WebRTC working group was due to have reached the important stage of releasing a “Last Call [for contributions]” API draft specification in the spring of 2012, but it now appears that we won’t see this until well into 2013, possibly as late as the third quarter, insiders hint. Assuming no one raises any serious objections, the specification could formally endorsed by the W3C as a “Recommendation” by the end of the year.
In addition to the API code, Google is also offering key voice and video codecs WebRTC currently supports: iSAC for wideband links, iLBC for narrower connections, and VP8 for video.
Once all these elements are in place and aligned to standards, service providers can begin building Skype-style applications into web pages. It won’t take long after this point for voice and video calls to be just something any website can do.
It’s not hard to imagine tech support calls being tied directly to vendors’ knowledge-base sites, for example. Don’t understand what you’re reading, or is the documentation not helping you fix a problem? Then just click here to talk to a human being about it.
This can be done today, of course, but in forms that are specific to the vendors implementing them. WebRTC opens the technology to all, not just those companies that can afford to build or license a proprietary system. The implication is clear: WebRTC will make voice and video call enabled web pages pervasive and, in time, ubiquitous. No plug-ins to download and install that may not be compatible with all the browsers you use, on the desktop or on your mobile devices, and so no mess, no fuss.
But WebRTC goes beyond VoIP and video conferencing, at least in the narrow sense we currently define those applications. Imagine clicking on a button on, say, a product page on Amazon and having a video window pops up in which a staffer shows you the gadget you thinking about buying. This is no pre-recorded video, or a set of static, Photoshopped snaps, as you’d get today, but a real person with real kit showing it in real time - and doing so interactively showing you the parts you ask to be shown.
Seeing a real face and hearing a real voice, you can make a better judgement of an eBay seller’s hyperbole than you can with an email, or with the kind of text chat session you are often invited into by major sellers’ websites today. Online buying habits may change. If a seller won’t speak to you, or refuses to deal with your enquiry courteously, you may choose to take your custom elsewhere, just as you might once have done in a high street shop.
Again, WebRTC isn’t the only technology that makes this kind of service possible, but it’s the first to make it relatively inexpensive and easy to implement. And that, many market watchers suggest, will drive its adoption.
Don’t assume that this is a technology that will only be applied to browsers - including mobile ones, which we’ll come back to. Today’s mobile and desktop operating systems’ APIs allow application developers to embed web services and views into their programs. Once WebRTC becomes a W3C recommendation, it will work its way into OS’ web support APIs, allowing coders to add video and voice communications - don’t just think of conversations, consider applications like Apple’s Siri; voice-controlled database searching, anyone? - to apps themselves. It’s already in the open source Tizen OS. Mozilla’s Firefox OS test days have featured WebRTC, so it’s hard to imagine the technology not being part of that platform too.
Ultimately, when WebRTC is in mobile and desktop OSes as well as browsers, says Dean Bubley, owner of Disruptive Analysis, a market watcher, “there will be more browsers, and voice-embedded websites and apps than mobile and fixed phones”.
At this stage, it’s impossible to say how this will affect existing voice and video communications services. It’s tempting, for instance, to forecast WebRTC will give mobile phone network operators and VoIP players like Skype a hiding, by allowing people to communicate easily over channels they don’t control - or, crucially, don’t obtain revenue from.
Tilting the balance of power
However, for people to reach other people, they need to explicitly identify them, and it’s this identity - be it a phone number or a Skype handle - that the incumbents currently control. Most punters will not have the technical savvy to initiate WebRTC links without the mediation of an ID management operation.
Of course, there are other forms of ID - email addresses, for instance. Apple uses these, along with iPhone numbers, to identify individual users of its iMessage system. iMessage already routes text messages through Apple’s servers where sender and recipient are both iMessage users rather than send all messages, as other phones do, by SMS. It does the same thing with video calls - how long before it does the same with regular voice calls too?
For now, Apple - or any other major smartphone platform builder - may be loth to challenge the networks this way, especially when those networks have the power to make rival products more attractive through bigger up-front price subsidies. But the wide adoption of WebRTC will make it easier for Apple to decide the time has come when its users have more loyalty to their iPhones than to their carriers.
At which point, carriers need to consider whether it’s time to become mobile ISPs rather than the providers of communications services they currently are: shift from marketing voice, SMS and data to marketing simply data, in other words.
Apple has yet to voice its take on WebRTC, but what it’s doing with iMessage and FaceTime suggest it’s going its own way. That said, Apple is likely to add WebRTC to its Safari browser at the very least once the specification is finalised as a formal W3C Recommendation.
Google clearly favours WebRTC. Since Android Jelly Bean favours Chrome over earlier browsers, WebRTC will be supported on Android devices sooner rather than later, if it’s not already. It’s hard to see Google not integrating WebRTC into Android’s own web services functionality.
Microsoft had said it’s broadly in favour of WebRTC. Unsurprisingly, it reckons it can do a better job and is working on what it calls “Customisable, Ubiquitous Real Time Communication over the Web” (CU-RTC-Web), which is its take on what WebRTC should be and which it is submitting to the W3C WebRTC working group for consideration. It maintains it wants to make WebRTC more flexible - shorthand for including as few mandated methods and codecs as possible. That makes the technology more readily adaptable to a given developer’s needs, but it also limits interoperability.
In any case, Microsoft - and Skype, now it owns the VoIP company - are unlikely to support WebRTC before it becomes a standard under the HTML 5 banner.
Even if it ultimately refuses to bring WebRTC to Internet Explorer - or Apple to bring it to Safari - third-party efforts to create WebRTC plug-ins are already underway, though this to some extent contradicts the notions of simplicity and ubiquity on which WebRTC is predicated. ®