Аудио и видео
WebRTC, камера, микрофон, запись экрана, плееры, субтитры, Web Audio, звонки и онлайн-консультации.
Материалы
- Консультации «Разговор» на WebRTC
Последовательная серия из 12 уроков с развивающимся локальным проектом и отдельными состояниями исходного кода.
- WebRTC: получение камеры и микрофона
Явный запрос getUserMedia и освобождение потока
- WebRTC: выбор устройств и ошибки доступа
Перечень устройств и замена потока с явным действием
- WebRTC: комната и собственный signaling
Серверная комната на двух участников с Origin и identity
- WebRTC: RTCPeerConnection и отправители
Добавление дорожек и обработка remote track
- WebRTC: Offer, answer и одновременные предложения
Perfect negotiation с назначенной сервером polite ролью
- WebRTC: ICE, STUN и настройка TURN
Очередь кандидатов и явная конфигурация ICE
- WebRTC: воспроизведение удалённых дорожек
Накопление remote stream и ручной повтор play
- WebRTC: отключение звука и видео
Управление track.enabled с отражением состояния
- WebRTC: демонстрация экрана и возврат камеры
getDisplayMedia и replaceTrack с восстановлением
- WebRTC: обрыв соединения и ICE restart
Контролируемый restartIce, повторный вход и новая сессия
- WebRTC: статистика без выдуманных измерений
Разность счётчиков getStats и пределы интерпретации
- WebRTC: завершение комнаты и подготовка выпуска
Единая очистка ресурсов и серверное завершение комнаты
- Web Audio: локальная аудиомастерская
Десять последовательных уроков. Общий пример «Аудиомастерская».
- Web Audio API: звуковой файл, семпл и контракт редактора
Определяем модель локальной аудиомастерской: каналы, кадры, частоту дискретизации, границы фрагмента и ограничения.
- Web Audio API: декодирование локального файла
Открываем локальный аудиофайл через decodeAudioData: проверка объёма, частота буфера, ошибки и конкурирующие загрузки.
- AudioContext и управляемое воспроизведение
Управляем прослушиванием AudioBuffer: одноразовый источник, resume, остановка, ended и позиция по часам AudioContext.
- Web Audio API: звуковой граф и громкость без скачка
Разделяем источник, огибающую и основной GainNode; управляем уровнем через AudioParam и сохраняем смысл настройки экспорта.
- Web Audio API: волна и временная шкала
Рисуем амплитудную волну Canvas: диапазоны семплов на колонку, несколько каналов, масштаб пикселей и независимый индикатор позиции.
- Web Audio API: выделение и воспроизведение фрагмента
Связываем секунды формы с целыми кадрами: полуоткрытый диапазон, проверка границ, снимок параметров и одинаковая длина результата.
- Web Audio API: плавное начало и окончание фрагмента
Планируем огибающую через AudioParam: переходы в кадрах, линейный рост и спад, нулевые длительности и общий алгоритм экспорта.
- OfflineAudioContext и результат обработки
Обрабатываем выбранный аудиофрагмент в OfflineAudioContext: длина результата, копирование каналов, огибающая и снимок операции.
- Экспорт WAV PCM16 в браузере: от семплов к файлу
Записываем обработанный буфер в WAV PCM16: RIFF, поля формата, чередование каналов, преобразование Float32 и контроль размера.
- Web Audio API: ограничения, ошибки и передача аудиоредактора
Завершаем локальную аудиомастерскую: состояние интерфейса, доступные поля, ошибки, контрольные числа и границы перед публикацией.