Протестируем этот кейс на своем хостинге. Проверим, что получается.
Сейчас мы занимаемся битрейтами и сделали в последних билдах 2122 следующее.
События о проблемах в получении стрима
1.
Зритель автоматически отдаёт серверу информацию о том, какой битрейт он в состоянии получить.
2. Сервер постоянно измеряет битрейт
Стримера
3. Если битрейт, который
Зритель может получить, ниже текущего битрейта
Стримера на 10% и более, то на клиента высылается событие
StreamStatusEvent (последниие версии Web SDK).
Выглядит это так:
Т.е. будет высылаться событие, которое говорит о том, что у зрителя недостаточный канал для принятия потока, который генерирует
Стример.
Корректировка стримера зрителями
Допустим два и более
Зрителей смотрят одного
Стримера.
Зритель 1 - может забирать поток 200 kbps
Зритель 2 - может забирать поток 400 kbps
Стример отдает поток 500 kbps
Сервер настроен по-умолчанию:
Code:
webrtc_cc2_min_remb_bitrate_bps =100000
В этом случае WCS потребует от
Стримера уменьшить битрейт до 200 kbps, равняясь на самого слабого зрителя. Но не будет понижать битрейт
Стримера ниже порога в настройке
webrtc_cc2_min_remb_bitrate_bps Таким образом, если зрители начнут испытывать проблемы со стримом, WCS потребует от Стримера ужать полосу, но не ниже порога. Надеемся, что это может оперативно разгрузить сеть и предотвратить сбои.
Настройки и тестирование
Мы тестируем эти изменения с последними сборками и кодеком H.264 в приоритете.
Code:
codecs=opus,alaw,ulaw,g729,speex16,g722,mpeg4-generic,telephone-event,h264,vp8,flv,mpv
webrtc_cc2_min_remb_bitrate_bps =100000