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
The iOS Simulator is a helper tool that can be used when developing a program on the iOS platform under Mac. iOS Simulator is part of the Xcode, Xcode is Apple's own iOS development program that can be downloaded for free!
The IOS Simulator is located in the/developer/platf
1. afnetworking
Among the many iOS open source projects, afnetworking can be described as the most popular library project for developers. Afnetworking is a lightweight iOS, MAC OS x network communication Class library, and now is the third largest objective-c library on the GitHub. It is based on Nsurlconnection, nsoperation and other libraries, so that many of the network communication functions to ach
Ios 6 and ios 7 adaptation issues, allowing the program to support both iOS 6 and iOS 7, setEdgesForExtendedLayout
For various reasons, our program needs to support both iOS 7 and earlier versions (such as iOS 6), that is, develop
[Reading Notes] basic knowledge of iOS-iOS security, Reading Notes ios-ios
1. iOS Hardware/device type.
The advent of the iPad is the first step on this side. The first-generation iPad uses the ARM Cortex-A8 architecture CUP, which is about twice the CPU speed used by the fi
IOS development-create a Simulator package for the iOS project for testing the iOS Simulator running on other computers (Creating an iOS Simulator Build)
After the iOS program is developed, it is necessary to package the program and distribute it to everyone for testing. Gen
Later in the development of iOS programs, you need to package and distribute the program to everyone for testing. In general, this type of test is a real-machine test, which is correct and necessary. There is just one problem that the IPA package that generates the real machine test requires the relevant certificate.Of course, the vast majority of iOS developers and even some independent developers can easi
Ios 6 and ios 7 adaptation issues, allowing the program to support both iOS 6 and iOS 7, setEdgesForExtendedLayout, layout
For various reasons, our program needs to support both iOS 7 and earlier versions (such as iOS 6), that is,
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.