Update the internal state with the capture and encode parameters we expect to be used, and return the parameters.
Returns the selected encoding parameter
Returns the selected [[MediaTrackConstraints]] to update
Gets the maximum encoding bitrate kbps after bandwidth constraints are applied.
Reset back to initial state
Sets whether video uplink bandwidth is currently prioritized.
Sets ideal maximum bandwidth kbps.
Set a reference to the current transceiver controller. The audio video controller should call this method to pass down a transceiver controller to the policy when the meeting starts and set it to undefined when the meeting ends. If a meeting is stopped and started repeatedly, this pair of calls will be repeated to match. All calls to updateTransceiverController will occur between this pair of calls. This method should not throw.
Updates VideoUplinkPolicy with connection metrics
Potentially update the optimal capture and encode parameters based on the given VideoStreamIndex.
Update the transceiver controller that is set from setTransceiverController such as setEncodingParameters. Only used when unified plan is enabled but not available for simulcast for now. This method should be called when the policy needs to update the local video encoding parameters such as after setHasBandwidthPriority has been called. The default audio video controller calls this after a video is on/off or when an active speakers changes. This method should not throw.
Return true if the policy has decided that a change to the captured and transmitted video stream would be beneficial.
Generated using TypeDoc
NScaleVideoUplinkBandwidthPolicy implements capture and encode parameters that are nearly equivalent to those chosen by the traditional native clients, except for a modification to maxBandwidthKbps and scaleResolutionDownBy described below.