WebRTC is a open source project by Google. They intend to give the power of real time multimedia communication capabilities without any plugins in the hands of web and mobile app developers. WebRTC does so by abstracting the complicated audio, video and transportation protocols as simple APIs. The mission is to enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols. WebRTC is already used by Facebook messanger, Whatsapp, hangout etc to name a few.
WebRTC consists of 3 APIs. They are
getUSerMedia:- This is used to get access to data streams, such as from the user's camera and microphone.
RTCPeerConnection:- This is used for audio or video calling, with facilities for encryption and bandwidth management.
RTCDataChannel:- This is used for peer-to-peer communication of generic data.