Prenez contact avec nous

Plan du cours

Gestion des appareils multimédias

1. Autorisations des navigateurs avec navigator.permissions

  • Accès au matériel :
    • Webcam
    • Microphone
  • Autorisations optionnelles :
    • Géolocalisation
    • Notifications
    • Presse-papiers (lecture/écriture)
  • Interrogation des autorisations et état
  • Limites et compatibilité entre navigateurs

2. Lecture des appareils multimédias avec navigator.mediaDevices

  • Énumération des appareils
  • Gestion des changements d'appareils

3. Compatibilité inter-navigateurs

  • Utilisation des API :
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • Stratégie de repli pour Safari

4. Gestion des appareils multimédias

  • Initialisation de l'appareil : getUserMedia(constraints)
  • Contraintes des appareils multimédias
  • Démarrage et arrêt des flux multimédias
  • Gestion des changements d'appareils

5. Enregistrement des appareils avec MediaRecorder

  • Démarrage/arrêt du streaming et de l'enregistrement
  • Téléchargement de fichier .webm
  • Prévisualisation de l'onde en temps réel

Modules complémentaires :

  • Enregistrement au format .wav via 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 de signalisation complet

2. Chat vidéo via WebRTC

  • Architecture : Node.js + ws
  • Client WebRTC : RTCPeerConnection
  • Tests locaux de bout en bout

Fonctionnalités optionnelles :

  • Raccrochage (fermeture de la connexion, arrêt du média)
  • Appels de groupe (salles multi-utilisateurs)
  • Authentification simple par jeton

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
  • Interprétation des statistiques
  • Graphiques du débit binaire et de la gigue en direct
  • Stratégies d'adaptation de la qualité

6. L'ensemble des sujets

  • Études de cas pratiques

Pré requis

Ce cours s'adresse principalement aux développeurs front-end et full-stack, aux architectes techniques et aux ingénieurs qui développent des fonctionnalités de communication en temps réel via le navigateur, telles que le chat vidéo, le partage d'écran ou le streaming audio. Les participants doivent posséder des connaissances solides en JavaScript et en technologies web. Une expérience préalable avec Node.js et les communications basées sur WebSocket est un plus mais n'est pas obligatoire.

 14 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (3)

Cours à venir

Catégories Similaires