WebRTC brief

WebRTC is a real-time communication solution initiated by Google, which contains audio and video collection, encoding and decoding, data transmission, audio and video display and other functions, we can quickly build an audio and video communication application through technology.

WebRTC has historically been very variable and complex, requiring expensive licensing of audio and video technology or expensive development.

In 2011, Google spent 60 million dollars to acquire GIPS Company (GIPS company is also a company engaged in the development of real-time audio and video interaction engine, which has accumulated many years of technology in audio encoding and decoding, network transmission and very large technology advantage), and reorganized its technology, open source into the current WebRTC. The guiding principle of the WebRTC project is that APIs should be open source, free, standardized, browser-built, and more efficient than existing technologies.

On January 26, 2021, the WORLD Wide Web Consortium (W3C) and the Internet Engineering Task Force (IETF) simultaneously announced the release of WebRTC (Web Real-Time Communications) as an official standard.

WebRTC is in the field

Online meeting, online education, online interview, online social contact, online medical treatment, online account opening of financial securities, smart home and so on have become a very familiar part of modern people’s life. By transferring the common offline scenes to online, people can experience the above scenes without leaving home. These real-time interactive scenarios have greatly changed the way we live.

How does WebRTC work?

The main focus of WebRTC is to provide real-time audio and video communications between participants, who use Web browsers to initiate conversations, locate each other and bypass firewalls.

WebRTC leverages JavaScript apis embedded in browsers and HTML5. Typical features of WebRTC applications are as follows:

  • Send and receive streaming audio and video.
  • Retrieves the network configuration data needed to send and receive data to other clients using the WebRTC API, such as IP addresses, application ports, firewalls, and NAT (network Address converters)
  • Open/close the connection and report an error.
  • Transmit media data, such as image resolution and video codecs

To send and receive data streams, WebRTC provides the following apis that can be used in Web applications:

  • RTCPeerConnection is used for audio and video transmission, encryption and bandwidth configuration
  • RTCDataChannel Is used to transmit general data
  • MediaStream, for accessing multimedia data streams from devices such as digital cameras, webcams, microphones or shared desktops

WebRTC sample

Implementing low-latency, peer-to-peer transmission is an extraordinary challenge: from audio and video capture, rendering, encoding and decoding, transmission, addressing real-time communication delays, audio and video synchronization, network congestion, various performance optimizations, and other details. WebRTC handles all of this, making it arguably one of the most important additions to the Web platform. Virtually all of the components provided by WebRTC work together to provide a simple and unified API for developers to build audio and video applications in the browser.

Future trends of WebRTC

With the rapid development of mobile Internet, AI, 5G and other emerging technologies, combined with WebRTC technology, more application scenarios will be derived in the future, changing the way of life such as clothing, food, housing and transportation of human beings.