Cursusaanbod
Dag 1 – Media-apparatenbeheer
1. Browsertoestemmingen met navigator.permissions
- Accessing hardware:
- Webcam
- Microfoon
- Optionele toestemmingen:
- Geolocatie
- Notificaties
- Klemplank (lezen/schrijven)
- Toestemmingsvraag en status
- Beperkingen en browsercompatibiliteit
- Praktijkvoorbeeld
2. Lezen van media-apparaten met navigator.mediaDevices
- Apparatuopsomming
- Verwerken van apparaatwisselingen
- Praktijkvoorbeeld
3. Cross-browser Compatibiliteit
- API-gebruik:
- navigator.permissions.query()
- navigator.mediaDevices.enumerateDevices()
- getUserMedia()
- Safari val-terug-strategie
- Praktijkvoorbeeld
4. Media-apparatenbeheer
- Apparatuur initialiseren: getUserMedia(constraints)
- Media-apparatenbeperkingen
- Media-streams starten en stoppen
- Verwerken van apparaatwisselingen
- Praktijkvoorbeeld
5. Opnemen van apparaten met MediaRecorder
- Streamen en opnemen starten/stoppen
- Download .webm-bestand
- Real-time-golfformvoorafbeelding
- Praktijkvoorbeeld
Optionele add-ons:
- Opslaan in .wav-formaat met behulp van ScriptProcessorNode
- Audiovisualisatie van het FFT-spectrum
- Volumebalk in decibels
- Spraakherkenning met webkitSpeechRecognition
Dag 2 – Peer-verbinding
1. Signaleringsservers
- Opties voor tweerichtingskanalen:
- WebSocket
- Socket.io
- SignalR
- Berichtstructuur
- Vereenvoudigde WebRTC client
- Volledige signaleringsstroom
- Praktijkvoorbeeld
2. Videochat via WebRTC
- Architectuur: Node.js + ws
- WebRTC client: RTCPeerConnection
- Lokale E2E-testing
- Praktijkvoorbeeld
Optionele functies:
- Gespreksafbreking (verbinding sluiten, media stoppen)
- Groepsbellen (meerdere gebruikerskamers)
- Eenvoudige tokengebaseerde authenticatie
3. Schermdelen
- Gebruik van getDisplayMedia()
- Architectuur en opties
- Praktijkvoorbeeld
4. Session Description Protocol (SDP)
- Inleiding en inhoud
- Lezen en interpreteren van SDP
- Codecs:
- Audio & Video
- Onderhandeling en controle
- Val-terug-strategieën
- Praktijkvoorbeeld
5. WebRTC Statistics met getStats()
- Types statistieken
- Hoe statistieken interpreteren
- Levensechte bitrate/jitter-grafieken
- Strategieën voor kwaliteitsaanpassing
- Praktijkvoorbeeld
Vereisten
Testimonials (5)
Ik vond het leuk hoe Gunnar vrijwel alle code on-the-fly schreef terwijl we doorgingen, maar dat er genoeg vooraf voorbereid materiaal op de Google Drive stond waar ik na de training naar kan verwijzen. De code die Gunnar schreef op basis van de voorbeeldgegevens die ik vooraf had aangeleverd, was ook uiterst nuttig en maakte de training ook relevant voor onze eigen datasets.
Ranvir - Schroders Personal Wealth
Cursus - Visual Studio Code
Automatisch vertaald
Onderwerpen die zijn besproken, veel live codevoorbeelden, de houding van de trainers tegenover de groep
Weronika - ATOS PGS sp. z o.o.
Cursus - Reactive Programming with Angular RxJS
Automatisch vertaald
Hoewel het een online training was, was de interactie met de trainer opvallend en stond deze altijd klaar om waardevolle bronnen te leveren om de training aan te vullen. Ik ben heel tevreden.
Nuno Marques - MULTICERT, S.A.
Cursus - Functional Reactive Programming with Java 9 and RxJava
Automatisch vertaald
Trainers enthousiasme rond het onderwerp
Matthew Fowles - AGRO Merchants Whitchurch Limited
Cursus - Web Application Development in PHP
Automatisch vertaald
Pacing, diepte en uitleg waren allemaal geweldig. Het is duidelijk dat Scott een expert op dit gebied is en het van hem leren was super leuk.
Ben Leiken - SurveyMonkey
Cursus - Reactive Programming for iOS with RxSwift
Automatisch vertaald