Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface VideoStreamIndex

VideoStreamIndex holds the set of video streams available on the server for subscription

Hierarchy

  • VideoStreamIndex

Implemented by

Index

Methods

StreamIdsInSameGroup

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

allStreams

allVideoSendingSourcesExcludingSelf

  • allVideoSendingSourcesExcludingSelf(selfAttendeeId: string): VideoSource[]

Optional attendeeIdForGroupId

  • attendeeIdForGroupId(groupId: number): string

attendeeIdForStreamId

  • attendeeIdForStreamId(streamId: number): string

attendeeIdForTrack

  • attendeeIdForTrack(trackId: string): string

externalUserIdForTrack

  • externalUserIdForTrack(trackId: string): string

Optional groupIdForSSRC

  • groupIdForSSRC(ssrcId: number): number

groupIdForStreamId

  • groupIdForStreamId(streamId: number): number

highestQualityStreamFromEachGroupExcludingSelf

  • highestQualityStreamFromEachGroupExcludingSelf(selfAttendeeId: string): VideoStreamIdSet

integrateBitratesFrame

  • integrateBitratesFrame(bitrates: ISdkBitrateFrame): void

integrateIndexFrame

  • integrateIndexFrame(indexFrame: SdkIndexFrame): void

integrateSubscribeAckFrame

  • integrateSubscribeAckFrame(subscribeAck: SdkSubscribeAckFrame): void

integrateUplinkPolicyDecision

  • integrateUplinkPolicyDecision(encodingParameters: RTCRtpEncodingParameters[]): void
  • Updates cached local stream description array via uplink decisions, an array of [[RTCRtpEncodingParameters]]

    Parameters

    • encodingParameters: RTCRtpEncodingParameters[]

    Returns void

localStreamDescriptions

numberOfParticipants

  • numberOfParticipants(): number

numberOfVideoPublishingParticipantsExcludingSelf

  • numberOfVideoPublishingParticipantsExcludingSelf(selfAttendeeId: string): number

Optional overrideStreamIdMappings

  • overrideStreamIdMappings(previous: number, current: number): void
  • Override mappings using stream ID (i.e. for streamIdForTrack, and streamIdForSSRC) locally (i.e. without the need for a subscribe ACK message)

    Parameters

    • previous: number
    • current: number

    Returns 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): VideoStreamIdSet
  • Return a selection set of streams for subscription based on self attendee id, size information of tiles, bandwidth limitation

    Parameters

    • selfAttendeeId: string
    • largeTileAttendeeIds: Set<string>
    • smallTileAttendeeIds: Set<string>
    • bandwidthKbps: number

    Returns VideoStreamIdSet

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