...
Now, bitrate increasing can be enforced in Chrome browser Chromium browsers only by setting x-google-max-bitrate
and x-google-min-bitrate
parameters via SDP hook.
It is impossible to enforce bitrate rising with client and server settings, only bitrate decreasing can be managed.
In this case, Chrome specific settings take precedence if they are set, i.e. constraints
and server settings will be ignored. Note that Chrome default settings found by experience is
Code Block | ||
---|---|---|
| ||
x-google-max-bitrate=2500 |
In the latest Chrome builds, the option videoContentHint: "motion"
should be set when enforcing bitrate on browser side, because Chrome drops publishing bitrate in prefer to resolution when one of the other values is set
Code Block | ||||
---|---|---|---|---|
| ||||
session.createStream({
name: streamName,
display: localVideo,
...
videoContentHint: "motion"
}).publish(); |
Enforcing bitrate increasing in Chrome browser with server parameters
...
These settings are intended for Chromium-based browsers and work with, e.g., Opera, Vivaldi and Yandex.Browser. Also, they are applied when iOS Safari 12 or newer is used. They do
Bitrate enforcing does not work with in Firefox and Edge.
Usage
Bitrate limiting in certain borders can be useful for example when publishing video to Safari browser subscribers. This browser is sensitive to bitrate jumps, in this case picture quality loses until freeze and browser hangs. It is recommended to stabilize bitrate when publishing streams for Safari viewers by setting narrow limits of bitrate change, for example
...