TrackEvent
Defined in: client-sdk-js/src/events.ts:444
Events emitted by a Track instance.
Example
Section titled “Example”track.on(TrackEvent.Muted, () => { console.log('track was muted');});Enumeration Members
Section titled “Enumeration Members”AudioPlaybackFailed
Section titled “AudioPlaybackFailed”AudioPlaybackFailed: "audioPlaybackFailed";Defined in: client-sdk-js/src/events.ts:483
Audio playback failed, typically due to browser autoplay policy.
args: (error?: Error)
AudioPlaybackStarted
Section titled “AudioPlaybackStarted”AudioPlaybackStarted: "audioPlaybackStarted";Defined in: client-sdk-js/src/events.ts:476
Audio playback started successfully after calling attach.
AudioSilenceDetected
Section titled “AudioSilenceDetected”AudioSilenceDetected: "audioSilenceDetected";Defined in: client-sdk-js/src/events.ts:522
Detected complete silence on an audio track after publishing. This may indicate a hardware issue.
ElementAttached
Section titled “ElementAttached”ElementAttached: "elementAttached";Defined in: client-sdk-js/src/events.ts:470
An HTMLMediaElement has been attached to this track.
ElementDetached
Section titled “ElementDetached”ElementDetached: "elementDetached";Defined in: client-sdk-js/src/events.ts:473
An HTMLMediaElement has been detached from this track.
Ended: "ended";Defined in: client-sdk-js/src/events.ts:458
The track has permanently ended. For local tracks, this typically means
the underlying MediaStreamTrack has been stopped.
Muted: "muted";Defined in: client-sdk-js/src/events.ts:449
The track has been muted. For local tracks this happens when
setMuted(true) is called or the producer is paused.
Restarted
Section titled “Restarted”Restarted: "restarted";Defined in: client-sdk-js/src/events.ts:461
The local track has been restarted with new constraints (e.g. device change).
StreamStateChanged
Section titled “StreamStateChanged”StreamStateChanged: "streamStateChanged";Defined in: client-sdk-js/src/events.ts:530
The stream state of this track changed (server paused/resumed forwarding). Only emitted on remote tracks.
args: (track: {@link Track}, streamState: {@link StreamState})
Subscribed
Section titled “Subscribed”Subscribed: "subscribed";Defined in: client-sdk-js/src/events.ts:464
Subscribed to a remote track.
TimeSyncUpdate
Section titled “TimeSyncUpdate”TimeSyncUpdate: "timeSyncUpdate";Defined in: client-sdk-js/src/events.ts:538
Fired when a new time-sync update is available for a remote track. Provides the RTP timestamp and the corresponding local timestamp.
args: (update: { timestamp: number; rtpTimestamp: number })
Unmuted
Section titled “Unmuted”Unmuted: "unmuted";Defined in: client-sdk-js/src/events.ts:452
The track has been unmuted.
Unsubscribed
Section titled “Unsubscribed”Unsubscribed: "unsubscribed";Defined in: client-sdk-js/src/events.ts:467
Unsubscribed from a remote track.
UpstreamPaused
Section titled “UpstreamPaused”UpstreamPaused: "upstreamPaused";Defined in: client-sdk-js/src/events.ts:513
The upstream (publisher to SFU) has been paused by the SFU due to lack of subscribers.
UpstreamResumed
Section titled “UpstreamResumed”UpstreamResumed: "upstreamResumed";Defined in: client-sdk-js/src/events.ts:516
The upstream has resumed after being paused.
VideoDimensionsChanged
Section titled “VideoDimensionsChanged”VideoDimensionsChanged: "videoDimensionsChanged";Defined in: client-sdk-js/src/events.ts:507
The dimensions of the video element changed (adaptive stream).
args: (dimensions: { width: number; height: number }, track: {@link RemoteVideoTrack})
VideoPlaybackFailed
Section titled “VideoPlaybackFailed”VideoPlaybackFailed: "videoPlaybackFailed";Defined in: client-sdk-js/src/events.ts:493
Video playback failed.
args: (error?: Error)
VideoPlaybackStarted
Section titled “VideoPlaybackStarted”VideoPlaybackStarted: "videoPlaybackStarted";Defined in: client-sdk-js/src/events.ts:486
Video playback started successfully after calling attach.
VisibilityChanged
Section titled “VisibilityChanged”VisibilityChanged: "visibilityChanged";Defined in: client-sdk-js/src/events.ts:500
The visibility of the video element changed (adaptive stream).
args: (visible: boolean, track: {@link RemoteVideoTrack})