Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface VideoTileController

VideoTileController allows one to manipulate how the underlying media streams are assigned to video elements. The caller is responsible for laying out video elements as desired and binding tile ids received from the observer in the [[videoTileUpdated]] callbacks.

Hierarchy

  • VideoTileController

Implemented by

Index

Properties

Optional keepLastFrameWhenPaused

keepLastFrameWhenPaused: boolean

Methods

addVideoTile

bindVideoElement

  • bindVideoElement(tileId: number, videoElement: HTMLVideoElement): void
  • Binds the video element to the tile if it exists for the provided tileId. This should also be called any time the layout of the video element changes, for example, when changing its dimensions.

    Parameters

    • tileId: number
    • videoElement: HTMLVideoElement

    Returns void

Optional captureVideoTile

  • captureVideoTile(tileId: number): ImageData

getAllRemoteVideoTiles

getAllVideoTiles

getLocalVideoTile

getVideoTile

getVideoTileArea

Optional getVideoTileForAttendeeId

  • getVideoTileForAttendeeId(attendeeId: string): VideoTile

hasStartedLocalVideoTile

  • hasStartedLocalVideoTile(): boolean

haveVideoTileForAttendeeId

  • haveVideoTileForAttendeeId(attendeeId: string): boolean

haveVideoTilesWithStreams

  • haveVideoTilesWithStreams(): boolean

pauseVideoTile

  • pauseVideoTile(tileId: number): void
  • Pauses the video tile if it exists and sends the updated video tile state to the meeting session's AudioVideoObserver’s videoTileDidUpdate callback. This API is intended to be called on the remote videos. If called on a local video tile, then the tile will no longer be updated, but the local video source will continue to be sent into the meeting.

    Parameters

    • tileId: number

    Returns void

removeAllVideoTiles

  • removeAllVideoTiles(): void

removeLocalVideoTile

  • removeLocalVideoTile(): void

removeVideoTile

  • removeVideoTile(tileId: number): void

removeVideoTilesByAttendeeId

  • removeVideoTilesByAttendeeId(attendeeId: string): number[]

sendTileStateUpdate

startLocalVideoTile

  • startLocalVideoTile(): number
  • Starts sharing the local video tile by creating a new video tile if one does not already exist. Binds the created local video tile to the local video stream and then returns its tile id.

    Returns number

stopLocalVideoTile

  • stopLocalVideoTile(): void

unbindVideoElement

  • unbindVideoElement(tileId: number, cleanUpVideoElement?: boolean): void
  • Unbinds the video element from the tile if it exists for the provided tileId. The video tile's bounded video element and that element's width and height are set to null.

    Parameters

    • tileId: number
    • Optional cleanUpVideoElement: boolean

      By default, the bounded video element's srcObject is also set to null. Pass false for cleanUpVideoElement, if you do not intend to set the bounded video element's srcObject to null. This does not remove the provided tileId mapping from the tile map in the DefaultVideoTileController. To remove the mapping and destroy the tile for this tileId, you can use removeVideoTile.

    Returns void

unpauseVideoTile

  • unpauseVideoTile(tileId: number): void
  • Unpauses the video tile if it exists and sends the updated video tile state to the meeting session's AudioVideoObserver’s videoTileDidUpdate callback. This API is intended to be called on the remote videos and has no effect on the local video. When called on a remote video tileId, the remote video source will start getting the updates if paused earlier.

    Parameters

    • tileId: number

    Returns void

Generated using TypeDoc