Kursplan

Dag 1 – Hantering av medieenheter

1. Webbläsarens tillstånd med navigator.permissions

  • Tillgång till hårdvara:
    • Webkamera
    • Mikrofon
  • Valfria tillstånd:
    • Geografisk position
    • Meddelanden
    • Urklipp (läs/skriv)
  • Tillståndsfrågor och status
  • Begränsningar och webbläsarkompatibilitet
  • Praktisk användningsfall

2. Läsning av medieenheter med navigator.mediaDevices

  • Enhetsuppräkning
  • Hantering av enhetsändringar
  • Praktisk användningsfall

3. Kompatibilitet mellan webbläsare

  • API-användning:
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • Safari-återfallstrategi
  • Praktisk användningsfall

4. Hantering av medieenheter

  • Enhetsinitialisering: getUserMedia(constraints)
  • Medieenhetsbegränsningar
  • Starta och stoppa medieströmmar
  • Hantering av enhetsändringar
  • Praktisk användningsfall

5. Inspelning av enheter med MediaRecorder

  • Starta/stanna strömning och inspelning
  • Ladda ner .webm-fil
  • Realtidsvisning av vågform
  • Praktisk användningsfall

Valfria tillägg:

  • Spara i .wav-format med ScriptProcessorNode
  • Visning av ljud-FFT-spektrum
  • Volymstav i decibel
  • Stämningsigenkänning med webkitSpeechRecognition

Dag 2 – Peer-anslutning

1. Signaleringsservrar

  • Alternativ för dubbelriktad kanal:
    • WebSocket
    • Socket.io
    • SignalR
  • Meddelandestruktur
  • Förenklad WebRTC-klient
  • Fullständig signaleringsflöde
  • Praktisk användningsfall

2. Videochatt via WebRTC

  • Arkitektur: Node.js + ws
  • WebRTC-klient: RTCPeerConnection
  • Lokalt E2E-testning
  • Praktisk användningsfall

Valfria funktioner:

  • Sammanhållning av samtal (stänga anslutning, stoppa media)
  • Gruppsamtal (multianvändarutrymmen)
  • Enkel autentisering baserad på token

3. Skärmdelning

  • Användning av getDisplayMedia()
  • Arkitektur och alternativ
  • Praktisk användningsfall

4. Session Description Protocol (SDP)

  • Introduktion och innehåll
  • Läsning och tolkning av SDP
  • Kodeker:
    • Ljud & video
    • Förhandling och kontroll
    • Återfallstrategier
  • Praktisk användningsfall

5. WebRTC-statistik med getStats()

  • Typer av statistik
  • Hur man tolkar statistik
  • Live-diagram för bitrate/jitter
  • Strategier för kvalitetsanpassning
  • Praktisk användningsfall

 

Krav

Denna kurs är idealisk för frontend- och fullstack-utvecklare, tekniska arkitekter och ingenjörer som bygger webbaserade realtidskommunikationsfunktioner som videochatt, skärmdelning eller ljudströmming. Deltagarna bör ha en fungerande kunskap om JavaScript och webteknologier, med valfri erfarenhet av Node.js och WebSocket-baserad kommunikation.
 14 timmar

Antal deltagare


Pris per deltagare

Vittnesmål (5)

Kommande Kurser

Relaterade Kategorier