API Overview

Agora provides ensured quality of experience (QoE) for worldwide Internet-based voice and video communications through SD-RTN™.

Channel management

Method Description
createAgoraRtcEngine Creates one RtcEngine object.
initialize Initializes RtcEngine.
release Releases the RtcEngine instance.
setChannelProfile Sets the channel profile.
joinChannel Joins a channel with media options.
updateChannelMediaOptions Updates the channel media options after joining the channel.
leaveChannel Sets channel options and leaves the channel.
preloadChannel Preloads a channel with token, channelId, and uid.
preloadChannelWithUserAccount Preloads a channel with token, channelId, and userAccount.
updatePreloadChannelToken Updates the wildcard token for preloading channels.
renewToken Renews the token.
setClientRole Sets the user role and level in an interactive live streaming channel.
getConnectionState Gets the current connection state of the SDK.

Channel events

Event Description
onJoinChannelSuccess Occurs when a user joins a channel.
onRejoinChannelSuccess Occurs when a user rejoins the channel.
onClientRoleChanged Occurs when the user role switches during the interactive live streaming.
onClientRoleChangeFailed Occurs when the user role switching fails in the interactive live streaming.
onLeaveChannel Occurs when a user leaves a channel.
onUserJoined Occurs when a remote user (in the communication profile)/ host (in the live streaming profile) joins the channel.
onUserOffline Occurs when a remote user (in the communication profile)/ host (in the live streaming profile) leaves the channel.
onNetworkTypeChanged Occurs when the local network type changes.
onUplinkNetworkInfoUpdated Occurs when the uplink network information changes.
onConnectionLost Occurs when the SDK cannot reconnect to Agora's edge server 10 seconds after its connection to the server is interrupted.
onConnectionStateChanged Occurs when the network connection state changes.
onRequestToken Occurs when the token expires.
onTokenPrivilegeWillExpire Occurs when the token expires in 30 seconds.
onError Reports an error during SDK runtime.

Audio management

Method Description
enableAudio Enables the audio module.
disableAudio Disables the audio module.
setAudioProfile Sets the audio profile and audio scenario.
setAudioScenario Sets audio scenarios.
setAudioSessionOperationRestriction Sets the operational permission of the SDK on the audio session.
adjustRecordingSignalVolume Adjusts the capturing signal volume.
adjustUserPlaybackSignalVolume Adjusts the playback signal volume of a specified remote user.
adjustPlaybackSignalVolume Adjusts the playback signal volume of all remote users.
adjustLoopbackSignalVolume Adjusts the volume of the signal captured by the sound card.
adjustCustomAudioPlayoutVolume
adjustCustomAudioPublishVolume Adjusts the volume of the custom audio track played remotely.
muteRecordingSignal Whether to mute the recording signal.
enableLocalAudio Enables or disables the local audio capture.
getAudioDeviceInfo Gets the audio device information.

Video management

Method Description
enableVideo Enables the video module.
disableVideo Disables the video module.
setRenderMode Sets the render mode of the media player.
setView Sets the view.
setVideoEncoderConfiguration Sets the video encoder configuration.
startPreview Enables the local video preview and specifies the video source for the preview.
stopPreview Stops the local video preview.
setupLocalVideo Initializes the local video view.
setupRemoteVideo Initializes the video view of a remote user.
setLocalRenderMode Updates the display mode of the local video view.
setRemoteRenderMode Updates the display mode of the video view of a remote user.
enableLocalVideo Enables/Disables the local video capture.
muteLocalVideoStream Stops or resumes publishing the local video stream.
muteRemoteVideoStream Stops or resumes subscribing to the video stream of a specified user.
muteAllRemoteVideoStreams Stops or resumes subscribing to the video streams of all remote users.
enableInstantMediaRendering Enables audio and video frame instant rendering.
startMediaRenderingTracing Enables tracing the video frame rendering process.
setVideoScenario Sets video application scenarios.
Event Description
onVideoRenderingTracingResult Video frame rendering event callback.

Capture screenshots

Method Description
takeSnapshot Takes a snapshot of a video stream.
Event Description
onSnapshotTaken Reports the result of taking a video snapshot.

Subscribing to and publishing audio and video streams

Method Description
setSubscribeAudioBlocklist Set the blocklist of subscriptions for audio streams.
setSubscribeAudioAllowlist Sets the allowlist of subscriptions for audio streams.
setSubscribeVideoBlocklist Set the blocklist of subscriptions for video streams.
setSubscribeVideoAllowlist Set the allowlist of subscriptions for video streams.
muteLocalAudioStream Stops or resumes publishing the local audio stream.
muteRemoteAudioStream Stops or resumes subscribing to the audio stream of a specified user.
muteAllRemoteAudioStreams Stops or resumes subscribing to the audio streams of all remote users.
enableLocalVideo Enables/Disables the local video capture.
muteLocalVideoStream Stops or resumes publishing the local video stream.
muteRemoteVideoStream Stops or resumes subscribing to the video stream of a specified user.
muteAllRemoteVideoStreams Stops or resumes subscribing to the video streams of all remote users.
setRemoteVideoSubscriptionOptions Options for subscribing to remote video streams.

Media player

For more methods about the media player, see MediaPlayer.

Method Description
createMediaPlayer Creates a media player instance.
getMediaPlayerCacheManager Gets one MediaPlayerCacheManager instance.
MediaPlayer This class provides media player functions and supports multiple instances.
MediaPlayerCacheManager This class provides methods to manage cached media files.
MediaPlayerSourceObserver Provides callbacks for media players.

Directly pushing streams to the CDN

Method Description
startDirectCdnStreaming Starts pushing media streams to the CDN directly.
stopDirectCdnStreaming Stops pushing media streams to the CDN directly.
setDirectCdnStreamingAudioConfiguration Sets the audio profile of the audio streams directly pushed to the CDN by the host.
setDirectCdnStreamingVideoConfiguration Sets the video profile of the media streams directly pushed to the CDN by the host.
Event Description
onDirectCdnStreamingStateChanged Occurs when the CDN streaming state changes.
onDirectCdnStreamingStats Reports the CDN streaming statistics.

Local media events

Event Description
onLocalAudioStateChanged Occurs when the local audio stream state changes.
onLocalVideoStateChanged Occurs when the local video stream state changes.
onFirstLocalAudioFramePublished Occurs when the first audio frame is published.
onFirstLocalVideoFramePublished Occurs when the first video frame is published.
onAudioPublishStateChanged Occurs when the audio publishing state changes.
onVideoPublishStateChanged Occurs when the video publishing state changes.

Remote media events

Event Description
onRemoteAudioStateChanged Occurs when the remote audio state changes.
onRemoteVideoStateChanged Occurs when the remote video stream state changes.
onFirstRemoteAudioFrame Occurs when the SDK receives the first audio frame from a specific remote user.
onFirstRemoteVideoFrame Occurs when the renderer receives the first frame of the remote video.
onFirstRemoteVideoDecoded Occurs when the first remote video frame is received and decoded.
onAudioSubscribeStateChanged Occurs when the audio subscribing state changes.
onVideoSubscribeStateChanged Occurs when the video subscribing state changes.
onUserMuteAudio Occurs when a remote user (in the communication profile) or a host (in the live streaming profile) stops/resumes sending the audio stream.
onUserMuteVideo Occurs when a remote user stops or resumes publishing the video stream.
onUserEnableVideo Occurs when a remote user enables or disables the video module.
onUserEnableLocalVideo Occurs when a specific remote user enables/disables the local video capturing function.

Statistics events

Event Description
onRtcStats Reports the statistics of the current call.
onNetworkQuality Reports the last mile network quality of each user in the channel.
onLocalAudioStats Reports the statistics of the local audio stream.
onLocalVideoStats Reports the statistics of the local video stream.
onRemoteAudioStats Reports the transport-layer statistics of each remote audio stream.
onRemoteVideoStats Reports the statistics of the video stream sent by each remote users.

Audio pre-process and post-process

Method Description
setAdvancedAudioOptions Sets audio advanced options.
setAINSMode Sets whether to enable the AI ​​noise suppression function and set the noise suppression mode.

Video pre-process and post-process

Method Description
setBeautyEffectOptions Sets the image enhancement options.
enableVirtualBackground Enables/Disables the virtual background.
setColorEnhanceOptions Sets color enhancement.
setLowlightEnhanceOptions Sets low-light enhancement.
setVideoDenoiserOptions Sets video noise reduction.

Face detection

Note: This group of methods is for Android and iOS only.
Method Description
enableFaceDetection Enables or disables face detection for the local user.
Event Description
onFacePositionChanged Reports the face detection result of the local user.

In-ear monitoring

Method Description
enableInEarMonitoring Enables in-ear monitoring.
setInEarMonitoringVolume Sets the volume of the in-ear monitor.
setEarMonitoringAudioFrameParameters Sets the format of the in-ear monitoring raw audio data.
Event Description
onEarMonitoringAudioFrame Gets the in-ear monitoring audio frame.

Music file playback and mixing

Method Description
startAudioMixing Starts playing the music file.
stopAudioMixing Stops playing and mixing the music file.
pauseAudioMixing Pauses playing and mixing the music file.
resumeAudioMixing Resumes playing and mixing the music file.
adjustAudioMixingVolume Adjusts the volume during audio mixing.
adjustAudioMixingPlayoutVolume Adjusts the volume of audio mixing for local playback.
adjustAudioMixingPublishVolume Adjusts the volume of audio mixing for publishing.
getAudioMixingPlayoutVolume Retrieves the audio mixing volume for local playback.
getAudioMixingPublishVolume Retrieves the audio mixing volume for publishing.
getAudioMixingDuration Retrieves the duration (ms) of the music file.
getAudioMixingCurrentPosition Retrieves the playback position (ms) of the music file.
setAudioMixingPitch Sets the pitch of the local music file.
setAudioMixingPosition Sets the audio mixing position.
setAudioMixingDualMonoMode Sets the channel mode of the current audio file.
Event Description
onAudioMixingStateChanged Occurs when the playback state of the music file changes.
onAudioMixingPositionChanged Reports the playback progress of a music file.

Audio effect file playback

Method Description
getEffectsVolume Retrieves the volume of the audio effects.
setEffectsVolume Sets the volume of the audio effects.
getVolumeOfEffect Gets the volume of a specified audio effect file.
setVolumeOfEffect Sets the volume of a specified audio effect.
preloadEffect Preloads a specified audio effect file into the memory.
playEffect Plays the specified local or online audio effect file.
playAllEffects Plays all audio effect files.
pauseEffect Pauses a specified audio effect file.
pauseAllEffects Pauses all audio effects.
resumeEffect Resumes playing a specified audio effect.
resumeAllEffects Resumes playing all audio effect files.
stopEffect Stops playing a specified audio effect.
stopAllEffects Stops playing all audio effects.
unloadEffect Releases a specified preloaded audio effect from the memory.
unloadAllEffects Releases a specified preloaded audio effect from the memory.
getEffectDuration Retrieves the duration of the audio effect file.
getEffectCurrentPosition Retrieves the playback position of the audio effect file.
setEffectPosition Sets the playback position of an audio effect file.

Virtual metronome

Note:

This group of methods is for Android and iOS only.

Method Description
startRhythmPlayer Enables the virtual metronome.
stopRhythmPlayer Disables the virtual metronome.
configRhythmPlayer Configures the virtual metronome.
Event Description
onRhythmPlayerStateChanged Occurs when the state of virtual metronome changes.

Voice changer and reverberation

Method Description
setLocalVoiceEqualization Sets the local voice equalization effect.
setLocalVoicePitch Changes the voice pitch of the local speaker.
setLocalVoiceReverb Sets the local voice reverberation.
setVoiceBeautifierPreset Sets a preset voice beautifier effect.
setVoiceBeautifierParameters Sets parameters for the preset voice beautifier effects.
setAudioEffectPreset Sets an SDK preset audio effect.
setAudioEffectParameters Sets parameters for SDK preset audio effects.
setVoiceConversionPreset Sets a preset voice beautifier effect.
setLocalVoiceFormant Set the formant ratio to change the timbre of human voice.

Pre-call network test

Method Description
startEchoTest Starts an audio device loopback test.
stopEchoTest Stops the audio call test.
startLastmileProbeTest Starts the last mile network probe test.
stopLastmileProbeTest Stops the last mile network probe test.
Event Description
onLastmileQuality Reports the last-mile network quality of the local user.
onLastmileProbeResult Reports the last mile network probe result.

Screen Sharing

Method Description
getScreenCaptureSources Gets a list of shareable screens and windows. (For Windows and macOS only)
startScreenCaptureByWindowId Captures the whole or part of a window by specifying the window ID. (For Windows and macOS only)
startScreenCaptureByScreenRect Captures the whole or part of a screen by specifying the screen rect. (For Windows only)
startScreenCaptureByDisplayId Captures the screen by specifying the display ID. (For Windows and macOS only)
setScreenCaptureContentHint Sets the content hint for screen sharing. (For Windows and macOS only)
updateScreenCaptureRegion Updates the screen capturing region. (For Windows and macOS only)
queryScreenCaptureCapability Queries the highest frame rate supported by the device during screen sharing.(For Android and iOS only)
startScreenCapture Starts screen capture.(For Android and iOS only)
startScreenCaptureBySourceType Starts screen capture. (For Windows and macOS only)
updateScreenCapture Updates the screen capturing parameters.(For Android and iOS only)
updateScreenCaptureParameters Updates the screen capturing parameters. (For Windows and macOS only)
stopScreenCapture Stops screen capture.
stopScreenCaptureBySourceType Stops screen capture. (For Windows and macOS only)
setScreenCaptureScenario Sets the screen sharing scenario. (For Windows and macOS only)

Video dual stream

Method Description
setRemoteVideoStreamType Sets the stream type of the remote video.
setRemoteDefaultVideoStreamType Sets the default stream type of subscrption for remote video streams.
setDualStreamMode Sets dual-stream mode configuration on the sender, and sets the low-quality video stream.

Watermark

Method Description
addVideoWatermark Adds a watermark image to the local video.
clearVideoWatermarks Removes the watermark image from the video stream.

Encryption

Method Description
enableEncryption Enables or disables the built-in encryption.
Event Description
onEncryptionError Reports the built-in encryption errors.

Sound localization

Method Description
enableSoundPositionIndication Enables or disables stereo panning for remote users.
setRemoteVoicePosition Sets the 2D position (the position on the horizontal plane) of the remote user's voice.

Spatial audio effect

Local Cartesian coordinate system calculation solution Description
getLocalSpatialAudioEngine Gets one LocalSpatialAudioEngine object.
initialize Initializes LocalSpatialAudioEngine.
updateSelfPosition Updates the spatial position of the local user.
updateRemotePosition Updates the spatial position of the specified remote user.
removeRemotePosition Removes the spatial position of the specified remote user.
clearRemotePositions Removes the spatial positions of all remote users.

Media push

Method Description
startRtmpStreamWithoutTranscoding Starts pushing media streams to a CDN without transcoding.
startRtmpStreamWithTranscoding Starts Media Push and sets the transcoding configuration.
updateRtmpTranscoding Updates the transcoding configuration.
stopRtmpStream Stops pushing media streams to a CDN.
Event Description
onRtmpStreamingEvent Reports events during the Media Push.
onRtmpStreamingStateChanged Occurs when the state of Media Push changes.
onTranscodingUpdated Occurs when the publisher's transcoding is updated.

Local video transcoder

Method Description
startLocalVideoTranscoder Starts the local video mixing.
stopLocalVideoTranscoder Stops the local video mixing.
updateLocalTranscoderConfiguration Updates the local video mixing configuration.
Event Description
onLocalVideoTranscoderError Occurs when there's an error during the local video mixing.

Channel media stream relay

Method Description
startChannelMediaRelay Starts relaying media streams across channels. This method can be used to implement scenarios such as co-host across channels.
updateChannelMediaRelay Updates the channels for media stream relay.
startOrUpdateChannelMediaRelay Starts relaying media streams across channels or updates channels for media relay.
stopChannelMediaRelay Stops the media stream relay. Once the relay stops, the host quits all the target channels.
pauseAllChannelMediaRelay Pauses the media stream relay to all target channels.
resumeAllChannelMediaRelay Resumes the media stream relay to all target channels.
Event Description
onChannelMediaRelayStateChanged Occurs when the state of the media stream relay changes.
onChannelMediaRelayEvent Reports events during the media stream relay.

Custom audio source

Method Description
createCustomAudioTrack Creates a custom audio track.
destroyCustomAudioTrack Destroys the specified audio track.
setExternalAudioSource Sets the external audio source parameters.
pushAudioFrame Pushes the external audio frame.

Custom audio renderer

Method Description
setExternalAudioSink Sets the external audio sink.
pullAudioFrame Pulls the remote audio data.

Raw audio data

Method Description
registerAudioFrameObserver Registers an audio frame observer object.
setRecordingAudioFrameParameters Sets the format of the captured raw audio data.
setPlaybackAudioFrameParameters Sets the audio data format for playback.
setMixedAudioFrameParameters Sets the audio data format reported by onMixedAudioFrame.
setPlaybackAudioFrameBeforeMixingParameters Sets the audio data format reported by onPlaybackAudioFrameBeforeMixing.
Event Description
onRecordAudioFrame Gets the captured audio frame.
onPlaybackAudioFrame Gets the raw audio frame for playback.
onPlaybackAudioFrameBeforeMixing Retrieves the audio frame of a specified user before mixing.
onMixedAudioFrame Retrieves the mixed captured and playback audio frame.

Encoded audio data

Method Description
registerAudioEncodedFrameObserver Registers an encoded audio observer.
Event Description
onRecordAudioEncodedFrame Gets the encoded audio data of the local user.
onPlaybackAudioEncodedFrame Gets the encoded audio data of all remote users.
onMixedAudioEncodedFrame Gets the mixed and encoded audio data of the local and all remote users.

Audio spectrum

Method Description
registerAudioSpectrumObserver Register an audio spectrum observer.
enableAudioSpectrumMonitor Turns on audio spectrum monitoring.
disableAudioSpectrumMonitor Disables audio spectrum monitoring.
unregisterAudioSpectrumObserver Unregisters the audio spectrum observer.
Event Description
onLocalAudioSpectrum Gets the statistics of a local audio spectrum.
onRemoteAudioSpectrum Gets the remote audio spectrum.

Custom video source

Method Description
createCustomVideoTrack Creates a customized video track.
destroyCustomVideoTrack Destroys the specified video track.

External video source

Method Description
setExternalVideoSource Configures the external video source.
pushVideoFrame Pushes the external raw video frame to the SDK.

Raw video data

Method Description
registerVideoFrameObserver Registers a raw video frame observer object.
Event Description
onCaptureVideoFrame Occurs each time the SDK receives a video frame captured by local devices.
onPreEncodeVideoFrame Occurs each time the SDK receives a video frame before encoding.
onRenderVideoFrame Occurs each time the SDK receives a video frame sent by the remote user.

Encoded video data

Method Description
registerVideoEncodedFrameObserver Registers a receiver object for the encoded video image.
Event Description
onEncodedVideoFrameReceived Reports that the receiver has received the to-be-decoded video frame sent by the remote end.

Extension

Method Description
enableExtension Enables or disables extensions.
setExtensionProperty Sets the properties of the extension.
setExtensionProviderProperty Sets the properties of the extension provider.
getExtensionProperty Gets detailed information on the extensions.
registerExtension Registers an extension. (For Windows only)
Event Description
onExtensionEvent The event callback of the extension.
onExtensionStarted Occurs when the extension is enabled.
onExtensionStopped Occurs when the extension is disabled.
onExtensionError Occurs when the extension runs incorrectly.

Media metadata

Method Description
registerMediaMetadataObserver Registers the metadata observer.
unregisterMediaMetadataObserver Unregisters the specified metadata observer.
setMaxMetadataSize Sets the maximum size of the media metadata.
sendMetaData Sends media metadata.
Event Description
onMetadataReceived Occurs when the local user receives the metadata.

Audio recording

Method Description
startAudioRecording Starts audio recording on the client and sets recording configurations.
stopAudioRecording Stops the audio recording on the client.

Camera management

Method Description
enableMultiCamera Enables or disables multi-camera capture.(For iOS only)
switchCamera Switches between front and rear cameras.(For Android and iOS only)
setCameraDeviceOrientation Sets the rotation angle of the captured video. (For Windows only)
setCameraCapturerConfiguration Sets the camera capture configuration.(For Android and iOS only)
startCameraCapture Starts camera capture.
stopCameraCapture Stops camera capture.
isCameraZoomSupported Checks whether the device supports camera zoom.(For Android and iOS only)
getCameraMaxZoomFactor Gets the maximum zoom ratio supported by the camera.(For Android and iOS only)
setCameraZoomFactor Sets the camera zoom ratio.(For Android and iOS only)
isCameraTorchSupported Checks whether the device supports camera flash.(For Android and iOS only)
setCameraTorchOn Enables the camera flash.(For Android and iOS only)
isCameraFaceDetectSupported Checks whether the device camera supports face detection.(For Android and iOS only)
isCameraFocusSupported Check whether the device supports the manual focus function.(For Android and iOS only)
setCameraFocusPositionInPreview Sets the camera manual focus position.(For Android and iOS only)
isCameraAutoFocusFaceModeSupported Checks whether the device supports the face auto-focus function.(For Android and iOS only)
setCameraAutoFocusFaceModeEnabled Enables the camera auto-face focus function.(For Android and iOS only)
isCameraExposurePositionSupported Checks whether the device supports manual exposure.(For Android and iOS only)
isCameraExposureSupported Queries whether the current camera supports adjusting exposure value.(For Android and iOS only)
isCameraAutoExposureFaceModeSupported Checks whether the device supports auto exposure.(For iOS only)
setCameraExposurePosition Sets the camera exposure position.(For Android and iOS only)
setCameraExposureFactor Sets the camera exposure value.(For Android and iOS only)
setCameraAutoExposureFaceModeEnabled Sets whether to enable auto exposure.(For iOS only)
Event Description
onCameraFocusAreaChanged Occurs when the camera focus area changes.(For Android and iOS only)
onCameraExposureAreaChanged Occurs when the camera exposure area changes.(For Android and iOS only)

Multiple channels

For more methods about multi-channel, see RtcEngineEx.

Method Description
createAgoraRtcEngineEx Creates one RtcEngineEx object.
joinChannelEx Joins a channel with the connection ID.
leaveChannelEx Sets channel options and leaves the channel.

Audio route

This group of methods is for Android and iOS only.

Method Description
setDefaultAudioRouteToSpeakerphone Sets the default audio playback route.
setEnableSpeakerphone Enables/Disables the audio route to the speakerphone.
setRouteInCommunicationMode Selects the audio playback route in communication audio mode.
isSpeakerphoneEnabled Checks whether the speakerphone is enabled.
Event Description
onAudioRoutingChanged Occurs when the local audio route changes.

Volume indication

Method Description
enableAudioVolumeIndication Enables the reporting of users' volume indication.
Event Description
onAudioVolumeIndication Reports the volume information of users.
onActiveSpeaker Occurs when the most active remote speaker is detected.

Data stream

Method Description
createDataStream Creates a data stream.
sendStreamMessage Sends data stream messages.
Event Description
onStreamMessage Occurs when the local user receives the data stream from the remote user.
onStreamMessageError Occurs when the local user does not receive the data stream from the remote user.

Video Device Management

Method Description
enumerateVideoDevices Enumerates the video devices. (For Windows and macOS only)
setDevice Specifies the video capture device with the device ID. (For Windows and macOS only)
getDevice Retrieves the current video capture device. (For Windows and macOS only)
release Releases all the resources occupied by the VideoDeviceManager object. (For Windows and macOS only)
numberOfCapabilities Gets the number of video formats supported by the specified video capture device. (For Windows and macOS only)
getCapability Gets the detailed video frame information of the video capture device in the specified video format. (For Windows and macOS only)
queryCodecCapability Queries the current device's supported video codec capabilities.
Event Description
onVideoDeviceStateChanged Occurs when the video device state changes. (For Windows and macOS only)

Audio Device Management

Method Description
enumeratePlaybackDevices Enumerates the audio playback devices. (For Windows and macOS only)
enumerateRecordingDevices Enumerates the audio capture devices. (For Windows and macOS only)
followSystemPlaybackDevice Sets the audio playback device used by the SDK to follow the system default audio playback device. (For Windows and macOS only)
followSystemRecordingDevice Sets the audio recording device used by the SDK to follow the system default audio recording device. (For Windows and macOS only)
setPlaybackDevice Sets the audio playback device. (For Windows and macOS only)
getPlaybackDevice Retrieves the audio playback device associated with the device ID. (For Windows and macOS only)
getPlaybackDeviceInfo Retrieves the audio playback device associated with the device ID. (For Windows and macOS only)
setLoopbackDevice Sets the loopback device. (For Windows and macOS only)
getLoopbackDevice Gets the current loopback device. (For Windows and macOS only)
followSystemLoopbackDevice Sets whether the loopback device follows the system default playback device. (For Windows and macOS only)
setRecordingDevice Sets the audio capture device. (For Windows and macOS only)
getRecordingDevice Gets the current audio recording device. (For Windows and macOS only)
getRecordingDeviceInfo Retrieves the volume of the audio recording device. (For Windows and macOS only)
setRecordingDeviceVolume Sets the volume of the audio capture device. (For Windows and macOS only)
startPlaybackDeviceTest Starts the audio playback device test. (For Windows and macOS only)
stopPlaybackDeviceTest Stops the audio playback device test. (For Windows and macOS only)
startRecordingDeviceTest Starts the audio capture device test. (For Windows and macOS only)
stopRecordingDeviceTest Stops the audio capture device test. (For Windows and macOS only)
startAudioDeviceLoopbackTest Starts an audio device loopback test. (For Windows and macOS only)
stopAudioDeviceLoopbackTest Stops the audio device loopback test. (For Windows and macOS only)
release Releases all the resources occupied by the AudioDeviceManager object. (For Windows only)

Miscellaneous audio control

Note:

This group of methods is for Windows and macOS only.

Method Description
enableLoopbackRecording Enables loopback audio capturing.

Miscellaneous methods

Method Description
getCurrentMonotonicTimeInMs Gets the current Monotonic Time of the SDK.
setCloudProxy Sets up cloud proxy service.
setParameters Provides technical preview functionalities or special customizations by configuring the SDK with JSON options.
getCallId Retrieves the call ID.
rate Allows a user to rate a call after the call ends.
complain Allows a user to complain about the call quality after a call ends.
getVersion Gets the SDK version.
getErrorDescription Gets the warning or error description.
queryInterface Gets the pointer to the specified interface.
registerEventHandler Adds event handlers
unregisterEventHandler Removes the specified callback handler.
enableVideoImageSource Sets whether to replace the current video feeds with images when publishing video streams.
getNetworkType Gets the type of the local network connection.
getNtpWallTimeInMs Gets the current NTP (Network Time Protocol) time.
setHeadphoneEQPreset Sets the preset headphone equalization effect.
setHeadphoneEQParameters Sets the low- and high-frequency parameters of the headphone equalizer.

Miscellaneous events

Event Description
onProxyConnected Reports the proxy connection state.