WEBRTC Basic Introduction

Source: Internet
Author: User

reproduced in the original: http://www.cnblogs.com/lidabo/p/6842765.html thank you very much.

"WebRTC, a name derived from the abbreviation of Web real-time communication (Web real-time communication), is a technology that supports web browsers for real-time voice conversations or video conversations, and is Google's $68.2 million acquisition of Global in 2010 IP Solutions A technology that Google has made available to the company. ”

WEBRTC provides video conferencing core technology, including audio and video capture, codec, network transmission, display and other functions, and also support cross-platform: windows,linux,mac,android, especially in real-time communication technology can be flexibly grafted into non-RTC class streaming media system , for example, video jitter control at low bandwidth, image enhancement, universal NAT penetration, and so on (let's elaborate on how to graft later), so this requires familiarity and control of WEBRTC's overall process and deep-seated framework, We first understand the WebRTC browser's basic interface and the process of a realtime video call through the browser-side WEBRTC Video Call process.

WEBRTC structure

First of all, from the WEB-RTC aspect analysis WEBRTC in the browser interface structure, in the browser side, WEBRTC mainly implements three interfaces:

Media stream, which enables the encapsulation of local audio and video resources, such as camera, microphone, remote stream, and so on, media stream represents a streaming stream, and a medium stream track that represents media A media source in the stream, such as audio, video, subtitles, and so on.

The RTC Peer Connection, voice or video call process internally covers a range of processes such as call, answer, Pierce, encrypt, transmit, and session management, while an RTC peer Connection represents one end of a pair of calls.

RTC data Channel, on top of peer connection, transmits custom data.

#Media Stream

On the browser side, the media stream interface name is get User Media, which provides synchronized audio and video streams for the upper layer, such as when local media resources are available, the media stream can be a local camera video track and a local The audio track provided by microphone is synchronized with the stream. Of course, after the browser to obtain audio and video data, you can do a variety of localized processing, such as capture, image style changes, local display filters and so on.

#RTC Peer Connection

The RTC Peer connection is primarily designed to handle connection and data transfer between point-to-point, making the process stable and efficient. Under the RTC Peer Connection, a large number of codec, communication protocol work to achieve the entire real-time communication process, even in the case of stable bandwidth can not provide real-time communication, the main function points include:

Packet loss compensation (packet loss concealment)

Echo Cancellation (echo cancellation)

Adaptive bandwidth (bandwidth adaptivity)

Video jitter buffer (dynamic jitter buffering)

AGC (Automatic gain control)

Noise reduction and suppression (Noise Reduction and suppression)

Image cleanup (images ' cleaning ')

#RTC Data Channel

The RTC Data channel provides a way to exchange custom data over the RTC Peer connection, transferring custom data on the peerconnection compared to streaming data, not only in volume, but also in terms of reliability, security, flexibility, Far enough to meet demand. This provides greater convenience in the development of audio-video-based games and applications.

WEBRTC components

#Transport /session

· Complete RTP/SRTP protocol stack

· STUN, TURN, ice process

· Session management mechanism.

 

#Voice Engine

WEBRTC is one of the most valuable technology, support 722,PCM,ILBC,ISAC and other coding, on the VoIP, the technology industry leader!

Neteq algorithm: Adaptive jitter Control algorithm and speech packet loss concealment algorithm. Enables fast and high resolution adaptation to changing network environments, ensuring a graceful sound quality with minimal buffering latency. Can effectively deal with the impact of voice quality due to network jitter and voice packet loss. Neteq is also a very valuable technology in WEBRTC, it has obvious effect on improving VoIP quality, and it is better to integrate the AEC (echo cancellation) \nr (noise suppression) \AGC and other modules.

#Video Engine

The VP8 video image codec, the default codec for the WEBRTC video engine, is VP8 suitable for real-time communication applications because it is primarily designed for low-latency codecs.

Video jitter buffers can reduce the negative effects of video jitter and video packet loss.

The image quality Enhancement module handles images captured by the webcam, including shading detection, color enhancement, noise reduction, and other functions to improve video quality.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.