This is the first post I've written about WebRTC. Here's a better overview of
What is WebRTC.
For over a decade the VoIP market has been a relatively closed one, especially compared to what is happening with web based technologies. If you narrow it down to video conferencing, then almost every year I'd hear that this year – this one – is going to be the year video conferencing takes off – truly. And guess what? It never did happen. Now there's a new game in VoIP town and it is called WebRTC.
WebRTC in a Sentence
WebRTC is a real time communication stack for the web. WebRTC is a media engine with JavaScript APIs. WebRTC brings VoIP to the browser natively. Maybe 3 sentences.
History
If you look at the browser, with a few exceptions it currently replaces all of the other platforms and environments for the applications we use. One such exception are applications that require bidirectional voice and video calling capabilities. While you can get these by way of a Flash plugin,
this has its drawbacks.
In the beginning of 2010,
Google finalized its acquisition of On2, a video codec company that has developed the VP series of codecs, with the latest one being VP8. On2 has always positioned its codecs as a patent free replacement to the H.26x series of codecs, which were standardized, patented and widely used. It then went about opening On2's technologies to the world and open sources VP8 under the name of
WebM. The idea was to replace H.264 for web videos and by that, reduce patent costs for everyone – especially Google itself.
Google went on and during 2010
acquired Global IP Solutions (GIPS), a company known for their media frameworks – a piece of technology that makes developing VoIP and video calling applications easier. At the time, GIPS had a large market share in VoIP, which caused most of the industry to scurry and search for alternative solutions. As with On2, Google took GIPS' assets and open sourced them. This time, with an interesting twist: they threw out all voice and video codecs that had patent owners and added an additional layer – a JavaScript API as an integration layer to web browsers. The idea? Have bidirectional media processing and media coding technologies available in every browser. It then went on to push it as a standard at the IETF and W3C, where such standards live. It is now called
WebRTC.
What's Inside WebRTC?
From a codec perspective, WebRTC comes with the VP8 codec for video – instead of the more common H.264. On the voice front, it touts G.711, iSAC and iLBC. G.711 is the vinyl voice codec, while iSAC and iLBC are GIPS homebrewed codecs. WebRTC simplifies a lot of technologies for developers:
- Transport layer, which is relatively simple, but hard to tweak for realtime communications
- Codecs, something that is usually acquired from third parties
- Media engine, something that is always looked at as art more than a straight forward implementation
And it then takes it to the masses of web developers – a group much larger than VoIP experts. Here's the architectural diagram found on the WebRTC project page:
WebRTC is a work in progress. It isn't integrated into most browsers yet. You can get a test bed for it on every Chrome browser today, but that's about it. And it doesn't have all of its features available. It does have a lot of disruption potential.
Classic VoIP or WebRTC?
WebRTC is a paradigm shift for video calling. It works differently and behaves differently.
Here's a short comparison chart between WebRTC based video conferencing system and the classic one that can be found today.
|
Classic VoIP |
WebRTC |
Signaling |
SIP or H.323 in most cases |
Undefined |
Media transport |
RTP/RTCP |
RTP/RTCP |
Security |
SRTP in SIP,H.235 in H.323 |
SRTP |
NAT traversal |
STUN/TURN/ICE in SIP,H.450.x in H.323 |
STUN/TURN/ICE |
Video codecs |
H.263, H.264 |
VP8 |
Voice codecs |
G.7xx series of codecs, and then some |
G.711, iLBC, iSAC |
In future posts, I'll try to go over some of the aspects of WebRTC, its advantages and challenges over existing solutions.
You may also like
Twilio Programmable Video is back. Twilio decided not to sunset this service. Here’s where their new focus lies and what it means to you and to the industry.
Read More
Struggling with WebRTC POC or demo development? Follow these best practices to save time and increase the success of your project.
Read More