Plan du cours
Gestion des périphériques multimédias
1. Autorisations du navigateur avec navigator.permissions
- Accès au matériel :
- Webcam
- Microphone
- Autorisations optionnelles :
- Géolocalisation
- Notifications
- Presse-papiers (lecture/écriture)
- Interrogation des autorisations et statut
- Limitations et compatibilité des navigateurs
2. Lecture des périphériques multimédias avec navigator.mediaDevices
- Énumération des périphériques
- Gestion des changements de périphériques
3. Compatibilité multi-navigateurs
- Utilisation des API :
- navigator.permissions.query()
- navigator.mediaDevices.enumerateDevices()
- getUserMedia()
- Stratégie de repli pour Safari
4. Gestion des périphériques multimédias
- Initialisation du périphérique : getUserMedia(constraints)
- Contraintes des périphériques multimédias
- Démarrage et arrêt des flux multimédias
- Gestion des changements de périphériques
5. Enregistrement des périphériques avec MediaRecorder
- Démarrage/arrêt du streaming et de l'enregistrement
- Téléchargement de fichier .webm
- Aperçu en temps réel de la forme d'onde
Module complémentaire (optionnel) :
- Enregistrement au format .wav en utilisant ScriptProcessorNode
- Visualisation du spectre FFT audio
- Barre de volume en décibels
- Reconnaissance vocale avec webkitSpeechRecognition
Connexion pair-à-pair
1. Serveurs de signalisation
- Options de canal bidirectionnel :
- WebSocket
- Socket.io
- SignalR
- Structure des messages
- Client WebRTC simplifié
- Flux complet de signalisation
2. Chat vidéo via WebRTC
- Architecture : Node.js + ws
- Client WebRTC : RTCPeerConnection
- Test E2E local
Fonctionnalités optionnelles :
- Raccrochage (fermer la connexion, arrêter le multimédia)
- Appels de groupe (salles multi-utilisateurs)
- Authentification simple basée sur des jetons
3. Partage d'écran
- Utilisation de getDisplayMedia()
- Architecture et options
4. Protocole de description de session (SDP)
- Introduction et contenu
- Lecture et interprétation du SDP
- Codecs :
- Audio & Vidéo
- Négociation et contrôle
- Stratégies de repli
5. Statistiques WebRTC avec getStats()
- Types de statistiques
- Comment interpréter les stats
- Graphiques de débit binaire/jitter en temps réel
- Stratégies d'adaptation de la qualité
6. Tous les sujets
- Cas d'utilisation pratique
Pré requis
Ce cours est idéal pour les développeurs front-end et full-stack, les architectes techniques et les ingénieurs qui créent des fonctionnalités de communication en temps réel basées sur le navigateur telles que le chat vidéo, le partage d'écran ou le streaming audio. Les participants devraient posséder des connaissances pratiques en JavaScript et en technologies web, avec une expérience optionnelle en Node.js et en communication basée sur WebSocket.
Nos clients témoignent (3)
J'ai vraiment apprécié d'apprendre sur les attaques par IA et les outils disponibles pour commencer à pratiquer et à utiliser activement pour les tests de sécurité. J'ai acquis beaucoup de connaissances que je n'avais pas au début, et le cours a répondu à mes attentes. Ma partie préférée de la formation était le navigateur Comet, et j'ai été impressionné par ce qu'il pouvait faire. C'est assurément quelque chose que je vais explorer davantage. Globalement, c'était un excellent cours et j'ai beaucoup apprécié d'apprendre le Top 10 OWASP GenAI.
Patrick Collins - Optum
Formation - OWASP GenAI Security
Traduction automatique
Pratique, exercices, assistance et interrogations en présentiel.
Jose Paulos - INESC TEC
Formation - Tailwind CSS
Traduction automatique
Que chaque leçon technique soit accompagnée de plusieurs exercices pratiques pour bien maîtriser les concepts.
Andrei-Calin Bajea
Formation - OWASP Top 10 2025
Traduction automatique