...
В настоящее время, форсировать повышение битрейта можно только в браузере Chromeна основе Chromium, указав в SDP при помощи замены параметров x-google-max-bitrate
и x-google-min-bitrate
.
Через настройки на стороне клиента и сервера форсировать увеличение битрейта невозможно, можно только управлять его понижением.
При этом, настройки, специфичные для Chrome, если они выставлены, будут иметь приоритет, т.е. настройки constraints
и настройки сервера будут игнорироваться. Отметим, что настройка Chrome по умолчанию, определенная опытным путем, на сегодняшний день составляет
Code Block | ||
---|---|---|
| ||
x-google-max-bitrate=2500 |
В последних сборках Chrome при форсировании битрейта на стороне браузера необходимо указывать опцию videoContentHint: "motion"
, поскольку при других положениях данной опции Chrome сбрасывает битрейт ради того, чтобы удержать разрешение публикации
Code Block | ||||
---|---|---|---|---|
| ||||
session.createStream({
name: streamName,
display: localVideo,
...
videoContentHint: "motion"
}).publish(); |
Форсирование повышения битрейта в Сhrome настройками сервера
...
Эти настройки предназначены для Chromium-based браузеров и работают, например, для Яндекс.Браузер, Opera и Vivaldi. Так же . Также применяются при использовании iOS Safari 12 . Не будут работать для Firefox и Edgeи выше.
В Firefox форсирование битрейта не работает.
Использование
Удержание битрейта в определенных границах может быть полезным, например, при публикации видео для клиентов, использующих браузер Safari. Данный браузер чувствителен к резким изменениям битрейта, при этом ухудшается качество картинки вплоть до фризов и зависаний браузера. Поэтому при вещании для Safari рекомендуется максимально стабилизировать битрейт, задавая узкие пределы изменения, например
...