Previous notes, finishingWEBRTC uses UDP transport by default, but it can also be transmitted over TCP.With TCP transport, servers such as Turnserver,licode,janus and servers are required.1. If you use Turnserver, you only need the client to keep the relaytcp type of candidate, the others are discarded.2. If you are using a server such as Licode,janus, TCP is not supported by default.Because they are used at the bottom of the Libnice open-source Ice library, Libnice supports TCP in newer version
)
Minframeinterval
The minimum frame duration, in 100-nanosecond units. This value is applies only to capture filters.
Maxframeinterval
The maximum frame duration, in 100-nanosecond units. This value is applies only to capture filters.
Minbitspersecond
Minimum Data Rate this pin can produce.
Note Deprecated.
Maxbitspersecond
1, first look at the simplest SSE:Only use the SSE-enabled browser (most), the browser built-in EventSource object, the object by default three seconds to refresh the response data.HTML code (taken from W3cschool):DOCTYPE HTML>HTML>Head>Metahttp-equiv= "Content-type"content= "text/html; charset=utf-8" />Head>Body>H1>Get server-side update dataH1>DivID= "Result">Div>Script>if(typeof(EventSource)!=="undefined") {varSource=NewEventSource ("Socket");//parameter for request link Source.onmessage=fun
I. Environment
Refer to the previous article: WEBRTC Learning Three: recording and playback
Two. Implement
The network communication protocol is not explicitly specified in the Voiceengine, so voice chat is not possible only by calling the Voiceengine API. Voenetwork provides method registerexternaltransp
In the previous article (WEBRTC Audio-related Neteq (ii): Data structure) Neteq the main data structures, to understand the mechanism of Neteq lay a good foundation. This article is mainly about how the RTP packets received from the network in the MCU are put into packet buffer and taken out from packet buffer, as well as the calculation of the network delay value (optbuflevel) and the jitter buffer delay value (bufflevelfilt). Let's see how RTP voice
WEBRTC Voice Overall framework
Figure One voice overall frame diagram
As shown above, the entire processing frame of the audio is responsible for the transmission of the peer data in addition to the Ligjingle, mainly the Voe (Voice Engine) and the channel adaptation layer
Figure II Creating a data communication channel timing diagramThe image above is the local sideComplete process, Voe is created by Createmediaengine_w, the channel adaptation layer
WEBRTC IntroductionWEBRTC provides three types of APIs:
MediaStream, namely Getusermedia
Rtcpeerconnection
Rtcdatachannel
Getusermedia has been supported by Chrome, opera and Firefox.rtcpeerconnection is currently supported by Chrome, opera and Firefox. Chrome and opera provide an interface named Webkitrtcpeerconnection,firefox with the name Mozrtcpeerconnection.Rtcdatachannel is only available in Chrome, Opera 18 and Firefox 22
WEBRTC is a set of new standards for media data transmission based on the browser side, introducing a number of new concepts, including Dtls, SDEs, DTLS-SRT, ice, turn, Rtp-mux, BWE, FEC jsep, Tricle-ice and other terms,This article first said Dtls, DTLS-SRTPDTLS: Full name Datagram Transport Layer Security, which is UDP + secure, the datagram layer is safe, DTLS employs TLS security mechanism, but is more lightweight,
WEBRTC Technology Group: 234795279
1. Voiceengine CODEC data structure
WEBRTC, a struct struct codecinst is used to represent a specific audio codec object:
struct Codecinst
{
int pltype; Payload Type Payload
char plname[32];//payload name payload, 32 characters representing
int plfreq; Payload frequence Load Frequency
int pacsize; Packet size package
int channels; Chan
WebRTC FEC (forward error correcting code) is an important part of its QoS, which is used to recover original packets when network drops, reduce retransmission times, reduce delay and improve video quality. It is an implementation of the RFC 5109 standard. Below, we will delve into its principles. redundant Coding
To understand the FEC in WEBRTC, you first need to understand the red Packet. The so-called Re
There are two types of echoes in voice calls:1. Circuit echo (already resolved)2. Acoustic echoTwo echo cancellation modules are designed in the WEBRTC source code:1.AEC (Acoustic Echo canceller): PC side2.AECM (Acoustic Echo Canceller mobile): MobileAECM:Causes of acoustic Echo:The voice of the proximal speaker is picked up by his microphone and transmitted to the far end via the network,The sound from the remote speaker is picked up by the microphon
Reprint Please specify source: http://www.cnblogs.com/fangkm/p/4401075.html
The first two blog posts complete the WEBRTC audio and video collection module, and the next step is to introduce the key audio and video coding modules. However, before introducing the audio and video coding module, we need to introduce the channel concept, and the transmission flow of each WEBRTC data is encapsulated into a c
gcc-c++ gcc-g77 Flex Bison autoconf automake bzip2-devel zlib-devel ncurses-devel libjpeg-devel Libpng-dev El libtiff-devel freetype-devel pam-devel openssl-devel libxml2-devel gettext-devel pcre-devel3. Installation dependencies3.1 mac./scripts/installmacdeps.sh3.2 Ubuntu./licode/scripts/installubuntudeps.sh4. Installing Licode./scripts/installerizo.sh. /scripts/installnuve.sh5. Mounting Base Example./scripts/installbasicexample.sh6. Run Licode and examples, run at two terminals, or run in the
VideoRecording is a function that is often used by the FCS. The important thing is to evaluateVideoSuitable size and rate are required for recording bandwidth.Its roughAlgorithmYes:Video width x video height x playback rate (FPS) = Total Bandwidth
1. applicationadapter can be empty on the server side: Example:
Package Org. chy. flex01; Import Org. red5.server. adapter. applicationadapter; public class application extends applicationadapter { }
The client uses flex to obtain the video
1. The main interface provided externallyVideocodingmoduleimpl::incomingpacket, packet processing interface, called Videocodingmoduleimpl after the RTP parsing process::D ecode, processing the decoded interface Vcmreceivecallba After the completion
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.