WebRTC (Web Real-Time Communication) is an API definition being drafted by the World Wide Web Consortium (W3C) to enable browser to browser applications for voice calling, video chat and P2P file sharing without plugins.
A project known as WebRTC, for browser based realtime communication, was open sourced by Google in May 2011. This has been followed by ongoing work to standardise the relevant protocols in the IETF and browser APIs in the W3C.
The W3C draft of WebRTC is a work in progress with advanced implementations in the Chrome and Firefox browsers. The API is based on preliminary work done in the WHATWG. It was referred as the ConnectionPeer API, and a pre standards concept implementation was created at Ericsson Labs. The Web Real-Time Communications Working Group expects this specification to evolve significantly based on:
- The outcomes of ongoing exchanges in the companion RTCWEB group at IETF to define the set of protocols that, together with this document, will enable real-time communications in Web browsers.
- Privacy issues that arise when exposing local capabilities and local streams.
- Technical discussions within the group, on implementing data channels in particular.
- Experience gained through early experimentation.
- Feedback received from other groups and individuals.
Major components of WebRTC include:
- getUserMedia, which allows a web browser to access the camera and microphone
- PeerConnection, which sets up the audio/video calls
- DataChannels, which allow browsers to share of data peer-to-peer
As of March 2012 the IETF WebRTC Codec and Media Processing Requirements draft requires implementations to provide PCMA/PCMU (RFC 3551), Telephone Event as DTMF (RFC 4733), and Opus (RFC 6716), along with a number of video codec minimum capabilities. The Peerconnection, Data channels and a media capture browser APIs are detailed in the W3C.
WebRTC is supported in Chrome OS and the desktop version of Chrome. It is also supported in Firefox Beta (will become version 22).
Mobile support is also under development.
- "Google release of WebRTC source code from Harald Alvestrand on 2011-05-31". firstname.lastname@example.org. Retrieved 2012-09-12.
- Charter of the Real-Time Communication in WEB-browsers (rtcweb) working group
- "WebRTC 1.0: Real-time Communication Between Browsers". W3.org. Retrieved 2012-09-12.
- "WebRTC 1.0: Real-time Communication Between Browsers". Dev.w3.org. Retrieved 2012-09-12.
- "Introduction — HTML Standard". Whatwg.org. Retrieved 2012-09-12.
- "Beyond HTML5: Peer-to-Peer Conversational Video | Ericsson Labs". Labs.ericsson.com. Retrieved 2012-09-12.
- "Rtcweb Status Pages". Tools.ietf.org. Retrieved 2012-09-12.
- "draft-jesup-rtcweb-data-protocol-00 - WebRTC Data Channel Protocol". Tools.ietf.org. Retrieved 2012-09-12.
- "draft-cbran-rtcweb-codec-02 - WebRTC Codec and Media Processing Requirements". Tools.ietf.org. 2012-03-12. Retrieved 2012-09-12.
- Firefox Beta now includes WebRTC on by default, May 13, 2013
- Official website
- W3C Web Real-Time Communications Working Group
- IETF Real-Time Communication in WEB-browsers (rtcweb) Working Group
- Google's open source WebRTC software project
- Contact centers could benefit from WebRTC