
Set up a Node.js server using express and socket.io, configure nodemon for automatic restarts, serve static files from a public folder, and establish client-server socket connections.
Deploy an app to Heroku via GitHub by linking a GitHub repo, configuring automatic deployments, and testing the socket ID for peer connections.
Build real-time video communication between two participants, handling local and remote video streams. Implement features like mute and stop tracks during calls.
Learn how the media stream object acts as a container for video and audio tracks, create streams with media devices and constraints, add tracks, and clone streams.
Explore the RTC connection and signaling process for peer-to-peer communication, including offers and answers, ICE candidates, STUN and TURN servers, and signaling via WebSockets.
Establish WebRTC peer connection, obtain local media, and create an offer with a local description. Send the offer via a signaling server and set the remote description after receipt.
Create an answer for a web rtc peer connection by mirroring the offer flow, sending the answer via the server socket, and setting the remote description to start streaming.
Learn how ice candidates are collected and exchanged to enable peer-to-peer communication, using host, reflexive, and relay candidates through a signaling server to connect two peers.
Explore real-time canvas interactions by drawing on the canvas, sending the canvas context and light video through robotic setups, and using the mouse for interactions.
Draw on canvas with live video from a media source, track mouse movements to draw line segments between points, convert to canvas coordinates, and erase with a button.
This course is a mixte of theory and practice.
This course is designed for beginners and intermediate Webrtc developers and also all who want to know how to use Webrtc with Canvas.
We will build projects step by step to understand all the basics of Webrtc
You will find easy explanations of questions like, what is a MediaStream? how to get this object? what is an RTCPeerConnection object and what are all step of a signaling process.
Also you will understand what is Ice Candidate, why we need STUN and TURN servers and what is ICE mechanism to collect and select the right network candidates to have a peer to peer communication even through NAT Network
In this course we have 3 sections:
- In First section we will create a nodejs server with Socket io (for signaling process) and will show you how to deploy to Heroku using Github
- In section 2, we create the first project, a realtime video communication using Webrtc
- in section 3 : we build our second projects, is a realtime video communication but using canvas, a User will draw with a mousse on a live video and send the contexte of the canvas using Webrtc instead of sending directly the live video from media source