diff --git a/en-US/dita/RTC-NG/API/api_imediaengine_createcustomaudiotrack.dita b/en-US/dita/RTC-NG/API/api_imediaengine_createcustomaudiotrack.dita
index 8d2192a304c..af3bbd5a7df 100644
--- a/en-US/dita/RTC-NG/API/api_imediaengine_createcustomaudiotrack.dita
+++ b/en-US/dita/RTC-NG/API/api_imediaengine_createcustomaudiotrack.dita
@@ -42,7 +42,7 @@
To publish a custom audio source, see the following steps:
Before calling this method to push external audio data, perform the following steps:
It can be called either before or after joining the channel.
+This method can be called either before or after joining the channel.
It can be called either before or after joining the channel.
+This method can be called either before or after joining the channel.
Each user can create up to five data streams during the lifecycle of
You can call this method to create a data stream and improve the reliability and ordering of data transmission.
+Whether or not the data stream is reliable:
Sets whether the recipients are guaranteed to receive the data stream within five seconds:
Whether or not the recipients receive the data stream in the sent order:
Sets whether the recipients receive the data stream in the sent order:
Creates a data stream. Each user can create up to five data streams in a single channel.
-Compared with
Compared to
Call this method after joining a channel.
+Each user can create up to five data streams during the lifecycle of
It can be called either before or after joining the channel. It is still valid after one leaves channel.
+This method can be called either before or after joining the channel. It is still valid after one leaves channel.
It can be called either before or after joining the channel. It is still valid after one leaves channel.
+This method can be called either before or after joining the channel. It is still valid after one leaves channel.
It can be called either before or after joining the channel.
+This method can be called either before or after joining the channel.
This method enables or disables in-ear monitoring.
-This method enables or disables in-ear monitoring.
-This method enables or disables in-ear monitoring.
+This method can be called either before or after joining the channel.
+Users must use earphones (wired or Bluetooth) to hear the in-ear monitoring effect.
+When the method call succeeds, there is no return value; when fails, the
You can call this method either before or after joining a channel.
+This method can be called either before or after joining the channel.
+None.
After a remote user joins the channel, the SDK gets the user ID and account of the remote user, caches them in a mapping table object, and triggers the
After a remote user joins the channel, the SDK gets the UID and user account of the remote user, caches them in a mapping table object, and triggers the
Call this method after receiving the
None.
+After a remote user joins the channel, the SDK gets the UID and user account of the remote user, caches them in a mapping table object, and triggers the
Call this method after receiving the
None.
+All called methods provided by the
You can create the
Before calling other APIs, you must call
Before calling other APIs, you must call this method to create the
The SDK supports creating only one
This method releases all resources related to the session.
-This method call is asynchronous. When this method returns, it does not necessarily mean that the user has left the channel.
-Calling this method does not necessarily mean that the user has left the channel.
-After joining the channel, you must call this method or
If you successfully call this method and leave the channel, the following callbacks are triggered:
After calling this method, the SDK terminates the audio and video interaction, leaves the current channel, and releases all resources related to the session.
+After joining the channel, you must call this method to end the call; otherwise, the next call cannot be started.
+This method will release all resources related to the session, leave the channel, that is, hang up or exit the call. This method can be called whether or not a call is currently in progress.
-After joining the channel, you must call this method or to end the call, otherwise, the next call cannot be started.
-This method call is asynchronous. When this method returns, it does not necessarily mean that the user has left the channel. After actually leaving the channel, the local user triggers the
Calling this method does not necessarily mean that the user has left the channel. After actually leaving the channel, the local user triggers the
After calling this method, the SDK terminates the audio and video interaction, leaves the current channel, and releases all resources related to the session.
+After joining a channel, you must call this method or
After joining the channel, you must call this method to end the call; otherwise, the next call cannot be started. If you have called
Call this method after joining a channel.
+If you call
After successfully calling this method, the local user stops or resumes subscribing to the audio streams of all remote users, including all subsequent users.
+After successfully calling this method, the local user stops or resumes subscribing to the video streams of all remote users, including all subsequent users.
By default, the SDK subscribes to the video streams of all remote users when joining a channel. To modify this behavior, you can set
Whether to stop subscribing to the video streams of all remote users.
It can be called either before or after joining the channel.
+This method can be called either before or after joining the channel.
It can be called either before or after joining the channel.
+This method can be called either before or after joining the channel.
If you have already called
This method can be called either before or after joining the channel.
+None.
+Before calling this method to push external audio data, perform the following steps:
Once registered, the user account can be used to identify the local user when the user joins the channel. After the registration is successful, the user account can identify the identity of the local user, and the user can use it to join the channel.
-After the user successfully registers a user account, the SDK triggers the
This method is optional. To join a channel with a user account, you can choose either of the following ways:
The difference between the two ways is that the time elapsed between calling the
This method is optional. If you want to join a channel using a user account, you can choose one of the following methods:
None.
+After initializing the SDK, the default channel profile is the live streaming profile. You can call this method to set the channel profile. The Agora SDK differentiates channel profiles and applies optimization algorithms accordingly. For example, it prioritizes smoothness and low latency for a video call and prioritizes video quality for interactive live video streaming.
-You can call this method to set the channel profile. The SDK adopts different optimization strategies for different channel profiles. For example, in a live streaming scenario, the SDK prioritizes video quality. After initializing the SDK, the default channel profile is the live streaming profile.
+In different channel scenarios, the default audio routing of the SDK is different. See
Ensure that you call this method before joining a channel.
+To ensure the quality of real-time communication, Agora recommends that all users in a channel use the same channel profile.
+When the method call succeeds, there is no return value; when fails, the
In the interactive live streaming profile, the SDK sets the user role as audience by default. You can call this method to set the user role as host.
+By default,the SDK sets the user role as audience. You can call this method to set the user role as host. The user role (
You can call this method either before or after joining a channel.
- -If you call this method to switch the user role after joining a channel, the SDK automatically does the following:
When calling this method before joining a channel and setting the user role to
In the interactive live streaming profile, the SDK sets the user role as audience by default. You can call this method to set the user role as host.
+By default,the SDK sets the user role as audience. You can call this method to set the user role as host. The user role (
The difference between this method and
You can call this method either before or after joining a channel.
-If you call this method to set the user's role as the host before joining the channel and set the local video property through the
If you call this method to switch the user role after joining a channel, the SDK automatically does the following:
The difference between this method and
If you call this method to set the user role as the host before joining the channel and set the local video property through the
If you call this method to set the user role as the host before joining the channel and call the
If you call this method to set the user role after joining a channel, the SDK will automatically call the
When the user role is set to host, the audience latency level can only be set to
When calling this method before joining a channel and setting the
Call this method after joining a channel. After successfully calling this method, the local user stops or resumes subscribing to the audio streams of all subsequent users.
+Call this method after joining a channel. After successfully calling this method, the local user stops or resumes subscribing of all subsequent users.
If you need to resume subscribing to the audio streams of remote users in the channel after calling this method, do the following:
Call this method after joining a channel. After successfully calling this method, the local user stops or resumes subscribing to the audio streams of all subsequent users.
+Call this method after joining a channel. After successfully calling this method, the local user stops or resumes subscribing of all subsequent users.
If you need to resume subscribing to the audio streams of remote users in the channel after calling this method, do the following:
If you need to resume subscribing to the video streams of remote users in the channel after calling this method, do the following:
Whether to stop subscribing to the audio streams of all remote users by default.
Whether to stop subscribing to the video streams of all remote users by default.
It can be called either before or after joining the channel.
+This method can be called either before or after joining the channel.
An unstable network affects the audio and video quality in a video call or interactive live video streaming. If
When the subscribed video stream falls back to an audio-only stream, or recovers from an audio-only stream to an audio-video stream, the SDK triggers the
When the subscribed video stream falls back to an audio-only stream, or recovers from an audio-only stream to an audio-video stream, the SDK triggers the
This method mixes the specified local or online audio file with the audio from the microphone, or replaces the microphone's audio with the specified local or remote audio file. A successful method call triggers the
This method supports playing URI files starting with
Aogra does not support pushing media streams to one URL repeatedly.
Media options
Agora does not support setting the value of
If you want to push audio and video streams published by the host to the CDN, the media setting options should be set as follows:
+If you want to push audio and video streams captured by the host from a custom source, the media setting options should be set as follows:
You can call this method either before or after joining the channel, with the following differences:
You can call this method either before or after joining the channel, with the following differences:
If you start screen capture by calling
If you start screen capture by calling
If you start screen capture by calling
If you start screen capture by calling
If you start screen capture by calling
You can call this method to create a data stream and improve the reliability and ordering of data transmission.
-Sets whether the recipients are guaranteed to receive the data stream from the sender within five seconds:
Sets whether the recipients receive the data stream in the sent order:
Creates a data stream. Each user can create up to five data streams in a single channel.
-Compared with
Compared to
Call this method after
You can call this method either before or after joining a channel.
-This method lets the user leave the channel, for example, by hanging up or exiting the call.
-After calling
This method can be called whether or not a call is currently in progress. This method releases all resources related to the session.
-This method call is asynchronous. When this method returns, it does not necessarily mean that the user has left the channel. After you leave the channel, the SDK triggers the
Calling this method does not necessarily mean that the user has left the channel. After you leave the channel, the SDK triggers the
After actually leaving the channel, the local user triggers the
After calling this method, the SDK terminates the audio and video interaction, leaves the current channel, and releases all resources related to the session.
+After calling
This method can be called in scenarios involving multiple channels.
+Call this method after
This method lets the user leave the channel, for example, by hanging up or exiting the call.
-After calling
This method can be called whether or not a call is currently in progress. This method releases all resources related to the session.
-This method call is asynchronous. When this method returns, it does not necessarily mean that the user has left the channel. After you leave the channel, the SDK triggers the
Calling this method does not necessarily mean that the user has left the channel. After you leave the channel, the SDK triggers the
After actually leaving the channel, the local user triggers the
After calling this method, the SDK terminates the audio and video interaction, leaves the current channel, and releases all resources related to the session.
+After calling
After calling
Call this method after
After successfully calling
After successfully calling
@@ -37,10 +37,20 @@ NS_SWIFT_NAME(rtcEngine(_:didClientRoleChanged:newRole:newRoleOptions:));
The SDK triggers this callback when the local user switches their user role by calling
This callback will be triggered in any of the following situations:
This callback will be triggered in any of the following situations:
This callback will not be triggered when you call
In the live broadcasting channel profile, when the local user calls
This callback informs you about the reason for failing to switching and your current user role.
The SDK triggers this callback when the local user calls
The SDK triggers this callback when the local user calls
None.
+This callback notifies the app that the user leaves the channel by calling
You can obtain information such as the total duration of a call, and the data traffic that the SDK transmits and receives.
The SDK triggers this callback after you call
The SDK triggers this callback after you call
None.
+This callback reports the last mile network conditions of each user in the channel. Last mile refers to the connection between the local device and Agora's edge server.
The SDK triggers this callback once every two seconds. If a channel includes multiple users, the SDK triggers this callback as many times.
+This callback provides feedback on network quality through sending and receiving broadcast packets within the channel. Excessive broadcast packets can lead to broadcast storms. To prevent broadcast storms from causing a large amount of data transmission within the channel, this callback supports feedback on the network quality of up to 4 remote hosts simultaneously by default.
None.
You need to register the callback when calling the
The default types of pixel format (
-
The video frame information.