Google bought GIPS (Global IP Solutions) on May 18th 2010 for $68.2 million, and along with it came the real-time voice and video engines which it leveraged to commence the WebRTC (Web Real-Time Communication) project. It created a set of java script APIs which could be used by web browser and web application developers, literally opening up the technology for millions of developers to encourage innovation.
Google created the WebRTC by picking up the components from GIPS, then open-sourced it under BSD license. Open sourcing made it possible for engineers to reuse and modify WebRTC, allowing the creation of multiple derivatives. Google then worked with the W3C and IETF standards bodies to get WebRTC standardized to accelerate the adoption process worldwide.
An effort that started three years ago has now reached a stage where it is going to change the way the world communicates. An initiative by Google, Mozilla and Opera begun a few years ago is now contending to be a new standard in itself. It also has a dot org website which clearly defines the mission and the progress of the work being done.
With WebRTC, unified communication will now be a reality. The principal goal is to enable real-time communications in web browsers. This allows the rich multimedia applications to be run directly in the browsers to communicate with each other in real-time without the use of a 3rd party plugin. The purpose is to build and put a media engine in the browser which exposes such APIs that it allows sharing of video and audio content through web browsers across multiple operating systems or devices.
WebRTC is an open framework which offers web app developers the ability to write rich, real-time multimedia apps on the web without the need to download any plugins. The WebRTC working group is striving to create a strong RTC platform which works across multiple browsers and platforms. Currently the WebRTC APIs are available in Chrome’s stable version and Firefox’s nightly version. A major milestone was recently achieved when Firefox and Chromes’ interoperability was successfully tested, so Chrome and Firefox can now officially “talk.”
The generic architecture as shown on WebRTC.org looks something like this:
There are two distinct layers shown in the architecture:
Browser developers will be interested in the WebRTC C++ API and the capture/render hooks at their disposal.
Web App developers will be interested in the Web API.
There are three main components in WebRTC architecture:
The WebRTC project provides us with a complete stack for good quality voice communication. It offers three codecs – iSAC, iLBC & Opus – and other critical components to enhance the audio experience. It has noise reduction, acoustic echo cancellation (AEC), automatic gain control (AGC), noise suppression, etc.
The VP8 video codec is designed for low-latency RTC and has been picked up from the VideoM Project. It provides capture and playback capability on multiple platforms and takes care of packet loss with a video jitter component, and the image enhancement component reduces image noise.
Unreliable networks can easily reduce the audio and video quality, thus the dynamic jitter buffers and error concealment techniques are utilized to minimize the effect. On top of that, various components from the libjingle project are included for establishing a peer-to-peer connection using ICE/STUN/Turn/RTP-over-TCP and support for proxies.
Applications around WebRTC
Many of us have used Skype, Viber, WhatsApp, FaceTime and other applications to communicate with each other. It was already a major challenge for service providers to tackle the aggressive OTT players who were providing free communication over the service providers own network. However, now there is an even bigger challenge ahead for both service providers and OTT players. It’s called WebRTC.
The common question resounding is whether WebRTC is a threat or an opportunity.
It actually depends on how the service providers want to tackle this; whether they want to seize the opportunity and embrace the web developer community or allow their communication services to be further disrupted.
Major service providers like AT&T, Orange, Deutsche Telekom and T-Mobile are few examples of those who have already started investigating the opportunities WebRTC presents. In fact, Mozilla, Ericsson and AT&T showcased a powerful WebRTC solution at MWC2013. They showcased how WebRTC can bring important functionalities from a phone to a standard browser – functionalities like initiating an audio or video call or sending SMS/MMS from your browser without any downloads or plugins.
There are some really interesting WebRTC projects being initiated by various companies around the world. Below are few use cases or implementations of WebRTC which can possibly be carried out in the real world:
Think of a person who is surfing Amazon or Ebay while looking for a new product to buy. He is not too sure about what the product really looks like and is not so convinced by the available images. With the click of a button, he directly calls the product owner and gets the necessary details while seeing the product in his hands. This kind of interaction between the seller and the buyer will lead to a higher conversion ratio and more satisfaction to the consumer.
A similar use case can be implied to a contact center scenario where the consumer is looking for a solution or a new service on the website, and with a press of a button, he reaches the customer care agent with a rich two-way audio and video call.
Then imagine how convenient it would be to initiate full-fledged video conferencing directly from your browser without any downloads or plugins. While you are on the conference call, you can do a whole lot of other things like sending files, sharing the screen or chatting with one or multiple people, all through your browser.
Before booking a hotel by just looking at the pictures (which we all know are often photo edited) on the website, you can actually call the person from the website and book a virtual tour of the hotel. The hotel person can easily walk around showing the place through their smartphone, and then get the booking.
Think of a small business owner who wants to close a deal with a potential buyer in a different geography. Rather than asking for their usernames on a specific OTT service (like Skype, ooVoo, etc.), he can arrange a time and send them the link to initiate the audio/video call without any extra plugin.
HCL’s Take on WebRTC
HCL has been looking at this technology very closely and following the market as it evolves. Already having vast experience in the video collaboration space, this is yet another skill set HCL has added. We have picked up this new technology (WebRTC) and modified it to accelerate the launch of other products/services for our customers. For example, we already provide seamless integration between a browser and a traditional SIP phone, opening up opportunities for contact centers to provide rich two-way audio and video calls for their customers directly from a browser.
Another challenge is that there is still no support for mobile browsers, and we addressed this problem a while back by making a standalone app which can make and accept calls from other browsers or traditional phones. These are just a few examples of how we are leveraging WebRTC to accelerate the launch of new products/services and reducing the time to market for our key clients.
There are multiple services available today which allow us to download a 3rd party plugin on our computer browser to do a video conference. However, the simplicity of WebRTC, its ease of implementation and the hard push from its developers to standardize it will drive its adoption.
Though operators can leverage the new technology to increase slumping revenues, or maybe reverse the cycle a little in this case, in the end, the ultimate winners are the consumers with the most convenient way to communicate with each other in a simple and cost effective manner.
Jumping onto the WebRTC bandwagon today might seem challenging, but it will be very rewarding tomorrow. So, “Now is the Time” to tune in to the rapidly changing internet environment with the new and exciting technology of WebRTC.Interested in HCL's web engineering services? Contact us today!