Struttura del corso
Gestione dei Dispositivi Multimediali
1. Autorizzazioni del Browser con navigator.permissions
- Accesso al hardware:
- Webcam
- Microfono
- Autorizzazioni facoltative:
- Geolocalizzazione
- Notifiche
- Clipboard (lettura/scrittura)
- Ricerca e stato delle autorizzazioni
- Limitazioni e compatibilità del browser
2. Lettura dei Dispositivi Multimediali con navigator.mediaDevices
- Elencazione dei dispositivi
- Gestione delle modifiche ai dispositivi
3. Compatibilità Cross-Browser
- Utilizzo dell'API:
- navigator.permissions.query()
- navigator.mediaDevices.enumerateDevices()
- getUserMedia()
- Strategia di fallback per Safari
4. Gestione dei Dispositivi Multimediali
- Inizializzazione del dispositivo: getUserMedia(constraints)
- Vincoli sul dispositivo multimediale
- Avvio e arresto degli stream multimediali
- Gestione delle modifiche ai dispositivi
5. Registrazione dei Dispositivi con MediaRecorder
- Avvio/arresto dello streaming e registrazione
- Download del file .webm
- Anteprima del waveform in tempo reale
Add-ons Facoltativi:
- Salvataggio nel formato .wav utilizzando ScriptProcessorNode
- Visualizzazione dello spettro FFT audio
- Barra del volume in decibel
- Riconoscimento vocale con webkitSpeechRecognition
Connessione Peer
1. Server di Signaling
- Opzioni per il canale bidirezionale:
- WebSocket
- Socket.io
- SignalR
- Struttura dei messaggi
- Client WebRTC semplificato
- Flusso completo di signaling
2. Video Chat tramite WebRTC
- Architettura: Node.js + ws
- Client WebRTC: RTCPeerConnection
- Test E2E locale
Funzionalità Facoltative:
- Chiusura della chiamata (chiusura connessione, arresto media)
- Chiamate di gruppo (stanze multiusuario)
- Autenticazione semplice basata su token
3. Sharing dello Schermo
- Utilizzo di getDisplayMedia()
- Architettura e opzioni
4. Protocollo di Descrizione della Sessione (SDP)
- Introduzione e contenuti
- Lettura ed interpretazione dello SDP
- Codec:
- Audio & Video
- Negoziazione e controllo
- Strategie di fallback
5. Statistiche WebRTC con getStats()
- Tipi di statistiche
- Come interpretare le statistiche
- Grafici dinamici della bitrate/jitter
- Strategie di adattamento della qualità
6. Tutti gli argomenti sono
- Casi pratici hands-on
Requisiti
Questo corso è ideale per sviluppatori frontend e full-stack, architetti tecnici e ingegneri che stanno costruendo funzionalità di comunicazione in tempo reale basate sul browser come video chat, sharing dello schermo o streaming audio. I partecipanti dovrebbero avere una conoscenza operativa di JavaScript e tecnologie web, con esperienza facoltativa in Node.js e comunicazione basata su WebSocket.
Recensioni (5)
Mi è piaciuto come Gunnar ha scritto praticamente tutto il codice al volo mentre procedevamo, ma c'era anche molto materiale pre-preparato sul drive di Google a cui posso fare riferimento dopo la formazione. Il codice che Gunnar ha scritto basandosi sui dati campione che avevo fornito in anticipo era estremamente utile e ha reso la formazione pertinente ai nostri dataset.
Ranvir - Schroders Personal Wealth
Corso - Visual Studio Code
Traduzione automatica
Numerosi esempi per ogni modulo e grande competenza del formatore.
Sebastian - BRD
Corso - Secure Developer Java (Inc OWASP)
Traduzione automatica
Modulo 3 Attacchi e sfruttamenti delle applicazioni, XSS, iniezione SQL Modulo 4 Attacchi e sfruttamenti dei server, DoS, buffer overflow
Tshifhiwa - Vodacom
Corso - How to Write Secure Code
Traduzione automatica
Esempi reali.
Kristoffer Opdahl - Buypass AS
Corso - Web Security with the OWASP Testing Framework
Traduzione automatica
La conoscenza del formatore sull'argomento era eccellente e il modo in cui le sessioni erano organizzate per permettere al pubblico di seguire le dimostrazioni ha davvero contribuito a consolidare quella conoscenza, rispetto a semplicemente sedersi ad ascoltare.
Jack Allan - RSM UK Management Ltd.
Corso - Secure Developer .NET (Inc OWASP)
Traduzione automatica