The W3C unveiled recently through an announcement that the related API WebRTC has become a recommended standard.
At the same time, the IETF (Internet Engineering Task Force) committee, which is dedicated to the development of Internet protocols and architecture, published 11 RFCs (8825-8835, 8854) that describe the architecture, protocol elements, modes of transport and the error correction mechanisms used in WebRTC. These RFCs now have the status of "Proposed Standard".
For those unfamiliar with WebRTC technology, they should know that this has been developed by Google since 2009 as the embodiment of the idea of creating a communication platform for browsers, alternative to Adobe Flash and desktop applications.
In 2011, Google released its developments related to WebRTC, as well as audio and video processing technologies obtained from the acquisition of GIPS, a digital signal processing company, under a BSD license.
At the same time, free access to patents covering WebRTC was provided, Together with Mozilla, Microsoft, Cisco, and Ericsson, the WebRTC standardization process has begun at the W3C and the IETF.
Since then, WebRTC support has been implemented in all modern browsers and it has become widespread in communication programs, mobile applications and web services that need to organize a direct communication channel between users.
For example, in order to understand a little more about the scope that WebRTC already has, it is that This is widely used in video and audio conference applicationss, games, collaboration platforms, instant messaging, systems streaming and content distribution.
WebRTC consists of four basic components: a user session management system, an audio processing engine, a video processing engine, and a transport layer. The audio and video processing engines allow the use of different codecs (VP8, H.264), as well as noise suppression methods.
All data is transmitted only in encrypted form. For real-time data transmission, DTLS and SRTP (Secure Real-Time Transport Protocol) protocols can be used in combination with technologies to organize P2P communication channels and ensure operation through firewalls and address translators ( ICE, STUN, TURN, RTP-over-TCP, the ability to work through a proxy).
In addition to the standardized base parts, the W3C and IETF are also developing extensions not yet approved that allow the use of the QUIC protocol as transport and allow the use of the AV1 video codec.
A working group has been created to develop the WebTransport API, which simplifies the organization of transmission to multiple recipients, and the Scalable Video Encoding API, to adapt the video transmission to the client's bandwidth.
For the next version of WebRTC, also capabilities are being used such as the end-to-end encryption of video conferencing, the live processing of audio and video transmissions (including the use of machine learning systems), means of establishing a permanent communication channel with sensors in developed IoT devices.
- getUserMedia- Receive a multimedia stream (video, sound) from a locally connected device (webcam, microphone, video camera) or file.
- RTCPeerConnection: establishment of a direct connection between users, signal processing, work with codecs, bandwidth control, organization of a secure communication channel.
- RTCDataChannel: arbitrary data exchange over a two-way communication channel using the standard WebSockets API.
- getStats: obtaining statistics.
Finally, if you are interested in knowing more about it, you can consult the following link.