Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Introduction to WebRTC


Published on

WebRTC is the upcoming platform for real time communication and data sharing through the web (specifically the browser). This presentation should get you started with it ;)

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Introduction to WebRTC

  1. 1. WebRTC Nagarjuna Varma Kalidindi 20th October 2012, JSFoo, Banagalore.
  2. 2. •CS student in my final year •Mozilla developer with L1 access •Mozilla Rep •Interests: Web Technologies, AI , ML, Networks •Open Source Enthusiast About Me
  3. 3. About WebRTC •Story behind WebRTC •Real time communication meets the Web through simple JS api •Audio/Video Communication in the Browser •New Communications platform
  4. 4. Vision •Shift the communications industry to the Web •RTC feature available to all apps •A common platform for RTC
  5. 5. WebRTC Components •Media Streams •PeerConnection •DataChannels (my favourite )
  6. 6. getUserMedia •Media Stream – Multiple tracks •Media Track – Multiple channels •gUM api acquires media stream from cam/mic •Integrates well with <audio> and <video> elements
  7. 7. gUM demo
  8. 8. Peer Connection • High Level API • Built in features: P2p channel for audio, video and data Codec control Encryption Bandwidth Management
  9. 9. Session setup • Signaling • Basic steps Caller sends offer. Callee receives offer. Callee sends answer. Caller receives answer.
  10. 10. More p2p • ICE – Interactive Connectivity Establishment • Local Description • Remote Description • SDP
  11. 11. JSEP Architecture
  12. 12. Peer Connection Demo
  13. 13. Datachannels • Like Websockets but p2p • Advantages: •Low Latency •High Measure rate/throughput •Optional Unreliable Semantics
  14. 14. DC Usecases • Gaming • Remote Desktop Applications • Real time text • File Sharing • Truly Decentralized Networks
  15. 15. DC - key features • Leverages on PeerConnection session setup • Multiple simultaneous channels (opt prioritization) • Reliable and Unreliable modes • DTLS and congestion control • With or without audio/video • Similar to WebSockets API
  16. 16. DC Sample Code
  17. 17. Ongoing work • Integration with the Audio Data API for manipulation coming soon! • A usable version of Data Channels will be out with the next version of FF • Fix everything so that they are turned on by default • New, innovative and cool demos and apps! • …
  18. 18. WebRTC Support • Almost all desktop browsers Firefox Chrome Opera IE • Mobile browser support soon • Native C++ versions – WebKitGtk+
  19. 19. What all this means! • Rich image and video apps on mobile browsers • Citizen journalists could stream breaking news directly from their phones to news outlets • Web sites could add live support and feedback through one line of code • Effortless file distribution (e.g. Napster) without software. • This is just a preview. The will be more, much more . .
  20. 20. Impact • Sharing live audio, video, and data will be as simple as viewing a web page • A plethora of audio and video applications by startups and students • A new wave of innovation • change the way we live, work, and play • new challenges for government censorship :P • So get EXCITED
  21. 21. “ Potentially, WebRTC and HTML5 could enable the same transformation for real-time communications that the original browser did for information - Phil Edholm
  22. 22. Contribute ! • Want to be part of the revolution ?! • We need YOU ! • Who can contribute: oDevelopers oDesigners oEverybody
  23. 23. Want to know more? • • • • • underway-at-mozilla/
  24. 24. Thank You !
  26. 26. @InfinityO_O