Download - WebRTC - Is it ready? 2013
![Page 1: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/1.jpg)
WebRTCIs it ready?
Henry 2013
![Page 2: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/2.jpg)
Web RTC is:
● A free, open project that enables web browsers with Real-Time Communications (RTC) capabilities via simple Javascript APIs to conduct SECURE communications.
● Features:○ Secure Audio Channel (CD Quality)○ Secure Video (Full HD)○ Secure Screen Sharing○ Secure Data Channel
![Page 3: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/3.jpg)
Web RTC Block Diagram
![Page 4: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/4.jpg)
Very Active Community
![Page 5: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/5.jpg)
Some Complexities
Designed for P2P communications so includes intricate mechanisms to traverse NAT using STUN, ICE and a TURN server which is a media relay.
![Page 6: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/6.jpg)
WebRTC JavaScript API
● MediaStream (getUserMedia)○ Microphone (Audio)○ Webcam (Video)○ Desktop ???
● RTCPeerConnection○ Media Multiplexing○ Authenticate against identity providers
● RTCDataChannel○ SCTP over UDP
https://www.simpl.info/index.html
![Page 7: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/7.jpg)
Built-in Voice Engine Capabilities
● NetEQ○ Dynamic jitter buffer management○ Packet Loss Concealment (PLC)
● Acoustic Echo Canceler (AEC)○ Removes, in real time, the acoustic echo resulting
from the voice being played out coming into the active microphone.
● Noise Reduction (NR)○ Removes certain types of background noise usually
associated with VoIP. (Hiss, fan noise, etc...)
![Page 8: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/8.jpg)
Supported Audio Codecs● G.711● Opus - Free CD Quality codec (Even Stereo)
○ 20ms frames○ Variable Bit Rate 8K to 64K bps
![Page 9: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/9.jpg)
Built-In Video Engine
Video Jitter Buffer○ Dynamic Jitter Buffer
Image Enhancement○ Remove video noise
VP8 Codec○ Royalty free○ Full HD 1080p encoding
![Page 10: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/10.jpg)
WebRTC Connection Flow
1. Obtain Local Media (GetUserMedia)
2. Setup Peer Connection (RTCPeerConnection)
3. Attach Media or Data
4. Exchange Offer/Answer (RTCPeerConnection)
![Page 11: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/11.jpg)
Supporting Protocols
● Application Layer:○ HTTP, WebSocket, SRTP, SDP, ICE/STUN/TURN
● Transport Layer:○ TLS (TCP), DTLS (UDP), SCTP (for data channel)
● Network Layer:○ IPv4 & IPv6
![Page 12: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/12.jpg)
Peer Connection DiagramPure Web
![Page 13: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/13.jpg)
Peer Connection DiagramOver Legacy Network
![Page 14: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/14.jpg)
3rd Party Authentication
![Page 15: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/15.jpg)
Signaling
Proprietary○ RESTful○ BOSH (long polling)○ WebSockets
Open Standards○ XMPP over BOSH/WebSockets (14 years)○ SIP over WebSockets (17 years)
![Page 16: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/16.jpg)
Standards
It's a joined effort
● IETF○ Focus on protocol and interoperability
● W3C○ Hight level APIs and device control (mic, camera,
network)○ PeerConnection API proposal
![Page 17: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/17.jpg)
Concerns
● Video Codec Patent:○ Since March 2013 Nokia has asserted a patent claim
against HTC and Google for the use of VP8 in Android in a German court
● Browser Support:○ Chrome, Firefox, and Opera○ Apple and Microsoft have not publicly shown
interest in the support of WebRTC in IE and Safari○ (Note: Temporary IE supported via Chrome Frame)
![Page 18: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/18.jpg)
Demos
Canvas Integration:● Webcam Toy (GetUserMedia + Canvas)● Audio Recorder (GetUserMedia + Canvas)
Video Chat:● talky (GetUserMedia + RTCPeerConnection)
File Sharing● Sharefest (GetUserMedia +
RTCDataChannel)
![Page 19: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/19.jpg)
More Demos
Games:● Facekat (GetUserMedia + JS head tracking)● Cube Slam (???)
![Page 20: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/20.jpg)
Tools
Browser Tool● chrome://webrtc-internals/● adapter.js (http://www.webrtc.
org/interop)
![Page 21: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/21.jpg)
Mobile App
Vonage iPhone - https://itunes.apple.com/app/id491391564?mt=8
Vonage Android - https://play.google.com/store/apps/details?id=com.vonage.TimeToCall
![Page 22: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/22.jpg)
FreeSWITCH and WebRTC
● SIP Over WebSockets● Media over SRTP● Opus supported
Issues:○ Inconsistent client support○ DTMF issues (INFO)○ No video transcoding is supported
Note: Asterisks Already supported WebRTC (but only with G.711 codec)
![Page 23: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/23.jpg)
Business Applications
● Call Center● PAAS (Open Source API)● WebRTC enabled SBC● Video Conference● Outsourcing Development Vendor
![Page 24: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/24.jpg)
Call Center Applications
Teledini - Display web visitor key information when call arrives. Receive call from browser.
![Page 27: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/27.jpg)
Platform as a Service
Apidaze - API service for Voice, SMS, WebRTC and worldwide DID numbers. XML style structure.Crocodile RTC - Javascript SDK for Call, Video, IM, File Sharing, and Payment system over their platform. Requestec - Mobile SDK, virtual meeting with billing, recording, appointments, and collaboration.
![Page 28: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/28.jpg)
Requestec
![Page 29: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/29.jpg)
Hardware Solution
Genband - WebRTC to VoIP gateway with RESTful API
Ingate - VoIP enabled smart enterprise firewall now optimized also for WebRTC. Realtime traffic shaping
Sansay - WebSBC, REST API, Proprietary signaling (not SIP)
![Page 30: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/30.jpg)
Video Conference (PAAS)
Bistri - Free video chat service that binds all your social network contacts.
![Page 34: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/34.jpg)
Other
PubNub - High performance and low latency communication of arbitrary data
![Page 35: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/35.jpg)
Using WebRTC on Mobile Device
● Open Source VoIP engine (and Video)○ Active community support○ PLC - Packet Loss Concealment○ Jitter Buffer handling○ CD Quality Codec○ RTP at the core○ RTCP implemented for QoS monitoring○ SRTP for secure media transport○ NAT traversal by ICE○ ECHO Cancellation & Noise Reduction○ Mobile Integration contributed by Vonage
Everything one might need to build their own Mobile Native Client
![Page 36: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/36.jpg)
Presentations from WebRTC conf
● http://www.webrtcworld.com/conference/west/presentations.aspx
![Page 37: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/37.jpg)
What's Cookin Doc?
![Page 38: WebRTC - Is it ready? 2013](https://reader034.vdocument.in/reader034/viewer/2022052522/554be45bb4c9055a368b47a3/html5/thumbnails/38.jpg)
Thanks