P I O N
Thank You Aaron France Konstantin Itskov Yutaka Takeda Adam Kiss Lander Noterman Zizheng Tai Aleksandr Razumov Lukas Herman adwpc Alex Browne Lukas Rezek chenkaiC4 Alex Harford Luke Curley earle AlexWoo( 武杰 ) Marouane feixiao Max Hawkins frank Antoine Baché Michael MacDonald igolaizola Ato Araki Michiel De Backker imalic3 Atsushi Watanabe Mike Coleman jinleileiking Brendan Rius Mészáros Mihály jose nazario Cecylia Bocovich Oleg Kovalov mchlrhw Chao Yuan Rafael Viscarra mxmCherry Chris Hiszpanski Raphael Derosso Pereira notedit Christopher Fry Raphael Randschau rob-deutsch CloudWebRTC Robert Eperjesi ronan Daniele Sluijters RunningMan simonacca-fotokite Denis Ryan Gordon songjiayang Gareth Hayes Sean DuBois spaceCh1mp Guilherme Sebastian Waisbrot sylba2050 Hongchao Ma Slugalisk wattanakorn495 Hugo Arregui Stefan Tatschner xsbchen Igor German Steve zigazeljko Ingmar Wittkau Suhas Gaddam Clayton McCray Jadon Bennett Tobias Fridén Hendrik Hofstadt Jake B Vicken Simonian Luke S Jason Maldonis Will Watson Bao Nguyen John Bradley Woodrow Douglass Konstantin Chugalinskiy Justin Okamoto
WHAT IS WEBRTC?
1 Browser APIs E2E Secure Connection between Peers Multiple Audio/Video Tracks Binary Data - Can be lossy - Can be unordered - Multiple distinct DataChannels
2 What we need to solve Connectivity - Multiple Possible Routes - Not in the same network! - UDP? Security - E2E Secure Latency - 400 milliseconds max - Unreliable Transport (UDP) Ease of Use
WHAT DOES IT SOLVE
3 Problem: Connect two users with no Public IP
4 Solution: NAT Traversal
5 Solution: NAT Traversal
6 Problem: One is IPv4, One is IPv6
7 Solution: TURN
8 Problem: Wi-Fi on Fire
9 Solution: ICE Renomination
10 Problem: What bitrate do I upload?
11 Problem: What bitrate do I upload?
12 Solution: Congestion Control
13 Problem: connect without knowing IP?
14 Solution: Multicast DNS
TIME TO BUILD
15 Connecting (Signaling Offer/Answer)
16 Sending Data (DataChannels)
17 Receiving Data (DataChannels)
18 Deploy to the browser!
19 Send Video
20 Receive Video
PION IN ACTION
21 ssh-p2p github.com/nobonobo/ssh-p2p
22 CloudRetro.io
23 RTCTunnel github.com/rtctunnel
24 Ion github.com/pion/ion
25 Neko github.com/nurdism/neko
26 Snowflake snowflake.torproject.org
27 Strive CDN
28 Harmony gitlab.com/tslocum/harmony
29 TelloGo https:/ /github.com/Ragnar-H/TelloGo
30 IoT Camera
31 ascii https:/ /github.com/dialup-inc/ascii
32 Pion needs you Empower those helping the internet! Gain deep WebRTC knowledge A fun challenge where you pick the goals
33 github.com/pion pion.ly/slack twitter.com/_pion
Recommend
More recommend