1 of 38

Developers

2 of 38

WebRTC 2013

Past, Present, and Future

Justin Uberti, Tech Lead

Serge Lachapelle, Product Manager

3 of 38

About Us

  • Engineering and product leads for Google WebRTC

  • 25+ years combined real-time�communications experience

  • Co-creators of WebRTC,�Google+ Hangouts,�Google Video Chat

4 of 38

Looking Back

WebRTC in 2013

5 of 38

Looking Back

The original WebRTC vision:

  • The communications industry, at web speed

  • A state-of-the-art audio/video communication stack in your browser

  • A cross-industry effort to create a new communications platform

6 of 38

Browser Support

Chrome (since Chrome 23)

Firefox (since Firefox 22)

Opera (since Opera 18)

7 of 38

Working Together

8 of 38

Users

1.2 Billion+

WebRTC-enabled browsers

9 of 38

Companies

10 of 38

Hu.tt from Citrix

11 of 38

Apps (P2P)

12 of 38

Apps (Games)

13 of 38

Apps (Media)

14 of 38

Apps (Broadcast)

15 of 38

"Remote Contribution Terminal"

16 of 38

New WebRTC Features

        • Firefox interoperability
        • Device enumeration
        • DTLS-SRTP
        • Stats
        • TURN (UDP, TCP, TLS)
        • Proxy support
        • Screen sharing (desktop, window)
        • Opus
        • Stereo
        • Improved AEC
        • webrtc-internals
        • Android support

        • Media Foundation
        • AVFoundation
        • Multiple audio sources
        • Web Audio + getUserMedia
        • Web Audio for PC input
        • SCTP data channels�(binary, reliable, flow control)
        • Stream relaying
        • Error concealment
        • Improved BWE
        • Hardware VP8 decode (ChromeOS)

17 of 38

HTML5 Media Features

18 of 38

HTML5 Media Demos

  • WebRTC

  • WebM Alpha
  • Web Audio
  • Web Speech

19 of 38

“ WebRTC [...] basically turns voice into just another� Javascript application..”

Henning Schulzrinne

CTO, FCC

20 of 38

Looking Forward

2014 and Beyond

21 of 38

Looking Forward

  • WebRTC stable on desktop

  • Double down on mobile

  • Big players deploying real-world apps

  • Increased browser support

  • 1.0 specs finish up

  • New codecs

  • New areas of innovation

22 of 38

Codec Conundrums

  • Lots of arguing in standards bodies about VP8 vs H.264

  • Hasn't stopped innovation - new and interesting things are still being done by people who don't care about codecs

  • These are the people who we set out to build the platform for

  • The entire WebRTC ecosystem is built around open technology; this is important for the success of the platform

23 of 38

VP9: The Next Generation

Same quality at half the bitrate, or significantly better quality at same bitrate

24 of 38

VP9 + SVC

  • VP9 supports SVC natively; working with Vidyo on integration into WebRTC
    • better error resilience�(recovery from packet loss)
    • better rate matching �(support of different bitrates)
    • faster stream switching�(time to switch from forwarding stream A to stream B)

25 of 38

New use cases: beyond the call

  • P2P CDNs

  • Gaming

  • Virtual jamming

  • Cloud video editing

  • Real-time media delivery

26 of 38

Rise of Mobile

Mobile internet usage predicted to overtake desktop in 2014

27 of 38

Mobile compute power increasing

28 of 38

Hardware codecs ready for primetime

  • Android "KitKat" MediaCodec API�supporting realtime VP8 hardware encode

  • 720p30 encode/decode supported

  • Available on: �Qualcomm Snapdragon 800 (Nexus 5)�Nvidia Tegra 4�Samsung Exynos�and others

29 of 38

Wearables

  • Interesting WebRTC�use case
  • "Browser" different than�conventional platforms
  • Small battery; power a�major issue

30 of 38

Making WebRTC great on mobile

Working on delivering an amazing Chrome for Android experience:

  • Hardware codecs
  • Hardware AEC
  • Bulletproofing the audio path
  • Smarter use of radios
  • Opus 1.1, tuning for mobile

Also supporting native apps, with the same WebRTC API:

  • PeerConnection.java (Android)
  • ObjC PeerConnection (iOS)

31 of 38

Services Emerging

  • Signaling (PubNub)
  • STUN/TURN (vLine)
  • P2P Content Delivery (peerCDN)
  • Coming soon:
    • Recording
    • Conferencing
    • Transcoding
    • VOIP gateways

32 of 38

Still too hard to create services

  • Right now, need to recompile the WebRTC C++ code into a server

  • What if you could write a WebRTC server as a WebRTC app?

  • Lots of interest in a framework to write WebRTC services in JS, a la node.js

33 of 38

Big Challenge for WebRTC

Web + Mobile + Server Apps�with a common API

34 of 38

Demo

35 of 38

More Info

36 of 38

WebRTC Resources

37 of 38

<Thank You!>

Justin Uberti, Serge Lachapelle

juberti@google.com

sergel@google.com

discuss-webrtc@googlegroups.com

38 of 38

Developers