Options
All
  • Public
  • Public/Protected
  • All
Menu

Class NScaleVideoUplinkBandwidthPolicy

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.

Hierarchy

  • NScaleVideoUplinkBandwidthPolicy

Implements

Index

Constructors

constructor

Properties

Static Readonly SVCCodecNames

SVCCodecNames: string[] = ...

Static Readonly encodingMapKey

encodingMapKey: "video" = 'video'

Static Readonly targetHeightArray

targetHeightArray: number[][] = ...

Methods

chooseCaptureAndEncodeParameters

chooseEncodingParameters

  • chooseEncodingParameters(): Map<string, RTCRtpEncodingParameters>

chooseMediaTrackConstraints

  • chooseMediaTrackConstraints(): MediaTrackConstraints

maxBandwidthKbps

  • maxBandwidthKbps(): number

reset

  • reset(): void

setHasBandwidthPriority

  • setHasBandwidthPriority(hasBandwidthPriority: boolean): void

setHighResolutionFeatureEnabled

  • setHighResolutionFeatureEnabled(enabled: boolean): void

setIdealMaxBandwidthKbps

  • setIdealMaxBandwidthKbps(idealMaxBandwidthKbps: number): void

setMeetingSupportedVideoSendCodecs

setSVCEnabled

  • setSVCEnabled(enable: boolean): void

setTransceiverController

updateConnectionMetric

updateIndex

updateTransceiverController

  • updateTransceiverController(): Promise<void>
  • 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.

    Returns Promise<void>

wantsResubscribe

  • wantsResubscribe(): boolean

wantsVideoDependencyDescriptorRtpHeaderExtension

  • wantsVideoDependencyDescriptorRtpHeaderExtension(): boolean
  • Dependency descriptors can be used by the backend to designate spatial or temporal layers on a single encoding. Along with the video layers allocation exension this will result in the ability for remote attendees to subscribe to individual layers below the top.

    If the send transceiver is in a state where the layers allocation extension is not matching up with the dependency descriptor extension, or we simply don't want to allow for the seperation of spatial or temporal layers, we can remove the dependency descriptor from the SDP.

    Returns boolean

Generated using TypeDoc