Whether a media track is playing on the webpage:
true
: The media track is playing on the webpage.false
: The media track is not playing on the webpage.
4.13.0
The destination of the current processing pipeline on the remote audio track.
The type of a media track:
"audio"
: Audio track."video"
: Video track.Gets an MediaStreamTrack object.
An MediaStreamTrack object.
Gets the RTCRtpTransceiver instance of the current track.
This method is currently mainly used for end-to-end encryption of video streams (Beta).
If the SDK experiences a reconnection, the
RTCRtpTransceiver
instance corresponding to the current track might change. You can obtain the newRTCRtpTransceiver
instance through the following callbacks:
- For a local track: [ILocalTrack.transceiver-updated]event_transceiver_updated
- For a remote track: [IRemoteTrack.transceiver-updated]event_transceiver_updated_2
Optional
type: StreamTypeThe type of the video stream. See StreamType.
The RTCRtpTransceiver instance of the current track.
Gets the statistics of a remote audio track.
An [[RemoteAudioTrackStats]] object.
The event name.
See [track-updated]event_track_updated.
Triggers when a media track is updated.
The media stream track. See MediaStreamTrack.
Events
The event name.
See [first-frame-decoded]event_first_frame_decoded.
Occurs when the first remote audio or video frame is decoded.
IRemoteTrack
Events
Adds an event listener.
The event name.
See [IRemoteTrack.transceiver-updated]event_transceiver_updated_2.
Occurs when the RTCRtpTransceiver
instance of the current track is updated.
The new RTCRtpTransceiver
instance.
IRemoteTrack
Events
Sets the callback for getting raw audio data in PCM format.
After you successfully set the callback, the SDK constantly returns the audio frames of a remote audio track in this callback by using AudioBuffer.
You can set the
frameSize
parameter to determine the frame size in each callback, which affects the interval between the callbacks. The larger the frame size, the longer the interval between them.
track.setAudioFrameCallback((buffer) => {
for (let channel = 0; channel < buffer.numberOfChannels; channel += 1) {
// Float32Array with PCM data
const currentChannelData = buffer.getChannelData(channel);
console.log("PCM data in channel", channel, currentChannelData);
}
}, 2048);
// ....
// Stop getting the raw audio data
track.setAudioFrameCallback(null);
The callback function for receiving the AudioBuffer object. If you set audioBufferCallback
as null
, the SDK stops getting raw audio data.
Optional
frameSize: numberThe number of samples of each audio channel that an AudioBuffer
object contains. You can set frameSize
as 256, 512, 1024, 2048, 4096, 8192, or 16384. The default value is 4096.
Device ID, which can be retrieved by calling [[getPlaybackDevices]].
4.1.0
Sets the audio playback device, for example, the speaker.
This method supports Chrome and Edge on desktop devices only. Other browsers throw a
NOT_SUPPORTED
error when calling this method.
RemoteAudioTrack
is the basic interface for the remote audio track.You can get create a remote audio track by the [AgoraRTCRemoteUser.audioTrack]IAgoraRTCRemoteUser.audioTrack object after calling [subscribe]IAgoraRTCClient.subscribe.