Triangle and Trapezoid in WebRTC

This is the most common scenario. Two browsers download a WebRTC-enabled Web program from the same WebRTC server at the same time. as shown in the image above. Why is it a triangle? Because the signaling route between these three elements and the shape formed by the media is like a triangle. The communication between the two browsers is not through the Web server, but through the establishment of a peer-to-peer connection to achieve audio and video media and some additional data.

In WebRTC, we often refer to the connection between the browser and the server as signaling, but it does not actually refer to signaling in the telephone system. Signaling is not standardized in WebRTC.

Since signaling is not standardized, signaling is now considered part of the application. Both HTTP and WebScoket can be used as channels for transmitting signaling. In this part, the Wild Dog real-time video call technology uses WebSocket-based Wild Dog real-time data synchronization as signaling.

The benefits of this article, C++ audio and video learning kits, technical videos , including (audio and video development, interview questions, FFmpeg , webRTC , rtmp , hls , rtsp , ffplay , srs ) ↓↓↓↓↓↓ See below↓↓Click at the bottom of the article Receive↓↓

Trapezoid in WebRTC:

All standard protocols are used in the WebRTC ladder. For example: Session Initiation Protocol (SIP) or Jingle used by many video conferencing systems. Of course, proprietary signaling protocols can also be used.

Session Initiation Protocol (SIP) is a protocol developed by the IETF MMUSIC working group and proposed as a standard for establishing, modifying and terminating various multimedia including video, voice, instant messaging, online games and virtual reality Interactive user session inside the element.

Jingle was designed by Google and the XMPP Standards Foundation. Its multimedia stream is designed for RTP (Real Time Transport Protocol). If desired, it can be aided by NAT traversal to use ICE (Interactive Connection Establishment). FROM Wikipedia

If the browser wants to make a video call with a SIP client (such as a SIP phone), the first thing to do is to download a web page program with WebRTC code from the web server, and initiate an audio call request object M to the web server on the browser side. The Web server sends M to the SIP server, and the SIP server sends the request M to the SIP client (for example, a SIP phone). After the SIP client successfully receives the request, it will send another request object S to the SIP server, the SIP server sends S to the Web server, and the Web server sends S to the browser. After performing the above steps, the browser and the SIP server begin to perform operations such as hole punching, key negotiation, and media session. When the session is closed, the process is similar to when the link is established. It will not be repeated here.

Using the Jingle protocol to implement the functions of WebRTC:

Compared with the SIP mode, the whole process is basically similar except that the protocols used between Web server A and Web server B are different. No further details are given here.

The benefits of this article, C++ audio and video learning kits, technical videos , including (audio and video development, interview questions, FFmpeg , webRTC , rtmp , hls , rtsp , ffplay , srs ) ↓↓↓↓↓↓ See below↓↓Click at the bottom of the article Receive↓↓

Guess you like

Origin blog.csdn.net/m0_60259116/article/details/126390529