SlideShare a Scribd company logo
WebRTC

The future (?) champion of
low latency
Dr Alex Gouaillard, CTO millicast.com
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
https://medium.com/spankchain/spankchain-development-update-007-february-27-2018-414247c85445
Real-time? Why?
Well, have you ever tried to make love

with 5s delay? (NSFW)
WebRTC ?
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Historically: google gap analysis
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
• I own the net, or at least I have a toll on it
• I want everybody to do everything on the net
• What are people still using the desktop for they
cannot use the net for?
One-way Media Streaming pipeline
Media
Capture
Screen
Display
Encoding
Decoding
Segm
entation

Fragm
entation
Reassem
bly
Encryption
Decryption
Transport
Internet
Internet
Transport
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
One-way Media Streaming pipeline
Media
Capture
Screen
Display
Encoding
Decoding
Segm
entation

Fragm
entation
Reassem
bly
Encryption
Decryption
Transport
Internet
Internet
Transport
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
WebRTC STACK

Media Engine
WebRTC STACK
Media Engine
In the Browser UA, No plugin, standard
Based on 20 years battle-tested VoIP techs (RTP)

latency = ( RTT + 100 ms ) +
One-way Media Streaming pipeline
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
no need for Eng.
Web app is enough
Google Initiative, to start a standard
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
• 2009 - ON2 acquisitions (libVPx) for 100+ M
• 2010 - GIPS acquisition (libjingle => webrtc) 68M
• 2011 - Google Announce the WebRTC initiative
WebRTC Today
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
• Chromecast
• Youtube live
• Google’s Hangout, meet, allo, duo,
• Comcast Xinfinity
• Facebook messenger since 2012
• 17 billions video chats in 2017
• messenger is the 2nd most popular iOS app
• …
https://www.youtube.com/watch?v=n1gahO5S0Bg
Theoretical Streaming
( with WebRTC )
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
One-way Media Streaming pipeline
Media
Capture
Screen
Display
Encoding
Decoding
Segm
entation

Fragm
entation
Reassem
bly
Encryption
Decryption
Transport
Internet
Internet
Transport
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Media Engine
 Media Engine

Optimisations for pre-recorded content Streaming
Media
Capture
Screen
Display
Encoding
Decoding
Segm
entation

Fragm
entation
Reassem
bly
Encryption
Decryption
Transport
Internet
Internet
Transport
Pre-Encoded
C
ontent
D
ual-pass
encoding
Pre-C
hunk’ed

uploaded
C
ontent
internet cache
protected
by
buffer
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
C
an
O
ptim
ise
p2p

ex: peer5, stream
root.io
Problems / Solutions
• Large Bandwidth fluctuations
• Heterogeneous (receiving / viewer clients)
• Have several resolutions of the original available, and a way
to switch between them.
• multiple encoders (waste info in low rez)
• file chunks => switch in receiving application (slower, longer path bigger
chunks, buffers)
• WebRTC simulcast => switch in SFU
• layered encoder (SVC) => switch in SFU
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Bandwidth Adaptive Media Streaming pipeline
Media
Capture
Screen
Display
Encoding
Decoding
Segm
entation

Fragm
entation Reassem
bly
Encryption Decryption
Transport
Internet
Internet
Transport
MediaDistributionServer
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Media Engine

Media Engine
Media Engine

Media Engine

Bandwidth Adaptive Media Streaming pipeline
in practice - the usual
MediaCapture
Screen
Display
MediaDistributionServer
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Media Engine (send)

Media Engine (rec)

ME
(send)

Media Engine (send)

Media Engine (send)

ME

(rec)

Player
Transcoder 

possibly hosted and distributed

e.g. BitMovin
Source
RTMP HLS
Bandwidth Adaptive Media Streaming pipeline
in practice - webrtc end-to-end
MediaCapture
Screen
Display
MediaDistributionServer
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Media Engine (send)

Media Engine (rec)

Media Engine (send)

Media Engine (send)

PlayerSource
No storage
1 less enc/dec
= 50% load
Problems / Solutions
• Ports, multiplexing, Nat and firewall firewall,
transport protocol, …
• discovery, handshake, streaming
• file-based => “tunnel” over HTTP and use URIs
(add delay)
• WebRTC => Dynamic transport allocation and NAT
traversal with ICE
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Problems / Solutions
• Network quality adaptation (jitter and packet loss)
• file-based => buffer (Add delay)
• WebRTC => use RTP (jitter buffer, NACK, PLI, RTX, RED, FEC)

• Small Network bandwidth adaptation
• file-based => buffer (Add delay), and file-based (add delay)
• WebRTC => bitrate adaptation based on RTP bandwidth evaluation

• Multistreams congestion control and multiplexing
• file-based => some multiplexing included, no CC
• WebRTC => rtcp-mux, BUNDLE, and transport-CC
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Practical Streaming
( with WebRTC )
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Simulcast, codecs, SVC support
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
10/2018 10/2018
04/2018 06/2018
xx/2018
Millicast / CoSMo software contributions

to the browser vendor code base
Simulcast, codecs, SVC support
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
webrtc.org the default client side stack
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
CallStats.io: Network Instrumentation and Stats: Verify
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
KITE Interop SE Grid - Browser configs
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
WebRTC Testing: Interesting scientific publications
NARVAL, A No-Reference Video Quality Tool for Real-Time Communications,

Augustin Lemesle, Alexis Marion, Ludovic Roux and Alexandre Gouaillard
in Proceedings of Human Vision and Electronic Imaging, Burlingame, California, USA, January
2019
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
1 OS
“Kite” Interop. mode: AppRTC Design
Conductor
Dispatcher
2 browsers, AppRTC-Test
list of N configs
Validate Config, against SE Grid
Interop. mode: Compute list of tests, i.e. pairs of BrowserObj
AppRTC-Test,
N^2 pairs of BO Smart Load Balancing of the N^2 pairs,
Aggregate results and send to Dashboard
1 2
AppRTC-Test,
1 pair< BO >
Run tests and instruments 2 browsers

Collect/Compute result
Pluggable AppRTC-Test
Connect to appRTC URL
wait for “connected ||
completed”
or timeout
Pluggable Hybrid
SE Grid
local-Grid
Rem-BB
Rem-BaaS
(SauceLabs)
Rem-BaaS
(BrowserStack)
Rem-VM (AWS)
Test Runner
Validate
Configs
Pluggable Viz Dashboard
Visualize and Interact with Results
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Test Runner
Test Runner
Test Runner
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Comparative Study of WebRTC Open Source SFUs for Video Conferencing,

Emmanuel André, Nicolas Le Breton, Augustin Lemesle, Ludovic Roux and Alex. Gouaillard
in Proceedings of IIT Real-Time Communications, Illinois Institute of Technology, Chicago, USA, October 2018
WebRTC Testing: Interesting scientific publications
WebRTC Testing: Interesting scientific publications
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
WebRTC Testing: Interesting scientific publications (1/2)
WebRTC Testing: Streaming: CPU footprint
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
WebRTC Testing: Streaming: Bitrate Adaptation
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
WebRTC Testing: Bitrate Adaptation
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
WebRTC at scale: cascading, not clustering
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
• Vidyo

https://vidyo.io/blog/features/vidyo-io-delivers-massive-
scalability-maintaining-reliability-quality-cascading-sfus/
• Jitsi: https://webrtchacks.com/sfu-cascading/
WebRTC at scale: cascading, not clustering
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Conclusion - the future
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
• Webrtc is already used by giants, accumulating
billions of minutes of audio and video annually.
The streaming industry seems to be slightly late
to the game.
• The standards are already thinking about Next
Version: QUIC, end-to-end encryption, Machine
learning, AV1, …..
Conclusion - the future
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Conclusion - the future
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Conclusion - the future
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
Oct, 31st 2018

first public webrtc call

with AV1
Oct, 31st 2018

happy halloween effect.
Thank You
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
The WebRTC stack
Media
Capture
Screen
Display
Encoding Decoding
Raw Media
Bitstream
Segmentation

Fragmentation
Reassembly
Jitter bufferRTP packet
RTCP packetpayload
S & R S & R
Encryption Decryption
SRTP packet
TCP / UDP / TLS / DTLS / QUIC packets
IPv4,6 packets
Transport
Internet
link layer and below (3)
Dynamically

allocated

through ICE
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
The HLS / MPEG-DASH way
Media
Capture
Screen
Display
Encoding Decoding
Raw Media
Bitstream
Segmentation

Fragmentation
Reassembly
fmp4, MPEG2 TS, CMAF
S & R S & R
Encryption Decryption
AES-128
HTTP(s) => TCP(TLS) packets
IPv4,6 packets
Transport
Internet
link layer and below (3)
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California
The WebRTC stack
Media
Capture
Screen
Display
Encoding Decoding
Raw Media
Bitstream
Segmentation

Fragmentation
Reassembly
Jitter buffer
RTP packet: media transport
RTCP packet: Bitrate Adaptation, Bandwidth estimation, Congestion Control
payload
S & R S & R
Encryption Decryption
SRTP packet: authenticated packet with encrypted content
TCP / UDP / TLS / DTLS / QUIC packets
IPv4,6 packets
Transport
Internet
link layer and below (3)
All Media Specific
features are in RTP,



Not in TRANSPORT !
Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com
Streaming Media West - November 14, 2018 - Huntington Beach, California

More Related Content

PDF
Deploying WebRTC in a low-latency streaming service
PDF
2015 Q4 webrtc standards update
PPTX
2016 February - WebRTC Conference japan - English
PDF
WebRTC Object Model API - Transceivers
PPTX
WebRTC Infrastructure scalability notes - Geek'n Kranky - June 2014 @ Google SF
PPTX
WebRTC Status Update - 2017Q2
PPTX
KITE Network Instrumentation: Advanced WebRTC Testing
PDF
Janus conf19: TUTORIAL: KITE with network-instrumentation
Deploying WebRTC in a low-latency streaming service
2015 Q4 webrtc standards update
2016 February - WebRTC Conference japan - English
WebRTC Object Model API - Transceivers
WebRTC Infrastructure scalability notes - Geek'n Kranky - June 2014 @ Google SF
WebRTC Status Update - 2017Q2
KITE Network Instrumentation: Advanced WebRTC Testing
Janus conf19: TUTORIAL: KITE with network-instrumentation

What's hot (20)

PPTX
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
PPTX
Webrtc plugins for Desktop Browsers
PDF
WebRTC: A front-end perspective
PPTX
Practical webRTC - from API to Solution - webRTC Summit 2014 @ NYC
PDF
Value Added Services and WebRTC
PDF
WebRTC - On Standards, Identity and Telco Strategy
PDF
Quality Assurance for WebRTC Services
PDF
WebRTC Webinar & Q&A - W3C WebRTC JS API Test Platform & Updates from W3C Lis...
PPTX
overview-peerconnection-lifetime
PPTX
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
PDF
WebRTC on Mobile Devices: Challenges and Opportunities
PDF
Building great mobile apps: Somethings you might want to know
PDF
WebRTC Reborn SignalConf 2016
PDF
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
PDF
Janus conf'19: janus client side
PPTX
AI in RTC - RTC Korea 2018
PDF
ORTC Library - Introduction
PDF
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
PDF
stackconf 2021 | Embracing change: Policy-as-code for Kubernetes with OPA and...
PDF
Rapid Prototyping HTML5 Applications with Node.js
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
Webrtc plugins for Desktop Browsers
WebRTC: A front-end perspective
Practical webRTC - from API to Solution - webRTC Summit 2014 @ NYC
Value Added Services and WebRTC
WebRTC - On Standards, Identity and Telco Strategy
Quality Assurance for WebRTC Services
WebRTC Webinar & Q&A - W3C WebRTC JS API Test Platform & Updates from W3C Lis...
overview-peerconnection-lifetime
Plugin for other browsers - webRTC Conference and Expo June 2014 @ atlanta
WebRTC on Mobile Devices: Challenges and Opportunities
Building great mobile apps: Somethings you might want to know
WebRTC Reborn SignalConf 2016
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
Janus conf'19: janus client side
AI in RTC - RTC Korea 2018
ORTC Library - Introduction
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
stackconf 2021 | Embracing change: Policy-as-code for Kubernetes with OPA and...
Rapid Prototyping HTML5 Applications with Node.js
Ad

Similar to Streaming Media West: Webrtc the future of low latency streaming (20)

PDF
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
PDF
WebRTC: Mostly Video Bits
PDF
DevCon 5 (December 2013) - WebRTC & WebSockets
PPTX
DYI - Starting your own webrtc project
PDF
WebRTC Videobroadcasting
PDF
WHIP WebRTC Broadcasting @ FOSDEM 2022
PDF
WebRTC Standards & Implementation Q&A - WebRTC NV planning face-to-face meeting
PPTX
WebRTC Seminar Report
PDF
What is WebRTC? What can I do with it?
PDF
WebRTC 101 - How to get started building your first WebRTC application
PDF
Introduction to WebRTC
PPTX
DeveloperWeek 2015 - WebRTC - Where to start and how to scale
PPTX
Real-time Communications at Internet Speed
PDF
[workshop] The Revolutionary WebRTC
PPT
Introduction To Webrtc
PPTX
DevCon5 (July 2014) - Intro to WebRTC
PDF
Web rtc standards live session #13 - The Browser-Standards Gap
PDF
BUILD THE NEW GENERATION OF REAL-TIME STREAMING SOLUTIONS
PDF
Kranky Geek WebRTC 2015 - What's next for WebRTC?
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
WebRTC: Mostly Video Bits
DevCon 5 (December 2013) - WebRTC & WebSockets
DYI - Starting your own webrtc project
WebRTC Videobroadcasting
WHIP WebRTC Broadcasting @ FOSDEM 2022
WebRTC Standards & Implementation Q&A - WebRTC NV planning face-to-face meeting
WebRTC Seminar Report
What is WebRTC? What can I do with it?
WebRTC 101 - How to get started building your first WebRTC application
Introduction to WebRTC
DeveloperWeek 2015 - WebRTC - Where to start and how to scale
Real-time Communications at Internet Speed
[workshop] The Revolutionary WebRTC
Introduction To Webrtc
DevCon5 (July 2014) - Intro to WebRTC
Web rtc standards live session #13 - The Browser-Standards Gap
BUILD THE NEW GENERATION OF REAL-TIME STREAMING SOLUTIONS
Kranky Geek WebRTC 2015 - What's next for WebRTC?
Ad

More from Alexandre Gouaillard (8)

PDF
IIT-RTC 2017 Qt WebRTC Tutorial (Qt Janus Client)
PPTX
Real-Time Communication Testing Evolution with WebRTC
PPTX
2014 Webrtc Summit & Cloud Expo, RealTime Interactions for IoT
PPTX
2016 Q1 - WebRTC testing State of The Art
PPTX
2016 February - WebRTC Conference Japan - 日本語
PPTX
WebRTC Browsers n Stacks Implementation differences
PPTX
Testing and packaging WebRTC Stack
PPTX
WebRTC status and what to expect in 2015
IIT-RTC 2017 Qt WebRTC Tutorial (Qt Janus Client)
Real-Time Communication Testing Evolution with WebRTC
2014 Webrtc Summit & Cloud Expo, RealTime Interactions for IoT
2016 Q1 - WebRTC testing State of The Art
2016 February - WebRTC Conference Japan - 日本語
WebRTC Browsers n Stacks Implementation differences
Testing and packaging WebRTC Stack
WebRTC status and what to expect in 2015

Recently uploaded (20)

PPTX
Non-Verbal-Communication .mh.pdf_110245_compressed.pptx
PPT
The Effect of Human Resource Management Practice on Organizational Performanc...
DOCX
ENGLISH PROJECT FOR BINOD BIHARI MAHTO KOYLANCHAL UNIVERSITY
PPT
First Aid Training Presentation Slides.ppt
PPTX
Introduction to Effective Communication.pptx
PPTX
BIOLOGY TISSUE PPT CLASS 9 PROJECT PUBLIC
PPTX
Hydrogel Based delivery Cancer Treatment
PPTX
Human Mind & its character Characteristics
PPTX
English-9-Q1-3-.pptxjkshbxnnxgchchxgxhxhx
PPTX
nose tajweed for the arabic alphabets for the responsive
PPTX
INTERNATIONAL LABOUR ORAGNISATION PPT ON SOCIAL SCIENCE
PPTX
S. Anis Al Habsyi & Nada Shobah - Klasifikasi Hambatan Depresi.pptx
PPTX
Project and change Managment: short video sequences for IBA
PPTX
Effective_Handling_Information_Presentation.pptx
DOC
学位双硕士UTAS毕业证,墨尔本理工学院毕业证留学硕士毕业证
PPTX
PHIL.-ASTRONOMY-AND-NAVIGATION of ..pptx
PPTX
2025-08-10 Joseph 02 (shared slides).pptx
PPTX
The Effect of Human Resource Management Practice on Organizational Performanc...
PDF
Presentation1 [Autosaved].pdf diagnosiss
PPTX
Tablets And Capsule Preformulation Of Paracetamol
Non-Verbal-Communication .mh.pdf_110245_compressed.pptx
The Effect of Human Resource Management Practice on Organizational Performanc...
ENGLISH PROJECT FOR BINOD BIHARI MAHTO KOYLANCHAL UNIVERSITY
First Aid Training Presentation Slides.ppt
Introduction to Effective Communication.pptx
BIOLOGY TISSUE PPT CLASS 9 PROJECT PUBLIC
Hydrogel Based delivery Cancer Treatment
Human Mind & its character Characteristics
English-9-Q1-3-.pptxjkshbxnnxgchchxgxhxhx
nose tajweed for the arabic alphabets for the responsive
INTERNATIONAL LABOUR ORAGNISATION PPT ON SOCIAL SCIENCE
S. Anis Al Habsyi & Nada Shobah - Klasifikasi Hambatan Depresi.pptx
Project and change Managment: short video sequences for IBA
Effective_Handling_Information_Presentation.pptx
学位双硕士UTAS毕业证,墨尔本理工学院毕业证留学硕士毕业证
PHIL.-ASTRONOMY-AND-NAVIGATION of ..pptx
2025-08-10 Joseph 02 (shared slides).pptx
The Effect of Human Resource Management Practice on Organizational Performanc...
Presentation1 [Autosaved].pdf diagnosiss
Tablets And Capsule Preformulation Of Paracetamol

Streaming Media West: Webrtc the future of low latency streaming

  • 1. WebRTC
 The future (?) champion of low latency Dr Alex Gouaillard, CTO millicast.com
  • 2. Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California https://medium.com/spankchain/spankchain-development-update-007-february-27-2018-414247c85445 Real-time? Why? Well, have you ever tried to make love
 with 5s delay? (NSFW)
  • 3. WebRTC ? Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 4. Historically: google gap analysis Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California • I own the net, or at least I have a toll on it • I want everybody to do everything on the net • What are people still using the desktop for they cannot use the net for?
  • 5. One-way Media Streaming pipeline Media Capture Screen Display Encoding Decoding Segm entation
 Fragm entation Reassem bly Encryption Decryption Transport Internet Internet Transport Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 6. One-way Media Streaming pipeline Media Capture Screen Display Encoding Decoding Segm entation
 Fragm entation Reassem bly Encryption Decryption Transport Internet Internet Transport Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California WebRTC STACK
 Media Engine WebRTC STACK Media Engine In the Browser UA, No plugin, standard Based on 20 years battle-tested VoIP techs (RTP)
 latency = ( RTT + 100 ms ) +
  • 7. One-way Media Streaming pipeline Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California no need for Eng. Web app is enough
  • 8. Google Initiative, to start a standard Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California • 2009 - ON2 acquisitions (libVPx) for 100+ M • 2010 - GIPS acquisition (libjingle => webrtc) 68M • 2011 - Google Announce the WebRTC initiative
  • 9. WebRTC Today Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California • Chromecast • Youtube live • Google’s Hangout, meet, allo, duo, • Comcast Xinfinity • Facebook messenger since 2012 • 17 billions video chats in 2017 • messenger is the 2nd most popular iOS app • … https://www.youtube.com/watch?v=n1gahO5S0Bg
  • 10. Theoretical Streaming ( with WebRTC ) Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 11. One-way Media Streaming pipeline Media Capture Screen Display Encoding Decoding Segm entation
 Fragm entation Reassem bly Encryption Decryption Transport Internet Internet Transport Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Media Engine
 Media Engine

  • 12. Optimisations for pre-recorded content Streaming Media Capture Screen Display Encoding Decoding Segm entation
 Fragm entation Reassem bly Encryption Decryption Transport Internet Internet Transport Pre-Encoded C ontent D ual-pass encoding Pre-C hunk’ed
 uploaded C ontent internet cache protected by buffer Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California C an O ptim ise p2p
 ex: peer5, stream root.io
  • 13. Problems / Solutions • Large Bandwidth fluctuations • Heterogeneous (receiving / viewer clients) • Have several resolutions of the original available, and a way to switch between them. • multiple encoders (waste info in low rez) • file chunks => switch in receiving application (slower, longer path bigger chunks, buffers) • WebRTC simulcast => switch in SFU • layered encoder (SVC) => switch in SFU Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 14. Bandwidth Adaptive Media Streaming pipeline Media Capture Screen Display Encoding Decoding Segm entation
 Fragm entation Reassem bly Encryption Decryption Transport Internet Internet Transport MediaDistributionServer Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Media Engine
 Media Engine
Media Engine
 Media Engine

  • 15. Bandwidth Adaptive Media Streaming pipeline in practice - the usual MediaCapture Screen Display MediaDistributionServer Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Media Engine (send)
 Media Engine (rec)
 ME (send)
 Media Engine (send)
 Media Engine (send)
 ME
 (rec)
 Player Transcoder 
 possibly hosted and distributed
 e.g. BitMovin Source RTMP HLS
  • 16. Bandwidth Adaptive Media Streaming pipeline in practice - webrtc end-to-end MediaCapture Screen Display MediaDistributionServer Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Media Engine (send)
 Media Engine (rec)
 Media Engine (send)
 Media Engine (send)
 PlayerSource No storage 1 less enc/dec = 50% load
  • 17. Problems / Solutions • Ports, multiplexing, Nat and firewall firewall, transport protocol, … • discovery, handshake, streaming • file-based => “tunnel” over HTTP and use URIs (add delay) • WebRTC => Dynamic transport allocation and NAT traversal with ICE Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 18. Problems / Solutions • Network quality adaptation (jitter and packet loss) • file-based => buffer (Add delay) • WebRTC => use RTP (jitter buffer, NACK, PLI, RTX, RED, FEC)
 • Small Network bandwidth adaptation • file-based => buffer (Add delay), and file-based (add delay) • WebRTC => bitrate adaptation based on RTP bandwidth evaluation
 • Multistreams congestion control and multiplexing • file-based => some multiplexing included, no CC • WebRTC => rtcp-mux, BUNDLE, and transport-CC Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 19. Practical Streaming ( with WebRTC ) Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 20. Simulcast, codecs, SVC support Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California 10/2018 10/2018 04/2018 06/2018 xx/2018 Millicast / CoSMo software contributions
 to the browser vendor code base
  • 21. Simulcast, codecs, SVC support Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 22. webrtc.org the default client side stack Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 23. CallStats.io: Network Instrumentation and Stats: Verify Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 24. KITE Interop SE Grid - Browser configs Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 25. WebRTC Testing: Interesting scientific publications NARVAL, A No-Reference Video Quality Tool for Real-Time Communications,
 Augustin Lemesle, Alexis Marion, Ludovic Roux and Alexandre Gouaillard in Proceedings of Human Vision and Electronic Imaging, Burlingame, California, USA, January 2019 Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 26. 1 OS “Kite” Interop. mode: AppRTC Design Conductor Dispatcher 2 browsers, AppRTC-Test list of N configs Validate Config, against SE Grid Interop. mode: Compute list of tests, i.e. pairs of BrowserObj AppRTC-Test, N^2 pairs of BO Smart Load Balancing of the N^2 pairs, Aggregate results and send to Dashboard 1 2 AppRTC-Test, 1 pair< BO > Run tests and instruments 2 browsers
 Collect/Compute result Pluggable AppRTC-Test Connect to appRTC URL wait for “connected || completed” or timeout Pluggable Hybrid SE Grid local-Grid Rem-BB Rem-BaaS (SauceLabs) Rem-BaaS (BrowserStack) Rem-VM (AWS) Test Runner Validate Configs Pluggable Viz Dashboard Visualize and Interact with Results Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Test Runner Test Runner Test Runner
  • 27. Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Comparative Study of WebRTC Open Source SFUs for Video Conferencing,
 Emmanuel André, Nicolas Le Breton, Augustin Lemesle, Ludovic Roux and Alex. Gouaillard in Proceedings of IIT Real-Time Communications, Illinois Institute of Technology, Chicago, USA, October 2018 WebRTC Testing: Interesting scientific publications
  • 28. WebRTC Testing: Interesting scientific publications Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 29. Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California WebRTC Testing: Interesting scientific publications (1/2)
  • 30. WebRTC Testing: Streaming: CPU footprint Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 31. WebRTC Testing: Streaming: Bitrate Adaptation Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 32. WebRTC Testing: Bitrate Adaptation Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 33. WebRTC at scale: cascading, not clustering Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California • Vidyo
 https://vidyo.io/blog/features/vidyo-io-delivers-massive- scalability-maintaining-reliability-quality-cascading-sfus/ • Jitsi: https://webrtchacks.com/sfu-cascading/
  • 34. WebRTC at scale: cascading, not clustering Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 35. Conclusion - the future Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California • Webrtc is already used by giants, accumulating billions of minutes of audio and video annually. The streaming industry seems to be slightly late to the game. • The standards are already thinking about Next Version: QUIC, end-to-end encryption, Machine learning, AV1, …..
  • 36. Conclusion - the future Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 37. Conclusion - the future Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 38. Conclusion - the future Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California Oct, 31st 2018
 first public webrtc call
 with AV1 Oct, 31st 2018
 happy halloween effect.
  • 39. Thank You Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 40. The WebRTC stack Media Capture Screen Display Encoding Decoding Raw Media Bitstream Segmentation
 Fragmentation Reassembly Jitter bufferRTP packet RTCP packetpayload S & R S & R Encryption Decryption SRTP packet TCP / UDP / TLS / DTLS / QUIC packets IPv4,6 packets Transport Internet link layer and below (3) Dynamically
 allocated
 through ICE Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 41. The HLS / MPEG-DASH way Media Capture Screen Display Encoding Decoding Raw Media Bitstream Segmentation
 Fragmentation Reassembly fmp4, MPEG2 TS, CMAF S & R S & R Encryption Decryption AES-128 HTTP(s) => TCP(TLS) packets IPv4,6 packets Transport Internet link layer and below (3) Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California
  • 42. The WebRTC stack Media Capture Screen Display Encoding Decoding Raw Media Bitstream Segmentation
 Fragmentation Reassembly Jitter buffer RTP packet: media transport RTCP packet: Bitrate Adaptation, Bandwidth estimation, Congestion Control payload S & R S & R Encryption Decryption SRTP packet: authenticated packet with encrypted content TCP / UDP / TLS / DTLS / QUIC packets IPv4,6 packets Transport Internet link layer and below (3) All Media Specific features are in RTP,
 
 Not in TRANSPORT ! Dr. Alex Gouaillard - @agouaillard - webrtcbydralex.com Streaming Media West - November 14, 2018 - Huntington Beach, California