Skip to content
WebRTC: The missing codelab
Overview Sample Module
Introduction
Preparation
Run the sample
Walk-through
index.html walkthrough
Signaling 101
Signaling 102
Setting up STUN
Muting and unmuting
Screen sharing
Hanging up
Connection states
Look at the statistics
Summary
Exercises
Adding TURN via Twilio
Change maximum bitrate
Tracking disconnections in the server
Adding calling & answering buttons
Adding statistics to the view
Codec selection
Adding metadata to a stream
Turn off camera light when muting video
Implement non-trickle ICE
Code for the solutions
Resources library
Reading webrtc-internals
How to download webrtc-internals file?
NAT traversal and ICE negotiation
Important quality metrics
Fiddle of the month Sample Module
Sharing screen + microphone together
Pre-call device selection
Checking audio levels
Understanding onicecandidateerror
Submitting a WebRTC bug
AddStream, AddTrack & AddTranceiver
Finding codec capabilities
ICE candidate gathering
Measuring video codecs performance
Simulcast playground
Multiple video tracks on a single peer connection
Sharing your own tab
Poor man’s simulcast
Too many WebMediaPlayers intervention
Spatial audio
Identifying Chrome field trials
What codec are you using?
Forgetting ICE candidates
Quality limitation stats in WebRTC
Detecting headsets
Escaping the hall of mirrors
ICE restarts
GetUserMedia arguments
Peer connection with 2 video sources
Sharing partial screen area
Motion vs detail
Codec statistics changes
Video unmute race condition
Video ratio
WebCodecs & frame loss
Loss-based bandwidth estimation
Previous Lesson
Next Lesson

Fiddle of the month

  1. WebRTC: The missing codelab
  2. Fiddle of the month

Every month we pick a WebRTC topic, develop a short fiddle for it, which shows the technical aspects of the topic and then explain it in a short lesson. This module is a list of all these WebRTC fiddle lessons that we’ve done so far.

Module Content
0% Complete 0/31 Steps
Sharing screen + microphone together 5mins
Pre-call device selection 10mins
Checking audio levels 10mins
Understanding onicecandidateerror 10mins
Submitting a WebRTC bug 15mins
AddStream, AddTrack & AddTranceiver 15mins
Finding codec capabilities 10mins
ICE candidate gathering 10mins
Measuring video codecs performance 15mins
Simulcast playground 15mins
Multiple video tracks on a single peer connection 10mins
Sharing your own tab 10mins
Poor man’s simulcast 15mins
Too many WebMediaPlayers intervention 10mins
Spatial audio 10mins
Identifying Chrome field trials 10mins
What codec are you using? 10mins
Forgetting ICE candidates 10mins
Quality limitation stats in WebRTC 10mins
Detecting headsets 10mins
Escaping the hall of mirrors 10mins
ICE restarts 10mins
GetUserMedia arguments 10mins
Peer connection with 2 video sources 10mins
Sharing partial screen area 10mins
Motion vs detail 10mins
Codec statistics changes 10mins
Video unmute race condition 10mins
Video ratio 10mins
WebCodecs & frame loss 10mins
Loss-based bandwidth estimation 10mins
Previous Lesson
Back to Course
Next Lesson
Login
Accessing this course requires a login. Please enter your credentials below!

Lost Your Password?
Register
Don't have an account? Register one!
Register an Account

Registration confirmation will be emailed to you.