An introduction to WebRTC

What is WebRTC?

WebRTC is an open source project that provide browsers and mobile applications with Real-Time Communications (RTC) capabilities. Using WebRTC a developers can easily add video and audio communication to a website or mobile application using a set of simple application programming interfaces (APIs).

Most popular browsers and mobile platforms support WebRTC without need for plugin or extra add-ons. Today Chrome, Firefox, Opera, Safari and Microsoft Edge all supports WebRTC.

History

WebRTC originated from Google in 2010 when Google acquired Global IP Solutions (GIPS) a VoIP and videoconferencing software company known for their media frameworks used for developing VoIP and video calling applications. Google later open-sourced the GIPS. The protocols was standardized in the IETF and the browser APIs in the W3C. It is now called WebRTC

Today the WebRTC initiative is actively supported by Google, Mozilla and Opera and others.

How does it work?

In the past developing and implementing real-time audio and video communication was complex and time consuming and often meant long development cycles and high development costs.

Today a developer can implement real time audio and video communication capabilities to a website or a mobile application in a peer-to-peer manner using a JavaScript API. This makes it easier to develop and integrate real time communication on your website or mobile application.

WebRTC’s JavaScript API allow your application or website to access the microphone, camera or even the screen of your device and share it remotely. The only limit is your imagination.

Major components of WebRTC

WebRTC include several JavaScript APIs:

  • getUserMedia – used to access the microphone, camera or even the screen of your device
  • RTCPeerConnection – enables audio and video communication between peers.
  • RTCDataChannel – allow bidirectional communication of arbitrary data over peer connections
  • getStats – retrieve a set of statistics about WebRTC sessions

Applications using WebRTC

Some of the biggest companies in the world including Google, Facebook and Amazon has already embraced the technology and implemented into their application. Some of these applications are:

  • Google Hangout
  • Facebook Messenger
  • Amazon Chime