WebRTC or Web Real-Time Communication is a programming interface which is currently at the stage of draft in the W3C for voice call, video chat, file sharing. Programming interface here means API which was discussed before.WebRTC or Web Real-Time Communication is a dedicated list, which was created in April 2011 and a working group within the IETF created in May 2011. It is an example of software framework with early implementations in different browsers to allow real-time communication. The purpose of WebRTC is to link applications such as voice over IP , the file sharing via P2P without any plugin is required.
Basics on WebRTC or Web Real-Time Communication
WebRTC or Web Real-Time Communication is supported by Google, Mozilla and Opera within the standards of the World Wide Web Consortium (W3C), while the first draft appeared in May 2011. But it opposes Microsoft submitted competing proposal named CU-RTC-WEB on 8 August 2012. The standard to establish the WebRTC is not yet complete. It may still experience significant changes, all experimentation is encouraged to obtain the feedback. The API is based on the preliminary work of the WHATWG (which was based on the ConnectionPeer API and the work from the laboratories of Ericsson). The working group hopes to develop specifications sufficient through :
- Exchange of I / O within the IETF RTCWEB group to define protocols that can allow communication in real-time in different web browsers
- Respect for privacy : Intrusion that can make accessing local parts of the computer (camera, microphone) or spying from outside the data exchanged
- Technical discussions on data exchange channels (whatever they are) between individuals
- Feedback from other groups and individuals
Technical Specifications of WebRTC or Web Real-Time Communication
From March 2012, the working draft of the IETF WebRTC requires a minimum the following audio codecs:
- PCMA / PCMU ( RFC 3551 )
- Telephone Event ( RFC 4733 )
- Opus ( RFC 6716 )
Video codecs are not yet defined, but must meet certain criteria. To be considered, the codec among others, should support at least 10 frames per second (fps) and should be able to support up to 30 frames per second (fps) and must also support a minimum resolution of 320×240 pixels; regarding the codec VP8 , it must be able to withstand the bilinear algorithm of image processing without applying reconstruction filter. Transporting data could be based on existing standards such as STUN, ICE, TURN, DTLS or SRTP. The integration of WebRTC in browser requires the use of other APIs :
- RTCPeerconnection API which allows direct connection between two computers without the need for a server to contact. Mozilla and Google have made ??a technical demonstration in February 2013
- MediaStream (getUserMedia) API Stream API and managing audio and video streams, indicating that the application must provide access to the webcam , the speakers and microphone
- DATA API channels to exchange data (images, text) (first demonstration by Mozilla in November 2012 ).
Browsers Supporting WebRTC or Web Real-Time Communication
- Opera : First integration was unveiled in January 2012. The stable version has this technology.
- Google Chrome : integration came in the development branch in January 2012 and in the stable version in June 2012
- Mozilla Firefox : Mozilla has made ??a demonstration in April 2012 . On 8 January 2013 , Firefox 18 has integrated a preliminary implementation
- Ericsson announced in October 2012, a first WebRTC compatible browser for mobile phones for iOS and Android
Example code and live :