WebRTC
Is it ready?

Henry

2013
Web RTC is:
● A free, open project that enables web
browsers with Real-Time Communications
(RTC) capabilities via simple J...
Web RTC Block Diagram
Very Active Community
Some Complexities
Designed for P2P communications so includes
intricate mechanisms to traverse NAT using
STUN, ICE and a T...
WebRTC JavaScript API
● MediaStream (getUserMedia)
○ Microphone (Audio)
○ Webcam (Video)
○ Desktop ???

● RTCPeerConnectio...
Built-in Voice Engine Capabilities
●

NetEQ
○ Dynamic jitter buffer management
○ Packet Loss Concealment (PLC)

●

Acousti...
Supported Audio Codecs
● G.711
● Opus - Free CD Quality codec (Even Stereo)
○ 20ms frames
○ Variable Bit Rate 8K to 64K bp...
Built-In Video Engine
Video Jitter Buffer
○ Dynamic Jitter Buffer

Image Enhancement
○ Remove video noise

VP8 Codec
○ Roy...
WebRTC Connection Flow
1. Obtain Local Media (GetUserMedia)
2. Setup Peer Connection
(RTCPeerConnection)
3. Attach Media o...
Supporting Protocols
● Application Layer:
○ HTTP, WebSocket, SRTP, SDP, ICE/STUN/TURN

● Transport Layer:
○ TLS (TCP), DTL...
Peer Connection Diagram
Pure Web
Peer Connection Diagram
Over Legacy Network
3rd Party Authentication
Signaling
Proprietary
○ RESTful
○ BOSH (long polling)
○ WebSockets

Open Standards
○ XMPP over BOSH/WebSockets (14 years)
...
Standards
It's a joined effort
● IETF
○ Focus on protocol and interoperability

● W3C
○ Hight level APIs and device contro...
Concerns
● Video Codec Patent:
○ Since March 2013 Nokia has asserted a patent claim
against HTC and Google for the use of ...
Demos
Canvas Integration:
● Webcam Toy (GetUserMedia + Canvas)
● Audio Recorder (GetUserMedia + Canvas)
Video Chat:
● talk...
More Demos
Games:
● Facekat (GetUserMedia + JS head tracking)
● Cube Slam (???)
Tools
Browser Tool
● chrome://webrtc-internals/
● adapter.js (http://www.webrtc.
org/interop)
Mobile App
Vonage iPhone - https://itunes.apple.
com/app/id491391564?mt=8

Vonage Android - https://play.google.
com/store...
FreeSWITCH and WebRTC
● SIP Over WebSockets
● Media over SRTP
● Opus supported
Issues:
○ Inconsistent client support
○ DTM...
Business Applications
●
●
●
●
●

Call Center
PAAS (Open Source API)
WebRTC enabled SBC
Video Conference
Outsourcing Develo...
Call Center Applications
Teledini - Display web visitor key information
when call arrives. Receive call from browser.
Talkdesk
Platform as a Service
Apidaze - API service for Voice, SMS, WebRTC
and worldwide DID numbers. XML style
structure.
Crocodi...
Requestec
Hardware Solution
Genband - WebRTC to VoIP gateway with
RESTful API
Ingate - VoIP enabled smart enterprise firewall
now op...
Video Conference (PAAS)
Bistri - Free video chat service that binds all
your social network contacts.
UberConference
Opentok
Other
PubNub - High performance and low latency
communication of arbitrary data
Using WebRTC on Mobile Device
● Open Source VoIP engine (and Video)
○
○
○
○
○
○
○
○
○
○

Active community support
PLC - Pa...
Presentations from WebRTC conf
● http://www.webrtcworld.
com/conference/west/presentations.aspx
What's Cookin Doc?
Thanks
WebRTC - Is it ready? 2013
WebRTC - Is it ready? 2013
Upcoming SlideShare
Loading in …5
×

WebRTC - Is it ready? 2013

3,842 views

Published on

WebRTC has been a buzz word for the past year and two. But we don't really see it being widely adopted in today's web and mobile development.

It is suppose to be a revolution of telecommunication and impact every bit of our daily life. If it that good, why are we as consumers not seeing product and services on the market yet? What is the hold back?

Published in: Technology
1 Comment
3 Likes
Statistics
Notes
No Downloads
Views
Total views
3,842
On SlideShare
0
From Embeds
0
Number of Embeds
1,593
Actions
Shares
0
Downloads
54
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

WebRTC - Is it ready? 2013

  1. 1. WebRTC Is it ready? Henry 2013
  2. 2. 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 Secure Secure Secure Audio Channel (CD Quality) Video (Full HD) Screen Sharing Data Channel
  3. 3. Web RTC Block Diagram
  4. 4. Very Active Community
  5. 5. 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.
  6. 6. 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
  7. 7. 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...)
  8. 8. Supported Audio Codecs ● G.711 ● Opus - Free CD Quality codec (Even Stereo) ○ 20ms frames ○ Variable Bit Rate 8K to 64K bps
  9. 9. Built-In Video Engine Video Jitter Buffer ○ Dynamic Jitter Buffer Image Enhancement ○ Remove video noise VP8 Codec ○ Royalty free ○ Full HD 1080p encoding
  10. 10. WebRTC Connection Flow 1. Obtain Local Media (GetUserMedia) 2. Setup Peer Connection (RTCPeerConnection) 3. Attach Media or Data 4. Exchange Offer/Answer (RTCPeerConnection)
  11. 11. 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
  12. 12. Peer Connection Diagram Pure Web
  13. 13. Peer Connection Diagram Over Legacy Network
  14. 14. 3rd Party Authentication
  15. 15. Signaling Proprietary ○ RESTful ○ BOSH (long polling) ○ WebSockets Open Standards ○ XMPP over BOSH/WebSockets (14 years) ○ SIP over WebSockets (17 years)
  16. 16. 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
  17. 17. 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)
  18. 18. Demos Canvas Integration: ● Webcam Toy (GetUserMedia + Canvas) ● Audio Recorder (GetUserMedia + Canvas) Video Chat: ● talky (GetUserMedia + RTCPeerConnection) File Sharing ● Sharefest (GetUserMedia + RTCDataChannel)
  19. 19. More Demos Games: ● Facekat (GetUserMedia + JS head tracking) ● Cube Slam (???)
  20. 20. Tools Browser Tool ● chrome://webrtc-internals/ ● adapter.js (http://www.webrtc. org/interop)
  21. 21. 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
  22. 22. 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)
  23. 23. Business Applications ● ● ● ● ● Call Center PAAS (Open Source API) WebRTC enabled SBC Video Conference Outsourcing Development Vendor
  24. 24. Call Center Applications Teledini - Display web visitor key information when call arrives. Receive call from browser.
  25. 25. Talkdesk
  26. 26. 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.
  27. 27. Requestec
  28. 28. 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)
  29. 29. Video Conference (PAAS) Bistri - Free video chat service that binds all your social network contacts.
  30. 30. UberConference
  31. 31. Opentok
  32. 32. Other PubNub - High performance and low latency communication of arbitrary data
  33. 33. 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
  34. 34. Presentations from WebRTC conf ● http://www.webrtcworld. com/conference/west/presentations.aspx
  35. 35. What's Cookin Doc?
  36. 36. Thanks

×