Options
All
  • Public
  • Public/Protected
  • All
Menu

Class SimulcastVideoStreamIndex

SimulcastTransceiverController implements VideoStreamIndex to facilitate video stream subscription and includes query functions for stream id and attendee id.

Hierarchy

Index

Constructors

constructor

Properties

Protected currentIndex

currentIndex: SdkIndexFrame = null

Protected currentSubscribeAck

currentSubscribeAck: SdkSubscribeAckFrame = null

Protected groupIdToAttendeeMap

groupIdToAttendeeMap: Map<number, string> = null

Protected indexForLastRemoteVideoUpdate

indexForLastRemoteVideoUpdate: SdkIndexFrame = null

Protected indexForSubscribe

indexForSubscribe: SdkIndexFrame = null

Protected logger

logger: Logger

Protected streamToAttendeeMap

streamToAttendeeMap: Map<number, string> = null

Protected streamToExternalUserIdMap

streamToExternalUserIdMap: Map<number, string> = null

Protected subscribeSsrcToGroupMap

subscribeSsrcToGroupMap: Map<number, number> = null

Protected subscribeSsrcToStreamMap

subscribeSsrcToStreamMap: Map<number, number> = null

Protected subscribeStreamToAttendeeMap

subscribeStreamToAttendeeMap: Map<number, string> = null

Protected subscribeStreamToExternalUserIdMap

subscribeStreamToExternalUserIdMap: Map<number, string> = null

Protected subscribeTrackToStreamMap

subscribeTrackToStreamMap: Map<string, number> = null

Static Readonly BitratesMsgFrequencyMs

BitratesMsgFrequencyMs: number = 4000

Static Readonly NOT_SENDING_STREAM_BITRATE

NOT_SENDING_STREAM_BITRATE: 0 = 0

Static Readonly RECENTLY_INACTIVE_STREAM_BITRATE

RECENTLY_INACTIVE_STREAM_BITRATE: -1 = -1

Static Readonly UNSEEN_STREAM_BITRATE

UNSEEN_STREAM_BITRATE: -2 = -2

Methods

StreamIdsInSameGroup

  • StreamIdsInSameGroup(streamId1: number, streamId2: number): boolean

allStreams

allVideoSendingSourcesExcludingSelf

  • allVideoSendingSourcesExcludingSelf(selfAttendeeId: string): VideoSource[]

attendeeIdForGroupId

  • attendeeIdForGroupId(groupId: number): string

attendeeIdForStreamId

  • attendeeIdForStreamId(streamId: number): string

attendeeIdForTrack

  • attendeeIdForTrack(trackId: string): string

convertBpsToKbps

  • convertBpsToKbps(avgBitrateBps: number): number

externalUserIdForTrack

  • externalUserIdForTrack(trackId: string): string

groupIdForSSRC

  • groupIdForSSRC(ssrcId: number): number

groupIdForStreamId

  • groupIdForStreamId(streamId: number): number

highestQualityStreamFromEachGroupExcludingSelf

integrateBitratesFrame

  • integrateBitratesFrame(bitrateFrame: SdkBitrateFrame): void

integrateIndexFrame

  • integrateIndexFrame(indexFrame: SdkIndexFrame): void

integrateSubscribeAckFrame

  • integrateSubscribeAckFrame(subscribeAck: SdkSubscribeAckFrame): void

integrateUplinkPolicyDecision

  • integrateUplinkPolicyDecision(encodingParams: RTCRtpEncodingParameters[]): void

localStreamDescriptions

numberOfParticipants

  • numberOfParticipants(): number

numberOfVideoPublishingParticipantsExcludingSelf

  • numberOfVideoPublishingParticipantsExcludingSelf(selfAttendeeId: string): number

overrideStreamIdMappings

  • overrideStreamIdMappings(previous: number, current: number): void

remoteStreamDescriptions

remoteVideoUpdateSent

  • remoteVideoUpdateSent(): void
  • This function caches the currently ingested index frame specifically as a backup for map functions like groupIdForStreamIdso that we can maintain information about previous senders simulcast streams to enable stream switching, e.g. if a sender is transmitting low/hi and switches to just low, receivers need the previously used index to be able to know what group ID the high stream corresponds to.

    Returns void

sendVideoStreamIdFromRid

  • sendVideoStreamIdFromRid(rid: string): number

streamIdForSSRC

  • streamIdForSSRC(ssrcId: number): number

streamIdForTrack

  • streamIdForTrack(trackId: string): number

streamSelectionUnderBandwidthConstraint

  • streamSelectionUnderBandwidthConstraint(selfAttendeeId: string, largeTileAttendeeIds: Set<string>, smallTileAttendeeIds: Set<string>, bandwidthKbps: number): DefaultVideoStreamIdSet

streamsPausedAtSource

subscribeFrameSent

  • subscribeFrameSent(): void
  • This function caches the currently ingested index frame for subscribe related activities (e.g. mapping tracks).

    The index will also use the stored index as a backup for map functions like groupIdForStreamIdso that we can maintain information about previous senders simulcast streams to enable stream switching, e.g. if a sender is transmitting low/hi and switches to just low, receivers need the previous index to be able to know what group ID the high stream corresponds to.

    Returns void

Generated using TypeDoc