diff --git a/en-US/dita/RTC-NG/API/api_ibasespatialaudioengine_setzones.dita b/en-US/dita/RTC-NG/API/api_ibasespatialaudioengine_setzones.dita index 825c52c1ec6..5ca874679b2 100644 --- a/en-US/dita/RTC-NG/API/api_ibasespatialaudioengine_setzones.dita +++ b/en-US/dita/RTC-NG/API/api_ibasespatialaudioengine_setzones.dita @@ -46,7 +46,7 @@ zones - Sound insulation area settings. See . When you set this parameter to , it means clearing all sound insulation zones.On the Windows platform, it is necessary to ensure that the number of members in the zones array is equal to the value of zoneCount; otherwise, it may cause a crash. + Sound insulation area settings. See . When you set this parameter to , it means clearing all sound insulation zones.On the Windows platform, it is necessary to ensure that the number of members in the zones array is equal to the value of zoneCount; otherwise, it may cause a crash. zoneCount diff --git a/en-US/dita/RTC-NG/API/api_imediaengine_pushvideoframe.dita b/en-US/dita/RTC-NG/API/api_imediaengine_pushvideoframe.dita index 6c307b430ff..c53783c01c4 100644 --- a/en-US/dita/RTC-NG/API/api_imediaengine_pushvideoframe.dita +++ b/en-US/dita/RTC-NG/API/api_imediaengine_pushvideoframe.dita @@ -32,7 +32,7 @@
Details -
+
Deprecated:
If you need to push video frames in I422 format, you need to use this method; otherwise, use .
diff --git a/en-US/dita/RTC-NG/API/api_imediaengine_registeraudioframeobserver.dita b/en-US/dita/RTC-NG/API/api_imediaengine_registeraudioframeobserver.dita index 50ba2659373..6a6d28f28b3 100644 --- a/en-US/dita/RTC-NG/API/api_imediaengine_registeraudioframeobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediaengine_registeraudioframeobserver.dita @@ -14,7 +14,7 @@

public abstract int registerAudioFrameObserver(IAudioFrameObserver observer); - public abstract registerAudioFrameObserver(observer:IAudioFrameObserver):number; + - (BOOL)setAudioFrameDelegate:(id<AgoraAudioFrameDelegate> _Nullable)delegate; virtual int registerAudioFrameObserver(IAudioFrameObserver* observer) = 0; abstract registerAudioFrameObserver(observer: IAudioFrameObserver): number; diff --git a/en-US/dita/RTC-NG/API/api_imediaengine_registervideoencodedframeobserver.dita b/en-US/dita/RTC-NG/API/api_imediaengine_registervideoencodedframeobserver.dita index d173c514261..cdcff658f94 100644 --- a/en-US/dita/RTC-NG/API/api_imediaengine_registervideoencodedframeobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediaengine_registervideoencodedframeobserver.dita @@ -30,20 +30,10 @@

Details -

If you only want to observe encoded video frames (such as h.264 format) without decoding and rendering the video, Agora recommends that you implement one class through this method.

-

If you want to obtain the original video data of some remote users (referred to as group A) and the encoded video data of other remote users (referred to as group B), you can refer to the following steps:

    -
  1. Call to register the raw video frame observer before joining the channel.
  2. -
  3. Call to register the encoded video frame observer before joining the channel.
  4. -
  5. After joining the channel, get the user IDs of group B users through , and then call to set the encodedFrameOnly of this group of users to .
  6. -
  7. Call ()to start receiving the video streams of all remote users. Then:
      -
    • The raw video data of group A users can be obtained through the callback in , and the SDK renders the data by default.
    • -
    • The encoded video data of group B users can be obtained through the callback in .
    • -
  8. -

+

If you only want to observe encoded video frames (such as H.264 format) without decoding and rendering the video, Agora recommends that you implement one class through this method. For detailed implementation steps, please refer to .

-
    -
  • Call this method before joining a channel.
  • -
+

Call this method before joining a channel.

+
Parameters diff --git a/en-US/dita/RTC-NG/API/api_imediaengine_registervideoframeobserver.dita b/en-US/dita/RTC-NG/API/api_imediaengine_registervideoframeobserver.dita index b1d8860bbcb..8b4f79df006 100644 --- a/en-US/dita/RTC-NG/API/api_imediaengine_registervideoframeobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediaengine_registervideoframeobserver.dita @@ -14,7 +14,7 @@

public abstract int registerVideoFrameObserver(IVideoFrameObserver observer); - public abstract registerVideoFrameObserver(observer:IVideoFrameObserver):number; + - (BOOL)setVideoFrameDelegate:(id<AgoraVideoFrameDelegate> _Nullable)delegate; virtual int registerVideoFrameObserver(IVideoFrameObserver* observer) = 0; abstract registerVideoFrameObserver(observer: IVideoFrameObserver): number; @@ -26,11 +26,10 @@

If you want to observe raw video frames (such as YUV or RGBA format), Agora recommends that you implement one class with this method.

When calling this method to register a video observer, you can register callbacks in the class as needed. After you successfully register the video frame observer, the SDK triggers the registered callbacks each time a video frame is received.

-

Applicable scenarios -

After registering the raw video observer, you can use the obtained raw video data in various video pre-processing scenarios, such as virtual backgrounds and image enhacement by yourself.

+

After registering the raw video observer, you can use the obtained raw video data in various video pre-processing scenarios, such as virtual backgrounds and image enhacement by yourself. For detailed implementation steps, please refer to .

Agora provides an open source sample project on GitHub for your reference.

diff --git a/en-US/dita/RTC-NG/API/api_imediaengine_setexternalvideosource.dita b/en-US/dita/RTC-NG/API/api_imediaengine_setexternalvideosource.dita index 7d1367767d7..4cad6e202ce 100644 --- a/en-US/dita/RTC-NG/API/api_imediaengine_setexternalvideosource.dita +++ b/en-US/dita/RTC-NG/API/api_imediaengine_setexternalvideosource.dita @@ -41,7 +41,8 @@

-

After calling this method to enable an external video source, you can call to push external video data to the SDK.

+

After calling this method to enable an external video source, you can call to push external video data to the SDK.

+

After calling this method to enable an external video source, you can call to push external video data to the SDK.

Call timing diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita index f1c93eea3a8..1a4e73114c1 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita @@ -14,7 +14,7 @@

int adjustPlayoutVolume(int volume); - + public abstract adjustPlayoutVolume(vol: number): number; - (int)adjustPlayoutVolume:(int)volume; virtual int adjustPlayoutVolume(int volume) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita index 5a186d2b161..c1ef7522929 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita @@ -14,7 +14,7 @@

int adjustPublishSignalVolume(int volume); - + public abstract adjustPublishSignalVolume(volume:number):number; - (int)adjustPublishSignalVolume:(int)volume; virtual int adjustPublishSignalVolume(int volume) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getduration.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getduration.dita index e96b18ff592..62a92e710ed 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getduration.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getduration.dita @@ -14,7 +14,7 @@

long getDuration(); - + public abstract getDuration():number; - (NSInteger)getDuration; virtual int getDuration(int64_t& duration) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -40,7 +40,7 @@

  • < 0: Failure. See for details and resolution suggestions.
  • The total duration (ms) of the media file.

    -
      +
      • If the method call succeeds, the SDK returns the total duration(ms) of the media file.
      • < 0: Failure. See for details and resolution suggestions.
    diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getmediaplayerid.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getmediaplayerid.dita index 2e46694ed6d..040b5e66daf 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getmediaplayerid.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getmediaplayerid.dita @@ -14,7 +14,7 @@

    int getMediaPlayerId(); - + public abstract getMediaPlayerId():number; - (int)getMediaPlayerId; virtual int getMediaPlayerId() const = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getmute.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getmute.dita index 4b50dae42a8..5cfdb3134cc 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getmute.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getmute.dita @@ -14,7 +14,7 @@

    boolean getMute(); - + public abstract getMute(): boolean; - (bool)getMute; virtual int getMute(bool& mute) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -43,7 +43,7 @@

  • 0: Success.
  • < 0: Failure. See for details and resolution suggestions.
  • -
      +
      • : Reports whether the media resource is muted.
      • : Reports whether the media resource is muted.
    diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getplayoutvolume.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getplayoutvolume.dita index 543ba8080f9..1f8031578e4 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getplayoutvolume.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getplayoutvolume.dita @@ -14,7 +14,7 @@

    int getPlayoutVolume(); - + public abstract getPlayoutVolume():number - (int)getPlayoutVolume; virtual int getPlayoutVolume(int& volume) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -42,7 +42,7 @@

  • 0: Success.
  • < 0: Failure. See for details and resolution suggestions.
  • -

    The local playback volume, which ranges from 0 to 100.

      +

      The local playback volume, which ranges from 0 to 100.

      • 0: Mute.
      • 100: (Default) The original volume.

    diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getplayposition.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getplayposition.dita index 1c5a05423d9..ee88b0cb3b9 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getplayposition.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getplayposition.dita @@ -14,7 +14,7 @@

    long getPlayPosition(); - + public abstract getPlayPosition():number; - (NSInteger)getPosition; virtual int getPlayPosition(int64_t& pos) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getplaysrc.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getplaysrc.dita index f0d26bdbb22..73b55fc7767 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getplaysrc.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getplaysrc.dita @@ -14,7 +14,7 @@

    String getPlaySrc(); - + public abstract getPlaySrc():string; - (NSString *)getPlaySrc; virtual const char* getPlaySrc() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getpublishsignalvolume.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getpublishsignalvolume.dita index f33aa8f952d..baae46914df 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getpublishsignalvolume.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getpublishsignalvolume.dita @@ -14,7 +14,7 @@

    int getPublishSignalVolume(); - + public abstract getPublishSignalVolume():number; - (int)getPublishSignalVolume; virtual int getPublishSignalVolume(int& volume) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -39,7 +39,7 @@

  • 0: Success.
  • < 0: Failure. See for details and resolution suggestions.
  • -
      +
      • ≥ 0: The remote playback volume.
      • < 0: Failure. See for details and resolution suggestions.
    diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getstate.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getstate.dita index be2d8f69cb7..15c89442e03 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getstate.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getstate.dita @@ -14,7 +14,7 @@

    Constants.MediaPlayerState getState(); - + public abstract getState():Constants.MediaPlayerState; - (AgoraMediaPlayerState)getPlayerState; virtual media::base::MEDIA_PLAYER_STATE getState() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getstreamcount.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getstreamcount.dita index 34a3b96dc01..0e732095124 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getstreamcount.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getstreamcount.dita @@ -14,7 +14,7 @@

    int getStreamCount(); - + public abstract getStreamCount():number; - (NSInteger)getStreamCount; virtual int getStreamCount(int64_t& count) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita index 057f61bd2c2..74b8f0ead71 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita @@ -14,7 +14,7 @@

    MediaStreamInfo getStreamInfo(int index); - + public abstract getStreamInfo(index:number):MediaStreamInfo|undefined; - (AgoraMediaStreamInfo *_Nullable)getStreamByIndex:(int)index; virtual int getStreamInfo(int64_t index, media::base::PlayerStreamInfo* info) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -40,7 +40,7 @@ index The index of the media stream. This parameter needs to be less than the count parameter of . - The index of the media stream. This parameter must be less than the return value of . + The index of the media stream. This parameter must be less than the return value of . info diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_mute.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_mute.dita index 300e99453c5..3aa1d15a4e3 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_mute.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_mute.dita @@ -14,7 +14,7 @@

    int mute(boolean muted); - + public abstract mute(muted:boolean) : number; - (int)mute:(bool)isMute NS_SWIFT_NAME(mute(_:)); virtual int mute(bool muted) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_open.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_open.dita index 47a1e828ec3..2fd75613045 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_open.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_open.dita @@ -15,7 +15,7 @@

    int open(String url, long startPos); - + public abstract open(url:string, startPos:number):number; - (int)open:(NSString *)url startPos:(NSInteger)startPos; virtual int open(const char* url, int64_t startPos) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_openwithmediasource.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_openwithmediasource.dita index 5afe98595db..1faa659d767 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_openwithmediasource.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_openwithmediasource.dita @@ -14,7 +14,7 @@

    int openWithMediaSource(MediaPlayerSource source); - + public abstract openWithMediaSource(source: MediaPlayerSource) :number ; - (int)openWithMediaSource:(AgoraMediaSource *)source; virtual int openWithMediaSource(const media::base::MediaSource &source) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_pause.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_pause.dita index 77f451f49f3..685fb532187 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_pause.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_pause.dita @@ -15,7 +15,7 @@

    int pause(); - + public abstract pause(): number; - (int)pause; virtual int pause() = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_play.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_play.dita index aad566ba837..fa7764aa871 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_play.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_play.dita @@ -14,7 +14,7 @@

    int play(); - + public abstract play(): number; - (int)play; virtual int play() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_playpreloadedsrc.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_playpreloadedsrc.dita index 39c5f7f0930..84126f06452 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_playpreloadedsrc.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_playpreloadedsrc.dita @@ -15,7 +15,7 @@

    int playPreloadedSrc(String src); - + public abstract playPreloadedSrc(src:string):number; - (int)playPreloadedSrc:(NSString *)src; virtual int playPreloadedSrc(const char* src) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_preloadsrc.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_preloadsrc.dita index 45a7777dc88..520ee67f8c8 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_preloadsrc.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_preloadsrc.dita @@ -15,7 +15,7 @@

    int preloadSrc(String src, long startPos); - + public abstract preloadSrc(src:string, startPos:number):number; - (int)preloadSrc:(NSString *)src startPos:(int)startPos; virtual int preloadSrc(const char* src, int64_t startPos) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_registeraudioframeobserver2.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_registeraudioframeobserver2.dita index 2c62fbcddd3..2c8c3d4c237 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_registeraudioframeobserver2.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_registeraudioframeobserver2.dita @@ -15,7 +15,7 @@

    int registerAudioFrameObserver(IMediaPlayerAudioFrameObserver audioFrameObserver, int mode); - public abstract registerAudioFrameObserver(observer:IAudioFrameObserver):number; + virtual int registerAudioFrameObserver(media::IAudioPcmFrameSink* observer, RAW_AUDIO_FRAME_OP_MODE_TYPE mode) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita index f2a50b96f9a..1efb08f59ab 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita @@ -15,7 +15,7 @@

    int registerPlayerObserver(IMediaPlayerObserver playerObserver); - + public abstract registerPlayerObserver(playerObserver:IMediaPlayerObserver); virtual int registerPlayerSourceObserver(IMediaPlayerSourceObserver* observer) = 0; UFUNCTION(BlueprintPure, Category = "Agora|IRtcEngine") @@ -51,7 +51,7 @@

    <ph keyref="return-section-title"/>

    When the method call succeeds, there is no return value; when fails, the exception is thrown. You need to catch the exception and handle it accordingly. See for details and resolution suggestions.

    -
      +
      • 0: Success.
      • < 0: Failure. See for details and resolution suggestions.
      diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_registervideoframeobserver.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_registervideoframeobserver.dita index 3995bba98d9..32440e33a9f 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_registervideoframeobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_registervideoframeobserver.dita @@ -14,7 +14,7 @@

      int registerVideoFrameObserver(IMediaPlayerVideoFrameObserver videoFrameObserver); - public abstract registerVideoFrameObserver(observer:IVideoFrameObserver):number; + virtual int registerVideoFrameObserver(media::base::IVideoFrameObserver* observer) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_resume.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_resume.dita index 545412ebd82..7ecc871b961 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_resume.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_resume.dita @@ -14,7 +14,7 @@

      int resume(); - + public abstract resume(): number; - (int)resume; virtual int resume() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_seek.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_seek.dita index d1e4ff2afaa..41d7993ee25 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_seek.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_seek.dita @@ -15,7 +15,7 @@

      int seek(long newPos); - + public abstract seek(newPos: number): number; - (void)seekToPosition:(NSInteger)position; virtual int seek(int64_t newPos) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_selectaudiotrack.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_selectaudiotrack.dita index fde50ad5649..ed10f5d6df0 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_selectaudiotrack.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_selectaudiotrack.dita @@ -14,7 +14,7 @@

      int selectAudioTrack(int index); - + public abstract selectAudioTrack(index: number): number; - (int)selectAudioTrack:(int)index; virtual int selectAudioTrack(int index) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_selectmultiaudiotrack.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_selectmultiaudiotrack.dita index 8915f1b8e4e..6d638bebc51 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_selectmultiaudiotrack.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_selectmultiaudiotrack.dita @@ -14,7 +14,7 @@

      int selectMultiAudioTrack(int playoutTrackIndex, int publishTrackIndex); - + public abstract selectMultiAudioTrack(playoutTrackIndex:number, publishTrackIndex: number): number; - (int)selectMultiAudioTrack:(NSInteger)playoutTrackIndex publishTrackIndex:(NSInteger)publishTrackIndex NS_SWIFT_NAME(selectMultiAudioTrack(_:publishTrackIndex:)); virtual int selectMultiAudioTrack(int playoutTrackIndex, int publishTrackIndex) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiodualmonomode.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiodualmonomode.dita index cafb4c78afd..b463081ae45 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiodualmonomode.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiodualmonomode.dita @@ -14,7 +14,7 @@

      int setAudioDualMonoMode(int mode); - + public abstract setAudioDualMonoMode(mode:Constants.AudioDualMonoMode):number; - (int)setAudioDualMonoMode:(AgoraAudioDualMonoMode)mode; virtual int setAudioDualMonoMode(agora::media::base::AUDIO_DUAL_MONO_MODE mode) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -38,7 +38,7 @@ mode - The channel mode. See .

        + The channel mode. See .
        • (0): Original mode.
        • (1): Left channel mode. This mode replaces the audio of the right channel with the audio of the left channel, which means the user can only hear the audio of the left channel.
        • (2): Right channel mode. This mode replaces the audio of the left channel with the audio of the right channel, which means the user can only hear the audio of the right channel.
        • diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiopitch.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiopitch.dita index 252b47a2349..2377cbd19d6 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiopitch.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setaudiopitch.dita @@ -14,7 +14,7 @@

          int setAudioPitch(int pitch); - + public abstract setAudioPitch(pitch:number): number; - (int)setAudioPitch:(NSInteger)pitch; virtual int setAudioPitch(int pitch) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") @@ -31,10 +31,14 @@

          Parameters - + + + pitch + Sets the pitch of the local music file by the chromatic scale. The default value is 0, which means keeping the original pitch. The value ranges from -12 to 12, and the pitch value between consecutive values is a chromatic value. The greater the absolute value of this parameter, the higher or lower the pitch of the local music file. +
          <ph keyref="return-section-title"/> @@ -44,4 +48,4 @@
        • < 0: Failure. See for details and resolution suggestions.
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setloopcount.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setloopcount.dita index f281bf20dfa..318a911e801 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setloopcount.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setloopcount.dita @@ -15,7 +15,7 @@

      int setLoopCount(int loopCount); - + public abstract setLoopCount(loopCount:number):number; - (void)setLoopCount:(NSInteger)loopCount; virtual int setLoopCount(int loopCount) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setplaybackspeed.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setplaybackspeed.dita index de0a75ef2f1..f6e0465ea6e 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setplaybackspeed.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setplaybackspeed.dita @@ -14,7 +14,7 @@

      int setPlaybackSpeed(int speed); - + public abstract setPlaybackSpeed(speed: number) : number; - (int)setPlaybackSpeed:(int)speed; virtual int setPlaybackSpeed(int speed) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita index d941c2ab88b..5f555d6ee40 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita @@ -14,7 +14,7 @@

      int setPlayerOption(String key, int value); - + public abstract setPlayerOption(key:string, value:number); - (int)setPlayerOption:(NSString *)key value:(NSInteger)value NS_SWIFT_NAME(setPlayerOption(_:value:)); virtual int setPlayerOption(const char* key, int64_t value) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita index 275fee09c2e..93109388547 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita @@ -14,7 +14,7 @@

      int setPlayerOptionString(String key, String value); - + public abstract setPlayerOptionString(key:string, value:string): number; - (int)setPlayerOptionString:(NSString *)key value:(NSString *)value NS_SWIFT_NAME(setPlayerOptionString(_:value:)); virtual int setPlayerOption(const char* key, const char* value) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setrendermode.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setrendermode.dita index 54477fa0c1e..de1980909bd 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setrendermode.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setrendermode.dita @@ -15,7 +15,7 @@

      int setRenderMode(int mode); - + public abstract setRenderMode(mode:number):number; - (void)setRenderMode:(AgoraMediaPlayerRenderMode)mode; virtual int setRenderMode(media::base::RENDER_MODE_TYPE renderMode) = 0; @@ -32,7 +32,7 @@ renderMode - mode + mode

      Sets the render mode of the view. See .

      Sets the render mode of the view:

        diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_setview.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_setview.dita index 9c7ebcdf393..c1d212059b8 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_setview.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_setview.dita @@ -15,7 +15,7 @@

        int setView(View videoView); - + public abstract setView(view:string):number; - (void)setView:(View *_Nullable)view; virtual int setView(media::base::view_t view) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_stop.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_stop.dita index 0257a757cb3..930eae46b70 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_stop.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_stop.dita @@ -15,7 +15,7 @@

        int stop(); - + public abstract stop(): number; - (void)stop; virtual int stop() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_switchsrc.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_switchsrc.dita index 4d5698ee04b..5bf67c40f1d 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_switchsrc.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_switchsrc.dita @@ -15,7 +15,7 @@

        int switchSrc(String src, boolean syncPts); - + public abstract switchSrc(src:string, syncPts:boolean):number; - (int)switchSrc:(NSString *)src syncPts:(BOOL)sync; virtual int switchSrc(const char* src, bool syncPts) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_unloadsrc.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_unloadsrc.dita index bbe9f21d5a8..9c493a444ad 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_unloadsrc.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_unloadsrc.dita @@ -15,7 +15,7 @@

        int unloadSrc(String src); - + public abstract unloadSrc(src:string):number; - (int)unloadSrc:(NSString *)src; virtual int unloadSrc(const char* src) = 0; diff --git a/en-US/dita/RTC-NG/API/api_imediaplayer_unregisterplayersourceobserver.dita b/en-US/dita/RTC-NG/API/api_imediaplayer_unregisterplayersourceobserver.dita index ab17093aaf0..5381347c620 100644 --- a/en-US/dita/RTC-NG/API/api_imediaplayer_unregisterplayersourceobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediaplayer_unregisterplayersourceobserver.dita @@ -14,7 +14,7 @@

        int unRegisterPlayerObserver(IMediaPlayerObserver playerObserver); - + public abstract unRegisterPlayerObserver(); virtual int unregisterPlayerSourceObserver(IMediaPlayerSourceObserver* observer) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IMediaPlayer") diff --git a/en-US/dita/RTC-NG/API/api_imediarecorder_enablemainqueuedispatch.dita b/en-US/dita/RTC-NG/API/api_imediarecorder_enablemainqueuedispatch.dita index 5935f98a089..55aae955583 100644 --- a/en-US/dita/RTC-NG/API/api_imediarecorder_enablemainqueuedispatch.dita +++ b/en-US/dita/RTC-NG/API/api_imediarecorder_enablemainqueuedispatch.dita @@ -1,12 +1,12 @@ - <ph keyref="enableMainQueueDispatch" /> + <ph keyref="enableMainQueueDispatch_IMediaRecorder"/> Enables/Disables dispatching delegate methods to the main queue. - + @@ -25,7 +25,7 @@

        Details -

        If disabled, the app should dispatch UI operations to the main queue.

        +

        If disabled, the app should dispatch UI operations to the main queue.

        Parameters @@ -34,8 +34,8 @@ enabled
          -
        • : Dispatch delegate methods to the main queue.
        • -
        • : Do not dispatch delegate methods to the main queue.
        • +
        • : Dispatch delegate methods to the main queue.
        • +
        • : Do not dispatch delegate methods to the main queue.
        @@ -44,8 +44,8 @@ Returns
        • 0: Success.
        • -
        • < 0: Failure.
        • +
        • < 0: Failure. See for details and resolution suggestions.
        - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_imediarecorder_removealllisteners.dita b/en-US/dita/RTC-NG/API/api_imediarecorder_removealllisteners.dita index 44a2ac1905b..6b8fb80f9e3 100644 --- a/en-US/dita/RTC-NG/API/api_imediarecorder_removealllisteners.dita +++ b/en-US/dita/RTC-NG/API/api_imediarecorder_removealllisteners.dita @@ -1,12 +1,12 @@ - <ph keyref="removeAllListeners_IMediaRecorder" /> + <ph keyref="removeAllListeners_IMediaRecorder"/> Removes all listeners for the specified event. - + @@ -30,9 +30,9 @@ Parameters - - + +
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_imediarecorder_setmediarecorderobserver.dita b/en-US/dita/RTC-NG/API/api_imediarecorder_setmediarecorderobserver.dita index 3499845d43d..c048b42c02f 100644 --- a/en-US/dita/RTC-NG/API/api_imediarecorder_setmediarecorderobserver.dita +++ b/en-US/dita/RTC-NG/API/api_imediarecorder_setmediarecorderobserver.dita @@ -39,7 +39,7 @@ Parameters - callback + callback delegate The callbacks for recording audio and video streams. See . diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_adjustrecordingsignalvolume.dita b/en-US/dita/RTC-NG/API/api_irtcengine_adjustrecordingsignalvolume.dita index 046da6426ff..7ed3cd71c84 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_adjustrecordingsignalvolume.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_adjustrecordingsignalvolume.dita @@ -26,7 +26,7 @@

      -

      If you only need to mute the audio signal, Agora recommends that you use instead.

      +

      If you only need to mute the audio signal, Agora recommends that you use instead.

      Call timing @@ -58,4 +58,4 @@
    • < 0: Failure. See for details and resolution suggestions.
    - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_adjustuserplaybacksignalvolume.dita b/en-US/dita/RTC-NG/API/api_irtcengine_adjustuserplaybacksignalvolume.dita index fa3634f69f8..1dd1e40cb40 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_adjustuserplaybacksignalvolume.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_adjustuserplaybacksignalvolume.dita @@ -14,7 +14,7 @@

    public abstract int adjustUserPlaybackSignalVolume(int uid, int volume); - + public abstract adjustUserPlaybackSignalVolume(uid:number,volume:number):number; - (int)adjustUserPlaybackSignalVolume:(NSUInteger)uid volume:(int)volume; virtual int adjustUserPlaybackSignalVolume(unsigned int uid, int volume) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_clearvideowatermarks.dita b/en-US/dita/RTC-NG/API/api_irtcengine_clearvideowatermarks.dita index e50940a13a3..78580300ac6 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_clearvideowatermarks.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_clearvideowatermarks.dita @@ -14,7 +14,7 @@

    public abstract int clearVideoWatermarks(); - public abstract clearVideoWatermarks(): number; + - (int)clearVideoWatermarks; virtual int clearVideoWatermarks() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_createcustomvideotrack.dita b/en-US/dita/RTC-NG/API/api_irtcengine_createcustomvideotrack.dita index c136755b929..e688fcfb017 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_createcustomvideotrack.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_createcustomvideotrack.dita @@ -30,7 +30,7 @@

    To publish a custom video source, see the following steps:

    1. Call this method to create a video track and get the video track ID.
    2. Call to join the channel. In , set customVideoTrackId to the video track ID that you want to publish, and set publishCustomVideoTrack to .
    3. -
    4. Call and specify videoTrackId as the video track ID set in step 2. You can then publish the corresponding custom video source in the channel.
    5. +
    6. Call and specify videoTrackId as the video track ID set in step 2. You can then publish the corresponding custom video source in the channel.

    diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_createdatastream2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_createdatastream2.dita index e020f04dced..f08590cdd26 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_createdatastream2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_createdatastream2.dita @@ -27,7 +27,7 @@

    -

    Compared to , this method does not guarantee the reliability of data transmission. If a data packet is not received five seconds after it was sent, the SDK directly discards the data.

    +

    Compared to , this method does not guarantee the reliability of data transmission. If a data packet is not received five seconds after it was sent, the SDK directly discards the data.

    Call timing diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_createmediaplayer.dita b/en-US/dita/RTC-NG/API/api_irtcengine_createmediaplayer.dita index 69fa4c62ebe..2dd904a641b 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_createmediaplayer.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_createmediaplayer.dita @@ -2,7 +2,7 @@ <ph keyref="createMediaPlayer" /> - Creates a media player object. Creates a media player instance. + Creates a media player object. Creates a media player instance. @@ -14,7 +14,7 @@

    public abstract IMediaPlayer createMediaPlayer(); - + public abstract createMediaPlayer():IMediaPlayer|undefined; - (id<AgoraRtcMediaPlayerProtocol>_Nullable)createMediaPlayerWithDelegate: (id<AgoraRtcMediaPlayerDelegate>_Nullable)delegate; virtual agora_refptr <IMediaPlayer> createMediaPlayer() = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_destroycustomvideotrack.dita b/en-US/dita/RTC-NG/API/api_irtcengine_destroycustomvideotrack.dita index 002d7fd5da7..edc8ca96d8e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_destroycustomvideotrack.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_destroycustomvideotrack.dita @@ -30,7 +30,7 @@ video_track_id - videoTrackId + videoTrackId The video track ID returned by calling the method.

    diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_destroymediaplayer.dita b/en-US/dita/RTC-NG/API/api_irtcengine_destroymediaplayer.dita index f3f6502c803..1b33cfa2d8e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_destroymediaplayer.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_destroymediaplayer.dita @@ -15,7 +15,7 @@

    int destroy(); - + public abstract destroy():number; - (int)destroyMediaPlayer:(id<AgoraRtcMediaPlayerProtocol>_Nullable)mediaPlayer; virtual int destroyMediaPlayer(agora_refptr<IMediaPlayer> media_player) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_destroymediarecorder.dita b/en-US/dita/RTC-NG/API/api_irtcengine_destroymediarecorder.dita index f8507be2bb4..2dc54686933 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_destroymediarecorder.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_destroymediarecorder.dita @@ -38,8 +38,9 @@ Parameters - mediaRecorder - The recording object to be destroyed. + mediaRecorder + recorder + 待销毁的 对象。

    diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enablecontentinspect.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enablecontentinspect.dita index 75d90f09440..6f41b52b945 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enablecontentinspect.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enablecontentinspect.dita @@ -14,7 +14,7 @@

    public abstract int enableContentInspect(boolean enabled, ContentInspectConfig config); - + public abstract enableContentInspect(enabled:boolean,config:ContentInspectConfig):number; - (int)enableContentInspect:(BOOL)enabled config:(AgoraContentInspectConfig* _Nonnull)config; virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") @@ -41,7 +41,10 @@

    Restrictions -

    Before calling this method, ensure that you have contacted to activate the video screenshot upload service.

    +
      +
    • Before calling this method, ensure that you have contacted to activate the video screenshot upload service.
    • +
    • When the video moderation module is set to video moderation via Agora self-developed extension(), the video screenshot and upload dynamic library is required. Deleting this library disables the screenshot and upload feature.
    • +
    Parameters @@ -55,8 +58,7 @@ config - Screenshot and upload configuration. See .When the video moderation module is set to video moderation via Agora self-developed extension(), the video screenshot and upload dynamic library is required. Deleting this library disables the screenshot and upload feature. - + Screenshot and upload configuration. See .
    diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enabledualstreammode2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enabledualstreammode2.dita index a279d9a3bad..92c60810914 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enabledualstreammode2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enabledualstreammode2.dita @@ -47,7 +47,7 @@
    • This method is applicable to all types of streams from the sender, including but not limited to video streams collected from cameras, screen sharing streams, and custom-collected video streams.
    • -
    • If you need to enable dual video streams in a multi-channel scenario, you can call the method.
    • +
    • If you need to enable dual video streams in a multi-channel scenario, you can call the method.
    • You can call this method either before or after joining a channel.
    @@ -76,4 +76,4 @@
  • < 0: Failure. See for details and resolution suggestions.
  • - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enableextension.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enableextension.dita index 8fba4bd0bb1..1701e0720b5 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enableextension.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enableextension.dita @@ -15,7 +15,7 @@

    public abstract int enableExtension( String provider, String extension, boolean enable, Constants.MediaSourceType sourceType); - public abstract enableExtension(provider:string,extension:string,enable:boolean,extensionInfo:ExtensionInfo):number; + - (int)enableExtensionWithVendor:(NSString * __nonnull)provider extension:(NSString * __nonnull)extension enabled:(BOOL)enabled diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enablefacedetection.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enablefacedetection.dita index 488d0cdbdad..07698ac4441 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enablefacedetection.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enablefacedetection.dita @@ -49,7 +49,7 @@ enable - enabled + enabled Whether to enable face detection for the local user:

    • : Enable face detection.
    • : (Default) Disable face detection.
    • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enableinearmonitoring2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enableinearmonitoring2.dita index 1c8bc6ebf25..69d9f8583d2 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enableinearmonitoring2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enableinearmonitoring2.dita @@ -14,7 +14,7 @@

      public abstract int enableInEarMonitoring(boolean enabled, int includeAudioFilters); - public abstract enableInEarMonitoring(enabled: boolean, includeAudioFilters: number): number; + public abstract enableInEarMonitoring(enabled: boolean, includeAudioFilters?: Constants.EarMontoringFilterType): number; - (int)enableInEarMonitoring:(BOOL)enabled includeAudioFilters:(AgoraEarMonitoringFilterType)includeAudioFilters; virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") @@ -56,7 +56,7 @@ includeAudioFilters - The audio filter types of in-ear monitoring. See . + The audio filter types of in-ear monitoring. See . The audio filter types of in-ear monitoring:

      • (1 << 0): No audio filter added to in-ear monitoring.
      • (1 << 1): Add vocal effects audio filter to in-ear monitoring. If you implement functions such as voice beautifier and audio effect, users can hear the voice after adding these effects. This enumerator supports combination using the bitwise OR operator (|).
      • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enableinstantmediarendering.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enableinstantmediarendering.dita index 84e94ccbaa5..416d38f403c 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enableinstantmediarendering.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enableinstantmediarendering.dita @@ -39,7 +39,7 @@
      Call timing -

      Agora recommends that you call this method before joining a channel.

      +

      Call this method before joining a channel.

      Restrictions diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enablelocalaudio.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enablelocalaudio.dita index 17bd429f6af..7e914640742 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enablelocalaudio.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enablelocalaudio.dita @@ -34,7 +34,7 @@
      Applicable scenarios -

      This method does not affect receiving the remote audio streams, and () is applicable to scenarios where the user wants to receive remote audio streams without sending any audio stream to other users in the channel.

      +

      This method does not affect receiving the remote audio streams. () is suitable for scenarios where the user wants to receive remote audio streams without sending locally captured audio.

      Call timing diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground2.dita index e04af26c525..921ca27d290 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground2.dita @@ -29,7 +29,7 @@
      Details

      The virtual background feature enables the local user to replace their original background with a static image, dynamic video, blurred background, or portrait-background segmentation to achieve picture-in-picture effect. Once the virtual background feature is enabled, all users in the channel can see the custom background.

      -

      Both this method and enable/disable virtual background, but this method allows you to specify the media source to which the virtual background is applied.

      +

      Both this method and enable/disable virtual background, but this method allows you to specify the media source to which the virtual background is applied.

      Call this method after calling or .

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita index 0abc78c7a07..a37a4d3845c 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita @@ -14,7 +14,7 @@

      public abstract int getAudioMixingPlayoutVolume(); - + public abstract getAudioMixingPlayoutVolume():number; - (int)getAudioMixingPlayoutVolume; virtual int getAudioMixingPlayoutVolume() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingpublishvolume.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingpublishvolume.dita index 448ff6b9937..546a6225443 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingpublishvolume.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getaudiomixingpublishvolume.dita @@ -14,7 +14,7 @@

      public abstract int getAudioMixingPublishVolume(); - + public abstract getAudioMixingPublishVolume():number; - (int)getAudioMixingPublishVolume; virtual int getAudioMixingPublishVolume() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getcallid.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getcallid.dita index 26a1669344a..5ca2d1a95c7 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getcallid.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getcallid.dita @@ -26,7 +26,7 @@

      -

      When a user joins a channel on a client, a callId is generated to identify the call from the client. You can call this method to get the callId parameter, and pass it in when calling methods such as and .

      +

      When a user joins a channel on a client, a callId is generated to identify the call from the client. You can call this method to get callId, and pass it in when calling methods such as and .

      Call timing diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getcameramaxzoomfactor.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getcameramaxzoomfactor.dita index 6a54fb71181..738b8fb1026 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getcameramaxzoomfactor.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getcameramaxzoomfactor.dita @@ -14,7 +14,7 @@

      public abstract float getCameraMaxZoomFactor(); - public abstract getCameraMaxZoomFactor():number; + public abstract getCameraMaxZoomFactor(): number; - (CGFloat)cameraMaxZoomFactor; virtual float getCameraMaxZoomFactor() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getconnectionstate.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getconnectionstate.dita index 82d2b7add0f..220155a8068 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getconnectionstate.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getconnectionstate.dita @@ -25,6 +25,7 @@ Future<ConnectionStateType> getConnectionState();

      +
      Call timing

      This method can be called either before or after joining the channel.

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_geterrordescription.dita b/en-US/dita/RTC-NG/API/api_irtcengine_geterrordescription.dita index d6be7080d09..0165ecded3a 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_geterrordescription.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_geterrordescription.dita @@ -14,7 +14,9 @@

      public static String getErrorDescription(int error) - + public static getErrorDescription(error: number): string { + return RtcEngineImpl.getErrorDescriptionInternal(error); +} + (NSString* _Nonnull)getErrorDescription: (NSInteger)error; virtual const char* getErrorDescription(int code) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") @@ -30,13 +32,13 @@ code - error - The error code or warning code reported by the SDK. + error + The error code reported by the SDK.

      Returns -

      The specific error or warning description.

      +

      The specific error description.

      \ No newline at end of file diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getnativehandle.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getnativehandle.dita index c9f8ff09961..4e7c1ab4830 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getnativehandle.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getnativehandle.dita @@ -37,7 +37,7 @@
      Returns -

      The native handle of the SDK.

      +

      The native handle of the SDK.

      • 0: Success.
      • < 0: Failure. See for details and resolution suggestions.
      • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_getversion.dita b/en-US/dita/RTC-NG/API/api_irtcengine_getversion.dita index 524e1984459..734171a2018 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_getversion.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_getversion.dita @@ -14,7 +14,9 @@

        public static String getSdkVersion() - + public static getSdkVersion(): string { + return RtcEngineImpl.getRtcSdkVersion(); +} + (NSString * _Nonnull)getSdkVersion; virtual const char* getVersion(int* build) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_initialize.dita b/en-US/dita/RTC-NG/API/api_irtcengine_initialize.dita index 6158786ca4d..8a6dc4455c0 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_initialize.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_initialize.dita @@ -2,7 +2,7 @@ <ph keyref="initialize"/> - Creates and initializes . Initializes . + Creates and initializes . Initializes . @@ -15,7 +15,9 @@

        public static synchronized RtcEngine create(RtcEngineConfig config) throws Exception {} - + public static create(config: RtcEngineConfig): RtcEngine { + return RtcEngineImpl.createEngineImpl(config); + } + (instancetype _Nonnull)sharedEngineWithConfig:(AgoraRtcEngineConfig * _Nonnull)config delegate:(id<AgoraRtcEngineDelegate> _Nullable)delegate; virtual int initialize(const RtcEngineContext& context) = 0; @@ -34,7 +36,7 @@

        Call timing

        Before calling other APIs, you must call and to create and initialize the object.

        -

        Before calling other APIs, you must call this method to create the object.

        +

        Before calling other APIs, you must call this method to create the object.

        Restrictions @@ -45,7 +47,7 @@ context - config + config

        Configurations for the instance. See .

        diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_iscameraautofocusfacemodesupported.dita b/en-US/dita/RTC-NG/API/api_irtcengine_iscameraautofocusfacemodesupported.dita index dc8d7fa7c4a..1a6f2705289 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_iscameraautofocusfacemodesupported.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_iscameraautofocusfacemodesupported.dita @@ -14,7 +14,7 @@

        public abstract boolean isCameraAutoFocusFaceModeSupported(); - + public abstract isCameraAutoFocusFaceModeSupported(): boolean; - (BOOL)isCameraAutoFocusFaceModeSupported; virtual bool isCameraAutoFocusFaceModeSupported() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposurepositionsupported.dita b/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposurepositionsupported.dita index f8538e58767..c000d56690e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposurepositionsupported.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposurepositionsupported.dita @@ -14,7 +14,7 @@

        public abstract boolean isCameraExposurePositionSupported(); - + public abstract isCameraExposurePositionSupported(): boolean; - (BOOL)isCameraExposurePositionSupported; virtual bool isCameraExposurePositionSupported() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposuresupported.dita b/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposuresupported.dita index acf851bb8f7..e9e34c44a78 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposuresupported.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_iscameraexposuresupported.dita @@ -14,7 +14,7 @@

        public abstract boolean isCameraExposureSupported(); - + public abstract isCameraExposureSupported(): boolean; - (BOOL)isCameraExposureSupported NS_SWIFT_NAME(isCameraExposureSupported()); virtual bool isCameraExposureSupported() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_iscamerafacedetectsupported.dita b/en-US/dita/RTC-NG/API/api_irtcengine_iscamerafacedetectsupported.dita index 1c03b0c5eca..6a5c609c500 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_iscamerafacedetectsupported.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_iscamerafacedetectsupported.dita @@ -14,7 +14,7 @@

        public abstract boolean isCameraFaceDetectSupported(); - + public abstract isCameraFaceDetectSupported(): boolean; virtual bool isCameraFaceDetectSupported() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_iscamerazoomsupported.dita b/en-US/dita/RTC-NG/API/api_irtcengine_iscamerazoomsupported.dita index f51be5d5d4c..d8491c274d3 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_iscamerazoomsupported.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_iscamerazoomsupported.dita @@ -14,7 +14,7 @@

        public abstract boolean isCameraZoomSupported(); - + public abstract isCameraZoomSupported(): boolean; - (BOOL)isCameraZoomSupported; virtual bool isCameraZoomSupported() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel.dita b/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel.dita index 95aabeeeeb2..e141152103c 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel.dita @@ -72,7 +72,7 @@ uid - The user ID. This parameter is used to identify the user in the channel for real-time audio and video interaction. You need to set and manage user IDs yourself, and ensure that each user ID in the same channel is unique. This parameter is a 32-bit signed integer. The value range is from -231-1 to 231-1. This parameter is a 32-bit unsigned integer. The value range is 1 to 232-1. If the user ID is not assigned (or set to 0), the SDK assigns a random user ID and returns it in the callback. Your application must record and maintain the returned user ID, because the SDK does not do so. + The user ID. This parameter is used to identify the user in the channel for real-time audio and video interaction. You need to set and manage user IDs yourself, and ensure that each user ID in the same channel is unique. This parameter is a 32-bit signed integer. The value range is from -231 to 231-1. This parameter is a 32-bit unsigned integer. The value range is 1 to 232-1. If the user ID is not assigned (or set to 0), the SDK assigns a random user ID and returns it in the callback. Your application must record and maintain the returned user ID, because the SDK does not do so. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel2.dita index 08d801dfcce..6042c627122 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_joinchannel2.dita @@ -95,10 +95,10 @@ uid - The user ID. This parameter is used to identify the user in the channel for real-time audio and video interaction. You need to set and manage user IDs yourself, and ensure that each user ID in the same channel is unique. This parameter is a 32-bit signed integer. The value range is from -231-1 to 231-1. This parameter is a 32-bit unsigned integer. The value range is 1 to 232-1. If the user ID is not assigned (or set to 0), the SDK assigns a random user ID and returns it in the callback. Your application must record and maintain the returned user ID, because the SDK does not do so. + The user ID. This parameter is used to identify the user in the channel for real-time audio and video interaction. You need to set and manage user IDs yourself, and ensure that each user ID in the same channel is unique. This parameter is a 32-bit signed integer. The value range is from -231 to 231-1. This parameter is a 32-bit unsigned integer. The value range is 1 to 232-1. If the user ID is not assigned (or set to 0), the SDK assigns a random user ID and returns it in the callback. Your application must record and maintain the returned user ID, because the SDK does not do so. - options + options mediaOptions The channel media options. See . @@ -116,7 +116,7 @@

      • -2: The parameter is invalid. For example, the token is invalid, the uid parameter is not set to an integer, or the value of a member in is invalid. You need to pass in a valid parameter and join the channel again.
      • -3: Fails to initialize the object. You need to reinitialize the object.
      • -7: The object has not been initialized. You need to initialize the object before calling this method.
      • -
      • -8: The internal state of the object is wrong. The typical cause is that after calling to start a call loop test, you call this method to join the channel without calling to stop the test. You need to call before calling this method.
      • +
      • -8: The internal state of the object is wrong. The typical cause is that after calling to start a call loop test, you call this method to join the channel without calling to stop the test. You need to call before calling this method.
      • -17: The request to join the channel is rejected. The typical cause is that the user is already in the channel. Agora recommends that you use the callback to see whether the user is in the channel. Do not call this method to join the channel unless you receive the (1) state.
      • -102: The channel name is invalid. You need to pass in a valid channel name in channelId to rejoin the channel.
      • -121: The user ID is invalid. You need to pass in a valid user ID in uid to rejoin the channel.
      • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_leavechannel2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_leavechannel2.dita index 12bc5d1e9bd..3da2503a92a 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_leavechannel2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_leavechannel2.dita @@ -28,8 +28,8 @@

        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 to end the call, otherwise, the next call cannot be started. If you have called to join multiple channels, calling this method will leave all the channels you joined.

        -

        After joining the channel, you must call this method to end the call; otherwise, the next call cannot be started. If you have called to join multiple channels, calling this method will leave all the channels you joined.

        +

        After joining a channel, you must call this method or to end the call, otherwise, the next call cannot be started. If you have called to join multiple channels, calling this method will leave all the channels you joined.

        +

        After joining the channel, you must call this method to end the call; otherwise, the next call cannot be started. If you have called to join multiple channels, calling this method will leave all the channels you joined.

        This method call is asynchronous. When this method returns, it does not necessarily mean that the user has left the channel.
        diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_muteremoteaudiostream.dita b/en-US/dita/RTC-NG/API/api_irtcengine_muteremoteaudiostream.dita index 04643b87d58..443f0c78cb2 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_muteremoteaudiostream.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_muteremoteaudiostream.dita @@ -44,7 +44,7 @@ Parameters - uid + uid The user ID of the specified user. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_muteremotevideostream.dita b/en-US/dita/RTC-NG/API/api_irtcengine_muteremotevideostream.dita index b354e77d83f..d4e1fb18354 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_muteremotevideostream.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_muteremotevideostream.dita @@ -45,7 +45,7 @@ userId - uid + uid The user ID of the specified user. @@ -67,4 +67,4 @@
      • < 0: Failure. See for details and resolution suggestions.
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_pauseallchannelmediarelay.dita b/en-US/dita/RTC-NG/API/api_irtcengine_pauseallchannelmediarelay.dita index 20cc25a6e00..82568a4ae9e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_pauseallchannelmediarelay.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_pauseallchannelmediarelay.dita @@ -14,7 +14,7 @@

      public abstract int pauseAllChannelMediaRelay(); - + public abstract pauseAllChannelMediaRelay():number; - (int)pauseAllChannelMediaRelay; virtual int pauseAllChannelMediaRelay() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_playeffect3.dita b/en-US/dita/RTC-NG/API/api_irtcengine_playeffect3.dita index e628152e73b..b2ae9f63590 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_playeffect3.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_playeffect3.dita @@ -77,8 +77,8 @@

      You can call this method either before or after joining a channel.

      - Restrictions -

      If you need to play an online audio effect file, Agora recommends that you cache the online audio effect file to your local device, call to preload the file into memory, and then call this method to play the audio effect. Otherwise, you might encounter playback failures or no sound during playback due to loading timeouts or failures.

      + <ph props="android cpp apple framework">Restrictions</ph> +

      If you need to play an online audio effect file, Agora recommends that you cache the online audio effect file to your local device, call to preload the file into memory, and then call this method to play the audio effect. Otherwise, you might encounter playback failures or no sound during playback due to loading timeouts or failures.

      Details -
      +
      Deprecated:
      If you need to push video frames in I422 format, you need to use this method; otherwise, use .
      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe3.dita b/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe3.dita index b0bddd39432..062381f606d 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe3.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe3.dita @@ -14,7 +14,7 @@

      public abstract int pushExternalVideoFrameById(VideoFrame frame, int videoTrackId); - + public abstract pushExternalVideoFrameById(frame: VideoFrame, videoTrackId: number): number; @@ -27,7 +27,7 @@ Details

      -

      You can push the video frame either by calling this method or by calling . The difference is that this method supports video data in the texture format.

      +

      You can push the video frame either by calling this method or by calling . The difference is that this method supports video data in the texture format.

      Parameters diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe4.dita b/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe4.dita index 9c73ace4559..04496b67fb8 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe4.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_pushvideoframe4.dita @@ -26,7 +26,7 @@
      Details

      -

      You can push the video frame either by calling this method or by calling . The difference is that this method supports video data in the texture format.

      +

      You can push the video frame either by calling this method or by calling . The difference is that this method supports video data in the texture format.

      Parameters diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_renewtoken.dita b/en-US/dita/RTC-NG/API/api_irtcengine_renewtoken.dita index 8ffef744b4e..31aaeb73a70 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_renewtoken.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_renewtoken.dita @@ -39,13 +39,6 @@ Restrictions

      None.

      -
      Parameters diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_resumeallchannelmediarelay.dita b/en-US/dita/RTC-NG/API/api_irtcengine_resumeallchannelmediarelay.dita index 7cb6f6d28db..fc75926bd52 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_resumeallchannelmediarelay.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_resumeallchannelmediarelay.dita @@ -14,7 +14,7 @@

      public abstract int resumeAllChannelMediaRelay(); - + public abstract resumeAllChannelMediaRelay():number; - (int)resumeAllChannelMediaRelay; virtual int resumeAllChannelMediaRelay() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_selectaudiotrack.dita b/en-US/dita/RTC-NG/API/api_irtcengine_selectaudiotrack.dita index 96a75c3d481..2d077584c74 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_selectaudiotrack.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_selectaudiotrack.dita @@ -14,7 +14,7 @@

      public abstract int selectAudioTrack(int audioIndex); - + public abstract selectAudioTrack(index: number): number; - (int)selectAudioTrack:(NSInteger)index; virtual int selectAudioTrack(int index) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") @@ -37,7 +37,7 @@ int SelectAudioTrack(int index); Parameters - index + index audioIndex The audio track you want to specify. The value should be greater than 0 and less than that of returned by . diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_sendcustomreportmessage.dita b/en-US/dita/RTC-NG/API/api_irtcengine_sendcustomreportmessage.dita index 94c5e7c9db2..fa36105d640 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_sendcustomreportmessage.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_sendcustomreportmessage.dita @@ -53,7 +53,7 @@

      Details -

      Agora supports reporting and analyzing customized messages. This function is in the beta stage with a free trial. The ability provided in its beta test version is reporting a maximum of 10 message pieces within 6 seconds, with each message piece not exceeding 256 bytes and each string not exceeding 100 bytes. To try out this function, contact and discuss the format of customized messages with us.

      +

      Agora supports reporting and analyzing customized messages. This function is in the beta stage with a free trial. The ability provided in its beta test version is reporting a maximum of 10 message pieces within 6 seconds, with each message piece not exceeding 256 bytes and each string not exceeding 100 bytes. To try out this function, contact and discuss the format of customized messages with us.

      \ No newline at end of file diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_sendstreammessage.dita b/en-US/dita/RTC-NG/API/api_irtcengine_sendstreammessage.dita index d5f8debb791..43f511d6413 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_sendstreammessage.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_sendstreammessage.dita @@ -37,9 +37,8 @@ Details

      After calling , you can call this method to send data stream messages to all users in the channel.

      The SDK has the following restrictions on this method:

        -
      • Each user can have up to five data streams simultaneously.
      • -
      • Up to 60 packets can be sent per second in a data stream with each packet having a maximum size of 1 KB.
      • -
      • Up to 30 KB of data can be sent per second in a data stream.
      • +
      • Each client within the channel can have up to 5 data channels simultaneously, with a total shared packet bitrate limit of 30 KB/s for all data channels.
      • +
      • Each data channel can send up to 60 packets per second, with each packet being a maximum of 1 KB.

      A successful method call triggers the callback on the remote client, from which the remote user gets the stream message. A failed method call triggers the callback on the remote client.

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setaudiomixingplaybackspeed.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setaudiomixingplaybackspeed.dita index 46bc64ba893..828086482e7 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setaudiomixingplaybackspeed.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setaudiomixingplaybackspeed.dita @@ -14,7 +14,7 @@

      public abstract int setAudioMixingPlaybackSpeed(int speed); - + public abstract setAudioMixingPlaybackSpeed(speed: number): number - (int)setAudioMixingPlaybackSpeed:(NSInteger)speed NS_SWIFT_NAME(setAudioMixingPlaybackSpeed(_:)); virtual int setAudioMixingPlaybackSpeed(int speed) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setaudioprofile.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setaudioprofile.dita index 1075fa1dc19..7cf1afbc2fb 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setaudioprofile.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setaudioprofile.dita @@ -60,7 +60,7 @@ profile -

      The audio profile, including the sampling rate, bitrate, encoding mode, and the number of channels. See .

        +

        The audio profile, including the sampling rate, bitrate, encoding mode, and the number of channels. See .

        • (0): The default value.
        • @@ -85,4 +85,4 @@
        • < 0: Failure. See for details and resolution suggestions.
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setaudioscenario.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setaudioscenario.dita index a6790a390cc..87ba42b0b4e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setaudioscenario.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setaudioscenario.dita @@ -42,7 +42,7 @@ scenario - The audio scenarios. Under different audio scenarios, the device uses different volume types. See .
        + The audio scenarios. Under different audio scenarios, the device uses different volume types. See .
        • (0): (Default) Automatic scenario, where the SDK chooses the appropriate audio quality according to the user role and audio route.
        • (3): High-quality audio scenario, where users mainly play music.
        • (5): Chatroom scenario, where users need to frequently switch the user role or mute and unmute the microphone.
        • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcameraautofocusfacemodeenabled.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcameraautofocusfacemodeenabled.dita index 3d202c15d3e..2b71401bb50 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcameraautofocusfacemodeenabled.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcameraautofocusfacemodeenabled.dita @@ -14,7 +14,7 @@

          public abstract int setCameraAutoFocusFaceModeEnabled(boolean enabled); - + public abstract setCameraAutoFocusFaceModeEnabled(enabled: boolean): number; - (BOOL)setCameraAutoFocusFaceModeEnabled:(BOOL)enable; virtual int setCameraAutoFocusFaceModeEnabled(bool enabled) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita index 6cf9d7e455c..5ae38ecc6b0 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita @@ -36,10 +36,10 @@

          Call this method before enabling local camera capture, such as before calling and .

          - <ph>Restrictions</ph> + Restrictions

          To adjust the camera focal length configuration, It is recommended to call first to check the device's focal length capabilities, and then configure based on the query results.

          Due to limitations on some Android devices, even if you set the focal length type according to the results returned in , the settings may not take effect.

          -

          None.

          +

          None.

          Parameters diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposurefactor.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposurefactor.dita index ee0b5f0ba07..a66b7eb569e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposurefactor.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposurefactor.dita @@ -14,7 +14,7 @@

          public abstract int setCameraExposureFactor(int factor); - + public abstract setCameraExposureFactor(factor: number): number; - (CGFloat)setCameraExposureFactor:(CGFloat)exposureFactor NS_SWIFT_NAME(setCameraExposureFactor(_:)); virtual int setCameraExposureFactor(float factor) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposureposition.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposureposition.dita index ac30f02d4a2..81ab19e25cf 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposureposition.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcameraexposureposition.dita @@ -14,7 +14,7 @@

          public abstract int setCameraExposurePosition(float positionXinView, float positionYinView); - + public abstract setCameraExposurePosition(positionXinView: number, positionYinView: number): number; - (BOOL)setCameraExposurePosition:(CGPoint)positionInView; virtual int setCameraExposurePosition(float positionXinView, float positionYinView) = 0; @@ -44,11 +44,11 @@

          Parameters - + positionXinView The horizontal coordinate of the touchpoint in the view. - + positionYinView The vertical coordinate of the touchpoint in the view. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcamerafocuspositioninpreview.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcamerafocuspositioninpreview.dita index 095240c51b1..2cb07d28aeb 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcamerafocuspositioninpreview.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcamerafocuspositioninpreview.dita @@ -44,11 +44,11 @@
          Parameters - + positionX The horizontal coordinate of the touchpoint in the view. - + positionY The vertical coordinate of the touchpoint in the view. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcameratorchon.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcameratorchon.dita index b62dd166b0b..76118e6c923 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcameratorchon.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcameratorchon.dita @@ -14,7 +14,7 @@

          public abstract int setCameraTorchOn(boolean isOn); - public abstract setCameraTorchOn(isOn:boolean):number; + - (BOOL)setCameraTorchOn:(BOOL)isOn NS_SWIFT_NAME(setCameraTorchOn(_:)); virtual int setCameraTorchOn(bool isOn) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcamerazoomfactor.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcamerazoomfactor.dita index d208785c657..a8c6ee2cf6e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcamerazoomfactor.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcamerazoomfactor.dita @@ -14,7 +14,7 @@

          public abstract int setCameraZoomFactor(float factor); - public abstract setCameraZoomFactor(factor:number):number; + public abstract setCameraZoomFactor(factor: number): number; - (CGFloat)setCameraZoomFactor:(CGFloat)zoomFactor; virtual int setCameraZoomFactor(float factor) = 0; @@ -38,7 +38,7 @@ Parameters - factor + factor zoomFactor The camera zoom factor. For devices that do not support ultra-wide-angle, the value ranges from 1.0 to the maximum zoom factor; for devices that support ultra-wide-angle, the value ranges from 0.5 to the maximum zoom factor. You can get the maximum zoom factor supported by the device by calling the method. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setclientrole2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setclientrole2.dita index 25b547f2e41..0bf3eb6e9f5 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setclientrole2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setclientrole2.dita @@ -34,7 +34,7 @@

          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 (roles) determines the users' permissions at the SDK level, including whether they can publish audio and video streams in a channel.

          -

          The difference between this method and is that, the former supports setting the audienceLatencyLevel. audienceLatencyLevel needs to be used together with role to determine the level of service that users can enjoy within their permissions. For example, an audience member can choose to receive remote streams with low latency or ultra-low latency. Latency of different levels differ in billing. See .

          +

          The difference between this method and is that, the former supports setting the audienceLatencyLevel. audienceLatencyLevel needs to be used together with role to determine the level of service that users can enjoy within their permissions. For example, an audience member can choose to receive remote streams with low latency or ultra-low latency. Latency of different levels differs in billing. See .

          Call timing diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setcloudproxy.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setcloudproxy.dita index 2e5bfb44046..4b305bd25ee 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setcloudproxy.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setcloudproxy.dita @@ -33,7 +33,7 @@

          To change the cloud proxy type that has been set, call the () first, and then call the to set the proxyType you want.

            -
          • Agora recommends that you call this method after joining a channel.
          • +
          • Agora recommends that you call this method before joining a channel.
          • When a user is behind a firewall and uses the Force UDP cloud proxy, the services for Media Push and cohosting across channels are not available.
          • When you use the Force TCP cloud proxy, note that an error would occur when calling the method to play online music files in the HTTP protocol. The services for Media Push and cohosting across channels use the cloud proxy with the TCP protocol.
          diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita index baad2290254..9c2cc1170a8 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita @@ -45,15 +45,15 @@
          Call timing -

          Call this method before joining a channel. If you need to change the audio route after joining a channel, call .

          +

          Call this method before joining a channel. If you need to change the audio route after joining a channel, call .

          Restrictions

          None.

          Parameters @@ -74,4 +74,4 @@
        • < 0: Failure. See for details and resolution suggestions.
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode.dita index 672bb945a84..c289cdc2ad2 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode.dita @@ -33,7 +33,7 @@

      The SDK defaults to enabling low-quality video stream adaptive mode () on the sender side, which means the sender does not actively send low-quality video stream. The receiving end with the role of the host can initiate a low-quality video stream request by calling , and upon receiving the request, the sending end automatically starts sending low-quality stream.

      • If you want to modify this behavior, you can call this method and set mode to (never send low-quality video streams) or (always send low-quality video streams).
      • If you want to restore the default behavior after making changes, you can call this method again with mode set to .

      - The difference and connection between this method and is as follows:
        + The difference and connection between this method and is as follows:
        • When calling this method and setting mode to , it has the same effect as ().
        • When calling this method and setting mode to , it has the same effect as ().
        • Both methods can be called before and after joining a channel. If both methods are used, the settings in the method called later takes precedence.
        • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode2.dita index ec180be2205..a4d2b511926 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setdualstreammode2.dita @@ -44,8 +44,8 @@

      -

      The difference between this method and is that this method can also configure the low-quality video stream, and the SDK sends the stream according to the configuration in streamConfig.

      - The difference and connection between this method and is as follows:
        +

        The difference between this method and is that this method can also configure the low-quality video stream, and the SDK sends the stream according to the configuration in streamConfig.

        + The difference and connection between this method and is as follows:
        • When calling this method and setting mode to , it has the same effect as calling and setting enabled to .
        • When calling this method and setting mode to , it has the same effect as calling and setting enabled to .
        • Both methods can be called before and after joining a channel. If both methods are used, the settings in the method called later takes precedence.
        • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita index 05eb51bff00..919ee6b18ff 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita @@ -14,7 +14,7 @@

          public abstract int setEnableSpeakerphone(boolean enabled); - public abstract setEnableSpeakerphone(enabled: boolean): number; + - (int)setEnableSpeakerphone:(BOOL)enableSpeaker; virtual int setEnableSpeakerphone(bool speakerOn) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setlocalaccesspoint.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setlocalaccesspoint.dita index 51065ed30b9..8f536b5b392 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setlocalaccesspoint.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setlocalaccesspoint.dita @@ -34,7 +34,7 @@

          Restrictions -

          This method takes effect only after the Agora hybrid cloud solution is deployed. You can contact to get to know more about the Agora hybrid cloud solution.

          +

          This method takes effect only after the Agora hybrid cloud solution is deployed. You can contact to get to know more about the Agora hybrid cloud solution.

          Parameters diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode.dita index 6f21e6941ea..d051a310096 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode.dita @@ -14,7 +14,7 @@

          public abstract int setLocalRenderMode(int renderMode); - public abstract setLocalRenderMode(renderMode: number, mirrorMode: number): number; + - (int)setLocalRenderMode:(NSUInteger)uid mode:(AgoraVideoRenderMode) mode; virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita index 3603ee9b20f..592088ff0fc 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita @@ -53,14 +53,14 @@ Parameters - renderMode + renderMode mode

          The local video display mode. See .

          The local video display mode.

          • (1): Hidden mode. Uniformly scale the video until it fills the visible boundaries (cropped). One dimension of the video may have clipped contents.
          • (2): Fit mode. Uniformly scale the video until one of its dimension fits the boundary (zoomed to fit). Areas that are not filled due to the disparity in the aspect ratio are filled with black.
          • -
          • (3): Adaptive mode.
            +
          • (3): Adaptive mode.
            Deprecated:
            This enumerator is deprecated and not recommended for use.
            diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setparameters.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setparameters.dita index c2be738b465..1a6bc2f5323 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setparameters.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setparameters.dita @@ -37,7 +37,7 @@ Parameters - parameters + parameters options Pointer to the set parameters in a JSON string. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setplaybackaudioframebeforemixingparameters.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setplaybackaudioframebeforemixingparameters.dita index 16128db628a..eb91c8cdf16 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setplaybackaudioframebeforemixingparameters.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setplaybackaudioframebeforemixingparameters.dita @@ -14,7 +14,7 @@

            public abstract int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel); - public abstract setPlaybackAudioFrameBeforeMixingParameters(sampleRate:number,channel:number):number; + public abstract setPlaybackAudioFrameBeforeMixingParameters(sampleRate:number,channel:number):number; - (int)setPlaybackAudioFrameBeforeMixingParametersWithSampleRate:(NSInteger)sampleRate channel:(NSInteger)channel; virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setremotedefaultvideostreamtype.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setremotedefaultvideostreamtype.dita index 6cc6a5f2f80..dc534709bfd 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setremotedefaultvideostreamtype.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setremotedefaultvideostreamtype.dita @@ -49,8 +49,8 @@ streamType -

            The default video-stream type. See .

            -

            The default video-stream type:

              +

              The default video-stream type. See .

              +

              The default video-stream type:

              • (0): High-quality stream, that is, a high-resolution and high-bitrate video stream.
              • (1): Low-quality stream, that is, a low-resolution and low-bitrate video stream.

              diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita index 0638265c3f6..4a82db698d9 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita @@ -51,11 +51,11 @@ userId - uid + uid The user ID of the remote user. - renderMode + renderMode mode

              The rendering mode of the remote user view. For details, see .

              @@ -65,7 +65,7 @@
              - mirrorMode + mirrorMode mirror

              The mirror mode of the remote user view. See .

              diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideostreamtype.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideostreamtype.dita index 5afdddc02f0..c7911511111 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideostreamtype.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideostreamtype.dita @@ -59,8 +59,8 @@ streamType -

              The video stream type, see .

              -

              The video stream type:

                +

                The video stream type, see .

                +

                The video stream type:

                • 0: High-quality video stream.
                • 1: Low-quality video stream.

                diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideosubscriptionoptions.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideosubscriptionoptions.dita index c037d9d19d2..dd6c296a7ef 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideosubscriptionoptions.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setremotevideosubscriptionoptions.dita @@ -35,19 +35,12 @@
            Details -

            When a remote user has enabled dual-stream mode, you can call this method to choose the option for subscribing to the video streams sent by the remote user.

            -

            -

              -
            • If you only register one object, the SDK subscribes to the raw video data and encoded video data by default (the effect is equivalent to setting encodedFrameOnly to ).
            • -
            • If you only register one object, the SDK only subscribes to the encoded video data by default (the effect is equivalent to setting encodedFrameOnly to ).
            • -
            • If you register one object and one object successively, the SDK subscribes to the encoded video data by default (the effect is equivalent to setting encodedFrameOnly to ).
            • -
            • If you call this method first with the options parameter set, and then register one or object, you need to call this method again and set the options parameter as described in the above two items to get the desired results.
            • -

            - Agora recommends the following steps:
              -
            1. Set autoSubscribeVideo to when calling to join a channel.
            2. -
            3. Call this method after receiving the callback to set the subscription options for the specified remote user's video stream.
            4. -
            5. Call the method to resume subscribing to the video stream of the specified remote user. If you set encodedFrameOnly to in the previous step, the SDK triggers the callback locally to report the received encoded video frame information.
            6. -
            +

            When a remote user has enabled dual-stream mode, you can call this method to choose the option for subscribing to the video streams sent by the remote user. The default subscription behavior of the SDK for remote video streams depends on the type of registered video observer:

              +
            • If the observer is registered, the default is to subscribe to both raw data and encoded data.
            • +
            • If the observer is registered, the default is to subscribe only to the encoded data.
            • +
            • If both types of observers are registered, the default behavior follows the last registered video observer. For example, if the last registered observer is the observer, the default is to subscribe to both raw data and encoded data.
            • +
            If you want to modify the default behavior, or set different subscription options for different uids, you can call this method to set it. For detailed implementation steps, please refer to .

            +
          Parameters diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita index dda5daa1fd3..5f0ef8a4cc7 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita @@ -44,7 +44,7 @@ Parameters - canvas + canvas remote

          The remote video view and settings. See .

          diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_setvideoencoderconfiguration.dita b/en-US/dita/RTC-NG/API/api_irtcengine_setvideoencoderconfiguration.dita index 275ca568fbb..4bb596d551b 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_setvideoencoderconfiguration.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_setvideoencoderconfiguration.dita @@ -41,7 +41,7 @@
          Restrictions
            -
          • Both this method and the method support setting the mirroring effect. Agora recommends that you only choose one method to set it up. Using both methods at the same time causes the mirroring effect to overlap, and the mirroring settings fail.
          • +
          • Both this method and the method support setting the mirroring effect. Agora recommends that you only choose one method to set it up. Using both methods at the same time causes the mirroring effect to overlap, and the mirroring settings fail.
          • The config specified in this method is the maximum value under ideal network conditions. If the video engine cannot render the video using the specified config due to unreliable network conditions, the parameters further down the list are considered until a successful configuration is found.
          diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing.dita index 9ffa25cf184..bdd6d71d4a9 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing.dita @@ -14,7 +14,7 @@

          public abstract int startAudioMixing(String filePath, boolean loopback, int cycle); - public abstract startAudioMixing(filepath: string, loopback: boolean, cycle: number): number; + - (int)startAudioMixing:(NSString * _Nonnull)filePath loopback:(BOOL)loopback cycle:(NSInteger)cycle NS_SWIFT_NAME(startAudioMixing(_:loopback:cycle:)); diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing2.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing2.dita index dae0c085bcb..a9661f22c76 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startaudiomixing2.dita @@ -14,7 +14,7 @@

          public abstract int startAudioMixing(String filePath, boolean loopback, int cycle, int startPos); - public abstract startAudioMixing(filepath: string, loopback: boolean, cycle: number): number; + public abstract startAudioMixing(filepath: string, loopback: boolean, cycle: number, startpos?:number): number; - (int)startAudioMixing:(NSString* _Nonnull)filePath loopback:(BOOL)loopback cycle:(NSInteger)cycle startPos:(NSInteger)startPos; virtual int startAudioMixing(const char* filePath, bool loopback, int cycle, int startPos) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startaudiorecording.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startaudiorecording.dita index c5a8c3e9ef5..820c33d175e 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startaudiorecording.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startaudiorecording.dita @@ -14,7 +14,7 @@

          public abstract int startAudioRecording(String filePath, int quality); - public abstract startAudioRecording(filePath: string, quality: Constants.AudioRecordingQualityType): number; + public abstract startAudioRecording(filePath: string, quality: Constants.AudioRecordingQualityType): number;; - (int)startAudioRecording:(NSString * _Nonnull)filePath quality:(AgoraAudioRecordingQuality)quality; virtual int startAudioRecording(const char* filePath, AUDIO_RECORDING_QUALITY_TYPE quality) = 0; @@ -42,7 +42,7 @@ quality - Audio recording quality. See .

            + Audio recording quality. See .
            • 0: Low quality. The sample rate is 32 kHz, and the file size is around 1.2 MB after 10 minutes of recording.
            • 1: Medium quality. The sample rate is 32 kHz, and the file size is around 2 MB after 10 minutes of recording.
            • 2: High quality. The sample rate is 32 kHz, and the file size is around 3.75 MB after 10 minutes of recording.
            • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startcameracapture.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startcameracapture.dita index e3ba321ab83..bf45cfd5c7b 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startcameracapture.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startcameracapture.dita @@ -53,7 +53,7 @@ sourceType

              The type of the video source. See .

              -
                +
                • On iOS devices, you can capture video from up to 2 cameras, provided the device has multiple cameras or supports external cameras.
                • On Android devices, you can capture video from up to 4 cameras, provided the device has multiple cameras or supports external cameras.
                • On the desktop platforms, you can capture video from up to 4 cameras.
                • diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startlastmileprobetest.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startlastmileprobetest.dita index 6d96033ce6d..2cb050ea915 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startlastmileprobetest.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startlastmileprobetest.dita @@ -38,7 +38,7 @@
          Call timing
            -
          • If you need to mix the locally collected video streams, you need to call this method after or .
          • +
          • If you need to mix the locally collected video streams, you need to call this method after or .
          • If you want to publish the mixed video stream to the channel, you need to set publishTranscodedVideoTrack in to when calling or .
          @@ -58,6 +58,7 @@
        • On the macOS platform, it supports up to 4 video streams captured by cameras + 1 screen sharing stream.
        • On Android and iOS platforms, it supports video streams captured by up to 2 cameras (the device itself needs to support dual cameras or supports external cameras) + 1 screen sharing stream.
        • On the Android platform, it supports up to 2 video streams captured by cameras (the device itself needs to support dual cameras or support external cameras) + 1 screen sharing stream.
        • +
        • On the HarmonyOS platform, it supports up to 2 video streams captured by cameras (the device itself needs to support dual cameras or support external cameras) + 1 screen sharing stream.
        • On the iOS platform, it supports up to 2 video streams captured by cameras (the device itself needs to support dual cameras or support external cameras) + 1 screen sharing stream.
      • When configuring the local video mixing, it is necessary to ensure that the layer number of the video stream capturing the portrait is greater than the layer number of the screen sharing stream. Otherwise, the portrait will be covered by the screen sharing and will not be displayed in the final mixed video stream.
      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startpreview.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startpreview.dita index d3858703eb9..e14191f6abf 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startpreview.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startpreview.dita @@ -34,7 +34,7 @@ Restrictions
      • The local preview enables the mirror mode by default.
      • -
      • After leaving the channel, local preview remains enabled. You need to call to disable local preview.
      • +
      • After leaving the channel, local preview remains enabled. You need to call to disable local preview.
      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startrtmpstreamwithouttranscoding.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startrtmpstreamwithouttranscoding.dita index bd301db535c..15f828bdc59 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startrtmpstreamwithouttranscoding.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startrtmpstreamwithouttranscoding.dita @@ -14,7 +14,7 @@

      public abstract int startRtmpStreamWithoutTranscoding(String url); - + public abstract startRtmpStreamWithoutTranscoding(url:string): number; - (int)startRtmpStreamWithoutTranscoding:(NSString* _Nonnull)url; virtual int startRtmpStreamWithoutTranscoding(const char* url) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita b/en-US/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita index f3546e99407..0c67be986c5 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita @@ -15,7 +15,7 @@

      public abstract int startScreenCapture(ScreenCaptureParameters screenCaptureParameters); - public abstract startScreenCapture(parameter: ScreenCaptureParameters): number; + public abstract startScreenCapture(screenCaptureParameters: ScreenCaptureParameters): number; - (int)startScreenCapture:(AgoraScreenCaptureParameters2* _Nullable)parameters NS_SWIFT_NAME(startScreenCapture(_:)); #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) virtual int startScreenCapture(const ScreenCaptureParameters2& captureParams) = 0; @@ -31,7 +31,7 @@

      • This method is for Android and iOS only.
      • -
      • The billing for the screen sharing stream is based on the dimensions in :
          +
        • The billing for the screen sharing stream is based on the dimensions in :
          • When you do not pass in a value, Agora bills you at 1280 × 720.
          • When you pass in a value, Agora bills you at that value.
        @@ -72,8 +72,8 @@ parameters screenCaptureParameters - captureParams - The screen sharing encoding parameters. The default video dimension is 1920 x 1080, that is, 2,073,600 pixels. Agora uses the value of this parameter to calculate the charges. See . + captureParams + The screen sharing encoding parameters. The default video dimension is 1920 x 1080, that is, 2,073,600 pixels. Agora uses the value of this parameter to calculate the charges. See .
      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_statechanged.dita b/en-US/dita/RTC-NG/API/api_irtcengine_statechanged.dita index 24678f3b0d6..c86e4d54c87 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_statechanged.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_statechanged.dita @@ -49,7 +49,6 @@

      Media device states:

      • 0: The device is ready for use.
      • -
      • 1: The device is in use.
      • 3: The device is plugged in.
      • 8: The devive is disconnected.

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_stopaudiorecording.dita b/en-US/dita/RTC-NG/API/api_irtcengine_stopaudiorecording.dita index 64086887c59..4cf22b40cf7 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_stopaudiorecording.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_stopaudiorecording.dita @@ -14,7 +14,7 @@

      public abstract int stopAudioRecording(); - public abstract stopAudioRecording(): number; + public abstract stopAudioRecording(): number;; - (int)stopAudioRecording; virtual int stopAudioRecording() = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_stopeffect.dita b/en-US/dita/RTC-NG/API/api_irtcengine_stopeffect.dita index ee455b25258..3a41921ff42 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_stopeffect.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_stopeffect.dita @@ -15,7 +15,7 @@

      public abstract int stopEffect(int soundId); - + public abstract stopEffect(soundId:number):number; - (int)stopEffect:(int)soundId; virtual int stopEffect(int soundId) = 0; @@ -28,11 +28,11 @@

      -

      When you no longer need to play the audio effect, you can call this method to stop the playback. If you only need to pause the playback, call .

      +

      When you no longer need to play the audio effect, you can call this method to stop the playback. If you only need to pause the playback, call .

      Call timing -

      Call this method after .

      +

      Call this method after .

      Call this method after the , or .

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_stopscreencapture.dita b/en-US/dita/RTC-NG/API/api_irtcengine_stopscreencapture.dita index deb5e9f62d2..6b4deac0f81 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_stopscreencapture.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_stopscreencapture.dita @@ -34,7 +34,7 @@ Applicable scenarios

      If you start screen capture by calling , , or , you need to call this method to stop screen capture.

      If you start screen capture by calling , , or , you need to call this method to stop screen capture.

      -

      If you start screen capture by calling , you need to call this method to stop screen capture.

      +

      If you start screen capture by calling , you need to call this method to stop screen capture.

      If you start screen capture by calling or , you need to call this method to stop screen capture.

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita b/en-US/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita index b3ffdc87e69..bb546860460 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita @@ -60,6 +60,7 @@
    • iOS: /App Sandbox/Library/Caches/example.jpg
    • macOS: ~/Library/Logs/example.jpg
    • Android: /storage/emulated/0/Android/data/<package name>/files/example.jpg
    • +
    • HarmonyOS: /data/app/el2/100/base/PACKAGENAME/haps/ENTRYNAME/files/example.jpg

    Ensure that the path you specify exists and is writable. diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_updatechannelmediaoptions.dita b/en-US/dita/RTC-NG/API/api_irtcengine_updatechannelmediaoptions.dita index ef39cef47f7..1f049f9e0fa 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_updatechannelmediaoptions.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_updatechannelmediaoptions.dita @@ -29,7 +29,7 @@ Parameters - options + options mediaOptions The channel media options. See . diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_updatescreencaptureparameters.dita b/en-US/dita/RTC-NG/API/api_irtcengine_updatescreencaptureparameters.dita index 5006b7a96b3..98008c024cd 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_updatescreencaptureparameters.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_updatescreencaptureparameters.dita @@ -16,7 +16,7 @@ public abstract int updateScreenCaptureParameters( ScreenCaptureParameters screenCaptureParameters); - + public abstract updateScreenCaptureParameters(screenCaptureParameters: ScreenCaptureParameters): number; - (int)updateScreenCaptureParameters:(AgoraScreenCaptureParameters * _Nonnull)captureParams; virtual int updateScreenCaptureParameters(const ScreenCaptureParameters& captureParams) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") @@ -45,7 +45,7 @@ screenCaptureParameters captureParams - The screen sharing encoding parameters. The default video resolution is 1920 × 1080, that is, 2,073,600 pixels. Agora uses the value of this parameter to calculate the charges. See .The video properties of the screen sharing stream only need to be set through this parameter, and are unrelated to . + The screen sharing encoding parameters. The default video resolution is 1920 × 1080, that is, 2,073,600 pixels. Agora uses the value of this parameter to calculate the charges. See .The video properties of the screen sharing stream only need to be set through this parameter, and are unrelated to .
    diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_adjustuserplaybacksignalvolumeex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_adjustuserplaybacksignalvolumeex.dita index 60c8c0c345e..5be14ba77bf 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_adjustuserplaybacksignalvolumeex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_adjustuserplaybacksignalvolumeex.dita @@ -15,7 +15,7 @@

    public abstract int adjustUserPlaybackSignalVolumeEx( int uid, int volume, RtcConnection connection); - + public abstract adjustUserPlaybackSignalVolumeEx(uid:number,volume:number,connection:RtcConnection):number; - (int)adjustUserPlaybackSignalVolumeEx:(NSUInteger)uid volume:(NSInteger)volume connection:(AgoraRtcConnection* _Nonnull)connection; diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex.dita index 70f210def55..0a3722cf852 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex.dita @@ -15,7 +15,7 @@

    public abstract int createDataStreamEx( boolean reliable, boolean ordered, RtcConnection connection); - public abstract createDataStreamEx(config:DataStreamConfig,connection:RtcConnection):number; + - (int)createDataStreamEx:(NSInteger * _Nonnull)streamId reliable:(BOOL)reliable ordered:(BOOL)ordered diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex2.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex2.dita index 90897baccaa..2c39cc9bdca 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_createdatastreamex2.dita @@ -35,7 +35,7 @@

    -

    Compared to , this method does not guarantee the reliability of data transmission. If a data packet is not received five seconds after it was sent, the SDK directly discards the data.

    +

    Compared to , this method does not guarantee the reliability of data transmission. If a data packet is not received five seconds after it was sent, the SDK directly discards the data.

    Call timing diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_enableaudiovolumeindicationex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_enableaudiovolumeindicationex.dita index 813c4c432de..c1fbb651c77 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_enableaudiovolumeindicationex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_enableaudiovolumeindicationex.dita @@ -15,7 +15,7 @@

    public abstract int enableAudioVolumeIndicationEx( int interval, int smooth, boolean reportVad, RtcConnection connection); - + public abstract enableAudioVolumeIndicationEx(interval:number,smooth:number,reportVad:boolean,connection:RtcConnection):number; - (int)enableAudioVolumeIndicationEx:(NSInteger)interval smooth:(NSInteger)smooth reportVad:(BOOL)reportVad diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_getconnectionstateex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_getconnectionstateex.dita index d1d2461806e..80a02ec08a3 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_getconnectionstateex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_getconnectionstateex.dita @@ -26,6 +26,7 @@ Future<ConnectionStateType> getConnectionStateEx(RtcConnection connection);

    +
    diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_joinchannelex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_joinchannelex.dita index bb62e37db65..c79b576cce0 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_joinchannelex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_joinchannelex.dita @@ -84,9 +84,9 @@ - eventHandler + eventHandler delegate - The callback class of . See . You can get the callback events of multiple channels through the eventHandlerdelegate object passed in this parameter. + The callback class of . See . You can get the callback events of multiple channels through the eventHandlerdelegate object passed in this parameter. diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_leavechannelex2.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_leavechannelex2.dita index 5728d019b0a..3b7dcfd2ca8 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_leavechannelex2.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_leavechannelex2.dita @@ -36,13 +36,13 @@

    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 to join a channel, you must call this method or to end the call, otherwise, the next call cannot be started.

    -

    After calling to join a channel, you must call this method to end the call, otherwise, the next call cannot be started.

    +

    After calling to join a channel, you must call this method or to end the call, otherwise, the next call cannot be started.

    +

    After calling to join a channel, you must call this method 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.
    • -
    • If you call or , you will leave all the channels you have joined by calling , , or .
    • -
    • If you call , you will leave all the channels you have joined by calling or .
    • +
    • If you call or , you will leave all the channels you have joined by calling , , or .
    • +
    • If you call , you will leave all the channels you have joined by calling or .
    diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremoteaudiostreamsex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremoteaudiostreamsex.dita index e37793cf33a..94fb09abba2 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremoteaudiostreamsex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremoteaudiostreamsex.dita @@ -14,7 +14,8 @@

    public abstract int muteAllRemoteAudioStreamsEx(boolean muted, RtcConnection connection); - + public abstract muteAllRemoteAudioStreamsEx(muted:boolean,connection:RtcConnection):number; + - (int)muteAllRemoteAudioStreamsEx:(BOOL)mute connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(muteAllRemoteAudioStreamsEx(_:connection:)); virtual int muteAllRemoteAudioStreamsEx(bool mute, const RtcConnection& connection) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremotevideostreamsex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremotevideostreamsex.dita index 308cfc12ca8..be188984c4c 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremotevideostreamsex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_muteallremotevideostreamsex.dita @@ -14,7 +14,7 @@

    public abstract int muteAllRemoteVideoStreamsEx(boolean muted, RtcConnection connection); - + public abstract muteAllRemoteVideoStreamsEx(muted:boolean,connection:RtcConnection):number; - (int)muteAllRemoteVideoStreamsEx:(BOOL)mute connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(muteAllRemoteVideoStreamsEx(_:connection:)); virtual int muteAllRemoteVideoStreamsEx(bool mute, const RtcConnection& connection) = 0; diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalaudiostreamex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalaudiostreamex.dita index 8eac22aaec8..9313c999870 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalaudiostreamex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalaudiostreamex.dita @@ -14,7 +14,7 @@

    public abstract int muteLocalAudioStreamEx(boolean muted, RtcConnection connection); - + public abstract muteLocalAudioStreamEx(muted:boolean,connection:RtcConnection):number; - (int)muteLocalAudioStreamEx:(BOOL)mute connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(muteLocalAudioStreamEx(_:connection:)); virtual int muteLocalAudioStreamEx(bool mute, const RtcConnection& connection) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalvideostreamex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalvideostreamex.dita index eeb1f3054fe..e3b65e1624c 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalvideostreamex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_mutelocalvideostreamex.dita @@ -14,7 +14,8 @@

    public abstract int muteLocalVideoStreamEx(boolean muted, RtcConnection connection); - + public abstract muteLocalVideoStreamEx(muted:boolean,connection:RtcConnection):number; + - (int)muteLocalVideoStreamEx:(BOOL)mute connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(muteLocalVideoStreamEx(_:connection:)); virtual int muteLocalVideoStreamEx(bool mute, const RtcConnection& connection) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_muteremoteaudiostreamex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_muteremoteaudiostreamex.dita index 80a5f0b4c5d..d352053250b 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_muteremoteaudiostreamex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_muteremoteaudiostreamex.dita @@ -14,7 +14,7 @@

    public abstract int muteRemoteAudioStreamEx(int uid, boolean muted, RtcConnection connection); - + public abstract muteRemoteAudioStreamEx(uid:number,muted:boolean,connection:RtcConnection):number; - (int)muteRemoteAudioStreamEx:(NSUInteger)uid mute:(BOOL)mute connection:(AgoraRtcConnection * _Nonnull)connection; diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_muteremotevideostreamex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_muteremotevideostreamex.dita index cce88870313..70ca8f88127 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_muteremotevideostreamex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_muteremotevideostreamex.dita @@ -14,7 +14,7 @@

    public abstract int muteRemoteVideoStreamEx(int uid, boolean muted, RtcConnection connection); - + public abstract muteRemoteVideoStreamEx(uid:number,muted:boolean,connection:RtcConnection):number; - (int)muteRemoteVideoStreamEx:(NSUInteger)uid mute:(BOOL)mute connection:(AgoraRtcConnection * _Nonnull)connection; diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_sendstreammessageex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_sendstreammessageex.dita index 6bd5b69a4b1..8f99bf9e33d 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_sendstreammessageex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_sendstreammessageex.dita @@ -14,7 +14,7 @@

    public abstract int sendStreamMessageEx(int streamId, byte[] message, RtcConnection connection); - + public abstract sendStreamMessageEx(streamId:number,message:ArrayBuffer,connection:RtcConnection):number; virtual int sendStreamMessageEx(int streamId, const char* data, size_t length, const RtcConnection& connection) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_setdualstreammodeex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_setdualstreammodeex.dita index 7402a9fe07b..38c489d4b6f 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_setdualstreammodeex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_setdualstreammodeex.dita @@ -15,7 +15,7 @@

    public abstract int setDualStreamModeEx(Constants.SimulcastStreamMode mode, SimulcastStreamConfig streamConfig, RtcConnection connection); - + public abstract setDualStreamModeEx(mode:Constants.SimulcastStreamMode,streamConfig:SimulcastStreamConfig,connection:RtcConnection):number; - (int)setDualStreamModeEx:(AgoraSimulcastStreamMode)mode streamConfig:(AgoraSimulcastStreamConfig*)streamConfig connection:(AgoraRtcConnection* _Nonnull)connection; @@ -52,7 +52,7 @@

    The SDK defaults to enabling low-quality video stream adaptive mode () on the sender side, which means the sender does not actively send low-quality video stream. The receiving end with the role of the host can initiate a low-quality video stream request by calling , and upon receiving the request, the sending end automatically starts sending low-quality stream.

    • If you want to modify this behavior, you can call this method and set mode to (never send low-quality video streams) or (always send low-quality video streams).
    • If you want to restore the default behavior after making changes, you can call this method again with mode set to .

    - The difference and connection between this method and is as follows:
      + The difference and connection between this method and is as follows:
      • When calling this method and setting mode to , it has the same effect as ().
      • When calling this method and setting mode to , it has the same effect as ().
      • Both methods can be called before and after joining a channel. If both methods are used, the settings in the method called later takes precedence.
      diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita index 8f0ad20a08a..d94d4cbf565 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita @@ -15,7 +15,7 @@

      public abstract int setRemoteRenderModeEx( int uid, int renderMode, int mirrorMode, RtcConnection connection); - + public abstract setRemoteRenderModeEx(uid:number,renderMode:number,mirrorMode:number,connection:RtcConnection):number; - (int)setRemoteRenderModeEx:(NSUInteger)uid mode:(AgoraVideoRenderMode)mode mirror:(AgoraVideoMirrorMode)mirror diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_setremotevideostreamtypeex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_setremotevideostreamtypeex.dita index 75d3c6f124d..0f7a34a72ad 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_setremotevideostreamtypeex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_setremotevideostreamtypeex.dita @@ -14,7 +14,7 @@

      public abstract int setRemoteVideoStreamTypeEx(int uid, int streamType, RtcConnection connection); - + public abstract setRemoteVideoStreamTypeEx(uid:number,streamType:number,connection:RtcConnection):number; - (int)setRemoteVideoStreamEx:(NSUInteger)uid type:(AgoraVideoStreamType)streamType connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(setRemoteVideoStreamEx(_:type:connection:)); @@ -49,7 +49,7 @@

        -
      • If the publisher has already called and set mode to (never send low-quality video stream), calling this method will not take effect, you should call again on the sending end and adjust the settings.
      • +
      • If the publisher has already called and set mode to (never send low-quality video stream), calling this method will not take effect, you should call again on the sending end and adjust the settings.
      • Calling this method on the receiving end of the audience role will not take effect.
      diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_setupremotevideoex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_setupremotevideoex.dita index 7c368097b74..02b483d68f7 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_setupremotevideoex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_setupremotevideoex.dita @@ -51,7 +51,7 @@ remote - canvas + canvas

      The remote video view settings. See .

      diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_startorupdatechannelmediarelayex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_startorupdatechannelmediarelayex.dita index 753248ce3ea..1ce68b688b2 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_startorupdatechannelmediarelayex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_startorupdatechannelmediarelayex.dita @@ -15,7 +15,7 @@

      public abstract int startOrUpdateChannelMediaRelayEx( ChannelMediaRelayConfiguration channelMediaRelayConfiguration, RtcConnection connection); - + public abstract startOrUpdateChannelMediaRelayEx(channelMediaRelayConfiguration:ChannelMediaRelayConfiguration,connection:RtcConnection):number; - (int)startOrUpdateChannelMediaRelayEx:(AgoraChannelMediaRelayConfiguration * _Nonnull)config connection:(AgoraRtcConnection * _Nonnull)connection NS_SWIFT_NAME(startOrUpdateChannelMediaRelayEx(_:connection:)); virtual int startOrUpdateChannelMediaRelayEx(const ChannelMediaRelayConfiguration& configuration, const RtcConnection& connection) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita index d68bf96bd89..fb275c08d64 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita @@ -14,7 +14,7 @@

      public abstract int takeSnapshotEx(RtcConnection connection, int uid, String filePath); - + public abstract takeSnapshotEx(connection:RtcConnection,uid:number,filePath:string):number; - (NSInteger)takeSnapshotEx:(AgoraRtcConnection * _Nonnull)connection uid:(NSInteger)uid filePath:(NSString* _Nonnull)filePath; virtual int takeSnapshotEx(const RtcConnection& connection, uid_t uid, const char* filePath) = 0; UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine") diff --git a/en-US/dita/RTC-NG/API/api_irtcengineex_updatechannelmediaoptionsex.dita b/en-US/dita/RTC-NG/API/api_irtcengineex_updatechannelmediaoptionsex.dita index cd5c768bfc8..d78d089850b 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengineex_updatechannelmediaoptionsex.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengineex_updatechannelmediaoptionsex.dita @@ -15,7 +15,7 @@

      public abstract int updateChannelMediaOptionsEx( ChannelMediaOptions options, RtcConnection connection); - + public abstract updateChannelMediaOptionsEx(options:ChannelMediaOptions,connection:RtcConnection):number; - (int)updateChannelExWithMediaOptions:(AgoraRtcChannelMediaOptions* _Nonnull)mediaOptions connection:(AgoraRtcConnection * _Nonnull)connection; virtual int updateChannelMediaOptionsEx(const ChannelMediaOptions& options, const RtcConnection& connection) = 0; diff --git a/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onlocalaudiospectrum.dita b/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onlocalaudiospectrum.dita index 53b4441e582..9a048f52678 100644 --- a/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onlocalaudiospectrum.dita +++ b/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onlocalaudiospectrum.dita @@ -15,7 +15,7 @@

      boolean onLocalAudioSpectrum(AudioSpectrumInfo data); - + onLocalAudioSpectrum?:(data:AudioSpectrumData) => boolean ; - (BOOL)onLocalAudioSpectrum:(NSArray<NSNumber *> * _Nullable)audioSpectrumData; virtual bool onLocalAudioSpectrum(const AudioSpectrumData& data) = 0; DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnLocalAudioSpectrum, const FAudioSpectrumData&, data); diff --git a/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onremoteaudiospectrum.dita b/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onremoteaudiospectrum.dita index d18fa029d42..c393c0ea4d6 100644 --- a/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onremoteaudiospectrum.dita +++ b/en-US/dita/RTC-NG/API/callback_iaudiospectrumobserver_onremoteaudiospectrum.dita @@ -15,7 +15,7 @@

      boolean onRemoteAudioSpectrum(UserAudioSpectrumInfo[] userAudioSpectrumInfos, int spectrumNumber); - + onRemoteAudioSpectrum?:(data:Array<AudioSpectrumInfo>) => boolean ; - (BOOL)onRemoteAudioSpectrum:(NSArray<AgoraAudioSpectrumInfo *> * _Nullable)AudioSpectrumInfo; virtual bool onRemoteAudioSpectrum(const UserAudioSpectrumInfo * spectrums, unsigned int spectrumNumber) = 0; @@ -43,11 +43,15 @@

      Parameters - - userAudioSpectrumInfos + + data + The audio spectrum information of the remote user. See . The number of arrays is the number of remote users monitored by the SDK. If the array is null, it means that no audio spectrum of remote users is detected. + + + userAudioSpectrumInfos AudioSpectrumInfo spectrums - The audio spectrum information of the remote user, see . The number of arrays is the number of remote users monitored by the SDK. If the array is null, it means that no audio spectrum of remote users is detected. + The audio spectrum information of the remote user. See . The number of arrays is the number of remote users monitored by the SDK. If the array is null, it means that no audio spectrum of remote users is detected. spectrumNumber diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onaudiovolumeindication.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onaudiovolumeindication.dita index 95b7be21b01..10175967fe0 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onaudiovolumeindication.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onaudiovolumeindication.dita @@ -14,7 +14,7 @@

      void onAudioVolumeIndication(int volume); - onAudioVolumeIndication?:( speakers:Array<AudioVolumeInfo>, totalVolume:number) => void + onAudioVolumeIndication?:(volume:number) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit volumeIndicationDidReceive:(NSInteger)volume; diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onmetadata.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onmetadata.dita index 368dc306a7d..e60c3556a69 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onmetadata.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onmetadata.dita @@ -15,7 +15,7 @@

      void onMetaData(Constants.MediaPlayerMetadataType type, byte[] data); - + onMetaData?:(type:Constants.MediaPlayerMetadataType,data:ArrayBuffer) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit didReceiveData:(NSString *_Nullable)data length:(NSInteger)length; diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplaybufferupdated.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplaybufferupdated.dita index ea3ec3afdc4..71dfb82f1d1 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplaybufferupdated.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplaybufferupdated.dita @@ -15,7 +15,7 @@

      void onPlayBufferUpdated(long playCachedBuffer); - + onPlayBufferUpdated?:(playCachedBuffer:number) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit didPlayBufferUpdated:(NSInteger)playCachedBuffer NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didPlayBufferUpdated:)); virtual void onPlayBufferUpdated(int64_t playCachedBuffer) = 0; diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayercachestats.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayercachestats.dita index 16df2ae6063..f0d286d8f8d 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayercachestats.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayercachestats.dita @@ -14,7 +14,7 @@

      void onPlayerCacheStats(CacheStatistics stats); - + onPlayerCacheStats?:(stats:CacheStatistics) => void (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit cacheStats:(AgoraMediaPlayerCacheStatistics *_Nonnull)info NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:cacheStats:)); virtual void onPlayerCacheStats(const media::base::CacheStatistics& stats) { (void)stats; diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerevent.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerevent.dita index 3f3b4ff990e..2f5fef7fa9f 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerevent.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerevent.dita @@ -15,7 +15,7 @@

      void onPlayerEvent(Constants.MediaPlayerEvent eventCode, long elapsedTime, String message); - + onPlayerEvent?:(eventCode:Constants.MediaPlayerEvent,elapsedTime:number,message:string) => void (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit didOccurEvent:(AgoraMediaPlayerEvent)eventCode elapsedTime:(NSInteger)elapsedTime diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerinfoupdated.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerinfoupdated.dita index a361cf88893..55b91a31a6c 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerinfoupdated.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerinfoupdated.dita @@ -15,7 +15,7 @@

      void onPlayerInfoUpdated(PlayerUpdatedInfo info); - + onPlayerInfoUpdated?:(info:PlayerUpdatedInfo) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit infoUpdated:(AgoraMediaPlayerUpdatedInfo *_Nonnull)info; virtual void onPlayerInfoUpdated(const media::base::PlayerUpdatedInfo& info) = 0; diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerplaybackstats.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerplaybackstats.dita index a3eb3eb2f6b..2c3e115e291 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerplaybackstats.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayerplaybackstats.dita @@ -14,7 +14,7 @@

      void onPlayerPlaybackStats(PlayerPlaybackStats stats); - + onPlayerPlaybackStats?:(stats:PlayerPlaybackStats) => void (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit playbackStats:(AgoraMediaPlayerPlaybackStats *_Nonnull)info NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:playbackStats:)); virtual void onPlayerPlaybackStats(const media::base::PlayerPlaybackStats& stats) { (void)stats; @@ -42,7 +42,7 @@ Parameters - stats + stats info The statistics of the media file. See . diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersourcestatechanged.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersourcestatechanged.dita index 7d792b559df..867f6b7121d 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersourcestatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersourcestatechanged.dita @@ -15,7 +15,7 @@

      void onPlayerStateChanged(Constants.MediaPlayerState state, Constants.MediaPlayerReason reason); - + onPlayerStateChanged?:(state:Constants.MediaPlayerState,reason:Constants.MediaPlayerReason) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit didChangedToState:(AgoraMediaPlayerState)state reason:(AgoraMediaPlayerReason)reason NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didChangedTo:reason:)); diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersrcinfochanged.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersrcinfochanged.dita index 0c6b6606490..30dc0992bdf 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersrcinfochanged.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onplayersrcinfochanged.dita @@ -15,7 +15,7 @@

      void onPlayerSrcInfoChanged(SrcInfo from, SrcInfo to); - + onPlayerSrcInfoChanged?:(from:SrcInfo,to:SrcInfo) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit playerSrcInfoDidChange:(AgoraMediaPlayerSrcInfo *_Nonnull)to from:(AgoraMediaPlayerSrcInfo *_Nonnull)from; virtual void onPlayerSrcInfoChanged(const media::base::SrcInfo& from, const media::base::SrcInfo& to) = 0; diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpositionchanged.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpositionchanged.dita index b537415e827..59e26c62862 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpositionchanged.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpositionchanged.dita @@ -14,7 +14,7 @@

      void onPositionChanged(long positionMs, long timestampMs); - + onPositionChanged?:(positionMs:number,timestampMs:number) => void - (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didChangedToPosition:(NSInteger)positionMs atTimestamp:(NSTimeInterval)timestampMs NS_SWIFT_NAME(AgoraMediaPlayer(_:didChangedToPosition:atTimestamp:)); diff --git a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpreloadevent.dita b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpreloadevent.dita index 1c5f457ea7e..20427f7059e 100644 --- a/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpreloadevent.dita +++ b/en-US/dita/RTC-NG/API/callback_imediaplayersourceobserver_onpreloadevent.dita @@ -15,7 +15,7 @@

      void onPreloadEvent(String src, Constants.MediaPlayerPreloadEvent event); - + onPreloadEvent?:(src:string,event:Constants.MediaPlayerPreloadEvent) => void - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit didPreloadEvent:(AgoraMediaPlayerPreloadEvent)event; diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudioeffectfinished.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudioeffectfinished.dita index db323003c6a..cc73f8d204b 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudioeffectfinished.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudioeffectfinished.dita @@ -14,7 +14,7 @@

      public void onAudioEffectFinished(int soundId) {} - + onAudioEffectFinished?:(soundId:number) => void; - (void)rtcEngineDidAudioEffectFinish:(AgoraRtcEngineKit * _Nonnull)engine soundId:(int)soundId; virtual void onAudioEffectFinished(int soundId) { } diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiomixingstatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiomixingstatechanged.dita index 7f9c83faef6..3e8bd51e6c8 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiomixingstatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiomixingstatechanged.dita @@ -14,7 +14,7 @@

      public void onAudioMixingStateChanged(int state, int reasonCode); - onAudioMixingStateChanged?:(state:number,reason:number) => void + onAudioMixingStateChanged?:(state:Constants.AudioMixingState,reason:Constants.AudioMixingReason) => void - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine audioMixingStateChanged:(AgoraAudioMixingStateType)state reasonCode:(AgoraAudioMixingReasonCode)reasonCode; virtual void onAudioMixingStateChanged(AUDIO_MIXING_STATE_TYPE state, AUDIO_MIXING_REASON_TYPE reason) { @@ -43,7 +43,7 @@ reasonCode:(AgoraAudioMixingReasonCode)reasonCode; state - The playback state of the music file. See .

      + The playback state of the music file. See .

      • (710): The music file is playing.
      • (711): The music file pauses playing.
      • @@ -56,8 +56,8 @@ reasonCode:(AgoraAudioMixingReasonCode)reasonCode; reasonCode - reason - Error code. See .

        + reason + Error code. See .

        • (0): No error.
        • (701): The SDK cannot open the music file.
        • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiopublishstatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiopublishstatechanged.dita index 8faf49f2eef..a8602418801 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiopublishstatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiopublishstatechanged.dita @@ -15,7 +15,7 @@

          public void onAudioPublishStateChanged(String channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {} - + onAudioPublishStateChanged?:(channel:string, oldState:Constants.StreamPublishState, newState:Constants.StreamPublishState, elapseSinceLastState:number) => void; - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didAudioPublishStateChange:(NSString * _Nonnull)channelId oldState:(AgoraStreamPublishState)oldState @@ -61,7 +61,7 @@ elapseSinceLastState:(int)elapseSinceLastState; - channel + channel channelId The channel name. @@ -79,4 +79,4 @@ elapseSinceLastState:(int)elapseSinceLastState;

      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiosubscribestatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiosubscribestatechanged.dita index bf9107cce63..4eef2bce802 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiosubscribestatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onaudiosubscribestatechanged.dita @@ -15,7 +15,7 @@

      public void onAudioSubscribeStateChanged( String channel, int uid, int oldState, int newState, int elapseSinceLastState) {} - + onAudioSubscribeStateChanged?:(channel:string,uid:number,oldState:Constants.StreamSubscribeState,newState:Constants.StreamSubscribeState,elapseSinceLastState:number) =>void; - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didAudioSubscribeStateChange:(NSString * _Nonnull)channelId uid:(unsigned int)uid @@ -67,7 +67,7 @@ elapseSinceLastState:(int)elapseSinceLastState; - channel + channel channelId The channel name. @@ -77,8 +77,8 @@ elapseSinceLastState:(int)elapseSinceLastState; oldState - The previous subscribing status. See . - The previous subscription status.

        + The previous subscribing status. See . + The previous subscription status.
        • (0): The initial subscribing state after joining the channel.
        • (1): Fails to subscribe to the remote stream. Possible reasons:
          • The remote user:
              @@ -98,8 +98,8 @@ elapseSinceLastState:(int)elapseSinceLastState; newState - The current subscribing status. See . - The current subscribing status.
                + The current subscribing status. See . + The current subscribing status.
                • (0): The initial subscribing state after joining the channel.
                • (1): Fails to subscribe to the remote stream. Possible reasons:
                  • The remote user:
                      @@ -123,4 +123,4 @@ elapseSinceLastState:(int)elapseSinceLastState;
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncameraexposureareachanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncameraexposureareachanged.dita index e3a53bb435f..60a61dab1bf 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncameraexposureareachanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncameraexposureareachanged.dita @@ -14,7 +14,7 @@

      public void onCameraExposureAreaChanged(Rect rect) {} - + onCameraExposureAreaChanged?:(rect:camera.Rect) => void; - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine cameraExposureDidChangedToRect:(CGRect)rect; virtual void onCameraExposureAreaChanged(int x, int y, int width, int height) { (void)x; @@ -61,9 +61,9 @@ - + rect - The focus rectangle in the local preview. See . + The focus rectangle in the local preview. See .

      diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncamerafocusareachanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncamerafocusareachanged.dita index 2694e80421a..34fe126fb10 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncamerafocusareachanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_oncamerafocusareachanged.dita @@ -14,7 +14,7 @@

      public void onCameraFocusAreaChanged(Rect rect) {} - + onCameraFocusPointChanged?:(point:camera.Point) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine cameraFocusDidChangedToRect:(CGRect)rect; virtual void onCameraFocusAreaChanged(int x, int y, int width, int height) { (void)x; @@ -68,6 +68,17 @@ -

      + + + + point + The focus point within the camera frame. + + + + + + +
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onchannelmediarelaystatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onchannelmediarelaystatechanged.dita index f97242e8716..91f31e9ab68 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onchannelmediarelaystatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onchannelmediarelaystatechanged.dita @@ -14,7 +14,7 @@

      public void onChannelMediaRelayStateChanged(int state, int code) {} - + onChannelMediaRelayStateChanged?:(state:Constants.ChannelMediaRelayState,code:Constants.ChannelMediaRelayError) =>void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine channelMediaRelayStateDidChange:(AgoraChannelMediaRelayState)state error:(AgoraChannelMediaRelayError)error; @@ -49,7 +49,7 @@ channelMediaRelayStateDidChange:(AgoraChannelMediaRelayState)state state -

      The state code. See .

      +

      The state code. See .

      The state code:

      • (0): The SDK is initializing.
      • (1): The SDK tries to relay the media stream to the destination channel.
      • @@ -61,7 +61,7 @@ channelMediaRelayStateDidChange:(AgoraChannelMediaRelayState)state code -

        The error code of the channel media relay. See .

        +

        The error code of the channel media relay. See .

        The error code of the channel media relay.

        • (0): Everything is normal.
        • (1): An error occurs in the server response.
        • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechanged.dita index 4ca3440040a..09d8023b7b9 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechanged.dita @@ -39,18 +39,21 @@ NS_SWIFT_NAME(rtcEngine(_:didClientRoleChanged:newRole:newRoleOptions:));

      +
      +
      Trigger timing -

      This callback will be triggered in any of the following situations:

        +

        This callback will be triggered in any of the following situations:

        • Calling or to set the user role or audience latency level after joining a channel
        • Calling or and set the user role to AUDIENCE before joining a channel.

        -

        This callback will be triggered in any of the following situations:

          +

          This callback will be triggered in any of the following situations:

          • Calling to set the user role or audience latency level after joining a channel.
          • Calling to set the user role to AUDIENCE before joining a channel.

      Restrictions -

      This callback will not be triggered when you call or and set the user role to BROADCASTER before joining a channel.

      +

      This callback will not be triggered when you call or and set the user role to BROADCASTER before joining a channel.

      +

      This callback will not be triggered when you call and set the user role to BROADCASTER before joining a channel.

      <ph keyref="callback-section-title"/> @@ -65,13 +68,13 @@ NS_SWIFT_NAME(rtcEngine(_:didClientRoleChanged:newRole:newRoleOptions:)); oldRole - Role that the user switches from: .
        + Role that the user switches from: .
        newRole - Role that the user switches to: .
          + Role that the user switches to: .
          diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechangefailed.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechangefailed.dita index 169b4493683..ed0dc58d144 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechangefailed.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onclientrolechangefailed.dita @@ -44,8 +44,8 @@
      Trigger timing -

      The SDK triggers this callback when the local user calls or after joining a channel to switch the user role but the switching fails.

      -

      The SDK triggers this callback when the local user calls after joining a channel to switch the user role but the switching fails.

      +

      The SDK triggers this callback when the local user calls or after joining a channel to switch the user role but the switching fails.

      +

      The SDK triggers this callback when the local user calls after joining a channel to switch the user role but the switching fails.

      Restrictions @@ -74,8 +74,8 @@ currentRole - Current user role. See . - Current user role.
        + Current user role. See . + Current user role.
        • (1): Host. A host can both send and receive streams.
        • (2): Audience. An audience member can only receive streams.
        @@ -86,4 +86,4 @@
      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onconnectionstatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onconnectionstatechanged.dita index 6ee935f8e56..123ad62ab8a 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onconnectionstatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onconnectionstatechanged.dita @@ -56,20 +56,20 @@ state -

      The current connection state. See .

      -
        +

        The current connection state. See .

        +
        • (1): The SDK is disconnected from Agora's edge server.
        • (2): The SDK is connecting to Agora's edge server.
        • (3): The SDK is connected to Agora's edge server.
        • -
        • (4): The SDK keeps reconnecting to the Agora edge server.
        • +
        • (4): The SDK tries to reconnect to the Agora edge server.
        • (5): The SDK fails to connect to Agora's edge server.
        reason -

        The reason for a connection state change. See .

        -

        +

        The reason for a connection state change. See .

        +

        • (0): The SDK is connecting to Agora's edge server.
        • (1): The SDK has joined the channel successfully.
        • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onencryptionerror.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onencryptionerror.dita index a8174173f0b..af8a0df8f4d 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onencryptionerror.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onencryptionerror.dita @@ -50,11 +50,11 @@ connection The connection information. See . - + errorType Details about the error type. See . - + errorType Error types.
          • (0): Internal reasons.
          • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onerror.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onerror.dita index 6013ed9ff4d..bd73d8c98d1 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onerror.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onerror.dita @@ -15,7 +15,7 @@

            public void onError(int err) {} - onError?:(err:number,message:string) => void + onError?:(err:Constants.ErrorCode,message:string) => void - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didOccurError:(AgoraErrorCode)errorCode; virtual void onError(int err, const char* msg) { @@ -41,17 +41,17 @@ - + errorCode - err + err Error code. See . msg The error message. - - err + + err error Error code. @@ -62,11 +62,11 @@

          • (3): The SDK is not ready. Possible reasons include the following:
            • The initialization of fails. Reinitialize the .
            • No user has joined the channel when the method is called. Please check your code logic.
            • -
            • The user has not left the channel when the or method is called. Please check your code logic.
            • +
            • The user has not left the channel when the or method is called. Please check your code logic.
            • The audio module is disabled. The program is not complete.
          • (4): does not support the request. Possible reasons include the following:
              -
            • The method is called on devices running versions earlier than Android 5.0. Check the Android version.
            • +
            • The method is called on devices running versions earlier than Android 5.0. Check the Android version.
            • The built-in encryption mode is incorrect, or the SDK fails to load the external encryption library. Check the encryption mode setting, or reload the external encryption library.
          • (5): The request is rejected. Possible reasons include the following:
              @@ -81,7 +81,7 @@
            • (10): A timeout occurs. Some API calls require the SDK to return the execution result. This error occurs if the SDK takes too long (more than 10 seconds) to return the result.
            • (17): The request to join the channel is rejected. Possible reasons include the following:
              • The user is already in the channel. Agora recommends that you use the callback to see whether the user is in the channel. Do not call this method to join the channel unless you receive the (1) state.
              • -
              • After calling for the call test, the user tries to join the channel without calling to end the current test. To join a channel, the call test must be ended by calling .
              • +
              • After calling for the call test, the user tries to join the channel without calling to end the current test. To join a channel, the call test must be ended by calling .
            • (18): Fails to leave the channel. Possible reasons include the following:
              • The user has left the channel before calling the method. Stop calling this method to clear this error.
              • @@ -104,7 +104,7 @@
              • App Certificate is enabled in Agora Console, but the code still uses App ID for authentication. Once App Certificate is enabled for a project, you must use token-based authentication.
              • The uid used to generate the token is not the same as the uid used to join the channel.
              -
              +
              Deprecated:
              This enumerator is deprecated. Use (8) in the callback instead.
              diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfacepositionchanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfacepositionchanged.dita index 1c8926bc953..77b69c5fb00 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfacepositionchanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfacepositionchanged.dita @@ -70,12 +70,12 @@ - imageWidth + imageWidth width The width (px) of the video image captured by the local camera. - imageHeight + imageHeight height The height (px) of the video image captured by the local camera. diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstlocalvideoframe.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstlocalvideoframe.dita index 2e5955bf138..21d67ff6c8f 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstlocalvideoframe.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstlocalvideoframe.dita @@ -16,7 +16,7 @@ public void onFirstLocalVideoFrame( Constants.VideoSourceType source, int width, int height, int elapsed) {} - + onFirstLocalVideoFrame?:(source:Constants.VideoSourceType,width:number,height:number,elapsed:number) =>void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFrameWithSize:(CGSize)size elapsed:(NSInteger)elapsed @@ -67,11 +67,11 @@ size The size of the first local video frame. - + width The width (px) of the first local video frame. - + height The height (px) of the first local video frame. diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstremotevideoframe.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstremotevideoframe.dita index 5c2b9f24eb2..a24e974b9b1 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstremotevideoframe.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onfirstremotevideoframe.dita @@ -14,7 +14,7 @@

              public void onFirstRemoteVideoFrame(int uid, int width, int height, int elapsed) {} - + onFirstRemoteVideoFrame?:(uid:number,width:number,height:number,elapsed:number) =>void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstRemoteVideoFrameOfUid:(NSUInteger)uid size:(CGSize)size elapsed:(NSInteger)elapsed; virtual void onFirstRemoteVideoFrame(uid_t userId, int width, int height, int elapsed) { @@ -55,7 +55,7 @@ - uid + uid remoteUid userId The user ID of the remote user sending the video stream. @@ -68,11 +68,11 @@ connection The connection information. See . - + width The width (px) of the video stream. - + height The height (px) of the video stream. diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita index 73a085b7928..02f438b90fe 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita @@ -14,7 +14,7 @@

              public void onJoinChannelSuccess(String channel, int uid, int elapsed) {} - onJoinChannelSuccess?:(cid:string, uid:number, elapsed:number) => void; + onJoinChannelSuccess?:(channel:string, uid:number, elapsed:number) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didJoinChannel:(NSString * _Nonnull)channel withUid:(NSUInteger)uid elapsed:(NSInteger) elapsed; virtual void onJoinChannelSuccess(const char* channel, diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlastmilequality.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlastmilequality.dita index da181d26958..06924d5ea30 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlastmilequality.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlastmilequality.dita @@ -40,7 +40,7 @@ quality - The last-mile network quality. See .

                + The last-mile network quality. See .
                diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onleavechannel.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onleavechannel.dita index 85acf839977..a4662f68b4d 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onleavechannel.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onleavechannel.dita @@ -33,8 +33,8 @@
              Trigger timing -

              The SDK triggers this callback after you call , , , or to leave a channel.

              -

              The SDK triggers this callback after you call or to leave a channel.

              +

              The SDK triggers this callback after you call , , , or to leave a channel.

              +

              The SDK triggers this callback after you call or to leave a channel.

              Restrictions diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalaudiostatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalaudiostatechanged.dita index e4c14478930..e957166a80c 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalaudiostatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalaudiostatechanged.dita @@ -53,8 +53,8 @@ state - The state of the local audio. See . - The state of the local audio.
                + The state of the local audio. See . + The state of the local audio.
                • (0): The local video is in the initial state.
                • (1): The local video capturing device starts successfully.
                • (2): The first video frame is successfully encoded.
                • @@ -63,8 +63,8 @@ reason - Reasons for local audio state changes. See . - Reasons for local audio state changes.
                    + Reasons for local audio state changes. See . + Reasons for local audio state changes.
                    • (0): The local video is normal.
                    • (1): No specified reason for the local audio failure. Remind your users to try to rejoin the channel.
                    • (2): No permission to use the local video capturing device. Remind your users to grant permission.
                    • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocaluserregistered.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocaluserregistered.dita index 0586275c488..6d25a781a0f 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocaluserregistered.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocaluserregistered.dita @@ -25,8 +25,7 @@ onLocalUserRegistered?(uid: number, userAccount: string): void; public virtual void OnLocalUserRegistered(uint uid, string userAccount) {} onLocalUserRegistered?(uid: number, userAccount: string): void; - final void Function(bool isFallbackOrRecover)? - onLocalPublishFallbackToAudioOnly; + final void Function(int uid, String userAccount)? onLocalUserRegistered;

              diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideostatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideostatechanged.dita index cc0e31fbdc3..54913cf300f 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideostatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideostatechanged.dita @@ -15,7 +15,7 @@

              public void onLocalVideoStateChanged(Constants.VideoSourceType source, int state, int reason) {} - onLocalVideoStateChanged?:(source: Constants.VideoSourceType, state:Constants.LocalVideoStreamState,error:Constants.LocalVideoStreamReason) => void + onLocalVideoStateChanged?:(source: Constants.VideoSourceType, state:Constants.LocalVideoStreamState,reason:Constants.LocalVideoStreamReason) => void - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStateChangedOfState:(AgoraVideoLocalState)state reason:(AgoraLocalVideoStreamReason)reason sourceType:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:localVideoStateChangedOf:reason:sourceType:)); virtual void onLocalVideoStateChanged(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_REASON reason) { @@ -69,14 +69,14 @@ sourceType - source + source The type of the video source. See . state -

              The state of the local video, see .

              -

              +

              The state of the local video, see .

              +

              • (0): The local video is in the initial state.
              • (1): The local video capturing device starts successfully.
              • @@ -88,8 +88,8 @@ reason -

                The reasons for changes in local video state. See .

                -

                +

                The reasons for changes in local video state. See .

                +

                • (0): The local video is normal.
                • (1): No specified reason for the local video failure.
                • @@ -99,7 +99,7 @@
                • (8): Fails to find a local video capture device. Remind the user to check whether the camera is connected to the device properly or the camera is working properly, and then to rejoin the channel.
                • (14): Video capture is interrupted. Possible reasons include the following:
                  • The camera is being used by another app. Prompt the user to check if the camera is being used by another app.
                  • -
                  • The current app has been switched to the background. You can use foreground services to notify the operating system and ensure that the app can still collect video when it switches to the background. See .
                  • +
                  • The device is locked, or the current app has been switched to the background. You can use foreground services to notify the operating system and ensure that the app can still collect video when it switches to the background. See .
                • (15): The video capture device encounters an error. Prompt the user to close and restart the camera to restore functionality. If this operation does not solve the problem, check if the camera has a hardware failure.

                diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideotranscodererror.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideotranscodererror.dita index 8fcb75861a0..710f36c7266 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideotranscodererror.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onlocalvideotranscodererror.dita @@ -15,7 +15,7 @@

                public void onLocalVideoTranscoderError( LocalTranscoderConfiguration.TranscodingVideoStream stream, int error) {} - + onLocalVideoTranscoderError?:(stream:TranscodingVideoStream, error:Constants.VideoTranscoderError) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didLocalVideoTranscoderErrorWithStream:(AgoraTranscodingVideoStream * _Nonnull )stream errorCode:(AgoraVideoTranscoderError)errorCode NS_SWIFT_NAME(rtcEngine(_:didLocalVideoTranscoderErrorWithStream:errorCode:)); virtual void onLocalVideoTranscoderError(const TranscodingVideoStream& stream, VIDEO_TRANSCODER_ERROR error){ @@ -55,10 +55,10 @@ The video streams that cannot be mixed during video mixing. See . - error + error errorCode - The reason for local video mixing error. See . - The reason for local video mixing error:

                  + The reason for local video mixing error. See . + The reason for local video mixing error:
                  • 1: The selected video source has not started video capture. You need to create a video track for it and start video capture.
                  • 2: The video source type is invalid. You need to re-specify the supported video source type.
                  • 3: The image path is invalid. You need to re-specify the correct image path.
                  • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onnetworkquality.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onnetworkquality.dita index c9695b6f45b..327c62df971 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onnetworkquality.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onnetworkquality.dita @@ -47,7 +47,7 @@

                    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.

                    - txQuality is UNKNOWNUnknown when the user is not sending a stream; rxQuality is UNKNOWNUnknown when the user is not receiving a stream.
              + txQuality is UNKNOWNUnknown when the user is not sending a stream; rxQuality is UNKNOWNUnknown when the user is not receiving a stream.
              <ph keyref="callback-section-title" /> @@ -68,13 +68,13 @@ txQuality - Uplink network quality rating of the user in terms of the transmission bit rate, packet loss rate, average RTT (Round-Trip Time) and jitter of the uplink network. This parameter is a quality rating helping you understand how well the current uplink network conditions can support the selected video encoder configuration. For example, a 1000 Kbps uplink network may be adequate for video frames with a resolution of 640 × 480 and a frame rate of 15 fps in the LIVE_BROADCASTING profile, but might be inadequate for resolutions higher than 1280 × 720. See .
                + Uplink network quality rating of the user in terms of the transmission bit rate, packet loss rate, average RTT (Round-Trip Time) and jitter of the uplink network. This parameter is a quality rating helping you understand how well the current uplink network conditions can support the selected video encoder configuration. For example, a 1000 Kbps uplink network may be adequate for video frames with a resolution of 640 × 480 and a frame rate of 15 fps in the LIVE_BROADCASTING profile, but might be inadequate for resolutions higher than 1280 × 720. See .
                rxQuality - Downlink network quality rating of the user in terms of packet loss rate, average RTT, and jitter of the downlink network. See .
                  + Downlink network quality rating of the user in terms of packet loss rate, average RTT, and jitter of the downlink network. See .
                  diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onpermissionerror.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onpermissionerror.dita index 5fb45bcdeb5..f466a39b52c 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onpermissionerror.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onpermissionerror.dita @@ -41,8 +41,8 @@ permission type permissionType - The type of the device permission. See . - The type of the device permission.
                    + The type of the device permission. See . + The type of the device permission.
                    • (0): Permission for the audio capture device.
                    • (1): Permission for the camera.
                    • (2): Permission for screen sharing.
                    • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrejoinchannelsuccess.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrejoinchannelsuccess.dita index 3cd440b0c7a..d8509427f09 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrejoinchannelsuccess.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrejoinchannelsuccess.dita @@ -14,7 +14,7 @@

                      public void onRejoinChannelSuccess(String channel, int uid, int elapsed) {} - onRejoinChannelSuccess?:(cid:string, uid:number, elapsed:number) => void; + onRejoinChannelSuccess?:(channel:string, uid:number, elapsed:number) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didRejoinChannel:(NSString * _Nonnull)channel withUid:(NSUInteger)uid elapsed:(NSInteger) elapsed; virtual void onRejoinChannelSuccess(const char* channel, uid_t uid, int elapsed) { @@ -31,6 +31,8 @@ onRejoinChannelSuccess;

                      +
                      +
                      Trigger timing

                      When a user loses connection with the server because of network problems, the SDK automatically tries to reconnect and triggers this callback upon reconnection.

                      diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremoteaudiostatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremoteaudiostatechanged.dita index 50f0d4f678b..7dab554c89d 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremoteaudiostatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremoteaudiostatechanged.dita @@ -72,8 +72,8 @@ state - The state of the remote audio. See . - Remote audio states.
                        + The state of the remote audio. See . + Remote audio states.
                        • (0): The remote audo is in the initial state. The SDK reports this state in the case of , , or .
                        • (1): The first remote audio packet is received.
                        • (2): The remote audio stream is decoded and plays normally. The SDK reports this state in the case of , or .
                        • @@ -83,8 +83,8 @@ reason - The reason of the remote audio state change. See . - Remote audio state reasons.
                            + The reason of the remote audio state change. See . + Remote audio state reasons.
                            • (0): The SDK reports this reason when the audio state changes.
                            • (1): Network congestion.
                            • (2): Network recovery.
                            • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremotevideostatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremotevideostatechanged.dita index d96452ce048..dcd6d035509 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremotevideostatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onremotevideostatechanged.dita @@ -72,8 +72,8 @@ state -

                              The state of the remote video. See .

                              -

                              The state of the remote video:

                                +

                                The state of the remote video. See .

                                +

                                The state of the remote video:

                                • (0): The remote video is in the initial state. This state is reported in the case of (3), (5), or (7).
                                • (1): The first remote video packet is received.
                                • (2): The remote video stream is decoded and plays normally. This state is reported in the case of (2), (4), (6), or (9).
                                • @@ -85,8 +85,8 @@ reason -

                                  The reason for the remote video state change. See .

                                  -

                                  Remote audio state reasons:

                                    +

                                    The reason for the remote video state change. See .

                                    +

                                    Remote audio state reasons:

                                    • (0): Internal reasons.
                                    • (1): Network congestion.
                                    • (2): Network recovery.
                                    • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrequesttoken.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrequesttoken.dita index ffdd51880e9..8e6dc3bc30b 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrequesttoken.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrequesttoken.dita @@ -14,7 +14,7 @@

                                      public void onRequestToken() {} - + onRequestToken?:() => void; - (void)rtcEngineRequestToken:(AgoraRtcEngineKit * _Nonnull)engine; virtual void onRequestToken() UFUNCTION(BlueprintNativeEvent, Category = "Agora|Event") diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingevent.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingevent.dita index b92381c7d13..178939b46c8 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingevent.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingevent.dita @@ -39,8 +39,8 @@ eventCode event - The event code of Media Push. See . - The event code of Media Push.

                                        + The event code of Media Push. See . + The event code of Media Push.
                                        • (1): An error occurs when you add a background image or a watermark image in the Media Push.
                                        • (2): The streaming URL is already being used for Media Push. If you want to start new streaming, use a new streaming URL.
                                        • (3): The feature is not supported.
                                        • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingstatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingstatechanged.dita index 96f0ca6f0ff..58ab0ec1897 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingstatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onrtmpstreamingstatechanged.dita @@ -14,7 +14,7 @@

                                          public void onRtmpStreamingStateChanged(String url, int state, int reason) {} - onRtmpStreamingStateChanged? : (url:string,state:Constants.RtmpStreamPublishState,errCode:Constants.RtmpStreamPublishReason) => void; + onRtmpStreamingStateChanged? : (url:string,state:Constants.RtmpStreamPublishState,reason:Constants.RtmpStreamPublishReason) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine rtmpStreamingChangedToState:(NSString * _Nonnull)url state:(AgoraRtmpStreamingState)state reason:(AgoraRtmpStreamingReason)reason NS_SWIFT_NAME(rtcEngine(_:rtmpStreamingChangedToState:state:reason:)); @@ -59,8 +59,8 @@ state - The current state of the Media Push. See . - The current state of the Media Push:

                                            + The current state of the Media Push. See . + The current state of the Media Push:
                                            • (0): The Media Push has not started or has ended.
                                            • (1): The streaming server and CDN server are being connected.
                                            • (2): The Media Push publishes. The SDK successfully publishes the RTMP or RTMPS streaming and returns this state.
                                            • @@ -74,8 +74,8 @@ reason - Reasons for the changes in the Media Push status. See . - Reasons for the changes in the Media Push status:
                                                + Reasons for the changes in the Media Push status. See . + Reasons for the changes in the Media Push status:
                                                • (0): The Media Push publishes successfully.
                                                • (1): Invalid argument used. Check the parameter setting.
                                                • (2): The Media Push is encrypted and cannot be published.
                                                • @@ -88,7 +88,7 @@
                                                • (9): Agora's server fails to find the media stream of Media Push.
                                                • (10): The format of the media push URL is not supported. Check whether the URL format is correct.
                                                • (11): The user role is not host, so the user cannot use the Media Push function. Check your application code logic.
                                                • -
                                                • (13): The or method is called to update the transcoding configuration in a scenario where there is Media Push without transcoding. Check your application code logic.
                                                • +
                                                • (13): The method is called to update the transcoding configuration in a scenario where there is Media Push without transcoding. Check your application code logic.
                                                • (14): Errors occurred in the host's network.
                                                • (16): Your project does not have permission to use Media Push service. Refer to Media Push to enable the Media Push permission.
                                                • (100): The Media Push has been stopped normally. After you call to stop the Media Push, the SDK returns this value.
                                                • diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessage.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessage.dita index 68fde6731c5..c604293ec9f 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessage.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessage.dita @@ -28,16 +28,23 @@ } UFUNCTION(BlueprintNativeEvent, Category = "Agora|Event") void OnStreamMessage(int64 uid, int streamId, const FString& data, int length, int64 sentTs); - onStreamMessage?(connection: RtcConnection, remoteUid: number, streamId: number, data: Uint8Array, length: number, sentTs: number): void; - public virtual void OnStreamMessage(RtcConnection connection, uint remoteUid, int streamId, byte[] data, uint length, UInt64 sentTs) { } + onStreamMessage?( + connection: RtcConnection, + remoteUid: number, + streamId: number, + data: Uint8Array, + length: number, + sentTs: number + ): void; + public virtual void OnStreamMessage(RtcConnection connection, uint remoteUid, int streamId, byte[] data, ulong length, ulong sentTs) { } onStreamMessage?( - connection: RtcConnection, - remoteUid: number, - streamId: number, - data: Uint8Array, - length: number, - sentTs: number -): void; + connection: RtcConnection, + remoteUid: number, + streamId: number, + data: Uint8Array, + length: number, + sentTs: number + ): void; final void Function(RtcConnection connection, int remoteUid, int streamId, Uint8List data, int length, int sentTs)? onStreamMessage;

                                                  @@ -57,7 +64,7 @@ - uid + uid userId remoteUid The ID of the remote user sending the message. diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessageerror.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessageerror.dita index 13a77ac772e..affcca08378 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessageerror.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onstreammessageerror.dita @@ -67,7 +67,7 @@ The connection information. See . - uid + uid userId remoteUid The ID of the remote user sending the message. @@ -78,8 +78,8 @@ code - error - The error code. See . + error + Error code. See . missed diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_ontokenprivilegewillexpire.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_ontokenprivilegewillexpire.dita index 5ac52ce57a5..d16dc7e4c38 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_ontokenprivilegewillexpire.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_ontokenprivilegewillexpire.dita @@ -14,7 +14,7 @@

                                                  public void onTokenPrivilegeWillExpire(String token) {} - + onTokenPrivilegeWillExpire?: (token:string) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine tokenPrivilegeWillExpire:(NSString *_Nonnull)token; virtual void onTokenPrivilegeWillExpire(const char* token) { diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onuserenablevideo.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onuserenablevideo.dita index c1018791488..ad8363af645 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onuserenablevideo.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onuserenablevideo.dita @@ -14,7 +14,7 @@

                                                  public void onUserEnableVideo(int uid, boolean enabled) {} - + onUserEnableVideo?:(uid:number, enabled:boolean) => void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didVideoEnabled:(BOOL)enabled byUid:(NSUInteger)uid @@ -78,4 +78,4 @@

                                                  - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermuteaudio.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermuteaudio.dita index f2923fdb16f..018f03521d7 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermuteaudio.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermuteaudio.dita @@ -14,7 +14,7 @@

                                                  public void onUserMuteAudio(int uid, boolean muted) {} - + onUserMuteAudio?:(uid:number,muted:boolean) =>void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didAudioMuted:(BOOL)muted byUid:(NSUInteger)uid; virtual void onUserMuteAudio(uid_t uid, bool muted) { (void)uid; diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermutevideo.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermutevideo.dita index 5f9ad181668..14a4b3165a0 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermutevideo.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onusermutevideo.dita @@ -14,7 +14,7 @@

                                                  public void onUserMuteVideo(int uid, boolean muted) {} - + onUserMuteVideo?:(uid:number,muted:boolean) =>void; - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didVideoMuted:(BOOL)muted byUid:(NSUInteger)uid virtual void onUserMuteVideo(uid_t uid, bool muted) { (void)uid; diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosizechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosizechanged.dita index a7b43322b45..807bdf63ea8 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosizechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosizechanged.dita @@ -70,11 +70,11 @@ size Video dimensions. - + width The width (pixels) of the video stream. - + height The height (pixels) of the video stream. diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita index 445feb751be..05df9d98ffe 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita @@ -15,7 +15,7 @@

                                                  public void onVideoSubscribeStateChanged( String channel, int uid, int oldState, int newState, int elapseSinceLastState) {} - + onVideoSubscribeStateChanged?:(channel:string,uid:number,oldState:Constants.StreamSubscribeState,newState:Constants.StreamSubscribeState,elapseSinceLastState:number) =>void; - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didVideoSubscribeStateChange:(NSString * _Nonnull)channelId uid:(unsigned int)uid @@ -78,8 +78,8 @@ oldState - The previous subscribing status. See . - The previous subscription status.

                                                    + The previous subscribing status. See . + The previous subscription status.
                                                    • (0): The initial subscribing state after joining the channel.
                                                    • (1): Fails to subscribe to the remote stream. Possible reasons:
                                                      • The remote user:
                                                          @@ -99,8 +99,8 @@ newState - The current subscribing status. See . - The current subscribing status.
                                                            + The current subscribing status. See . + The current subscribing status.
                                                            • (0): The initial subscribing state after joining the channel.
                                                            • (1): Fails to subscribe to the remote stream. Possible reasons:
                                                              • The remote user:
                                                                  @@ -124,4 +124,4 @@
                                                  - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getmirrorapplied.dita b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getmirrorapplied.dita index d4fcaec3e12..bb42c41a609 100644 --- a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getmirrorapplied.dita +++ b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getmirrorapplied.dita @@ -27,7 +27,10 @@

                                                  If the video data you want to obtain is a mirror image of the original video, you need to register this callback when calling . After you successfully register the video frame observer, the SDK triggers this callback each time it receives a video frame. You need to set whether or not to mirror the video frame in the return value of this callback.

                                                    -
                                                  • This function only supports video data in RGBA and YUV420.
                                                  • +
                                                  • On the Android platform, the supported video data formats for this callback are: I420, RGBA, and Texture.
                                                  • +
                                                  • On the Windows platform, the supported video data formats for this callback are: I420, RGBA, and TextureBuffer.
                                                  • +
                                                  • On the iOS platform, the supported video data formats for this callback are: I420, RGBA, and CVPixelBuffer.
                                                  • +
                                                  • On the macOS platform, the supported video data formats for this callback are: I420 and RGBA.
                                                  • Both this method and the method support setting the mirroring effect. Agora recommends that you only choose one method to set it up. Using both methods at the same time causes the mirroring effect to overlap, and the mirroring settings fail.
                                                  diff --git a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getrotationapplied.dita b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getrotationapplied.dita index 7a4ef1f9366..7accb677bc1 100644 --- a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getrotationapplied.dita +++ b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_getrotationapplied.dita @@ -28,8 +28,10 @@

                                                  If the video has been rotated according to rotation in on the capture device, you do not need to call this method to set the video rotation.

                                                    -
                                                  • This function only applies to the scenarios where the video processing mode is .
                                                  • -
                                                  • This function only supports video data in RGBA and YUV420.
                                                  • +
                                                  • On the Android platform, the supported video data formats for this callback are: I420, RGBA, and Texture.
                                                  • +
                                                  • On the Windows platform, the supported video data formats for this callback are: I420, RGBA, and TextureBuffer.
                                                  • +
                                                  • On the iOS platform, the supported video data formats for this callback are: I420, RGBA, and CVPixelBuffer.
                                                  • +
                                                  • On the macOS platform, the supported video data formats for this callback are: I420 and RGBA.
                                                  diff --git a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_oncapturevideoframe.dita b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_oncapturevideoframe.dita index 15bff4355fb..a8c760ff7f5 100644 --- a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_oncapturevideoframe.dita +++ b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_oncapturevideoframe.dita @@ -33,7 +33,7 @@

                                                  You can get raw video data collected by the local device through this callback and preprocess it as needed. Once the preprocessing is complete, you can directly modify videoFrame in this callback, and set the return value to to send the modified video data to the SDK.

                                                  -

                                                  If you need to send the preprocessed data to the SDK, you need to call (0) first to set the video processing mode to read and write mode.

                                                  +

                                                  If you need to send the preprocessed data to the SDK, you need to call first to set the video processing mode to read and write mode ().

                                                  You can get raw video data collected by the local device through this callback.

                                                  @@ -49,7 +49,7 @@
                                                  Restrictions
                                                    -
                                                  • The video data you get here is the raw video data, that is, video data that has not undergone preprocessing such as watermarking, cropping, and rotation.
                                                  • +
                                                  • The video data you get here is the raw video data, that is, video data that has not undergone preprocessing such as watermarking, cropping, and rotation.
                                                  • If the video data type you get is RGBA, the SDK does not support processing the data of the alpha channel.
                                                  • It is recommended that you ensure the modified parameters in videoFrame are consistent with the actual situation of the video frames in the video frame buffer. Otherwise, it may cause unexpected rotation, distortion, and other issues in the local preview and remote video display.
                                                  • It's recommended that you implement this callback through the C++ API.
                                                  • diff --git a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onpreencodevideoframe.dita b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onpreencodevideoframe.dita index 826ac95d2fa..67dc5ceec3e 100644 --- a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onpreencodevideoframe.dita +++ b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onpreencodevideoframe.dita @@ -35,6 +35,7 @@

                                                    After processing, you can send the processed video data back to the SDK in this callback.

                                                      +
                                                    • If you need to send the preprocessed data to the SDK, you need to call first to set the video processing mode to read and write mode ().
                                                    • To get the video data captured from the second screen before encoding, you need to set (1 << 2) as a frame position through .
                                                    • To get the video data captured from the second screen before encoding, you need to set (1 << 2) as a frame position through the position parameter of the method.
                                                    • It's recommended that you implement this callback through the C++ API.
                                                    • diff --git a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onrendervideoframe.dita b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onrendervideoframe.dita index 18cd010edd4..abf0d59863c 100644 --- a/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onrendervideoframe.dita +++ b/en-US/dita/RTC-NG/API/callback_ivideoframeobserver_onrendervideoframe.dita @@ -39,6 +39,7 @@

                                                      After you successfully register the video frame observer, the SDK triggers this callback each time it receives a video frame. In this callback, you can get the video data sent from the remote end before rendering, and then process it according to the particular scenarios.

                                                        +
                                                      • If you need to send the preprocessed data to the SDK, you need to call first to set the video processing mode to read and write mode ().
                                                      • If the video data type you get is RGBA, the SDK does not support processing the data of the alpha channel.
                                                      • It's recommended that you implement this callback through the C++ API.
                                                      • Due to framework limitations, this callback does not support sending processed video data back to the SDK.
                                                      • diff --git a/en-US/dita/RTC-NG/API/class_advanceoptions.dita b/en-US/dita/RTC-NG/API/class_advanceoptions.dita index c2311788d56..dbf7bd0e25c 100644 --- a/en-US/dita/RTC-NG/API/class_advanceoptions.dita +++ b/en-US/dita/RTC-NG/API/class_advanceoptions.dita @@ -23,11 +23,11 @@ } } export class AdvanceOptions { - public encodingPreference:EncodingPrefence = EncodingPrefence.PREFER_AUTO; - public compressionPreference:CompressionPrefence = CompressionPrefence.PREFER_LOW_LATENCY; - constructor() { - } - } + public encodingPreference:EncodingPrefence = EncodingPrefence.PREFER_AUTO; + public compressionPreference:CompressionPrefence = CompressionPrefence.PREFER_LOW_LATENCY; + constructor() { + } +} __attribute__((visibility("default"))) @interface AgoraAdvancedVideoOptions : NSObject @property(assign, nonatomic) AgoraEncodingPreference encodingPreference; @property(assign, nonatomic) AgoraCompressionPreference compressionPreference; diff --git a/en-US/dita/RTC-NG/API/class_audioparams.dita b/en-US/dita/RTC-NG/API/class_audioparams.dita index 2a2610db9aa..44887c4bbb9 100644 --- a/en-US/dita/RTC-NG/API/class_audioparams.dita +++ b/en-US/dita/RTC-NG/API/class_audioparams.dita @@ -20,7 +20,12 @@ this.samplesPerCall = samplesPerCall; } } - + export class AudioParams { + public sampleRate: number = 16000; + public channel: number = 1; + public mode: Constants.RawAudioFrameOpMode = Constants.RawAudioFrameOpMode.READ_ONLY; + public samplesPerCall: number = 1024; +} __attribute__((visibility("default"))) @interface AgoraAudioParams : NSObject @property (assign, nonatomic) NSInteger sampleRate; diff --git a/en-US/dita/RTC-NG/API/class_audiospectrumdata.dita b/en-US/dita/RTC-NG/API/class_audiospectrumdata.dita index 36225f86763..72afb7170d1 100644 --- a/en-US/dita/RTC-NG/API/class_audiospectrumdata.dita +++ b/en-US/dita/RTC-NG/API/class_audiospectrumdata.dita @@ -10,7 +10,10 @@ private float[] audioSpectrumData; private int dataLength; } - + export class AudioSpectrumInfo { + public uid:number = 0 ; + public audioSpectrumData = new AudioSpectrumData(); +} struct AudioSpectrumData { const float *audioSpectrumData; @@ -69,7 +72,7 @@ struct FAudioSpectrumData {

                                                        The audio spectrum data. Agora divides the audio frequency into 256 frequency domains, and reports the energy value of each frequency domain through this parameter. The value range of each energy type is [-300, 1] and the unit is dBFS.

                                                        - + dataLength The audio spectrum data length is 256. diff --git a/en-US/dita/RTC-NG/API/class_cachestatistics.dita b/en-US/dita/RTC-NG/API/class_cachestatistics.dita index cbab42329af..a935b0fc071 100644 --- a/en-US/dita/RTC-NG/API/class_cachestatistics.dita +++ b/en-US/dita/RTC-NG/API/class_cachestatistics.dita @@ -17,7 +17,15 @@ private long cacheSize; private long downloadSize; }
                                                        - + export class CacheStatistics +{ + + public fileSize:number = 0 + + public cacheSize:number = 0 + + public downloadSize:number = 0 +} __attribute__((visibility("default"))) @interface AgoraMediaPlayerCacheStatistics : NSObject @property(assign, nonatomic) NSInteger fileSize; @property(assign, nonatomic) NSInteger cacheSize; diff --git a/en-US/dita/RTC-NG/API/class_cameracapturerconfiguration.dita b/en-US/dita/RTC-NG/API/class_cameracapturerconfiguration.dita index 0ec7fb61dce..271a1008927 100644 --- a/en-US/dita/RTC-NG/API/class_cameracapturerconfiguration.dita +++ b/en-US/dita/RTC-NG/API/class_cameracapturerconfiguration.dita @@ -341,7 +341,7 @@ class CameraCapturerConfiguration { <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property"/> - + cameraDirection (Optional) The camera direction. See .This parameter is for Android and iOS only. @@ -386,7 +386,7 @@ class CameraCapturerConfiguration { followEncodeDimensionRatio (Optional) Whether to follow the video aspect ratio set in :
                                                          -
                                                        • : (Default) Follow the set video aspect ratio. The SDK crops the captured video according to the set video aspect ratio and synchronously changes the local preview screen and the video frame in and .
                                                        • +
                                                        • : (Default) Follow the set video aspect ratio. The SDK crops the captured video according to the set video aspect ratio and synchronously changes the local preview screen and the video frame in and .
                                                        • : Do not follow the system default audio playback device. The SDK does not change the aspect ratio of the captured video frame.
                                                        diff --git a/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita b/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita index c8d41a0490a..2490141ca87 100644 --- a/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita +++ b/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita @@ -38,63 +38,63 @@ public Boolean isAudioFilterable; }
                                                        export class ChannelMediaOptions { - + public publishCameraTrack?:boolean; - + public publishSecondaryCameraTrack?:boolean; - + public publishMicrophoneTrack?:boolean; - + public publishScreenCaptureVideo?:boolean; - + public publishScreenCaptureAudio?:boolean; - + public publishCustomAudioTrack?:boolean; - + public publishCustomAudioTrackId?:number; - + public publishCustomVideoTrack?:boolean; - + public publishEncodedVideoTrack?:boolean; - + public publishMediaPlayerAudioTrack?:boolean; - + public publishMediaPlayerVideoTrack?:boolean; - + public publishTranscodedVideoTrack?:boolean; - + public publishMixedAudioTrack?:boolean; - + public autoSubscribeAudio?:boolean; - + public autoSubscribeVideo?:boolean; - + public enableAudioRecordingOrPlayout?:boolean; - + public publishMediaPlayerId?:number; - + public clientRoleType?:number; - + public audienceLatencyLevel?:number; - + public defaultVideoStreamType?:number; - + public channelProfile?:number; - + public audioDelayMs?:number; - + public mediaPlayerAudioDelayMs?:number; - + public enableBuiltInMediaEncryption?:boolean; - + public publishRhythmPlayerTrack?:boolean; - + public isInteractiveAudience?:boolean; - + public customVideoTrackId?:number; - + public isAudioFilterable?:boolean; - + public startPreview?:boolean; public constructor() { } @@ -285,7 +285,7 @@ public: FChannelMediaOptions(){} FChannelMediaOptions(const agora::rtc::ChannelMediaOptions & AgoraData){ - + SET_UEBP_OPTIONAL_VAL_BOOL(this->publishCameraTrack, AgoraData.publishCameraTrack) SET_UEBP_OPTIONAL_VAL_BOOL(this->publishSecondaryCameraTrack, AgoraData.publishSecondaryCameraTrack) SET_UEBP_OPTIONAL_VAL_BOOL(this->publishThirdCameraTrack, AgoraData.publishThirdCameraTrack) @@ -314,15 +314,15 @@ public: SET_UEBP_OPTIONAL_VAL_BOOL(this->enableAudioRecordingOrPlayout, AgoraData.enableAudioRecordingOrPlayout) SET_UEBP_OPTIONAL_VAL_DIR_ASSIGN(this->publishMediaPlayerId, AgoraData.publishMediaPlayerId) SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->clientRoleType,AgoraData.clientRoleType,static_cast<ECLIENT_ROLE_TYPE>(AgoraData.clientRoleType.value())) - + SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->audienceLatencyLevel, AgoraData.audienceLatencyLevel, static_cast<EAUDIENCE_LATENCY_LEVEL_TYPE>(AgoraData.audienceLatencyLevel.value())) SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->defaultVideoStreamType, AgoraData.defaultVideoStreamType, static_cast<EVIDEO_STREAM_TYPE>(AgoraData.defaultVideoStreamType.value())) SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->channelProfile, AgoraData.channelProfile, static_cast<ECHANNEL_PROFILE_TYPE>(AgoraData.channelProfile.value())) SET_UEBP_OPTIONAL_VAL_DIR_ASSIGN(this->audioDelayMs, AgoraData.audioDelayMs) SET_UEBP_OPTIONAL_VAL_DIR_ASSIGN(this->mediaPlayerAudioDelayMs, AgoraData.mediaPlayerAudioDelayMs) - + SET_UEBP_OPTIONAL_VAL_FString(this->token,AgoraData.token) - + SET_UEBP_OPTIONAL_VAL_BOOL(this->enableBuiltInMediaEncryption, AgoraData.enableBuiltInMediaEncryption) SET_UEBP_OPTIONAL_VAL_BOOL(this->publishRhythmPlayerTrack, AgoraData.publishRhythmPlayerTrack) SET_UEBP_OPTIONAL_VAL_BOOL(this->isInteractiveAudience, AgoraData.isInteractiveAudience) @@ -731,67 +731,67 @@ class ChannelMediaOptions { public Boolean isAudioFilterable; } export class ChannelMediaOptions { + + public publishCameraTrack?:boolean; + + public publishSecondaryCameraTrack?:boolean; + + public publishMicrophoneTrack?:boolean; + + public publishScreenCaptureVideo?:boolean; + + public publishScreenCaptureAudio?:boolean; + + public publishCustomAudioTrack?:boolean; + + public publishCustomAudioTrackId?:number; + + public publishCustomVideoTrack?:boolean; + + public publishEncodedVideoTrack?:boolean; + + public publishMediaPlayerAudioTrack?:boolean; + + public publishMediaPlayerVideoTrack?:boolean; + + public publishTranscodedVideoTrack?:boolean; + + public publishMixedAudioTrack?:boolean; + + public autoSubscribeAudio?:boolean; + + public autoSubscribeVideo?:boolean; + + public enableAudioRecordingOrPlayout?:boolean; + + public publishMediaPlayerId?:number; + + public clientRoleType?:number; + + public audienceLatencyLevel?:number; + + public defaultVideoStreamType?:number; + + public channelProfile?:number; + + public audioDelayMs?:number; + + public mediaPlayerAudioDelayMs?:number; - public publishCameraTrack?:boolean; - - public publishSecondaryCameraTrack?:boolean; - - public publishMicrophoneTrack?:boolean; - - public publishScreenCaptureVideo?:boolean; - - public publishScreenCaptureAudio?:boolean; - - public publishCustomAudioTrack?:boolean; - - public publishCustomAudioTrackId?:number; - - public publishCustomVideoTrack?:boolean; - - public publishEncodedVideoTrack?:boolean; - - public publishMediaPlayerAudioTrack?:boolean; - - public publishMediaPlayerVideoTrack?:boolean; - - public publishTranscodedVideoTrack?:boolean; - - public publishMixedAudioTrack?:boolean; - - public autoSubscribeAudio?:boolean; - - public autoSubscribeVideo?:boolean; - - public enableAudioRecordingOrPlayout?:boolean; - - public publishMediaPlayerId?:number; - - public clientRoleType?:number; - - public audienceLatencyLevel?:number; - - public defaultVideoStreamType?:number; - - public channelProfile?:number; - - public audioDelayMs?:number; - - public mediaPlayerAudioDelayMs?:number; - - public enableBuiltInMediaEncryption?:boolean; - - public publishRhythmPlayerTrack?:boolean; - - public isInteractiveAudience?:boolean; - - public customVideoTrackId?:number; - - public isAudioFilterable?:boolean; - - public startPreview?:boolean; - public constructor() { - } - } + public enableBuiltInMediaEncryption?:boolean; + + public publishRhythmPlayerTrack?:boolean; + + public isInteractiveAudience?:boolean; + + public customVideoTrackId?:number; + + public isAudioFilterable?:boolean; + + public startPreview?:boolean; + public constructor() { + } +}
                                                        __attribute__((visibility("default"))) @interface AgoraRtcChannelMediaOptions : NSObject @property(assign, nonatomic) BOOL publishCameraTrack; @property(assign, nonatomic) BOOL publishSecondaryCameraTrack; @@ -809,7 +809,7 @@ class ChannelMediaOptions { #endif @property(assign, nonatomic) BOOL publishCustomAudioTrack; @property(assign, nonatomic) NSInteger publishCustomAudioTrackId; - + @property(assign, nonatomic) BOOL publishCustomVideoTrack; @property(assign, nonatomic) BOOL publishEncodedVideoTrack; @property(assign, nonatomic) BOOL publishMediaPlayerAudioTrack; @@ -826,14 +826,14 @@ class ChannelMediaOptions { @property(assign, nonatomic) AgoraChannelProfile channelProfile; @property(copy, nonatomic) NSString * _Nullable token; @property(assign, nonatomic) BOOL enableBuiltInMediaEncryption; - + @property(assign, nonatomic) BOOL publishRhythmPlayerTrack; @property(assign, nonatomic) BOOL isInteractiveAudience; - + @property(assign, nonatomic) NSInteger customVideoTrackId; - + @property(assign, nonatomic) BOOL isAudioFilterable; - + @end struct ChannelMediaOptions { Optional<bool> publishCameraTrack; @@ -841,7 +841,7 @@ class ChannelMediaOptions { Optional<bool> publishThirdCameraTrack; Optional<bool> publishFourthCameraTrack; Optional<bool> publishMicrophoneTrack; - + #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) Optional<bool> publishScreenCaptureVideo; Optional<bool> publishScreenCaptureAudio; @@ -851,7 +851,7 @@ class ChannelMediaOptions { Optional<bool> publishThirdScreenTrack; Optional<bool> publishFourthScreenTrack; #endif - + Optional<bool> publishCustomAudioTrack; Optional<int> publishCustomAudioTrackId; Optional<bool> publishCustomVideoTrack; @@ -872,11 +872,11 @@ class ChannelMediaOptions { Optional<bool> enableBuiltInMediaEncryption; Optional<bool> publishRhythmPlayerTrack; Optional<bool> isInteractiveAudience; - + Optional<video_track_id_t> customVideoTrackId; - + Optional<bool> isAudioFilterable; - + ChannelMediaOptions() {} ~ChannelMediaOptions() {} USTRUCT(BlueprintType) @@ -979,7 +979,7 @@ public: FChannelMediaOptions(){} FChannelMediaOptions(const agora::rtc::ChannelMediaOptions & AgoraData){ - + SET_UEBP_OPTIONAL_VAL_BOOL(this->publishCameraTrack, AgoraData.publishCameraTrack) SET_UEBP_OPTIONAL_VAL_BOOL(this->publishSecondaryCameraTrack, AgoraData.publishSecondaryCameraTrack) SET_UEBP_OPTIONAL_VAL_BOOL(this->publishThirdCameraTrack, AgoraData.publishThirdCameraTrack) @@ -1008,15 +1008,15 @@ public: SET_UEBP_OPTIONAL_VAL_BOOL(this->enableAudioRecordingOrPlayout, AgoraData.enableAudioRecordingOrPlayout) SET_UEBP_OPTIONAL_VAL_DIR_ASSIGN(this->publishMediaPlayerId, AgoraData.publishMediaPlayerId) SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->clientRoleType,AgoraData.clientRoleType,static_cast<ECLIENT_ROLE_TYPE>(AgoraData.clientRoleType.value())) - + SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->audienceLatencyLevel, AgoraData.audienceLatencyLevel, static_cast<EAUDIENCE_LATENCY_LEVEL_TYPE>(AgoraData.audienceLatencyLevel.value())) SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->defaultVideoStreamType, AgoraData.defaultVideoStreamType, static_cast<EVIDEO_STREAM_TYPE>(AgoraData.defaultVideoStreamType.value())) SET_UEBP_OPTIONAL_VAL_ASSIGN_VAL(this->channelProfile, AgoraData.channelProfile, static_cast<ECHANNEL_PROFILE_TYPE>(AgoraData.channelProfile.value())) SET_UEBP_OPTIONAL_VAL_DIR_ASSIGN(this->audioDelayMs, AgoraData.audioDelayMs) SET_UEBP_OPTIONAL_VAL_DIR_ASSIGN(this->mediaPlayerAudioDelayMs, AgoraData.mediaPlayerAudioDelayMs) - + SET_UEBP_OPTIONAL_VAL_FString(this->token,AgoraData.token) - + SET_UEBP_OPTIONAL_VAL_BOOL(this->enableBuiltInMediaEncryption, AgoraData.enableBuiltInMediaEncryption) SET_UEBP_OPTIONAL_VAL_BOOL(this->publishRhythmPlayerTrack, AgoraData.publishRhythmPlayerTrack) SET_UEBP_OPTIONAL_VAL_BOOL(this->isInteractiveAudience, AgoraData.isInteractiveAudience) @@ -1074,7 +1074,7 @@ public: Optional<bool> publishCameraTrack; Optional<bool> publishSecondaryCameraTrack; Optional<bool> publishMicrophoneTrack; - + #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) Optional<bool> publishScreenCaptureVideo; Optional<bool> publishScreenCaptureAudio; @@ -1082,7 +1082,7 @@ public: Optional<bool> publishScreenTrack; Optional<bool> publishSecondaryScreenTrack; #endif - + Optional<bool> publishCustomAudioTrack; Optional<int> publishCustomAudioTrackId; Optional<bool> publishCustomVideoTrack; @@ -1102,75 +1102,75 @@ public: Optional<bool> enableBuiltInMediaEncryption; Optional<bool> publishRhythmPlayerTrack; Optional<bool> isInteractiveAudience; - + Optional<video_track_id_t> customVideoTrackId; - + Optional<bool> isAudioFilterable; - + ChannelMediaOptions() {} ~ChannelMediaOptions() {} export class ChannelMediaOptions { - + publishCameraTrack?: boolean; - + publishSecondaryCameraTrack?: boolean; - + publishThirdCameraTrack?: boolean; - + publishFourthCameraTrack?: boolean; - + publishMicrophoneTrack?: boolean; - + publishScreenTrack?: boolean; - + publishSecondaryScreenTrack?: boolean; - + publishThirdScreenTrack?: boolean; - + publishFourthScreenTrack?: boolean; - + publishCustomAudioTrack?: boolean; - + publishCustomAudioTrackId?: number; - + publishCustomVideoTrack?: boolean; - + publishEncodedVideoTrack?: boolean; - + publishMediaPlayerAudioTrack?: boolean; - + publishMediaPlayerVideoTrack?: boolean; - + publishTranscodedVideoTrack?: boolean; - + publishLipSyncTrack?: boolean; - + autoSubscribeAudio?: boolean; - + autoSubscribeVideo?: boolean; - + enableAudioRecordingOrPlayout?: boolean; - + publishMediaPlayerId?: number; - + clientRoleType?: ClientRoleType; - + audienceLatencyLevel?: AudienceLatencyLevelType; - + defaultVideoStreamType?: VideoStreamType; - + channelProfile?: ChannelProfileType; - + token?: string; - + enableBuiltInMediaEncryption?: boolean; - + publishRhythmPlayerTrack?: boolean; - + isInteractiveAudience?: boolean; - + customVideoTrackId?: number; - + isAudioFilterable?: boolean; } public class ChannelMediaOptions : OptionalJsonParse @@ -1207,72 +1207,72 @@ public: public Optional<bool> isInteractiveAudience = new Optional<bool>(); public Optional<video_track_id_t> customVideoTrackId = new Optional<video_track_id_t>(); public Optional<bool> isAudioFilterable = new Optional<bool>(); - + } export class ChannelMediaOptions { - + publishCameraTrack?: boolean; - + publishSecondaryCameraTrack?: boolean; - + publishThirdCameraTrack?: boolean; - + publishFourthCameraTrack?: boolean; - + publishMicrophoneTrack?: boolean; - + publishScreenCaptureVideo?: boolean; - + publishScreenCaptureAudio?: boolean; - + publishSecondaryScreenTrack?: boolean; - + publishThirdScreenTrack?: boolean; - + publishFourthScreenTrack?: boolean; - + publishCustomAudioTrack?: boolean; - + publishCustomAudioTrackId?: number; - + publishCustomVideoTrack?: boolean; - + publishEncodedVideoTrack?: boolean; - + publishMediaPlayerAudioTrack?: boolean; - + publishMediaPlayerVideoTrack?: boolean; - + publishTranscodedVideoTrack?: boolean; - + publishLipSyncTrack?: boolean; - + autoSubscribeAudio?: boolean; - + autoSubscribeVideo?: boolean; - + enableAudioRecordingOrPlayout?: boolean; - + publishMediaPlayerId?: number; - + clientRoleType?: ClientRoleType; - + audienceLatencyLevel?: AudienceLatencyLevelType; - + defaultVideoStreamType?: VideoStreamType; - + channelProfile?: ChannelProfileType; - + token?: string; - + enableBuiltInMediaEncryption?: boolean; - + publishRhythmPlayerTrack?: boolean; - + isInteractiveAudience?: boolean; - + customVideoTrackId?: number; - + isAudioFilterable?: boolean; } @JsonSerializable(explicitToJson: true, includeIfNull: false) @@ -1315,121 +1315,121 @@ public: this.customVideoTrackId, this.isAudioFilterable, this.parameters}); - + @JsonKey(name: 'publishCameraTrack') final bool? publishCameraTrack; - + @JsonKey(name: 'publishSecondaryCameraTrack') final bool? publishSecondaryCameraTrack; - + @JsonKey(name: 'publishThirdCameraTrack') final bool? publishThirdCameraTrack; - + @JsonKey(name: 'publishFourthCameraTrack') final bool? publishFourthCameraTrack; - + @JsonKey(name: 'publishMicrophoneTrack') final bool? publishMicrophoneTrack; - + @JsonKey(name: 'publishScreenCaptureVideo') final bool? publishScreenCaptureVideo; - + @JsonKey(name: 'publishScreenCaptureAudio') final bool? publishScreenCaptureAudio; - + @JsonKey(name: 'publishScreenTrack') final bool? publishScreenTrack; - + @JsonKey(name: 'publishSecondaryScreenTrack') final bool? publishSecondaryScreenTrack; - + @JsonKey(name: 'publishThirdScreenTrack') final bool? publishThirdScreenTrack; - + @JsonKey(name: 'publishFourthScreenTrack') final bool? publishFourthScreenTrack; - + @JsonKey(name: 'publishCustomAudioTrack') final bool? publishCustomAudioTrack; - + @JsonKey(name: 'publishCustomAudioTrackId') final int? publishCustomAudioTrackId; - + @JsonKey(name: 'publishCustomVideoTrack') final bool? publishCustomVideoTrack; - + @JsonKey(name: 'publishEncodedVideoTrack') final bool? publishEncodedVideoTrack; - + @JsonKey(name: 'publishMediaPlayerAudioTrack') final bool? publishMediaPlayerAudioTrack; - + @JsonKey(name: 'publishMediaPlayerVideoTrack') final bool? publishMediaPlayerVideoTrack; - + @JsonKey(name: 'publishTranscodedVideoTrack') final bool? publishTranscodedVideoTrack; - + @JsonKey(name: 'publishMixedAudioTrack') final bool? publishMixedAudioTrack; - + @JsonKey(name: 'publishLipSyncTrack') final bool? publishLipSyncTrack; - + @JsonKey(name: 'autoSubscribeAudio') final bool? autoSubscribeAudio; - + @JsonKey(name: 'autoSubscribeVideo') final bool? autoSubscribeVideo; - + @JsonKey(name: 'enableAudioRecordingOrPlayout') final bool? enableAudioRecordingOrPlayout; - + @JsonKey(name: 'publishMediaPlayerId') final int? publishMediaPlayerId; - + @JsonKey(name: 'clientRoleType') final ClientRoleType? clientRoleType; - + @JsonKey(name: 'audienceLatencyLevel') final AudienceLatencyLevelType? audienceLatencyLevel; - + @JsonKey(name: 'defaultVideoStreamType') final VideoStreamType? defaultVideoStreamType; - + @JsonKey(name: 'channelProfile') final ChannelProfileType? channelProfile; - + @JsonKey(name: 'audioDelayMs') final int? audioDelayMs; - + @JsonKey(name: 'mediaPlayerAudioDelayMs') final int? mediaPlayerAudioDelayMs; - + @JsonKey(name: 'token') final String? token; - + @JsonKey(name: 'enableBuiltInMediaEncryption') final bool? enableBuiltInMediaEncryption; - + @JsonKey(name: 'publishRhythmPlayerTrack') final bool? publishRhythmPlayerTrack; - + @JsonKey(name: 'isInteractiveAudience') final bool? isInteractiveAudience; - + @JsonKey(name: 'customVideoTrackId') final int? customVideoTrackId; - + @JsonKey(name: 'isAudioFilterable') final bool? isAudioFilterable; - + @JsonKey(name: 'parameters') final String? parameters; - + factory ChannelMediaOptions.fromJson(Map<String, dynamic> json) => _$ChannelMediaOptionsFromJson(json); - + Map<String, dynamic> toJson() => _$ChannelMediaOptionsToJson(this); }

                                                        @@ -1494,7 +1494,7 @@ public: This is for Windows and macOS only. - + publishScreenCaptureVideo

                                                        Whether to publish the video captured from the screen:

                                                          @@ -1504,7 +1504,7 @@ public: This parameter is for Android and iOS only. As of v4.0.0, the parameter name is changed from publishScreenTrack to publishScreenCaptureVideo. - + publishScreenCaptureAudio

                                                          Whether to publish the audio captured from the screen:

                                                            @@ -1576,8 +1576,7 @@ public: publishCustomAudioTrackId - The ID of the custom audio source to publish. The default value is 0.

                                                            If you have set sourceNumber in to a value greater than 1, the SDK creates the corresponding number of custom audio tracks and assigns an ID to each audio track, starting from 0.

                                                            -
                                                            + The ID of the custom audio track to be published. The default value is 0. You can obtain the custom audio track ID through the method.
                                                            publishCustomVideoTrack diff --git a/en-US/dita/RTC-NG/API/class_channelmediarelayconfiguration.dita b/en-US/dita/RTC-NG/API/class_channelmediarelayconfiguration.dita index d1e37e14d4b..0d6d9b08dd3 100644 --- a/en-US/dita/RTC-NG/API/class_channelmediarelayconfiguration.dita +++ b/en-US/dita/RTC-NG/API/class_channelmediarelayconfiguration.dita @@ -153,20 +153,20 @@ public: setSrcChannelInfo Sets the information of the source channel. See . - + setDestChannelInfo Sets the information of the target channel. See . - - removeDestChannelInfo + + removeDestChannelInfo removeDestinationInfoForChannelName Deletes the information of target channel. See . - + getSrcChannelMediaInfo Gets the information of the source channel. See . - + getDestChannelMediaInfos Gets the information of the target channel. See . @@ -176,7 +176,7 @@ public: <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property"/> - srcInfo + srcInfo sourceInfo

                                                            The information of the source channel. See . It contains the following members:

                                                              @@ -190,7 +190,7 @@ public: - destInfos + destInfos destinationInfos

                                                              The information of the target channel . It contains the following members:

                                                                diff --git a/en-US/dita/RTC-NG/API/class_clientroleoptions.dita b/en-US/dita/RTC-NG/API/class_clientroleoptions.dita index 934b5559e83..c8e3fccccff 100644 --- a/en-US/dita/RTC-NG/API/class_clientroleoptions.dita +++ b/en-US/dita/RTC-NG/API/class_clientroleoptions.dita @@ -80,7 +80,7 @@ public: audienceLatencyLevel - The latency level of an audience member in interactive live streaming. See .
                                                                  + The latency level of an audience member in interactive live streaming. See .
                                                                  • (1): Low latency.
                                                                  • (2): (Default) Ultra low latency.
                                                                  diff --git a/en-US/dita/RTC-NG/API/class_climaxsegment.dita b/en-US/dita/RTC-NG/API/class_climaxsegment.dita index 95963c6d407..5c7ff264eb7 100644 --- a/en-US/dita/RTC-NG/API/class_climaxsegment.dita +++ b/en-US/dita/RTC-NG/API/class_climaxsegment.dita @@ -26,7 +26,11 @@ return endTimeMs; } } - + export class ClimaxSegment +{ + public startTimeMs:number = 0 + public endTimeMs:number = 0 +} __attribute__((visibility("default"))) @interface AgoraClimaxSegment : NSObject @property(nonatomic, assign) NSInteger startTimeMs; @property(nonatomic, assign) NSInteger endTimeMs; diff --git a/en-US/dita/RTC-NG/API/class_contentinspectconfig.dita b/en-US/dita/RTC-NG/API/class_contentinspectconfig.dita index 67d968f15af..097469cf022 100644 --- a/en-US/dita/RTC-NG/API/class_contentinspectconfig.dita +++ b/en-US/dita/RTC-NG/API/class_contentinspectconfig.dita @@ -34,7 +34,17 @@ moduleCount = 0; } } - + export class ContentInspectConfig { + public static readonly MAX_CONTENT_INSPECT_MODULE_COUNT:number = 32; + + public extraInfo?:string; + + public serverConfig?:string; + + public modules? :Array<ContentInspectModule>; + + public moduleCount:number = 0; +} __attribute__((visibility("default"))) @interface AgoraContentInspectConfig: NSObject @property (nonatomic, copy) NSString* _Nullable extraInfo; @property (nonatomic, copy) NSString* _Nullable serverConfig; @@ -159,7 +169,7 @@ class ContentInspectConfig {
                                                                  Parameters - + CONTENT_INSPECT_TYPE_INVALID 0: (Default) No actual function. Do not set type to this value. @@ -167,11 +177,11 @@ class ContentInspectConfig { CONTENT_INSPECT_TYPE_MODERATION 1: Video content moderation. The SDK takes screenshots and inspect videos sent by local users, and uploads the screenshots and moderation results. - + CONTENT_INSPECT_TYPE_SUPERVISE 2: Video screenshot and upload via Agora self-developed extension. The SDK takes screenshots of videos sent by local users and upload them. - + CONTENT_INSPECT_TYPE_IMAGE_MODERATION 3: Video screenshot and upload via extensions from Agora Extensions Marketplace. SDK uses video moderation extensions from Agora Extensions Marketplace to take screenshots of the video stream in the channel and uploads them. diff --git a/en-US/dita/RTC-NG/API/class_contentinspectmodule.dita b/en-US/dita/RTC-NG/API/class_contentinspectmodule.dita index 23604f684ca..18e8b968e1e 100644 --- a/en-US/dita/RTC-NG/API/class_contentinspectmodule.dita +++ b/en-US/dita/RTC-NG/API/class_contentinspectmodule.dita @@ -13,7 +13,12 @@ type = CONTENT_INSPECT_TYPE_INVALID; interval = 0; } - + export class ContentInspectModule { + + public type:Constants.ContentInspectType = Constants.ContentInspectType.INVALID; + + public interval:number = 0; +} __attribute__((visibility("default"))) @interface AgoraContentInspectModule: NSObject @property (assign, nonatomic) AgoraContentInspectType type; @@ -91,8 +96,8 @@ public: type - Types of functional module. See . - + Types of functional module. See . +

                                                                  Types of functional modules:

                                                                  • (0): (Default) This module has no actual function. Do not set to this value.
                                                                  • (1): Video content moderation. SDK takes screenshots, inspects video content of the video stream in the channel, and uploads the screenshots and moderation results.
                                                                  • diff --git a/en-US/dita/RTC-NG/API/class_encryptionconfig.dita b/en-US/dita/RTC-NG/API/class_encryptionconfig.dita index 3629200181b..c397ee3ca5e 100644 --- a/en-US/dita/RTC-NG/API/class_encryptionconfig.dita +++ b/en-US/dita/RTC-NG/API/class_encryptionconfig.dita @@ -169,7 +169,7 @@ class EncryptionConfig { This parameter takes effect only in or encrypted mode. In this case, ensure that this parameter is not 0. - + datastreamEncryptionEnabled Whether to enable data stream encryption:
                                                                    • : Enable data stream encryption.
                                                                    • diff --git a/en-US/dita/RTC-NG/API/class_externalvideoframe.dita b/en-US/dita/RTC-NG/API/class_externalvideoframe.dita index 4808e686945..cede51769e3 100644 --- a/en-US/dita/RTC-NG/API/class_externalvideoframe.dita +++ b/en-US/dita/RTC-NG/API/class_externalvideoframe.dita @@ -20,7 +20,7 @@ public static final int BUFFER_TYPE_ARRAY = 2; public static final int BUFFER_TYPE_TEXTURE = 3; public AgoraVideoFrame() { - format = 10; + format = 10; timeStamp = 0; stride = 0; height = 0; @@ -46,7 +46,7 @@ public float[] transform; public javax.microedition.khronos.egl.EGLContext eglContext10; public android.opengl.EGLContext eglContext14; - + public byte[] buf; public int cropLeft; public int cropTop; diff --git a/en-US/dita/RTC-NG/API/class_lastmileproberesult.dita b/en-US/dita/RTC-NG/API/class_lastmileproberesult.dita index c206aa61300..486968d3a2d 100644 --- a/en-US/dita/RTC-NG/API/class_lastmileproberesult.dita +++ b/en-US/dita/RTC-NG/API/class_lastmileproberesult.dita @@ -144,10 +144,10 @@ public: state

                                                                      The status of the last-mile network tests. See .

                                                                      -

                                                                      The status of the last-mile network tests, which includes:

                                                                        +

                                                                        The status of the last-mile network test, which includes:

                                                                        • (1): The last-mile network probe test is complete.
                                                                        • -
                                                                        • (2): The last-mile network probe test is incomplete because the bandwidth estimation is not available due to limited test resources. Probably due to limited test resources.
                                                                        • -
                                                                        • (3): The last-mile network probe test is not carried out. Probably due to poor network conditions.
                                                                        • +
                                                                        • (2): The last-mile network probe test is incomplete because bandwidth prediction is not conducted. One possible reason is that testing resources were temporarily limited.
                                                                        • +
                                                                        • (3): The last-mile network probe test is not conducted. Probably due to poor network conditions.

                                                                        diff --git a/en-US/dita/RTC-NG/API/class_livestreamadvancedfeature.dita b/en-US/dita/RTC-NG/API/class_livestreamadvancedfeature.dita index 570391983b9..1a988e72ef0 100644 --- a/en-US/dita/RTC-NG/API/class_livestreamadvancedfeature.dita +++ b/en-US/dita/RTC-NG/API/class_livestreamadvancedfeature.dita @@ -85,7 +85,7 @@ public:

                                                                  -

                                                                  If you want to enable the advanced features of streaming with transcoding, contact .

                                                                  +

                                                                  If you want to enable the advanced features of streaming with transcoding, contact .

                                                                  <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property" /> diff --git a/en-US/dita/RTC-NG/API/class_localvideostats.dita b/en-US/dita/RTC-NG/API/class_localvideostats.dita index 079b921e1e7..0a0ba4771c4 100644 --- a/en-US/dita/RTC-NG/API/class_localvideostats.dita +++ b/en-US/dita/RTC-NG/API/class_localvideostats.dita @@ -545,7 +545,7 @@ public: codecType - The codec type of the local video. See .

                                                                  + The codec type of the local video. See .

                                                                  • (1): VP8.
                                                                  • (2): H.264.
                                                                  • diff --git a/en-US/dita/RTC-NG/API/class_logconfig.dita b/en-US/dita/RTC-NG/API/class_logconfig.dita index d3ca4b6bcf4..7c324f61f10 100644 --- a/en-US/dita/RTC-NG/API/class_logconfig.dita +++ b/en-US/dita/RTC-NG/API/class_logconfig.dita @@ -11,7 +11,14 @@ public int fileSizeInKB; public int level = Constants.LogLevel.getValue(Constants.LogLevel.LOG_LEVEL_INFO); } - + export class LogConfig { + + public filePath:string = ''; + + public fileSizeInKB:number = 2048; + + public level: Constants.LogLevel = Constants.LogLevel.INFO; +} __attribute__((visibility("default"))) @interface AgoraLogConfig: NSObject @property (copy, nonatomic) NSString * _Nullable filePath; @property (assign, nonatomic) NSInteger fileSizeInKB; @@ -118,7 +125,7 @@ public:
                                                                • Windows: C:\Users\<user_name>\AppData\Local\Agora\<process_name>\agorasdk.log.

                                                                -

                                                                The default path is /storage/emulated/0/Android/data/<packagename>/files/agorasdk.log.

                                                                +

                                                                The default path is /storage/emulated/0/Android/data/<packagename>/files/agorasdk.log.

                                                                The default path is AppSandbox/Library/caches/agorasdk.log.

                                                                The default log directory is:

                                                                • If Sandbox is enabled: AppSandbox/Library/Logs/agorasdk.log. For example, /Users/<username>/Library/Containers/<AppBundleIdentifier>/Data/Library/Logs/agorasdk.log.
                                                                • diff --git a/en-US/dita/RTC-NG/API/class_mediasource.dita b/en-US/dita/RTC-NG/API/class_mediasource.dita index 85084d5b4d2..713c648f64a 100644 --- a/en-US/dita/RTC-NG/API/class_mediasource.dita +++ b/en-US/dita/RTC-NG/API/class_mediasource.dita @@ -17,7 +17,25 @@ boolean enableMultiAudioTrack; IMediaPlayerCustomDataProvider provider; } - + export class MediaPlayerSource +{ + + public url:string = "" + + public uri:string = "" + + public startPos:number = 0 + + public autoPlay:boolean = true ; + + public enableCache:boolean = false ; + + public enableMultiAudioTrack:boolean = false ; + + public isAgoraSource?:Boolean + + public isLiveSource?:Boolean +} __attribute__((visibility("default"))) @interface AgoraMediaSource : NSObject @property(copy, nonatomic) NSString *_Nullable url; @property(copy, nonatomic) NSString *_Nullable uri; @@ -194,7 +212,7 @@ public: url

                                                                  The URL of the media file to be played.

                                                                  - +

                                                                  If you open a common media resource, pass in the value to url. If you open a custom media resource, pass in the value to playerOnReadCallback and playerOnSeekCallback. Agora recommends that you do not pass in values to all these parameters in one call; otherwise, this call may fail.

                                                                  If you open a common media resource, pass in the value to url. If you open a custom media resource, pass in the value to provider. Agora recommends that you do not pass in values to both parameters in one call; otherwise, this call may fail.

                                                                  diff --git a/en-US/dita/RTC-NG/API/class_playerplaybackstats.dita b/en-US/dita/RTC-NG/API/class_playerplaybackstats.dita index f9177d14e17..bfae51a8133 100644 --- a/en-US/dita/RTC-NG/API/class_playerplaybackstats.dita +++ b/en-US/dita/RTC-NG/API/class_playerplaybackstats.dita @@ -12,7 +12,17 @@ private long audioBitrateInKbps; private long totalBitrateInKbps; }
                                                                  - + export class PlayerPlaybackStats +{ + + public videoFps:number = 0 + + public videoBitrateInKbps:number = 0 + + public audioBitrateInKbps:number = 0 + + public totalBitrateInKbps:number = 0 +} __attribute__((visibility("default"))) @interface AgoraMediaPlayerPlaybackStats : NSObject @property(assign, nonatomic) NSInteger videoFps; @property(assign, nonatomic) NSInteger videoBitrateInKbps; diff --git a/en-US/dita/RTC-NG/API/class_playerstreaminfo.dita b/en-US/dita/RTC-NG/API/class_playerstreaminfo.dita index 184c77b360f..022d3b4c653 100644 --- a/en-US/dita/RTC-NG/API/class_playerstreaminfo.dita +++ b/en-US/dita/RTC-NG/API/class_playerstreaminfo.dita @@ -23,7 +23,22 @@ public MediaStreamInfo() {} } - + export class MediaStreamInfo +{ + public streamIndex:number = 0 + public mediaStreamType:number = 0 + public codecName:string = "" + public language:string = "" + public videoFrameRate:number = 0 + public videoBitRate:number = 0 + public videoWidth:number = 0 + public videoHeight:number = 0 + public videoRotation:number = 0 + public audioSampleRate:number = 0 + public audioChannels:number = 0 + public audioBytesPerSample:number = 0 + public duration:bigint = BigInt(0) +} __attribute__((visibility("default"))) @interface AgoraMediaStreamInfo : NSObject @property(nonatomic, assign) NSInteger streamIndex; diff --git a/en-US/dita/RTC-NG/API/class_playerupdatedinfo.dita b/en-US/dita/RTC-NG/API/class_playerupdatedinfo.dita index 750c29358b4..8e03f7c9e31 100644 --- a/en-US/dita/RTC-NG/API/class_playerupdatedinfo.dita +++ b/en-US/dita/RTC-NG/API/class_playerupdatedinfo.dita @@ -14,7 +14,23 @@ private long audioChannels; private long audioBitsPerSample; } - + export class PlayerUpdatedInfo +{ + + public internalPlayerUuid:string = "" + + public deviceId:string = "" + + public videoHeight:number = 0 + + public videoWidth:number = 0 + + public audioSampleRate:number = 0 + + public audioChannels:number = 0 + + public audioBitsPerSample:number = 0 +} __attribute__((visibility("default"))) @interface AgoraMediaPlayerUpdatedInfo : NSObject @property(copy, nonatomic) NSString *_Nullable deviceId; @property(assign, nonatomic) NSInteger videoHeight; diff --git a/en-US/dita/RTC-NG/API/class_recorderinfo.dita b/en-US/dita/RTC-NG/API/class_recorderinfo.dita index e7e94c29c7d..a94fecd0e34 100644 --- a/en-US/dita/RTC-NG/API/class_recorderinfo.dita +++ b/en-US/dita/RTC-NG/API/class_recorderinfo.dita @@ -96,7 +96,7 @@ struct FRecorderInfo { <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property" /> - filename + filename recorderFileName The absolute path of the recording file. @@ -110,4 +110,4 @@ struct FRecorderInfo {
                                                  - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/class_remoteaudiostats.dita b/en-US/dita/RTC-NG/API/class_remoteaudiostats.dita index ac8803463eb..0a5826a74c4 100644 --- a/en-US/dita/RTC-NG/API/class_remoteaudiostats.dita +++ b/en-US/dita/RTC-NG/API/class_remoteaudiostats.dita @@ -61,6 +61,8 @@ public qualityChangedReason:number = 0; public rxAudioBytes:number = 0; + + public e2eDelay:number = 0; } __attribute__((visibility("default"))) @interface AgoraRtcRemoteAudioStats : NSObject @property(assign, nonatomic) NSUInteger uid; @@ -431,6 +433,7 @@ class RemoteAudioStats {
                                                • (4): Users cannot communicate smoothly.
                                                • (5): The quality is so bad that users can barely communicate.
                                                • (6): The network is down, and users cannot communicate at all.
                                                • +
                                                • (8): The last-mile probe test is in progress.

                                                diff --git a/en-US/dita/RTC-NG/API/class_rtcengineconfig.dita b/en-US/dita/RTC-NG/API/class_rtcengineconfig.dita index b880199928d..4e67bc7ec9e 100644 --- a/en-US/dita/RTC-NG/API/class_rtcengineconfig.dita +++ b/en-US/dita/RTC-NG/API/class_rtcengineconfig.dita @@ -29,6 +29,7 @@ public mContext:Context | null = null; public mAppId:string | null = null; public mEventHandler: IRtcEngineEventHandler | null = null; + public mLogConfig?:LogConfig; } __attribute__((visibility("default"))) @interface AgoraRtcEngineConfig: NSObject @@ -244,7 +245,7 @@ class RtcEngineContext {

                                                The context.

                                                - + mNativeLibPath

                                                Specifies the storage directory for the .so files. The storage directory must be a valid and private directory of the app, which can be obtained using Context.getDir().

                                                @@ -258,17 +259,17 @@ class RtcEngineContext {
                                              • Ensure the specified directory exists; otherwise, the initialization fails.
                                              - + channelProfile mChannelProfile - + audioScenario mAudioScenario - + areaCode mAreaCode The region for connection. This is an advanced feature and applies to scenarios that have regional restrictions. For details on supported regions, see . The area codes support bitwise operation. @@ -284,12 +285,12 @@ class RtcEngineContext {
                                            - + mExtensionList Extension libraries. - - mExtensionObserver + + mExtensionObserver eventDelegate The instance. @@ -297,7 +298,7 @@ class RtcEngineContext { mediaFilterExtensions The instance. - + mDomainLimit domainLimit @@ -307,7 +308,7 @@ class RtcEngineContext {

                                          - + mAutoRegisterAgoraExtensions autoRegisterAgoraExtensions @@ -318,7 +319,7 @@ class RtcEngineContext {
                                          -
                                          +
                                          Method diff --git a/en-US/dita/RTC-NG/API/class_rtcimage.dita b/en-US/dita/RTC-NG/API/class_rtcimage.dita index cc52eb3732e..f23ec8c6df1 100644 --- a/en-US/dita/RTC-NG/API/class_rtcimage.dita +++ b/en-US/dita/RTC-NG/API/class_rtcimage.dita @@ -109,7 +109,7 @@ struct FRtcImage char* URLCharPtr = new char[url.Len() + 1]; FMemory::Memcpy(URLCharPtr, TCHAR_TO_UTF8(*url), url.Len()); - URLCharPtr[url.Len()] = '\0'; + URLCharPtr[url.Len()] = '\0'; AgoraData.url = URLCharPtr; AgoraData.x = x; AgoraData.y = y; @@ -229,19 +229,19 @@ struct FRtcImage url The HTTP/HTTPS URL address of the image in the live video. The maximum length of this parameter is 1024 bytes. - + x The x-coordinate (px) of the image on the video frame (taking the upper left corner of the video frame as the origin). - + y The y-coordinate (px) of the image on the video frame (taking the upper left corner of the video frame as the origin). - + width The width (px) of the image on the video frame. - + height The height (px) of the image on the video frame. @@ -262,4 +262,4 @@ struct FRtcImage
                                          - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/class_screenaudioparameters.dita b/en-US/dita/RTC-NG/API/class_screenaudioparameters.dita index 2a371569fdc..b1e5d8a948a 100644 --- a/en-US/dita/RTC-NG/API/class_screenaudioparameters.dita +++ b/en-US/dita/RTC-NG/API/class_screenaudioparameters.dita @@ -30,6 +30,11 @@ + captureSignalVolume + ", allowCaptureCurrentApp=" + allowCaptureCurrentApp + '}'; } } + export class ScreenAudioParameters { + public sampleRate: number = 16000; + public channels: number = 2; + public captureSignalVolume : number = 100; +} __attribute__((visibility("default"))) @interface AgoraScreenAudioParameters : NSObject @property(assign, nonatomic) NSInteger captureSignalVolume; @end @@ -123,11 +128,11 @@ public:
                                          <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property" /> - + sampleRate Audio sample rate (Hz). The default value is 16000. - + channels The number of audio channels. The default value is 2, which means stereo. @@ -135,7 +140,7 @@ public: captureSignalVolume The volume of the captured system audio. The value range is [0, 100]. The default value is 100. - + allowCaptureCurrentApp Whether to capture audio from the current app:
                                          • : (Default) Caputre audio from the current app.
                                          • diff --git a/en-US/dita/RTC-NG/API/class_screencaptureparameters2.dita b/en-US/dita/RTC-NG/API/class_screencaptureparameters2.dita index 0cde1347382..0699096900f 100644 --- a/en-US/dita/RTC-NG/API/class_screencaptureparameters2.dita +++ b/en-US/dita/RTC-NG/API/class_screencaptureparameters2.dita @@ -92,6 +92,13 @@ + '}'; } } + + export class ScreenCaptureParameters { + public captureAudio: boolean = false; + public audioParams: ScreenAudioParameters = new ScreenAudioParameters(); + public captureVideo: boolean = true; + public videoParams: ScreenVideoParameters = new ScreenVideoParameters(); +} __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters2 : NSObject @property(assign, nonatomic) BOOL captureAudio; @@ -213,7 +220,7 @@ public:
                                          • Due to system limitations, capturing system audio is only applicable to Android API level 29 and later (that is, Android 10 and later).
                                          • To improve the success rate of capturing system audio during screen sharing, ensure that you have called the method and set the audio scenario to .
                                          - + audioParams The audio configuration for the shared screen stream. See .This parameter only takes effect when captureAudio is . @@ -225,7 +232,7 @@ public:
                                        Due to system limitations, the capture screen is only applicable to Android API level 21 and above, that is, Android 5 and above.
                                        - + videoParams The video configuration for the shared screen stream. See .This parameter only takes effect when captureVideo is . diff --git a/en-US/dita/RTC-NG/API/class_screenvideoparameters.dita b/en-US/dita/RTC-NG/API/class_screenvideoparameters.dita index 8f948b2ddca..ebefd864bfa 100644 --- a/en-US/dita/RTC-NG/API/class_screenvideoparameters.dita +++ b/en-US/dita/RTC-NG/API/class_screenvideoparameters.dita @@ -46,6 +46,11 @@ } } + export class ScreenVideoParameters { + public dimensions: VideoDimensions = new VideoDimensions(1280, 720); + public frameRate: number = 15; + public bitrate: number = 0; +} __attribute__((visibility("default"))) @interface AgoraScreenVideoParameters : NSObject @property(assign, nonatomic) CGSize dimensions; @@ -157,7 +162,7 @@ public:
                                        <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property"/> - + dimensions The video encoding dimension. The default value is 1280 × 720. If the aspect ratio of dimensions is different from that of the screen, the SDK adjusts the video encoding resolution according to the following rules (take the dimensions of 1280 × 720 as an example):
                                          @@ -170,7 +175,7 @@ public:
                                        • The value of this parameter does not indicate the orientation mode of the output video. For how to set the video orientation, see .
                                        • Whether the 720p resolution or above can be supported depends on the device. If the device cannot support 720p, the frame rate will be lower than the set value.
                                        - When setting the encoding resolution in the scenario of sharing documents (), choose one of the following two methods:
                                          + When setting the encoding resolution in the scenario of sharing documents (), choose one of the following two methods:
                                          • If you require the best image quality, it is recommended to set the encoding resolution to be the same as the capture resolution.
                                          • If you wish to achieve a relative balance between image quality, bandwidth, and system performance, then:
                                            • When the capture resolution is greater than 1920 × 1080, it is recommended that the encoding resolution is not less than 1920 × 1080.
                                            • @@ -179,7 +184,7 @@ public:
                                            - + width The width (px) of the video encoding resolution. The default value is 1280. If the aspect ratio of width to height is different from that of the screen, the SDK adjusts the video encoding resolution according to the following rules (take width × height of 1280 × 720 as an example):
                                            • When the width and height of the screen are both lower than those of dimensions, the SDK uses the resolution of the screen for video encoding. For example, if the screen is 640 × 360, the SDK uses 640 × 360 for video encoding.
                                            • @@ -200,7 +205,7 @@ public:
                                            - + height The height (px) of the video encoding resolution. The default value is 720. If the aspect ratio of width to height is different from that of the screen, the SDK adjusts the video encoding resolution according to the following rules (take width × height of 1280 × 720 as an example):
                                            • When the width and height of the screen are both lower than those of dimensions, the SDK uses the resolution of the screen for video encoding. For example, if the screen is 640 × 360, the SDK uses 640 × 360 for video encoding.
                                            • @@ -222,15 +227,15 @@ public: - frameRate - frameRate + frameRate + frameRate The video encoding frame rate (fps). The default value is 15. bitrate The video encoding bitrate (Kbps). - + contentHint The content hint for screen sharing. See .
                                              • (0): (Default) No content hint.
                                              • diff --git a/en-US/dita/RTC-NG/API/class_segmentationproperty.dita b/en-US/dita/RTC-NG/API/class_segmentationproperty.dita index c0c3a8b1ce5..9b49842ef25 100644 --- a/en-US/dita/RTC-NG/API/class_segmentationproperty.dita +++ b/en-US/dita/RTC-NG/API/class_segmentationproperty.dita @@ -22,8 +22,10 @@ } } export class SegmentationProperty { + public static readonly SEG_MODEL_AI:number = 1; + public static readonly SEG_MODEL_GREEN:number = 2; - public modelType:Constants.SegModelType = Constants.SegModelType.AI; + public modelType:number = SegmentationProperty.SEG_MODEL_AI; public greenCapacity:number = 0.5; } diff --git a/en-US/dita/RTC-NG/API/class_simulcaststreamconfig.dita b/en-US/dita/RTC-NG/API/class_simulcaststreamconfig.dita index 411c37fd1da..4618df961af 100644 --- a/en-US/dita/RTC-NG/API/class_simulcaststreamconfig.dita +++ b/en-US/dita/RTC-NG/API/class_simulcaststreamconfig.dita @@ -118,7 +118,7 @@ public: The video dimension. See . The default value is 50% of the high-quality video stream. - bitrate + bitrate kBitrate Video receive bitrate (Kbps), represented by an instantaneous value. This parameter does not need to be set. The SDK automatically matches the most suitable bitrate based on the video resolution and frame rate you set. diff --git a/en-US/dita/RTC-NG/API/class_srcinfo.dita b/en-US/dita/RTC-NG/API/class_srcinfo.dita index c4096fbead0..9909b303c50 100644 --- a/en-US/dita/RTC-NG/API/class_srcinfo.dita +++ b/en-US/dita/RTC-NG/API/class_srcinfo.dita @@ -12,7 +12,13 @@ public SrcInfo() {} } - + export class SrcInfo +{ + + public bitrateInKbps:number = 0 + + public name:string = "" +} __attribute__((visibility("default"))) @interface AgoraMediaPlayerSrcInfo : NSObject @property(assign, nonatomic) int bitrateInKbps; @property(copy, nonatomic) NSString *_Nullable name; diff --git a/en-US/dita/RTC-NG/API/class_transcodinguser.dita b/en-US/dita/RTC-NG/API/class_transcodinguser.dita index 6f8de28e79d..e22a221aff5 100644 --- a/en-US/dita/RTC-NG/API/class_transcodinguser.dita +++ b/en-US/dita/RTC-NG/API/class_transcodinguser.dita @@ -212,21 +212,21 @@ public:

                                                The user ID of the host.

                                                - + x

                                                The x coordinate (pixel) of the host's video on the output video frame (taking the upper left corner of the video frame as the origin). The value range is [0, width], where width is the width set in .

                                                - + y The y coordinate (pixel) of the host's video on the output video frame (taking the upper left corner of the video frame as the origin). The value range is [0, height], where height is the height set in . - + width The width (pixel) of the host's video. - + height

                                                The height (pixel) of the host's video.

                                                diff --git a/en-US/dita/RTC-NG/API/class_useraudiospectruminfo.dita b/en-US/dita/RTC-NG/API/class_useraudiospectruminfo.dita index 8bbfcfc680e..8b3aa2f5c0a 100644 --- a/en-US/dita/RTC-NG/API/class_useraudiospectruminfo.dita +++ b/en-US/dita/RTC-NG/API/class_useraudiospectruminfo.dita @@ -11,7 +11,7 @@ private AudioSpectrumInfo audioSpectrumInfo; }
                                                - + __attribute__((visibility("default"))) @interface AgoraAudioSpectrumInfo : NSObject @property(nonatomic, assign) NSInteger uid; @@ -77,9 +77,9 @@ struct FUserAudioSpectrumInfo { audioSpectrumData spectrumData -

                                                Audio spectrum information of the remote user. See .

                                                +

                                                Audio spectrum information of the remote user. See .

                                        - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/class_videocanvas.dita b/en-US/dita/RTC-NG/API/class_videocanvas.dita index 5df29363315..8c3ad15af9e 100644 --- a/en-US/dita/RTC-NG/API/class_videocanvas.dita +++ b/en-US/dita/RTC-NG/API/class_videocanvas.dita @@ -58,6 +58,7 @@ public uid:number = 0; public renderMode:number = VideoCanvas.RENDER_MODE_HIDDEN; public mirrorMode:number = 0; + public sourceType:Constants.VideoSourceType = Constants.VideoSourceType.CAMERA_PRIMARY; constructor(componentId:string) { this.xcomponentId = componentId; } @@ -285,7 +286,7 @@ class VideoCanvas { When the video source is a mixed video stream ( ), this parameter represents the ID of the user who publishes the mixed video stream.
                                        - + subviewUid The ID of the user who publishes a specific sub-video stream within the mixed video stream. Reserved for future use.This parameter is for Android and iOS only. @@ -329,7 +330,7 @@ class VideoCanvas { sourceType The type of the video source. See . - + setupMode Setting mode of the view. See . Setting mode of the view.
                                          @@ -343,7 +344,7 @@ class VideoCanvas { The ID of the media player. You can get the Device ID by calling . This parameter is required when sourceType is . - + rect (Optional) Display area for the video frame. See . width and height represent the video pixel width and height of the area. The default value is null (width or height is 0), which means that the actual resolution of the video frame is displayed. @@ -355,11 +356,11 @@ class VideoCanvas { cropArea (Optional) Display area of the video frame, see . width and height represent the video pixel width and height of the area. The default value is null (width or height is 0), which means that the actual resolution of the video frame is displayed. - + backgroundColor The background color of the video canvas in RGBA format. The default value is 0x00000000, which represents completely transparent black. - + enableAlphaMask (Optional) Whether to enable alpha mask rendering:
                                          • : Enable alpha mask rendering.
                                          • @@ -374,7 +375,7 @@ class VideoCanvas { Reserved. - + position The observation position of the video frame in the video link. See . diff --git a/en-US/dita/RTC-NG/API/class_videoencoderconfiguration.dita b/en-US/dita/RTC-NG/API/class_videoencoderconfiguration.dita index 73c787d8153..6111f0a70cf 100644 --- a/en-US/dita/RTC-NG/API/class_videoencoderconfiguration.dita +++ b/en-US/dita/RTC-NG/API/class_videoencoderconfiguration.dita @@ -570,7 +570,7 @@ public: dimensions -

                                            The dimensions of the encoded video (px). See . This parameter measures the video encoding quality in the format of length × width. The default value is 960 × 540. You can set a custom value.

                                            +

                                            The dimensions of the encoded video (px). See . This parameter measures the video encoding quality in the format of length × width. The default value is 960 × 540. You can set a custom value.

                                            Users can set the resolution by themselves, or directly select the desired resolution from the following list:

                                            • : The video resolution is 120 × 120.
                                            • : The video resolution is 160 × 120.
                                            • diff --git a/en-US/dita/RTC-NG/API/class_videoframe.dita b/en-US/dita/RTC-NG/API/class_videoframe.dita index a478bc371d9..600f6e824de 100644 --- a/en-US/dita/RTC-NG/API/class_videoframe.dita +++ b/en-US/dita/RTC-NG/API/class_videoframe.dita @@ -263,16 +263,16 @@ public yBuffer: ArrayBuffer | null = null; public uBuffer: ArrayBuffer | null = null; public vBuffer: ArrayBuffer | null = null; + public rotation:number = 0; public timestamp:number = 0; - public stride:number = 0; + public yStride:number = 0; public uStride:number = 0; public vStride:number = 0; public width:number = 0; public height:number = 0; - public type:VideoBufferType = VideoBufferType.VIDEO_BUFFER_RAW_DATA; + public type:VideoBufferType = VideoBufferType.RAW_DATA; public format:VideoPixelFormat = VideoPixelFormat.VIDEO_PIXEL_NV21; - public faceInfo:Array<FaceDetectionInfo> | undefined = undefined; constructor(type:VideoBufferType,format:VideoPixelFormat) { this.type = type; this.format = format; @@ -611,43 +611,48 @@ class VideoFrame {
                                              <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property"/> - - type - The pixel format. See . + + type + The video type. See . + + + format + type + The pixel format. See . - + width The width of the video, in pixels. - + height The height of the video, in pixels. - + yStride For YUV data, the line span of the Y buffer; for RGBA data, the total data length.When dealing with video data, it is necessary to process the offset between each line of pixel data based on this parameter, otherwise it may result in image distortion. - + uStride For YUV data, the line span of the U buffer; for RGBA data, the value is 0.When dealing with video data, it is necessary to process the offset between each line of pixel data based on this parameter, otherwise it may result in image distortion. - + vStride For YUV data, the line span of the V buffer; for RGBA data, the value is 0.When dealing with video data, it is necessary to process the offset between each line of pixel data based on this parameter, otherwise it may result in image distortion. - + yBuffer For YUV data, the pointer to the Y buffer; for RGBA data, the data buffer. - + uBuffer For YUV data, the pointer to the U buffer; for RGBA data, the value is 0. - + vBuffer For YUV data, the pointer to the V buffer; for RGBA data, the value is 0. @@ -746,7 +751,8 @@ class VideoFrame {

                                              The alpha channel data output by using portrait segmentation algorithm. This data matches the size of the video frame, with each pixel value ranging from [0,255], where 0 represents the background and 255 represents the foreground (portrait).

                                              By setting this parameter, you can render the video background into various effects, such as transparent, solid color, image, video, etc.

                                              - In custom video rendering scenarios, ensure that both the video frame and alphaBuffer are of the Full Range type; other types may cause abnormal alpha data rendering. +
                                              • In custom video rendering scenarios, ensure that both the video frame and alphaBuffer are of the Full Range type; other types may cause abnormal alpha data rendering.
                                              • +
                                              • Make sure that alphaBufferalphaBuf is exactly the same size as the video frame (width × height), otherwise it may cause the app to crash.
                                              @@ -762,7 +768,7 @@ class VideoFrame { metaInfo -

                                              The meta information in the video frame. To use this parameter, please contact .

                                              +

                                              The meta information in the video frame. To use this parameter, contact .

                                              diff --git a/en-US/dita/RTC-NG/API/class_videosubscriptionoptions.dita b/en-US/dita/RTC-NG/API/class_videosubscriptionoptions.dita index b7b7cdf42e4..e641868b103 100644 --- a/en-US/dita/RTC-NG/API/class_videosubscriptionoptions.dita +++ b/en-US/dita/RTC-NG/API/class_videosubscriptionoptions.dita @@ -119,12 +119,7 @@ public: streamType type - The video stream type that you want to subscribe to. The default value is , indicating that the high-quality video streams are subscribed. See . - The video stream type that you want to subscribe to:
                                                -
                                              • (0): (Default) High-quality video stream, that is, a high-resolution, high-bit-rate video stream.
                                              • -
                                              • (1): Low-quality stream, that is, a low-resolution, low-bitrate video stream.
                                              • -
                                              -
                                              + The video stream type that you want to subscribe to. The default value is , indicating that the high-quality video streams are subscribed. See .
                                              encodedFrameOnly diff --git a/en-US/dita/RTC-NG/API/class_virtualbackgroundsource.dita b/en-US/dita/RTC-NG/API/class_virtualbackgroundsource.dita index 9e844214984..e1bef0fb006 100644 --- a/en-US/dita/RTC-NG/API/class_virtualbackgroundsource.dita +++ b/en-US/dita/RTC-NG/API/class_virtualbackgroundsource.dita @@ -36,13 +36,29 @@ export class VirtualBackgroundSource { - public backgroundSourceType: Constants.VirtualBackgroundType = Constants.VirtualBackgroundType.COLOR; + public static readonly BACKGROUND_NONE:number = 0; + + public static readonly BACKGROUND_COLOR:number = 1; + + public static readonly BACKGROUND_IMG:number = 2; + + public static readonly BACKGROUND_BLUR:number = 3; + + public static readonly BACKGROUND_VIDEO:number = 4; + + public static readonly BLUR_DEGREE_LOW:number = 1; + + public static readonly BLUR_DEGREE_MEDIUM:number = 2; + + public static readonly BLUR_DEGREE_HIGH:number = 3; + + public backgroundSourceType:number = VirtualBackgroundSource.BACKGROUND_COLOR; public color:number = 0xffffff; - public source:string | null = null; + public source?:string; - public blurDegree:Constants.VirtualBackgroundBlurDegree = Constants.VirtualBackgroundBlurDegree.HIGH; + public blurDegree:number = VirtualBackgroundSource.BLUR_DEGREE_HIGH; } __attribute__((visibility("default"))) @interface AgoraVirtualBackgroundSource : NSObject @property(nonatomic, assign) AgoraVirtualBackgroundSourceType backgroundSourceType NS_SWIFT_NAME(backgroundSourceType); @@ -158,7 +174,7 @@ public: <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property" /> - backgroundSourceType + backgroundSourceType background_source_type The custom background. See .
                                              • (0): Process the background as alpha data without replacement, only separating the portrait and the background. After setting this value, you can call to implement the picture-in-picture effect.
                                              • @@ -181,7 +197,7 @@ public: The local absolute path of the custom background image. Supports PNG, JPG, MP4, AVI, MKV, and FLV formats. If the path is invalid, the SDK will use either the original background image or the solid color image specified by color.This parameter takes effect only when the type of the custom background image is or . - blurDegree + blurDegree blur_degree The degree of blurring applied to the custom background image. See .
                                                • (1): The degree of blurring applied to the custom background image is low. The user can almost see the background clearly.
                                                • @@ -192,4 +208,4 @@ public:
                                      - \ No newline at end of file + diff --git a/en-US/dita/RTC-NG/API/enum_audioscenariotype.dita b/en-US/dita/RTC-NG/API/enum_audioscenariotype.dita index 068b5dbd7fc..f0bf71b8ab9 100644 --- a/en-US/dita/RTC-NG/API/enum_audioscenariotype.dita +++ b/en-US/dita/RTC-NG/API/enum_audioscenariotype.dita @@ -21,7 +21,7 @@ - 7: Real-time chorus scenario, where users have good network conditions and require ultra-low latency.Before using this enumeration, you need to call to see whether the audio device supports ultra-low-latency capture and playback. To experience ultra-low latency, you need to ensure that your audio device supports ultra-low latency (isLowLatencyAudioSupported = ). + 7: Real-time chorus scenario, where users have good network conditions and require ultra-low latency.Before using this enumeration, you need to call to see whether the audio device supports ultra-low-latency capture and playback. To experience ultra-low latency, you need to ensure that your audio device supports ultra-low latency (isLowLatencyAudioSupported is ). diff --git a/en-US/dita/RTC-NG/API/enum_backgroundsourcetype.dita b/en-US/dita/RTC-NG/API/enum_backgroundsourcetype.dita index fc67f03a683..00ca8b70c21 100644 --- a/en-US/dita/RTC-NG/API/enum_backgroundsourcetype.dita +++ b/en-US/dita/RTC-NG/API/enum_backgroundsourcetype.dita @@ -7,7 +7,7 @@
                                      Enumerator - + 0: Process the background as alpha data without replacement, only separating the portrait and the background. After setting this value, you can call to implement the picture-in-picture effect. diff --git a/en-US/dita/RTC-NG/API/enum_errorcodetype.dita b/en-US/dita/RTC-NG/API/enum_errorcodetype.dita index 6c137d0b747..26709bab79c 100644 --- a/en-US/dita/RTC-NG/API/enum_errorcodetype.dita +++ b/en-US/dita/RTC-NG/API/enum_errorcodetype.dita @@ -27,7 +27,7 @@ 3: The SDK is not ready. Possible reasons include the following:
                                      • The initialization of fails. Reinitialize the .
                                      • No user has joined the channel when the method is called. Check the code logic.
                                      • -
                                      • The user has not left the channel when the or method is called. Check the code logic.
                                      • +
                                      • The user has not left the channel when the or method is called. Check the code logic.
                                      • The audio module is disabled.
                                      • The program is not complete.
                                      @@ -35,7 +35,7 @@ 4: The does not support the request. Possible reasons include the following:
                                        -
                                      • The method is called on devices running versions earlier than Android 5.0. Check the Android version.
                                      • +
                                      • The method is called on devices running versions earlier than Android 5.0. Check the Android version.
                                      • The built-in encryption mode is incorrect, or the SDK fails to load the external encryption library. Check the encryption mode setting, or reload the external encryption library.
                                      @@ -71,7 +71,7 @@ 17: The request to join the channel is rejected. Possible reasons include the following:
                                      • The user is already in the channel. Agora recommends that you use the callback to see whether the user is in the channel. Do not call this method to join the channel unless you receive the (1) state.
                                      • -
                                      • After calling for the call test, the user tries to join the channel without calling to end the current test. To join a channel, the call test must be ended by calling .
                                      • +
                                      • After calling for the call test, the user tries to join the channel without calling to end the current test. To join a channel, the call test must be ended by calling .
                                      @@ -125,7 +125,7 @@
                                    • App Certificate is enabled in Agora Console, but the code still uses App ID for authentication. Once App Certificate is enabled for a project, you must use token-based authentication.
                                    • The uid used to generate the token is not the same as the uid used to join the channel.
                                    -
                                    +
                                    Deprecated:
                                    This enumerator is deprecated. Use (8) in the callback instead.
                                    diff --git a/en-US/dita/RTC-NG/API/enum_localvideostreamreason.dita b/en-US/dita/RTC-NG/API/enum_localvideostreamreason.dita index af03b62c287..8fde8a39f99 100644 --- a/en-US/dita/RTC-NG/API/enum_localvideostreamreason.dita +++ b/en-US/dita/RTC-NG/API/enum_localvideostreamreason.dita @@ -46,7 +46,7 @@ 7: (iOS only) The current app window is running in Slide Over, Split View, or Picture in Picture mode, and another app is occupying the camera. Prompt the user that the app cannot capture video properly when it is running in Slide Over, Split View, or Picture in Picture mode and another app is occupying the camera. 7: Reserved. - + 8: Fails to find a local video capture device. Remind the user to check whether the camera is connected to the device properly or the camera is working properly, and then to rejoin the channel. @@ -130,6 +130,18 @@ 30: (Windows and macOS only)The displayer used for screen capture is disconnected. + + + 31: User has stopped screen sharing. + + + + 32: The screen sharing process has been interrupted by another screen sharing process. + + + + 33: The screen sharing process was interrupted by a system call. + 101: The current video capture device is unavailable due to excessive system pressure. diff --git a/en-US/dita/RTC-NG/API/enum_qualitytype.dita b/en-US/dita/RTC-NG/API/enum_qualitytype.dita index 07f4b5d6da2..ee4f463a9e1 100644 --- a/en-US/dita/RTC-NG/API/enum_qualitytype.dita +++ b/en-US/dita/RTC-NG/API/enum_qualitytype.dita @@ -41,7 +41,7 @@ - 8: Detecting the network quality. + 8: The last-mile network probe test is in progress.
                      diff --git a/en-US/dita/RTC-NG/API/enum_videoapplicationscenariotype.dita b/en-US/dita/RTC-NG/API/enum_videoapplicationscenariotype.dita index 2f0f5d29730..f93dd28224d 100644 --- a/en-US/dita/RTC-NG/API/enum_videoapplicationscenariotype.dita +++ b/en-US/dita/RTC-NG/API/enum_videoapplicationscenariotype.dita @@ -19,14 +19,14 @@ 0: (Default) The general scenario. - +

                      1: The meeting scenario.

                      - +

                      2: 1v1 video call scenario.

                      diff --git a/en-US/dita/RTC-NG/API/enum_videocodectype.dita b/en-US/dita/RTC-NG/API/enum_videocodectype.dita index 236ec8a46b1..520e3fd3286 100644 --- a/en-US/dita/RTC-NG/API/enum_videocodectype.dita +++ b/en-US/dita/RTC-NG/API/enum_videocodectype.dita @@ -25,10 +25,7 @@
                      - -

                      6: Generic.

                      -

                      This type is used for transmitting raw video data, such as encrypted video frames. The SDK returns this type of video frames in callbacks, and you need to decode and render the frames yourself.

                      -
                      + 6: Generic. This type is used for transmitting raw video data, such as encrypted video frames. The SDK returns this type of video frames in callbacks, and you need to decode and render the frames yourself.
                      @@ -36,8 +33,7 @@ - 20: Generic JPEG.

                      This type consumes minimum computing resources and applies to IoT devices.

                      -
                      + 20: Generic JPEG. This type consumes minimum computing resources and applies to IoT devices.
                      diff --git a/en-US/dita/RTC-NG/API/enum_videomoduleposition.dita b/en-US/dita/RTC-NG/API/enum_videomoduleposition.dita index 23ebc446d14..9972e3293bd 100644 --- a/en-US/dita/RTC-NG/API/enum_videomoduleposition.dita +++ b/en-US/dita/RTC-NG/API/enum_videomoduleposition.dita @@ -10,15 +10,15 @@ - 1: The location of the locally collected video data after preprocessing corresponds to the callback. The observed video here has the effect of video pre-processing, which can be verified by enabling image enhancement, virtual background, or watermark. + 1: The location of the locally collected video data after preprocessing corresponds to the callback. The observed video here has the effect of video pre-processing, which can be verified by enabling image enhancement, virtual background, or watermark. - 2: The pre-renderer position, which corresponds to the video data in the callback. + 2: The pre-renderer position, which corresponds to the video data in the callback. - 4: The pre-encoder position, which corresponds to the video data in the callback. The observed video here has the effects of video pre-processing and encoding pre-processing.
                        + 4: The pre-encoder position, which corresponds to the video data in the callback. The observed video here has the effects of video pre-processing and encoding pre-processing.
                        • To verify the pre-processing effects of the video, you can enable image enhancement, virtual background, or watermark.
                        • To verify the pre-encoding processing effect, you can set a lower frame rate (for example, 5 fps).
                        diff --git a/en-US/dita/RTC-NG/API/rtc_api_data_type.dita b/en-US/dita/RTC-NG/API/rtc_api_data_type.dita index b484daa0fd0..77ec95fcf19 100644 --- a/en-US/dita/RTC-NG/API/rtc_api_data_type.dita +++ b/en-US/dita/RTC-NG/API/rtc_api_data_type.dita @@ -259,51 +259,51 @@
                      • -
                      • -
                      • +
                      • +
                      • -
                      • -
                      • -
                      • -
                      • +
                      • +
                      • +
                      • +
                      • -
                      • +
                        • -
                        • -
                        • -
                        • -
                        • +
                        • +
                        • +
                        • +
                      • -
                      • -
                      • -
                      • -
                      • +
                      • +
                      • +
                      • +
                      • -
                      • -
                      • -
                      • -
                      • +
                      • +
                      • +
                      • +
                      • -
                      • -
                      • -
                      • -
                      • -
                      • +
                      • +
                      • +
                      • +
                      • +
                      • -
                      • -
                      • -
                      • +
                      • +
                      • +
                      • @@ -316,16 +316,16 @@
                      • -
                      • +
                      • -
                      • +
                      • -
                      • +
                      • @@ -343,18 +343,18 @@
                      • -
                      • -
                      • -
                      • +
                      • +
                      • +
                      • -
                      • +
                      • -
                      • +
                      • -
                      • +
                      diff --git a/en-US/dita/RTC-NG/API/rtc_api_overview.dita b/en-US/dita/RTC-NG/API/rtc_api_overview.dita index bbc00d5e03b..74a7f7ca3df 100644 --- a/en-US/dita/RTC-NG/API/rtc_api_overview.dita +++ b/en-US/dita/RTC-NG/API/rtc_api_overview.dita @@ -290,7 +290,7 @@ Method / Callback Description - + @@ -550,14 +550,14 @@
              -
              +
              Raw audio data Method / Callback Description - + @@ -849,7 +849,7 @@ - + @@ -951,9 +951,9 @@ - + - (For Windows and macOS only) +
              @@ -968,6 +968,10 @@ + + + + @@ -1117,7 +1121,7 @@ - + @@ -1133,7 +1137,7 @@ - + @@ -1313,7 +1317,7 @@ - + @@ -1424,34 +1428,34 @@
              -
              +
              Audio effect file playback Method / Callback Description - + - + - + - + - + - + @@ -1471,19 +1475,19 @@ - + - + - + - + @@ -1491,11 +1495,11 @@ - + - + @@ -1503,15 +1507,15 @@ - + - + - + @@ -1521,7 +1525,7 @@
              -
              +
              Virtual metronome @@ -1546,7 +1550,7 @@
              -
              +
              Media player

              For more methods about the media player, see Built-in Media Player.

              For more methods about the media player, see .

              @@ -1694,7 +1698,7 @@ - + @@ -1880,7 +1884,7 @@ - + @@ -1892,7 +1896,7 @@ - + @@ -1900,7 +1904,7 @@ - + @@ -2045,7 +2049,7 @@
              -
              +
              Metadata (SEI) @@ -2060,7 +2064,7 @@ - + @@ -2118,7 +2122,7 @@ - + @@ -2255,7 +2259,7 @@ (For Android and iOS only) - + (For Android and iOS only) @@ -2307,7 +2311,7 @@ (For Android and iOS only) - + (For Android and iOS only) @@ -2585,7 +2589,7 @@ (For Android only)
              -
              +
              Extension @@ -2600,7 +2604,7 @@ - + @@ -2608,31 +2612,31 @@ - + - + - + - + - + - + - + diff --git a/en-US/dita/RTC-NG/API/rtc_api_sunset.dita b/en-US/dita/RTC-NG/API/rtc_api_sunset.dita index fcb4c9403d4..5ccc07ad90d 100644 --- a/en-US/dita/RTC-NG/API/rtc_api_sunset.dita +++ b/en-US/dita/RTC-NG/API/rtc_api_sunset.dita @@ -7,8 +7,9 @@ Deprecated APIs

              The deprecated APIs are expected to be officially deleted in approximately one year. Agora recommends that you promptly replace them with the recommended APIs to avoid any impact on your online services.

              -
              +
              + @@ -84,12 +85,6 @@ - v4.0.0 - - - - Use the logConfig parameter in - v4.0.0 - @@ -108,6 +103,18 @@ v4.0.0 + + + + + v4.0.0 + + + + + + v4.0.0 + @@ -126,10 +133,34 @@ v4.0.0 + + + + Use the contextconfig parameter in . + v4.0.0 + + + + + Use the contextconfig parameter in . + v4.0.0 + - Use the logConfig parameter in + Use the contextconfig parameter in . + v4.0.0 + + + + + Use the contextconfig parameter in . + v4.0.0 + + + + + v4.0.0 @@ -138,6 +169,12 @@ or v4.0.0 + + + + + v4.0.0 + @@ -186,181 +223,344 @@ - v4.0.0 - - -
              -
              -
              - - - - - - - - - - API - Description - Alternative API - Deprecated version - - - - - - - - v4.4.0 - - - - - - v4.4.0 - - - - - - v4.4.0 - - - - - - v4.4.0 - - - - - - v4.3.1 - - - - - - v4.2.0 - - - - - - v4.2.0 - - - - - v4.2.0 - - - - - - + + + v4.0.0 - - - Use the logConfig parameter in + + + v4.0.0 - - - - + + + + v4.0.0 - - - - + + + + v4.0.0 - - - - + + + + v4.0.0 - - - - or + + + + v4.0.0 - - - - + + + + v4.0.0 - - - + + + v4.0.0 - - - Use the logConfig parameter in + + + v4.0.0 - - - or - v4.0.0 - - - - - - v4.0.0 - - - - - - - v4.0.0 - - - - - - - v4.0.0 - - - - - - - v4.0.0 - - - - - - - v4.0.0 - - - - - - - v4.0.0 - - - - - - + + + v4.0.0
              +
              + + + + + + + + + + + API + Description + Alternative API + Deprecated version + + + + + + + + v4.4.0 + + + + + + v4.4.0 + + + + + + v4.4.0 + + + + + + v4.4.0 + + + + + + v4.3.1 + + + + + + v4.2.0 + + + + + + v4.2.0 + + + + + + v4.2.0 + + + + + - + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + or + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + Use the contextconfig parameter in . + v4.0.0 + + + + + Use the contextconfig parameter in . + v4.0.0 + + + + + Use the contextconfig parameter in . + v4.0.0 + + + + + Use the contextconfig parameter in . + v4.0.0 + + + + + + v4.0.0 + + + + + or + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + - + v4.0.0 + + + + + - + v4.0.0 + + + + + - + v4.0.0 + + + + + - + v4.0.0 + + + + + - + v4.0.0 + + + + + - + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + + + + v4.0.0 + + + +
              +
              Deleted APIs @@ -466,7 +666,7 @@ Occurs when the extension runs incorrectly. v4.4.0 - +