This course was designed to get you up to speed with WebRTC and enable you to make better decisions for your own product.
It has been developed from many sessions I have done with vendors big and small across a wide range of industries and experience levels. This has brought me to the understanding that a better system should be put in place to make that content more accessible and available.
The Basics of WebRTC
Introduction1 of 5
A quick introduction to this course, to ensure we’re in sync regarding the expectations and how you can maximize its worth to you.
What is WebRTC?2 of 5
A quick introduction to WebRTC and how it is changing the way we should think about VoIP.
Browsers and device coverage3 of 5
WebRTC is available (almost) everywhere. But what does that actually means and where are we headed when it comes to coverage?
WebRTC APIs4 of 5
A quick review of the main components of the WebRTC APIs in the specification (get user media, peer connection and the data channel).
Resources5 of 5
Where can you learn about WebRTC? Here you will find link to both online and offline resources that should come in handy.
HTTP2 of 5
HTTP is used to power our internet. Here we will review how HTTP works, and what is changing with it, now that HTTP/2 is readily available.
WebSockets3 of 5
Where and when do WebSockets get used, and why do they perform better than HTTP for some tasks.
NAT Traversal4 of 5
NATs are a headache to VoIP. In this lesson, we will go over the make up of different NAT devices and how they affect our ability to work with peer-to-peer networking and media.
The 3 layers of VoIP5 of 5
This is how I think about VoIP when I need to: Signaling, Media processing and Codecs.
Transport protocols in WebRTC1 of 4
To be able to send messages, we need the means to do so. In this lesson we will cover the various transport mechanisms that can be used for your signaling protocol.
Signaling protocols in WebRTC2 of 4
In this lesson, we will review the alternatives for WebRTC signaling. These are proprietary, SIP and XMPP.
Security4 of 4
There’s a lot of FUD when it comes to WebRTC security. This lesson will cover the basics of the security measures that are already built-in to WebRTC and what developers need to add on top of it.
Basics of voice codecs1 of 6
An overview of voice codecs and by what characteristics they get measured.
Other voice codecs (and WebRTC)3 of 6
There are many other voice codecs out there. In this lesson we will list a few of them and understand where they fit in certain WebRTC use cases.
Basics of video codecs4 of 6
An overview of video codecs and by what characteristics they get measured.
VP8 and H.2645 of 6
A review of the most popular video codecs used in WebRTC. Their advantages and limitations.
VP9 & the Alliance of Open Media6 of 6
An introduction to VP9 in WebRTC and what the Alliance of Open Media has in store for us.
RTP and RTCP1 of 6
Where we learn how real time media streams gets sent over the network, and how this in turn gets into the WebRTC spec in the form of SRTP
Mesh2 of 6
The most basic multi-party call architecture, where everyone sends media to everyone else.
Mixing (MCU)3 of 6
The classic star architecture, where all processing of multi-party scenarios is delegated to a central server (the MCU).
Recording5 of 6
A view of 3 different alternatives to recording media in WebRTC and how they compare to each other.
Transcoding6 of 6
In many cases, we will need to translate the media from one codec to another. Here we will cover some aspects of this process known as transcoding.
3rd Party Frameworks and Services
Development strategies for WebRTC1 of 6
When trying to tackle development of a WebRTC product there are many alternatives. This lesson will offer an overview of these alternatives, where later lessons in this section will go into greater detail on each alternative.
Signaling Alternatives2 of 6
There are several signaling protocols you can use in a WebRTC product, and there are even more open source frameworks to get you there faster. We will list a few of the most popular ones in this lesson.
Media server alternatives3 of 6
Media processing is also something that can be handled by open source products. In this lesson we will review the most popular and interesting open source media servers available to you.
WebRTC PaaS4 of 6
A popular alternative is to get a full platform, taking care of all your communication needs. This lesson will review that option and list a few of the options open to developers.
VoIP frameworks5 of 6
Last but not least, when connectivity to other networks is involved, there are a few VoIP frameworks that can be of assistance.
Testing and Monitoring6 of 6
A review on the challenges of WebRTC specific testing and monitoring, and how to deal with them.
Common WebRTC Design Patterns
Media flows in WebRTC1 of 5
See how media and signaling flows in typical WebRTC sessions, and how that can be affected and controlled by the designer.
Meetings recorder2 of 5
The basic blueprint of how to record meetings, what questions you need to ask yourself and what challenges will you face.
Multiparty conference3 of 5
The basic blueprint of creating a multiparty conference. We will review both voice and video alternatives, as well as the MCU and SFU models.
Webinar / Low latency live broadcasting4 of 5
An increasingly popular requirement is live broadcasting. Here we will go over the blueprint of such a product.