Top Banner
WebRTC Nagarjuna Varma Kalidindi 20 th October 2012, JSFoo, Banagalore.
27

Introduction to WebRTC

Dec 17, 2014

Download

Technology

Arjun Varma

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 ;)
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to WebRTC

WebRTC

Nagarjuna Varma Kalidindi

20th October 2012,

JSFoo, Banagalore.

Page 2: Introduction to WebRTC

•CS student in my final year

•Mozilla developer with L1 access

•Mozilla Rep

•Interests: Web Technologies, AI , ML, Networks

•Open Source Enthusiast

About Me

Page 3: Introduction to WebRTC

About WebRTC

•Story behind WebRTC

•Real time communication meets the Web

through simple JS api

•Audio/Video Communication in the Browser

•New Communications platform

Page 4: Introduction to WebRTC

Vision

•Shift the communications industry to the Web

•RTC feature available to all apps

•A common platform for RTC

Page 5: Introduction to WebRTC

WebRTC Components

• Media Streams

• PeerConnection

• DataChannels (my favourite )

Page 6: Introduction to WebRTC

getUserMedia

• Media Stream – Multiple tracks

• Media Track – Multiple channels

• gUM api acquires media stream from cam/mic

• Integrates well with <audio> and <video>

elements

Page 7: Introduction to WebRTC

gUM demo

Page 8: Introduction to WebRTC

Peer Connection

• High Level API

• Built in features:

P2p channel for audio, video and data

Codec control

Encryption

Bandwidth Management

Page 9: Introduction to WebRTC

Session setup

• Signaling

• Basic steps

Caller sends offer.

Callee receives offer.

Callee sends answer.

Caller receives answer.

Page 10: Introduction to WebRTC

More p2p

• ICE – Interactive Connectivity Establishment

• Local Description

• Remote Description

• SDP

Page 11: Introduction to WebRTC

JSEP Architecture

Page 12: Introduction to WebRTC

Peer Connection Demo

Page 13: Introduction to WebRTC

Datachannels

• Like Websockets but p2p

• Advantages:

•Low Latency

•High Measure rate/throughput

•Optional Unreliable Semantics

Page 14: Introduction to WebRTC

DC Usecases

• Gaming

• Remote Desktop Applications

• Real time text

• File Sharing

• Truly Decentralized Networks

Page 15: Introduction to WebRTC

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

Page 16: Introduction to WebRTC

DC Sample Code

Page 17: Introduction to WebRTC

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!

• …

Page 18: Introduction to WebRTC

WebRTC Support

• Almost all desktop browsers

Firefox

Chrome

Opera

IE

• Mobile browser support soon

• Native C++ versions – WebKitGtk+

Page 19: Introduction to WebRTC

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 . .

Page 20: Introduction to WebRTC

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

Page 21: Introduction to WebRTC

“ Potentially, WebRTC and HTML5 could enable

the same transformation for real-time

communications that the original browser did

for information

- Phil Edholm

Page 22: Introduction to WebRTC
Page 23: Introduction to WebRTC

Contribute !

• Want to be part of the revolution ?!

• We need YOU !

• Who can contribute:

oDevelopers

oDesigners

oEverybody

Page 24: Introduction to WebRTC

Want to know more?

• http://mozillamediagoddess.org/

• http://www.html5rocks.com/en/tutorials/webrtc/basics/

• http://tools.ietf.org/html/draft-ietf-rtcweb-jsep-00

• http://bloggeek.me/

• https://hacks.mozilla.org/2012/04/webrtc-efforts-

underway-at-mozilla/

Page 25: Introduction to WebRTC

Thank You !

Page 26: Introduction to WebRTC

#media

irc.mozilla.org

[email protected]

Q&A

Page 27: Introduction to WebRTC

[email protected]

@InfinityO_O