Zkuste nás kontaktovat

Návrh Školení

Manipulace s multimediálními zařízeními

1. Oprávnění prohlížečů pomocí navigator.permissions

  • Přístup k hardwaru:
    • Webkamera
    • Mikrofon
  • Volitelná oprávnění:
    • Lokalizace
    • Oznámení
    • Kopírování a vkládání textu do schránky
  • Dotazování na stav oprávnění a jejich aktuální nastavení
  • Omezení a kompatibilita mezi prohlížeči

2. Čtení informací o multimediálních zařízeních pomocí navigator.mediaDevices

  • Výpis dostupných zařízení
  • Reakce na změny v seznamu zařízení

3. Kompatibilita napříč prohlížeči

  • Použití rozhraní API:
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • Postupy pro řešení problémů s kompatibilitou v Safari

4. Správa multimediálních zařízení

  • Inicializace zařízení: getUserMedia(constraints)
  • Omezení použití jednotlivých mediálních zařízení
  • Spouštění a ukončování multimediálních streamů
  • Reakce na změny v připojených zařízeních

5. Nahrávání médií pomocí MediaRecorder

  • Spuštění a ukončení nahrávání streamů
  • Stahování výstupního souboru ve formátu .webm
  • Náhled vlnového průběhu zvuku v reálném čase

Volitelné doplňkové možnosti:

  • Uložení dat ve formátu .wav pomocí ScriptProcessorNode.
  • Vizualizace spektra zvukového signálu.
  • Zobrazení úrovně hlasitosti v decibelech.
  • Rozpoznávání řeči s použitím webkitSpeechRecognition.

Vytváření peer-to-peer spojení

1. Signalizační servery

  • Možnosti dvousměrné komunikace:
    • WebSocket
    • Socket.io
    • SignalR
  • Struktura přenášených zpráv
  • Zjednodušený klient WebRTC
  • Kompletní průběh signalizace mezi stranami

2. Videohovory prostřednictvím WebRTC

  • Architektura řešení: Node.js kombinovaný s ws.
  • Klient WebRTC využívající RTCPeerConnection.
  • Testování spojení mezi dvěma stranami v lokalním prostředí.

Volitelné funkce:

  • Ukončení hovoru (uzavření spojení a zastavení vysílání).
  • Hromadné hovory (místnosti s více účastníky).
  • Jednoduchá autentizace pomocí tokenů.

3. Sdílení obrazovky

  • Použití funkce getDisplayMedia()
  • Architektura a možnosti konfigurace sdílení obrazovky.

4. Protokol popisu relace (SDP)

  • Přehled obsahu a účelu SDP.
  • Jak číst a interpretovat SDP parametry.
  • Kodeky pro zvuk i obraz:
    • Vlastnosti a použití kodeků
    • Proces vyjednávání kodeků a jejich ovládání
    • Postupy v případě nedostupnosti preferovaných kodeků

5. Statistiky WebRTC s využitím getStats()

  • Rozdělení statistik do jednotlivých typů.
  • Jak správně interpretovat získané údaje.
  • Grafy znázorňující přenosovou rychlost a kolísání signálu v reálném čase.
  • Strategie pro dynamickou adaptaci kvality vysílání.

6. Všechna probíraná témata jsou

  • Praktické ukázky a cvičení

Požadavky

Tento kurz je určen především pro vývojáře frontendu a full-stack, technické architekty a inženýry vytvářející komunikační funkce v reálném čase – například videohovory, sdílení obrazovky nebo přenos zvuku prostřednictvím webových prohlížečů. Účastníci by měli mít základní znalosti jazyka JavaScript a webových technologií; volitelně je vhodná také praxe s Node.js a komunikací pomocí WebSocket.

 14 Hodiny

Počet účastníků


Cena za účastníka

Reference (3)

Nadcházející kurzy

Související kategorie