В видеоэлементе HTML5 звук отключен даже при обновлении до нового потока webrtc с аудио - PullRequest
0 голосов
/ 30 марта 2019

Фон

Я создаю систему видеочата, которая использует WebRTC.Потоки отправляются из вещателя в Wowza Streaming Engine, а затем отправляются из Wowza любым зрителям.Вещатель потока может переключать, включен ли звук в их трансляцию.Аудио включается или отключается следующим образом:

let audioEnabled = false; // change to true if we want audio
navigator.mediaDevices.getUserMedia({video:true,audio:audioEnabled})

Проблема

Если вещатель вещает без звука, зрители смотрят его через элемент видео HTML5 (как реализовано здесь ).Зритель может заметить, что значок динамика на видеопроигрывателе затенен, и он не может пытаться изменить громкость или отключить звук.

Если вещатель теперь решает включить звук, то соединение WebRTC закрыто,После повторного согласования и повторного открытия зритель видит, что видеосоединение останавливается на несколько секунд, а затем начинает воспроизведение снова. Тем не менее, видеоплеер HTML5 зрителя по-прежнему убежден, что звук все еще отключен .Если видеоплеер HTML5 уничтожен и воссоздан, то звук работает нормально, а значок динамика больше не отображается серым цветом.

Короче говоря

Видеоплеер HTML5 не замечаеткогда аудио добавляется к тому, что раньше было только видео-потоком.

Мои идеи

  1. Обратите внимание, когда поток пересматривается и уничтожается / воссоздаетсявидео проигрыватель HTML5, когда это происходит.

  2. Пусть вещатели включают в себя тихую MediaStreamTrack вместе с видеодорожкой в ​​потоке, отправляемом в Wowza.

  3. Убедите Wowza отправлять тихое аудио вместе с видео, когда оно перераспределяет канал.

Пока

Я понимаю, что это будет прощечтобы помочь решить, если я включил плункер, но мне еще не приходилось сталкиваться с какой-либо публичной рабочей версией webrtc, которую я мог бы использовать, не переопределяя довольно сложную систему только для этого одного вопроса.

Я преследовалкаждый из тОн изложил три идеи, изложенные выше, но хотел бы получить больше уверенности в том, что я на правильном пути, прежде чем потратить дополнительные часы на этот вопрос.

Спасибо за чтение!

...