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
Vittnesmål (5)
Jag gillade hur Gunnar skrev i stort sett all kod i farten som vi gick igenom, men att det fanns gott om färdigt material på google drive som jag kan hänvisa till efter utbildningen. Koden som Gunnar skrev baserat på den provdata jag tillhandahöll i förväg var också extremt användbar och gjorde också träningen relevant för våra egna dataset.
Ranvir - Schroders Personal Wealth
Kurs - Visual Studio Code
Maskintolkat
Flera exempel för varje modul och stor kunskap om tränaren.
Sebastian - BRD
Kurs - Secure Developer Java (Inc OWASP)
Maskintolkat
Module3 Applications Attacks and Exploits, XSS, SQL injection Module4 Servers Attacks and Exploits, DOS, BOF
Tshifhiwa - Vodacom
Kurs - How to Write Secure Code
Maskintolkat
Real-life examples.
Kristoffer Opdahl - Buypass AS
Kurs - Web Security with the OWASP Testing Framework
The trainer's subject knowledge was excellent, and the way the sessions were set out so that the audience could follow along with the demonstrations really helped to cement that knowledge, compared to just sitting and listening.