Затухание 3-го говорящего

Ritmius

Member
Заметили , что если говорить через web mcu клиент с audio , без видео, когда говорят 3-е одновременно, слышно только 2-их , 3-й пропадает


скажите как это можно исправить?
 

Max

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

Перепроверим еще раз с нашей стороны и отпишем по результатам.
 

Max

Administrator
Staff member
Провели тесты с нашим сервером в примере MCU Client. Действительно, при трех участниках, говорящих одновременно, четвертый участник (слушатель) слышит одного из них хуже, чем двух других.
Проблема также воспроизводится и в других голосовых чатах, например, в Discord, возможно, такое поведение характерно для WebRTC в принципе.
Завели тикет WCS-3150, о результатах исследования оповестим здесь.
 

Max

Administrator
Staff member
Провели тесты по тикету WCS-3150.
Выглядит так, что чем больше участников в микшере, тем меньше семплов звука удается закодировать в выходной поток на одного участника, часть данных по этой причине может быть утеряна (заикание, снижение уровня звука одного из участников). Увеличить частоту дискретизации не так просто, например, Chrome не поддерживает проигрывание Opus с частотой более 48000 Гц.
Другой способ улучшить качество - увеличить битрейт публикации звука и битрейт кодирования звука в выходном потоке микшера и таким образом отправить больше данных на одного участника. Публикация с параметрами:
Code:
constraints: {
  audio: {
     bitrate: 128000
  }
}
и настройкой на сервере
Code:
opus.encoder.bitrate=128000
позволяет разговаривать одновременно трем-четырем участникам.
 
Top