Options
All
  • Public
  • Public/Protected
  • All
Menu

Class VideoAdaptiveProbePolicy

VideoAdaptiveProbePolicy wraps VideoPriorityBasedPolicy with customized behavior to automatically assign a high preference to content share. This is a legacy policy used by default when simulcast is enabled, but all customers should be using VideoPriorityBasedPolicy instead, since this policy does not work with server side network adaptation.

You can imitate this classes behavior using the VideoPriorityBasedPolicy with the following snippet

  remoteVideoSourcesDidChange(videoSources: VideoSource[]) {
    const videoPreferences = VideoPreferences.prepare();
    for(const source of videoSources) {
       const isContent = source.attendee.attendeeId.endsWith(ContentShareConstants.Modality);
       videoPreferences.add(new VideoPreference(source.attendee.attendeeId, isContent ? 2: 1, TargetDisplaySize.High));
    }
    this.priorityBasedDownlinkPolicy.chooseRemoteVideoSources(videoPreferences.build());
  }

Hierarchy

Index

Constructors

constructor

Properties

Protected defaultVideoPreferences

defaultVideoPreferences: VideoPreferences

Protected logger

logger: Logger

Protected observerQueue

observerQueue: Set<VideoDownlinkObserver> = ...

Protected shouldPauseTiles

shouldPauseTiles: boolean = true

Protected tileController

tileController: VideoTileController

Protected videoIndex

videoIndex: VideoStreamIndex

Protected videoPreferences

videoPreferences: VideoPreferences

Protected videoPreferencesUpdated

videoPreferencesUpdated: boolean

Methods

addObserver

bindToTileController

Protected calculateOptimalReceiveSet

  • calculateOptimalReceiveSet(): void

Protected calculateOptimalReceiveStreams

  • calculateOptimalReceiveStreams(): void

chooseRemoteVideoSources

chooseSubscriptions

forEachObserver

Protected getCurrentVideoPreferences

getServerSideNetworkAdaption

getVideoPreferences

removeObserver

reset

  • reset(): void

setServerSideNetworkAdaption

setVideoPriorityBasedPolicyConfigs

Optional setWantsResubscribeObserver

  • setWantsResubscribeObserver(observer: () => void): void

supportedServerSideNetworkAdaptions

updateIndex

updateMetrics

wantsAllTemporalLayersInIndex

  • wantsAllTemporalLayersInIndex(): boolean

wantsResubscribe

  • wantsResubscribe(): boolean

Generated using TypeDoc