WebRTC standard received official W3C recommended status

Source WebRTC (Web Real-Time Communications)



technology , which describes the transfer of audio, video data and content between browsers without installing additional extensions, has received the status of a recommended standard. This was announced by the W3C consortium, which develops and implements technological standards for the Internet. All W3C standards are reviewed for web content accessibility support by the APA (Accessible Platform Architectures Working Group). They are directly related to web accessibility. Among other things, the IETF (Internet Engineering Task Force) committee, which deals with the development of Internet protocols and architecture,







published documents describing the architecture, protocol elements, modes of transport and mechanisms for correcting WebRTC errors. All these data received the status "Proposed Standard".



About WebRTC



The technology allows web applications and sites to capture and selectively transmit audio and video streams, as well as exchange data between browsers without the use of intermediaries. It is thanks to her that we can call up with colleagues at a distance without having to install plugins and other software. Applications built on the basis of this standard process voice and video traffic in real time using only HTML and JavaScript. Google Meet, for example, and a number of other web conferencing applications work on it.



WebRTC technology has been developed by Google since 2009. In 2011, the company opened its developments and technologies for audio and video processing, obtained during the acquisition of GIPS, a company developing digital signal processing systems. At the same time, Google provided gratuitous access to patents related to WebRTC.



WebRTC consists of several interconnected programming interfaces (APIs) and protocols. Google began its technology standardization process with companies such as Mozilla, Microsoft, Cisco and Ericsson.



By the way, WebRTC (like HTML5) has become one of the reasons for the "death" of Flash technology. Since 2017, the leading browsers have officially stopped supporting Flash and the technology has disappeared from the market. We have already written about the consequences in the blog.



Now WebRTC technology ranks second in the top video communication protocols after the proprietary Zoom. Standard H.323, SIP, Microsoft Teams, and Cisco Webex have not yet succeeded.



WebRTC is used in video and audio conferencing applications, games, collaboration platforms, instant messengers, streaming and content distribution systems. That is, now, in a global pandemic, technology is experiencing its finest hour.



Advantages of the standard



  • No software or plugins required.
  • Use of modern audio and video codecs; as a result - high quality of communication.
  • DTLS and STRP secured and encrypted connections.
  • There is a built-in content grabber (desktop demonstration)
  • Flexibility to implement a control interface based on HTML5 and JavaScript.
  • Open source.
  • Versatility: A standard-based application works well on any OS as long as the browser supports WebRTC.


Disadvantages of the standard



For some, these shortcomings will not be significant, but we will nevertheless outline them.



  • The standard does not support remote desktop control. That is, we can show a presentation or a graph to colleagues, but we won't be able to work together on drawing up an annual report. It's all for security: Javascript code cannot control anything outside the current browser window. For advanced features, you need to use specially designed applications.
  • WebRTC applications are incompatible with each other, which is why we cannot call some BigBlueButton from Google Meets. But maybe this is not necessary?
  • Another drawback is that WebRTC detects user IP addresses. Proxy and Tor will not cope with the problem, only VPN services will help to hide.


Technology operation on the example of a call between two subscribers through a browser. Source



What does WebRTC consist of



At the structural level, these are:



  • systems for managing user sessions;
  • sound processing engine: you can use different codecs and noise suppression methods;
  • video processing engine;
  • transport layer: for data transfer, you can use the DTLS and SRTP protocols in conjunction with technologies for organizing P2P communication channels.


As we wrote earlier, you can work with WebRTC capabilities through a specially prepared JavaScript API. The API includes interfaces such as getUserMedia, RTCPeerConnection, RTCDataChannel, and getStats.



The getUserMedia interface is responsible for receiving audio and video from connected devices such as a webcam and microphone or file. The RTCPeerConnection interface is responsible for establishing a connection between users, processing signals and protecting the communication channel . RTCDataChannel helps to exchange data during the conference (using the typical WebSockets API). For statistics, go to the getStats interface .



What's next



At the moment, only the basic parts of WebRTC have been standardized. What can be expected in the next version of the standard?



  • An extension that will allow the QUIC protocol to be used as a transport and AV1 video codec.
  • A WebTransport API that simplifies streaming for multiple recipients.
  • API Scalable Video Coding, which adapts the video stream to the client's bandwidth.
  • End-to-end encryption of video conferencing.
  • Live processing of audio and video streams, including using machine learning systems.
  • Tools for establishing a permanent communication channel with "smart" devices.





All Articles