amazon-chime-sdk / com.amazonaws.services.chime.sdk.meetings.audiovideo / DefaultAudioVideoController

DefaultAudioVideoController

class DefaultAudioVideoController : AudioVideoControllerFacade

Constructors

<init>

DefaultAudioVideoController(audioClientController: AudioClientController, audioClientObserver: AudioClientObserver, clientMetricsCollector: ClientMetricsCollector, configuration: MeetingSessionConfiguration, videoClientController: VideoClientController, videoClientObserver: VideoClientObserver, logger: Logger?)

Functions

addAudioVideoObserver

Subscribe to audio, video, and connection events with an AudioVideoObserver.

fun addAudioVideoObserver(observer: AudioVideoObserver): Unit

addMetricsObserver

Subscribe to metrics events with an MetricsObserver.

fun addMetricsObserver(observer: MetricsObserver): Unit

demoteFromPrimaryMeeting

Remove the promoted attendee from the Primary meeting. This client will stop sharing audio, video, and data messages. This will revert the end-user to precisely the state they were before a call to promoteToPrimaryMeeting

fun demoteFromPrimaryMeeting(): Unit

promoteToPrimaryMeeting

Allows an attendee in a Replica meeting to immediately transition to a Primary meeting attendee without need for reconnection.

fun promoteToPrimaryMeeting(credentials: MeetingSessionCredentials, observer: PrimaryMeetingPromotionObserver): Unit

removeAudioVideoObserver

Unsubscribes from audio, video, and connection events by removing specified AudioVideoObserver.

fun removeAudioVideoObserver(observer: AudioVideoObserver): Unit

removeMetricsObserver

Unsubscribes from metrics by removing specified MetricsObserver.

fun removeMetricsObserver(observer: MetricsObserver): Unit

start

Starts audio and video.

fun start(): Unit

Starts audio and video with the given configuration.

fun start(audioVideoConfiguration: AudioVideoConfiguration): Unit

startLocalVideo

Start local video and begin transmitting frames from an internally held DefaultCameraCaptureSource. stopLocalVideo will stop the internal capture source if being used.

fun startLocalVideo(): Unit

Start local video with configuration and begin transmitting frames from an internally held DefaultCameraCaptureSource. stopLocalVideo will stop the internal capture source if being used.

fun startLocalVideo(config: LocalVideoConfiguration): Unit

Start local video with a provided custom VideoSource which can be used to provide custom VideoFrame objects to be transmitted to remote clients

fun startLocalVideo(source: VideoSource): Unit

Start local video with with configuration and a provided custom VideoSource which can be used to provide custom VideoFrame objects to be transmitted to remote clients

fun startLocalVideo(source: VideoSource, config: LocalVideoConfiguration): Unit

startRemoteVideo

Start remote video.

fun startRemoteVideo(): Unit

stop

Stops audio and video. It's important to call this when your meeting connection is no longer needed in order to clean up and explicitly release resources.

fun stop(): Unit

stopLocalVideo

Stops sending video for local attendee. This will additionally stop the internal capture source if being used. If using a custom video source, this will call VideoSource.removeVideoSink on the previously provided source.

fun stopLocalVideo(): Unit

stopRemoteVideo

Stop remote video.

fun stopRemoteVideo(): Unit

updateVideoSourceSubscriptions

Add, update, or remove subscriptions to remote video sources provided via remoteVideoSourcesDidBecomeAvailable.

fun updateVideoSourceSubscriptions(addedOrUpdated: Map<RemoteVideoSource, VideoSubscriptionConfiguration>, removed: Array<RemoteVideoSource>): Unit