План на курса

Ден 1 – Управление медии устройства

1. Разрешения на браузър с navigator.permissions

  • Accessване на хардуер:
    • Уеб камера
    • Микрофон
  • Опционални разрешения:
    • Геолокация
    • Уведомления
    • Клипборд (четене/писане)
  • Запитване и статус на разрешенията
  • Ограничения и съвместимост с браузъра
  • Практично приложение

2. Четене на медии устройства с navigator.mediaDevices

  • Нумерация на устройствата
  • Обработка на промени в устройствата
  • Практично приложение

3. Крос-браузър съвместимост

  • Използване на API:
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • Стратегия за запазване за Safari
  • Практично приложение

4. Управление на медии устройства

  • Инициализация на устройствата: getUserMedia(constraints)
  • Ограничения на медии устройства
  • Стартиране и спряне на медии потоци
  • Обработка на промени в устройствата
  • Практично приложение

5. Записване на устройства с MediaRecorder

  • Стартиране/спряне на поточни и записи
  • Изтегляне на файл .webm
  • Реално време предварителен преглед на вълнова форма
  • Практично приложение

Опционални допълнения:

  • Записване в формат .wav с помощта на ScriptProcessorNode
  • Визуализация на аудио FFT спектър
  • Декбелов стълб на звучност
  • Разпознаване на глас с webkitSpeechRecognition

Ден 2 – Взаимна връзка

1. Сигнални сървъри

  • Опции за двупосочен канал:
    • WebSocket
    • Socket.io
    • SignalR
  • Структура на съобщението
  • Упростен WebRTC клиент
  • Пълна сигнална последователност
  • Практично приложение

2. Видео чат през WebRTC

  • Архитектура: Node.js + ws
  • WebRTC клиент: RTCPeerConnection
  • Локално тестване от край до край
  • Практично приложение

Опционални функции:

  • Завършване на разговора (затваряне на връзката, спряне на медии)
  • Групови разговори (стаи за многопотребители)
  • Проста аутентификация с токен

3. Споделяне на екран

  • Използване на getDisplayMedia()
  • Архитектура и опции
  • Практично приложение

4. Протокол за описание на сесията (SDP)

  • Въведение и съдържание
  • Четене и интерпретация на SDP
  • Кодекси:
    • Аудио & Видео
    • Преговори и контрол
    • Стратегии за запазване
  • Практично приложение

5. WebRTC Statistics с getStats()

  • Типове статистики
  • Как да интерпретираме статистиките
  • Живи диаграми за битрейт/джъдър
  • Стратегии за адаптация на качеството
  • Практично приложение

 

Изисквания

Този курс е идеален за разработчици на фронтенд и пълна стъкло, технически архитекти и инженери, които създават браузерни характеристики на реално време за комуникация, като видео разговор, споделяне на екран или аудио стрийминг. Участниците трябва да имат работащо знание на JavaScript и уеб технологии, с опционен опит в Node.js и комуникация, базирана на WebSocket.
 14 Часа

Брой участници


Цена за участник

Oтзиви от потребители (5)

Предстоящи Курсове

Свързани Kатегории