Historically, RTC has been corporate and complex, requiring expensive audio and video technologies to be licensed or developed in house. Integrating RTC technology with existing content, data and services has been difficult and time consuming, particularly on the web.
Now with WebRTC the operator finally gets a chance to take the shift the focus from OTT ( Over The Top service providers like SKype , Google chat WebEx etc that were otherwise eating away the Operators revenue ) to its very own WebRTC client Server solution , hence making the VOIP calls chargeable , while at the same time being available from any client ( web or softphone based )
Where are we Now ?
WebRTC has now implemented open standards for real-time, plugin-free video, audio and data communication.
- Many web services already use RTC, but need downloads, native apps or plugins. These includes Skype, Facebook (which uses Skype) and Google Hangouts (which use the Google Talk plugin).
- Downloading, installing and updating plugins can be complex, error prone and annoying , such as Flash , Java .,etc
- Plugins can be difficult to deploy, debug, troubleshoot, test and maintain—and may require licensing and integration with complex, expensive technology. It’s often difficult to persuade people to install plugins in the first place/ bookmark it or keep it activated at all times .
WebRTC supported browsers :
Google Chrome 23
Mozilla Firefox 22
Google Chrome 28 (Needs configuration at chrome://flags/)
Mozilla Firefox 24
Opera Mobile 12
Google Chrome OS
For other browsers “WebRTC4all ” plugin :
Internet Explorer ( v 9 )
The APIs and standards of WebRTC can democratize and decentralize tools for content creation and communication—for telephony, gaming, video production, music making, news gathering and many other applications.
WebRTC (Web Real-Time Communication) is an API definition drafted by the World Wide Web Consortium (W3C) that supportsbrowser-to-browser applications for voice calling, video chat, and P2P file sharing without the need of either internal or externalplugins.[
- Enables browser to browser applications for voice calling, video chat and P2P file sharing without plugins.
- Awaiting standardization , on a API level at the W3C and at the protocol level at the IETF.
- Enables web browsers with Real-Time Communications (RTC) capabilities
- Free, open project
The following is the browser side stack for webrtc media .
- WEBM codecs
- HTML5 to embed the video and audio elements .
Why is Web RTC importatnt ?
|Significantly better video quality
||WebRTC video quality is noticeably better than Flash.
|Up to 6x faster connection times
|Reduced audio/video latency
||WebRTC offers significant improvements in latency through WebRTC, enabling more natural and effortless conversations.
|Freedom from Flash
|Native HTML5 elements
||Customize the look and feel and work with video like you would any other element on a web page with the new video tag in HTML5.
The major players behind conception and advancement of WebRTC standards and libraries are :
IETF , w3C , Java community , GSMA .
The idea is to develop a Light -weight browser based call console , to make SIP
calls from Web page
Peer to peer Communication
WebRTC forms a p2p communication channel between all the peers . that means as the participant count grows , it converts to a mesh networking topology with incoming and outgoing stream towards direction of each of its peers .
Two party call p2p
Multiparty Call and mesh network
In special case of broadcasting or large number of viewers ( without outgoing media stream ) it is recommended to setup a Media Control Unit ( MCU) which will replay the incoming stream to large number of users without putting traffic load on the clients from where the stream is actually originating .
Important note :
1.It should be notes that these diagrams do not depict the ICE and NAT traversal and have been simplifies for better understanding. In real world scenarios there is almost all the time a STUN and TURN server involved .
More on TURN Servers is given here : NAT traversal using STUN and TURN
2.Also the webrtc mandates the use of secure origin ( https ) on the webpage which invoke getusermedia to capture user media devices like audio , video and location .
Read more in the layers of webrtc and their functionalities here : WebRTC layers