webrtc for managers!
DESCRIPTION
TRANSCRIPT
WebRTCAmitesh MadCisco Systems
Wikipedia : WebRTC (Web Real-Time Communication) is an API definition being drafted by the World Wide Web Consortium (W3C) to enable browser-to-browser applications for voice calling, video chat, and P2P file sharing without plugins
Contributions
Cullen Jennings (aka: fluffy)Cisco Fellow
Justin Uberti Google WebRTC Tech Lead
About WebRTC
1. Collects audio, video inputs2. Screen share 3. Peer connection 4. Send random-data
Its peer to peer
ServerX
Demos
1. Collects audio, video inputs1. http://webcamtoy.com/app/2. http://idevelop.ro/ascii-camera/ 3. record-user-webm.html
Its peer to peer
Host Callee
Its peer to peer
Server over HTTP/WebSockets
Host Callee
Its peer to peer
Server over HTTP/WebSockets
Signaling
Signaling
Host Callee
Its peer to peer
Server over HTTP/WebSockets
Signaling
Signaling
Host CalleeOffer
Its peer to peer
Server over HTTP/WebSockets
Signaling
Signaling
Host CalleeOffer
Answer
Its peer to peer
Server over HTTP/WebSockets
Signaling
Signaling
Host Callee
XX
Advantages
Browser connected to other browser.
No Server, less latency.
Sends data without 3 way handshake.
Provide both reliable and unreliable sharing.
Secure, encrypted, offer-answer model.
WebRTC acronyms
1. v=02. o=- 4104655485640177113 2 IN IP4 127.0.0.13. s=-4. t=0 05. a=group:BUNDLE audio video6. a=msid-semantic: WMS rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T97. m=audio 54483 RTP/SAVPF 111 103 104 0 8 106 105 13 1268. c=IN IP4 10.100.48.409. a=rtcp:54483 IN IP4 10.100.48.4010. a=candidate:2921619256 1 udp 2113937151 10.100.48.40 62895 typ host generation 011. a=candidate:2921619256 2 udp 2113937151 10.100.48.40 62895 typ host generation 012. a=candidate:3769082824 1 tcp 1509957375 10.100.48.40 0 typ host generation 013. a=candidate:3769082824 2 tcp 1509957375 10.100.48.40 0 typ host generation 014. a=candidate:1074717678 1 udp 33562367 10.100.48.40 54483 typ relay raddr 10.100.48.40 rport 62896 generation 015. a=candidate:1074717678 2 udp 33562367 10.100.48.40 54483 typ relay raddr 10.100.48.40 rport 62896 generation 016. a=ice-ufrag:3pGWjLQzkWqNoVpS17. a=ice-pwd:ZP46JnvinrZzz7dzfTbi69b618. a=ice-options:google-ice19. a=fingerprint:sha-256 A7:72:51:07:33:73:37:85:FC:97:36:1C:03:3A:80:92:44:F3:67:74:6E:3F:BF:E4:37:68:A2:5A:55:92:11:F920. a=setup:actpass21. a=mid:audio22. a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level23. a=sendrecv24. a=rtcp-mux25. a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:Qwz9z19RwYxYwXQpgA9IZqVlA5HFJBffzuhmzVm226. a=rtpmap:111 opus/48000/227. a=fmtp:111 minptime=1028. a=rtpmap:103 ISAC/1600029. a=rtpmap:104 ISAC/3200030. a=rtpmap:0 PCMU/800031. a=rtpmap:8 PCMA/800032. a=rtpmap:106 CN/3200033. a=rtpmap:105 CN/1600034. a=rtpmap:13 CN/800035. a=rtpmap:126 telephone-event/800036. a=maxptime:6037. a=ssrc:3826769839 cname:WWohplTFKzmkwgSo38. a=ssrc:3826769839 msid:rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T9 rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T9a039. a=ssrc:3826769839 mslabel:rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T940. a=ssrc:3826769839 label:rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T9a041. m=video 54483 RTP/SAVPF 100 116 11742. c=IN IP4 10.100.48.4043. a=rtcp:54483 IN IP4 10.100.48.4044. a=candidate:2921619256 1 udp 2113937151 10.100.48.40 62895 typ host generation 045. a=candidate:2921619256 2 udp 2113937151 10.100.48.40 62895 typ host generation 046. a=candidate:3769082824 1 tcp 1509957375 10.100.48.40 0 typ host generation 047. a=candidate:3769082824 2 tcp 1509957375 10.100.48.40 0 typ host generation 048. a=candidate:1074717678 1 udp 33562367 10.100.48.40 54483 typ relay raddr 10.100.48.40 rport 62896 generation 049. a=candidate:1074717678 2 udp 33562367 10.100.48.40 54483 typ relay raddr 10.100.48.40 rport 62896 generation 050. a=ice-ufrag:3pGWjLQzkWqNoVpS51. a=ice-pwd:ZP46JnvinrZzz7dzfTbi69b652. a=ice-options:google-ice53. a=fingerprint:sha-256 A7:72:51:07:33:73:37:85:FC:97:36:1C:03:3A:80:92:44:F3:67:74:6E:3F:BF:E4:37:68:A2:5A:55:92:11:F954. a=setup:actpass55. a=mid:video56. a=extmap:2 urn:ietf:params:rtp-hdrext:toffset57. a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time58. a=sendrecv59. a=rtcp-mux60. a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:Qwz9z19RwYxYwXQpgA9IZqVlA5HFJBffzuhmzVm261. a=rtpmap:100 VP8/9000062. a=rtcp-fb:100 ccm fir63. a=rtcp-fb:100 nack64. a=rtcp-fb:100 goog-remb65. a=rtpmap:116 red/9000066. a=rtpmap:117 ulpfec/9000067. a=ssrc:2630650822 cname:WWohplTFKzmkwgSo68. a=ssrc:2630650822 msid:rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T9 rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T9v069. a=ssrc:2630650822 mslabel:rOmWIpzWvuXFX1SHtiHiukEx9AYzhdfJE5T9
SIP/SDP
Image Source: https://hacks.mozilla.org/2013/07/webrtc-and-the-ocean-of-acronyms/
Peer to peer and plugin free
Can we make $$$
Phone 2 Phone
TV 2 TV
TV and Glass
Faster file sharing.
Reduce load on CDN
Torrent
>= 21 >= 20 >= 12
Microsoft kept low profile while others were already implementing
Customizable, Ubiquitous Real Time Communication over the Web (aka CU-RTC-
Web)
Microsoft’s take: More flexibilities, no single codec
Google and Mozilla want to use VP8(Google 2010), default video codec. Microsoft has been
sceptical about VP8.
Microsoft announced its support for H.264 and HTML5 web video at its Mix10 developers conference in Las Vegas in
March.
Cisco Making a Bid to Solve WebRTC Video Codec Battle
Mozilla will add H.264 to Firefox as Cisco makes eleventh-hour push for WebRTC’s future
Microsoft unhappy with SDP
A vote carried out in September to choose between the two paths was heavily in favor of WebRTC. It
won with 22 votes to just 4 for Microsoft's proposal.
Don’t worry!
WebRTC4all… Plugin free???
Thank youTwitter: @amiteshawa