
WebRTC enables real-time communication on the web and mobile devices. It is one of the hottest technologies to learn right now. So what are you waiting for? Let's get started.
You will need the basics of HTML, CSS, and Javascript to make the most of this course. If you have that covered, you're are all set to be an expert in WebRTC.
A lecture explaining the state of this course today and for the upcoming years.
Knowing the Why makes everything easier. In this lecture, we talk about why WebRTC came into existence.
A more clear picture on how WebRTC works under the Hood.
A brief introduction about Websockets, an important technology that helps us make real-time applications.
In this lecture, we will be setting up our workspace so that we can start working on our first project.
In this lecture, we will setup our project and install all the packages we need to get started.
In this lecture, we will learn how to start an express server and make it listen to a unique port.
In this lecture, I will tell you how to find the codebase of the Real-Time Chat project on Github.
In this lecture, we will learn how to configure our express server so that it sends back HTML files on client requests.
We will design our chat application with a basic UI.
In this lecture, we will connect our server and client with the power of Websockets.
In this lecture, we will complete the development of our chat application.
Congratulations! You just made a Real-Time Chat Application.
In this lecture, we will start our journey through the large collection of protocols that enable WebRTC to function.
Let's talk about our first protocol, Session Description Protocol.
Explore how RTP and RTCP enable real-time audio and data streams by defining packet formats and labeling, monitoring bandwidth and packet loss, and suppressing silent packets to save bandwidth.
DTLS and SRTP secure web real-time communications by exchanging certificates during signaling. These security protocols ensure only the communicating parties can decrypt video, audio, and data streams.
In this lecture, we will see how all these protocols come together in a live demo.
In this lecture, we will setup our project and install all the packages we need to get started.
In this lecture, I will tell you how to find the codebase of the Video Chat project on Github.
Learn how to access the user's camera and microphone using getUserMedia, set media constraints, handle success and error callbacks, and display the stream in a video chat room.
In this lecture, we will start implementing our Signalling Server.
In this lecture, we will learn how to send signals back and forth between our clients using our signaling server.
In this lecture, we will write the logic for the events created, joined, and full on the client-side.
The old getUserMedia function was deprecated. So here is how you can use the new one.
In this lecture, we will implement another function which is part of the RTCPeerConnection Interface, ontrack.
In the previous lecture, we learned how to display tracks received from the peer on the other side. In this lecture, we will focus on sending media tracks from our end to the end of the peer.
In this lecture, we will learn to create an offer at the end of the caller or person who created the room using RTCPeerConnection.createOffer()
We made a small mistake while adding our Stun Server, we will fix that and also log our offer message to discover it's structure.
In this lecture, we will learn the dynamics between offer and answer along with their importance in making WebRTC work.
The lecture you have been waiting for. In this lecture, we complete the implementation of our Video Chat Application.
How to port the code from ES5 to ES6 which is the newer version of JavaScript.
A Quick Summary of everything we learned in this section.
In this lecture, we will start adding some more additional functionality to the video chat application
In this lecture, we will be Implementing Mute and Hide Camera Buttons
In this lecture, we will implement the leave room button and then test our new and improved Video Chat.
In this lecture, we'll make one small change to our application code and I will show you how to find the code for this updated version of the app on Github.
Fixing the bug that stopped the creation of multiple rooms.
Adding Safari, iOS support to our video chat application.
In this lecture, we will fix the feedback issue on our application.
Thank you so much for being a part of this course. This is not a full stop, it's a semicolon.
WebRTC is one of the most revolutionary technologies of the present. It is widely used in popular applications like Discord, Zoom, Google Meet. The use cases of WebRTC go beyond communication as it is also behind gaming consoles like Google Stadia and can be used for untapped use cases like Peer-Peer File sharing.
WebRTC is not just the present, it is also the future as we shift more and more towards cloud infrastructure. The true potential of WebRTC is limited primarily due to the lack of knowledge around the subject. WebRTC is a culmination of the development of Internet technology over the last 20 Years. It uses several protocols that have existed since the year 2000. This makes it a very complex technology to learn. The goal of this course is to smoothen this learning curve while not losing focus on the concepts that make it such a powerful technology.
This is a very practical oriented course. We will be making 2 Real World Applications. A Real-time chat application as well as a Video Chat Application. Not just that, this is a never-ending course! WebRTC is a constantly evolving technology so this course will constantly be updated with new videos as more and more breakthroughs are discovered in the field of WebRTC.