diff --git a/dita/RTC-NG/API/api_ibasespatialaudioengine_updateplayerpositioninfo.dita b/dita/RTC-NG/API/api_ibasespatialaudioengine_updateplayerpositioninfo.dita index 74f1758507e..4405d8dffa1 100644 --- a/dita/RTC-NG/API/api_ibasespatialaudioengine_updateplayerpositioninfo.dita +++ b/dita/RTC-NG/API/api_ibasespatialaudioengine_updateplayerpositioninfo.dita @@ -32,11 +32,18 @@ {required int playerId, required RemoteVoicePositionInfo positionInfo});

-
- 详情 +

成功更新后,本地用户可以听到媒体播放器空间位置的变化。

-
+
+ 调用时机 +

加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita b/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita index 17b6a1dd6ac..392dce45ff9 100644 --- a/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita +++ b/dita/RTC-NG/API/api_imediaplayer_adjustplayoutvolume.dita @@ -25,7 +25,16 @@ Future<void> adjustPlayoutVolume(int volume);

-
+
+
+ 调用时机 +

加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita b/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita index 2c91f0ff832..3ff415f1dde 100644 --- a/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita +++ b/dita/RTC-NG/API/api_imediaplayer_adjustpublishsignalvolume.dita @@ -25,11 +25,18 @@ Future<void> adjustPublishSignalVolume(int volume);

-
- 详情 +

连接到声网服务器后,你可以调用该方法,调节远端用户听到的媒体文件的音量。

-
+
+ 调用时机 +

加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita b/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita index 296d1daeb31..026242bf007 100644 --- a/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita +++ b/dita/RTC-NG/API/api_imediaplayer_getstreaminfo.dita @@ -25,10 +25,16 @@ Future<PlayerStreamInfo> getStreamInfo(int index);

-
- 详情 - 你需要在 后调用该方法。
-
+
+
+ 调用时机 +

你需要在 后调用该方法。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_mute.dita b/dita/RTC-NG/API/api_imediaplayer_mute.dita index 2783343aab8..3b6531dde04 100644 --- a/dita/RTC-NG/API/api_imediaplayer_mute.dita +++ b/dita/RTC-NG/API/api_imediaplayer_mute.dita @@ -25,7 +25,16 @@ Future<void> mute(bool muted);

-
+
+
+ 调用时机 +

该方法在加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_open.dita b/dita/RTC-NG/API/api_imediaplayer_open.dita index b13ac2f3388..fc790258acc 100644 --- a/dita/RTC-NG/API/api_imediaplayer_open.dita +++ b/dita/RTC-NG/API/api_imediaplayer_open.dita @@ -27,17 +27,27 @@ Future<void> open({required String url, required int startPos});

-
- 详情 +

在 Android 平台上,如果你需要打开 URI 格式的文件,请使用

该方法支持打开以 content:// 开头的 URI 文件。

媒体播放器支持的格式详见

如果用户需要自定义播放线路,你可以调用 。声网会通过自研调度中心支持调度线路,提升观看用户体验。如果用户不需要自定义播放线路,你可以调用

该方法为异步调用。

-

如需播放媒体文件,请在收到 回调报告播放状态为 后再调用 方法播放媒体文件。

-
+
+ 调用时机 +

加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+ +
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_open2.dita b/dita/RTC-NG/API/api_imediaplayer_open2.dita index 0f6a80c5fcb..a68a373043d 100644 --- a/dita/RTC-NG/API/api_imediaplayer_open2.dita +++ b/dita/RTC-NG/API/api_imediaplayer_open2.dita @@ -22,11 +22,22 @@

-
- 详情 +
-
+
+ 调用时机 +

加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+ +
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_pause.dita b/dita/RTC-NG/API/api_imediaplayer_pause.dita index ffe2c66aea9..d02b4ea84cd 100644 --- a/dita/RTC-NG/API/api_imediaplayer_pause.dita +++ b/dita/RTC-NG/API/api_imediaplayer_pause.dita @@ -27,6 +27,16 @@ Future<void> pause();

+
+ +
+ 调用时机 +

该方法在加入频道前后均可调用。

+
+
+ 调用限制 +

无。

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

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

diff --git a/dita/RTC-NG/API/api_imediaplayer_play.dita b/dita/RTC-NG/API/api_imediaplayer_play.dita index 48cc5aeced3..0446ed0effb 100644 --- a/dita/RTC-NG/API/api_imediaplayer_play.dita +++ b/dita/RTC-NG/API/api_imediaplayer_play.dita @@ -25,10 +25,15 @@ Future<void> play();

-
- 详情 -

调用 后,你可以调用该方法播放媒体文件。

- 调用 打开媒体文件后,你需要在收到 回调报告状态为 后再调用 来播放。 +
+
+ 调用时机 +
  • 在调用 打开媒体文件、且收到 回调报告状态为 后,调用该方法。
  • +
  • 在调用 后调用该方法。
+
+
+ 调用限制 +

无。

<ph keyref="return-section-title"/> diff --git a/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita b/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita index b8895544c06..9a41cbda07d 100644 --- a/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita +++ b/dita/RTC-NG/API/api_imediaplayer_registerplayersourceobserver.dita @@ -30,7 +30,16 @@ void registerPlayerSourceObserver(MediaPlayerSourceObserver observer);

-
+
+
+ 调用时机 +

加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_seek.dita b/dita/RTC-NG/API/api_imediaplayer_seek.dita index 3292d4447e0..dbff9f728e5 100644 --- a/dita/RTC-NG/API/api_imediaplayer_seek.dita +++ b/dita/RTC-NG/API/api_imediaplayer_seek.dita @@ -27,15 +27,24 @@ Future<void> seek(int newPos);

-
- 详情 -

成功调用该方法后,你会收到 回调,报告当前播放器发生的事件,如定位开始、定位成功或定位失败。

+
  • 如果你在播放已经完成后(收到 回调报告播放状态为 )再调用 ,方法调用成功后,SDK 会从你指定的位置开始自动播放,此时你会收到 回调报告播放状态为
  • 如果你在播放暂停的情况下调用 ,调用成功后 SDK 会定位到你指定位置,如需播放,请调用
  • -
+
+
+ 调用时机 +

该方法在加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+ -
+
参数 diff --git a/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita b/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita index f4f5ee94d98..3205fc9b717 100644 --- a/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita +++ b/dita/RTC-NG/API/api_imediaplayer_setplayeroption.dita @@ -2,7 +2,7 @@ <ph keyref="setPlayerOption"/> - 设置媒体播放器选项,用于提供技术预览或特别定制功能。 + 设置媒体播放器选项。 @@ -23,13 +23,24 @@ Future<void> setPlayerOptionInInt({required String key, required int value});

-
- 详情 -

媒体播放器支持通过 keyvalue 来设置选项。一般情况下,你无需知晓选项设置,使用媒体播放器默认的选项设置即可。

+
+

媒体播放器支持通过 keyvalue 来设置选项。

该方法和 的区别在于,该方法的 value 是 Int 型,value 是 String 型。二者不可混用。

- 请确保在 之前调用该方法。
-
- 参数 +
+
+ 适用场景 +

需要提供技术预览或特别定制功能的场景。一般情况下,你无需调用该方法,使用媒体播放器默认的选项设置即可。

+
+
+ 调用时机 +

该方法需要在 之前调用。

+
+
+ 调用限制 +

无。

+
+
+ 参数 key diff --git a/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita b/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita index c44db065ed8..55d5c9dd8a8 100644 --- a/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita +++ b/dita/RTC-NG/API/api_imediaplayer_setplayeroption2.dita @@ -2,7 +2,7 @@ <ph keyref="setPlayerOption2"/> - 设置媒体播放器选项,用于提供技术预览或特别定制功能。 + 设置媒体播放器选项。 @@ -24,13 +24,17 @@ {required String key, required String value});

-
- 详情 +

该方法和 的区别在于,该方法的 value 是 String 型,value 是 Int 型。二者不可混用。

-
-
-
+
+
+
+
+ 调用限制 +

无。

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

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

diff --git a/dita/RTC-NG/API/api_imediaplayer_setview.dita b/dita/RTC-NG/API/api_imediaplayer_setview.dita index 62d44bdd6e2..aa7c2dc49ee 100644 --- a/dita/RTC-NG/API/api_imediaplayer_setview.dita +++ b/dita/RTC-NG/API/api_imediaplayer_setview.dita @@ -30,9 +30,17 @@
在 Flutter 中你不需要主动调用该方法,请使用 渲染本地和远端视图。
-
- 参数 - +
+ 调用时机 +

该方法在加入频道前后均可调用。

+
+
+ 调用限制 +

无。

+
+
+ <ph props="native flutter unreal bp electron rn">参数</ph> + videoView view diff --git a/dita/RTC-NG/API/api_imediaplayer_stop.dita b/dita/RTC-NG/API/api_imediaplayer_stop.dita index 8503270533c..74c3413c9ee 100644 --- a/dita/RTC-NG/API/api_imediaplayer_stop.dita +++ b/dita/RTC-NG/API/api_imediaplayer_stop.dita @@ -29,6 +29,14 @@

调用该方法停止播放后,如需重新播放,需要调用 再次打开媒体资源。

+
+ 调用时机 +

该方法需要在 之后调用。

+
+
+ 调用限制 +

无。

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

方法成功调用时,无返回值;方法调用失败时,会抛出 异常,你需要捕获异常并进行处理。详见了解详情和解决建议。

diff --git a/dita/RTC-NG/API/api_imusiccontentcenter_destroymusicplayer.dita b/dita/RTC-NG/API/api_imusiccontentcenter_destroymusicplayer.dita index 542d6c13167..0608350b194 100644 --- a/dita/RTC-NG/API/api_imusiccontentcenter_destroymusicplayer.dita +++ b/dita/RTC-NG/API/api_imusiccontentcenter_destroymusicplayer.dita @@ -17,10 +17,10 @@ - (NSInteger)destroyMusicPlayer:(id<AgoraMusicPlayerProtocol>)musicPlayer; virtual int destroyMusicPlayer(agora_refptr<IMusicPlayer> music_player) = 0; - - - -

+ abstract destroyMusicPlayer(musicPlayer: IMusicPlayer): number; + public abstract int DestroyMusicPlayer(IMusicPlayer music_player); + abstract destroyMusicPlayer(musicPlayer: IMusicPlayer): number; + Future<void> destroyMusicPlayer(MusicPlayer musicPlayer);

@@ -44,9 +44,9 @@ player - musicPlayer - music_player - 对象。 + musicPlayer + music_player + 对象。 指向 对象的指针。
diff --git a/dita/RTC-NG/API/api_imusicplayer_setplaymode.dita b/dita/RTC-NG/API/api_imusicplayer_setplaymode.dita index 6c44a735040..06f628009fa 100644 --- a/dita/RTC-NG/API/api_imusicplayer_setplaymode.dita +++ b/dita/RTC-NG/API/api_imusicplayer_setplaymode.dita @@ -17,10 +17,10 @@ - (NSInteger)setPlayMode:(AgoraMusicPlayMode)mode NS_SWIFT_NAME(setPlayMode(mode:)); virtual int setPlayMode(MusicPlayMode mode) = 0; - - - -

+ abstract setPlayMode(mode: MusicPlayMode): number; + public abstract int SetPlayMode(MusicPlayMode mode); + abstract setPlayMode(mode: MusicPlayMode): number; + Future<void> setPlayMode(MusicPlayMode mode);

diff --git a/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingplayoutvolume.dita b/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingplayoutvolume.dita index d5ee9022c01..790e6487b68 100644 --- a/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingplayoutvolume.dita +++ b/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingplayoutvolume.dita @@ -25,12 +25,17 @@ Future<void> adjustAudioMixingPlayoutVolume(int volume);

-
- 详情 - - 你需要在调用 并收到 () 回调后调用该方法。 -
-
+
+
+
+ 调用时机 +

你需要在调用 并收到 () 回调后调用该方法。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingpublishvolume.dita b/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingpublishvolume.dita index 747c24910fb..87e13801bd7 100644 --- a/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingpublishvolume.dita +++ b/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingpublishvolume.dita @@ -25,14 +25,18 @@ Future<void> adjustAudioMixingPublishVolume(int volume);

-
- 详情 +

该方法调节混音音乐文件在远端的播放音量大小。

- -

你需要在调用 并收到 () 回调后调用该方法。 -

-
-
+
+
+ 调用时机 +

你需要在调用 并收到 () 回调后调用该方法。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingvolume.dita b/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingvolume.dita index 0af4bd1d1bc..f1c934305e1 100644 --- a/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingvolume.dita +++ b/dita/RTC-NG/API/api_irtcengine_adjustaudiomixingvolume.dita @@ -25,15 +25,19 @@ Future<void> adjustAudioMixingVolume(int volume);

-
- 详情 +

该方法调节混音音乐文件在本端和远端的播放音量大小。

- -
    -
  • 该方法需要在 后调用。
  • -
  • 调用该方法不影响调用 播放音效文件的音量。
  • -
-
+ 调调用该方法不会影响 方法中设置的音效文件播放音量。 +
+
+ 调用时机 +

该方法需要在 后调用。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_irtcengine_enablevideoimagesource.dita b/dita/RTC-NG/API/api_irtcengine_enablevideoimagesource.dita index 486907a1a6d..24319a419dd 100644 --- a/dita/RTC-NG/API/api_irtcengine_enablevideoimagesource.dita +++ b/dita/RTC-NG/API/api_irtcengine_enablevideoimagesource.dita @@ -33,13 +33,19 @@ {required bool enable, required ImageTrackOptions options});

-
- 详情 - 建议你在加入频道后调用该方法。 +

在发布视频流时,你可以调用该方法使用自定义图片来替代当前发布的视频流画面进行推流。

开启该功能后,你可以通过 参数自定义垫片图片;在你关闭垫片功能之后,远端用户看到的依旧是当前你发布的视频流画面。

-
+
+ 调用时机 +

建议在加入频道后调用该方法。

+
+
+ 调用限制 +

无。

+
+
参数 diff --git a/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita b/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita index f33160c4292..7f6fbda3484 100644 --- a/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita +++ b/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita @@ -17,10 +17,11 @@ - (int)enableVoiceAITuner:(bool)enabled type:(AgoraVoiceAITunerType)type NS_SWIFT_NAME(enableVoiceAITuner(_:type:)); virtual int enableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type) = 0; - - - -

+ abstract enableVoiceAITuner(enabled: boolean, type: VoiceAiTunerType): number; + public abstract int EnableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type); + abstract enableVoiceAITuner(enabled: boolean, type: VoiceAiTunerType): number; + Future<void> enableVoiceAITuner( + {required bool enabled, required VoiceAiTunerType type});

diff --git a/dita/RTC-NG/API/api_irtcengine_getaudiomixingduration.dita b/dita/RTC-NG/API/api_irtcengine_getaudiomixingduration.dita index b5c3ca7c9d4..c4dd6b3ef1f 100644 --- a/dita/RTC-NG/API/api_irtcengine_getaudiomixingduration.dita +++ b/dita/RTC-NG/API/api_irtcengine_getaudiomixingduration.dita @@ -25,16 +25,21 @@ Future<int> getAudioMixingDuration();

-
- 详情 +

该方法获取音乐文件总时长,单位为毫秒。

- -

你需要在调用 并收到 () 回调后调用该方法。

-
-
+
+
+ 调用时机 +

该方法需要在 之后,并收到 () 回调后调用。

+
+
+ 调用限制 +

无。

+
+
返回值
    -
  • ≥ 0: 方法调用成功返回音乐文件时长。
  • +
  • ≥ 0: 方法调用成功则返回音乐文件时长。
  • < 0: 方法调用失败。详见了解详情和解决建议。
diff --git a/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita b/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita index 65dbb1c3e0b..635090956a5 100644 --- a/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita +++ b/dita/RTC-NG/API/api_irtcengine_getaudiomixingplayoutvolume.dita @@ -25,13 +25,18 @@ Future<int> getAudioMixingPlayoutVolume();

-
- 详情 -

该方法获取混音的音乐文件本地播放音量,方便排查音量相关问题。

- -

你需要在调用 并收到() 回调后调用该方法。

-
-
+
+

你可以调用该方法获取混音的音乐文件的本地播放音量,方便排查音量相关问题。

+
+
+ 调用时机 +

该方法需要在 之后,并收到 () 回调后调用。

+
+
+ 调用限制 +

无。

+
+
返回值
  • ≥ 0: 方法调用成功则返回音量值,范围为 [0,100]。
  • diff --git a/dita/RTC-NG/API/api_irtcengine_isspeakerphoneenabled.dita b/dita/RTC-NG/API/api_irtcengine_isspeakerphoneenabled.dita index 5233230cbd9..ffcabde2e9c 100644 --- a/dita/RTC-NG/API/api_irtcengine_isspeakerphoneenabled.dita +++ b/dita/RTC-NG/API/api_irtcengine_isspeakerphoneenabled.dita @@ -25,12 +25,17 @@ Future<bool> isSpeakerphoneEnabled();

-
- -
    -
  • 该方法仅适用于 Android 和 iOS。
  • -
  • 该方法在加入频道前后都能调用。
  • -
+
+ 该方法仅适用于 Android 和 iOS。 +
+
+ 调用时机 +

该方法在加入频道前后都能调用。

+
+
+ 调用限制 +

无。

+
返回值
    diff --git a/dita/RTC-NG/API/api_irtcengine_setaudioeffectpreset.dita b/dita/RTC-NG/API/api_irtcengine_setaudioeffectpreset.dita index b7457de1c33..57643389fb9 100644 --- a/dita/RTC-NG/API/api_irtcengine_setaudioeffectpreset.dita +++ b/dita/RTC-NG/API/api_irtcengine_setaudioeffectpreset.dita @@ -25,14 +25,18 @@ Future<void> setAudioEffectPreset(AudioEffectPreset preset);

-
- 详情 +

调用该方法可以为本地发流用户设置 SDK 预设的人声音效,且不会改变原声的性别特征。设置音效后,频道内所有用户都能听到该效果。

根据不同的场景,你可以为用户设置不同的音效,各音效的适用场景可参考

+
+
+ 调用时机 +

加入频道前后均可调用。

- +

+
+ 调用限制
    -
  • 该方法在加入频道前后都能调用。
  • 如果调用 并设置除 外的枚举,请勿再调用 ,否则 设置的效果会被覆盖。
  • 调用 后,不建议调用以下方法,否则 设置的效果会被覆盖: @@ -45,8 +49,9 @@
  • 该方法依赖于美声动态库 ,如果删除该动态库会导致无法正常开启该功能。
  • -
    -
    + +
    +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setaudiomixingdualmonomode.dita b/dita/RTC-NG/API/api_irtcengine_setaudiomixingdualmonomode.dita index b33298c7c80..10459b4078d 100644 --- a/dita/RTC-NG/API/api_irtcengine_setaudiomixingdualmonomode.dita +++ b/dita/RTC-NG/API/api_irtcengine_setaudiomixingdualmonomode.dita @@ -25,16 +25,25 @@ Future<void> setAudioMixingDualMonoMode(AudioMixingDualMonoMode mode);

    -
    - 详情 -

    在双声道音频文件中,左声道和右声道可以存储不同的音频数据。根据实际需要,你可以设置声道模式为原始模式、左声道模式、右声道模式或混合模式。例如,在 KTV 场景中,音频文件的左声道存储了伴奏,右声道存储了原唱的歌声。如果你只需听伴奏,调用该方法设置音频文件的声道模式为左声道模式;如果你需要同时听伴奏和原唱,调用该方法设置声道模式为混合模式。

    - -
      -
    • 你需要在调用 并收到 () 回调后调用该方法。
    • -
    • 该方法仅适用于双声道的音频文件。
    • -
    -
    - 参数 +
    +

    在双声道音频文件中,左声道和右声道可以存储不同的音频数据。根据实际需要,你可以设置声道模式为原始模式、左声道模式、右声道模式或混合模式。

    +
    +
    + 适用场景 +

    在 KTV 场景中,音频文件的左声道存储了伴奏,右声道存储了原唱的歌声。你可以根据实际需求进行设置:

      +
    • 如果你只需听伴奏,则用该方法设置音频文件的声道模式为左声道模式。
    • +
    • 如果你需要同时听伴奏和原唱,则调用该方法设置声道模式为混合模式。

    +
    +
    + 调用时机 +

    该方法需要在 之后,并收到 () 回调后调用。

    +
    +
    + 调用限制 +

    该方法仅适用于双声道的音频文件。

    +
    +
    + 参数 mode diff --git a/dita/RTC-NG/API/api_irtcengine_setaudiomixingposition.dita b/dita/RTC-NG/API/api_irtcengine_setaudiomixingposition.dita index 74b174938fc..52d053e20e4 100644 --- a/dita/RTC-NG/API/api_irtcengine_setaudiomixingposition.dita +++ b/dita/RTC-NG/API/api_irtcengine_setaudiomixingposition.dita @@ -25,12 +25,19 @@ Future<void> setAudioMixingPosition(int pos);

    -
    - 详情 +

    该方法可以设置音频文件的播放位置,这样你可以根据实际情况播放文件,而非从头到尾播放整个文件。

    - 你需要在调用 并收到 () 回调后调用该方法。
    -
    - 参数 +
    +
    + 调用时机 +

    该方法需要在 之后,并收到 () 回调后调用。

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 pos diff --git a/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita b/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita index 59714ad3214..7460e007d93 100644 --- a/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita +++ b/dita/RTC-NG/API/api_irtcengine_setcameracapturerconfiguration.dita @@ -30,18 +30,16 @@ CameraCapturerConfiguration config);

    -
    -

    在调整摄像头的焦距配置前,建议先调用 查询设备支持的焦距能力,再根据查询结果进行配置。

    -

    由于部分 Android 设备的限制,即使根据 的查询结果设置焦距类型,设置结果也可能不生效。

    - 该方法仅适用于 Android 和 iOS。 -
    +
    调用时机

    该方法必须在开启本地摄像头采集前调用,如 前调用。

    - 调用限制 -

    无。

    + <ph>调用限制</ph> +

    在调整摄像头的焦距配置前,建议先调用 查询设备支持的焦距能力,再根据查询结果进行配置。

    +

    由于部分 Android 设备的限制,即使根据 的查询结果设置焦距类型,设置结果也可能不生效。

    +

    无。

    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita b/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita index 459339c489a..57adedd7a68 100644 --- a/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita +++ b/dita/RTC-NG/API/api_irtcengine_setdefaultaudioroutetospeakerphone.dita @@ -30,30 +30,33 @@ Future<void> setDefaultAudioRouteToSpeakerphone(bool defaultToSpeaker);

    -
    - 详情 - -
      -
    • 该方法仅适用于 Android 和 iOS 平台。
    • -
    • 该方法需要在加入频道前调用。如需在加入频道后切换音频路由,请调用
    • -
    -
    +
    + 该方法仅适用于 Android 和 iOS 平台。

    手机设备一般有两个音频路由,一个是位于顶部的听筒,播放声音偏小;一个是位于底部的扬声器,播放声音偏大。设置默认的音频路由,就是在没有外接设备的前提下,设置系统使用听筒还是扬声器播放音频。

    不同场景下,系统默认的音频路由也不同。具体如下: - - -

    • 语音通话:听筒
    • 语音直播:扬声器
    • 视频通话:扬声器
    • 视频直播:扬声器

    -

    调用该 API 可以改变上述默认音频路由。成功改变音频路由后,SDK 会触发 回调。

    +

    调用该 API 可以改变上述默认音频路由。

    -

    当手机插入外接设备,如蓝牙设备或耳机时,系统的音频路由会发生改变。详细的路由变化规律请参考 音频路由

    +

    在调用该方法设置默认音频路由后,系统实际音频路由会随着外接音频设备(有线耳机或蓝牙耳机)的连接发生改变。详见

    -
    +
    + 调用时机 +

    该方法需要在加入频道前调用。如需在加入频道后切换音频路由,请调用

    +
    +
    + 调用限制 +

    无。

    +
    + +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita b/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita index ccc00d6354b..385deb44f24 100644 --- a/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita +++ b/dita/RTC-NG/API/api_irtcengine_setenablespeakerphone.dita @@ -23,18 +23,30 @@ public abstract int SetEnableSpeakerphone(bool speakerOn); abstract setEnableSpeakerphone(speakerOn: boolean): number; Future<void> setEnableSpeakerphone(bool speakerOn);

    -
    - 详情 -

    如果 SDK 默认的音频路由或 的设置无法满足你的需求,你可以调用 切换当前的音频路由。成功改变音频路由后,SDK 会触发 回调。

    -

    不同场景下 SDK 默认的音频路由见音频路由

    -

    该方法只设置用户在当前频道内使用的音频路由,不会影响 SDK 默认的音频路由。如果用户离开当前频道并加入新的频道,则用户还是会使用 SDK 默认的音频路由。

    - +
    +

    不同场景下 SDK 默认的音频路由见

    + 该方法仅适用于 Android 和 iOS 平台。 +
    +
    + 适用场景 +

    如果 SDK 默认的音频路由或 的设置无法满足你的需求,你可以调用该方法切换当前的音频路由。

    +
    +
    + 调用时机 +

    该方法需要在加入频道后调用。

    +
    +
    + 调用限制
      -
    • 该方法仅适用于 Android 和 iOS 平台。
    • -
    • 该方法需要在加入频道后调用。
    • -
    • 如果用户使用了蓝牙耳机、有线耳机等外接音频播放设备,则该方法的设置无效,音频只会通过外接设备播放。当有多个外接设备时,音频会通过最后一个接入的设备播放。
    • -
    -
    +
  • 该方法只设置用户在当前频道内使用的音频路由,不会影响 SDK 默认的音频路由。如果用户离开当前频道并加入新的频道,则用户还是会使用 SDK 默认的音频路由。
  • +
  • 如果用户使用了蓝牙耳机、有线耳机等外接音频播放设备,则该方法的设置无效,音频只会通过外接设备播放。当有多个外接设备时,音频会通过最后一个接入的设备播放。
  • + +
    + +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita b/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita index c1fbd70142f..967ec147045 100644 --- a/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita +++ b/dita/RTC-NG/API/api_irtcengine_setlocalrendermode2.dita @@ -39,8 +39,9 @@

    初始化本地用户视图后,你可以调用该方法更新本地用户视图的渲染和镜像模式。该方法只影响本地用户看到的视频画面,不影响本地视频的发布。

    - <ph props="native unreal bp electron rn flutter">调用时机</ph> -
    • 请在调用 方法初始化本地视图后,调用该方法。
    • + 调用时机 +
        +
      • 请在调用 方法初始化本地视图后,调用该方法。
      • 你可以在通话中多次调用该方法,多次更新本地用户视图的显示模式。
    @@ -77,6 +78,7 @@ mirror

    本地视图的镜像模式,详见 。 + 该参数不生效。如需实现镜像显示效果,请在 Unreal Engine 中进行镜像设置。 该参数仅对 SDK 自渲染生效,如果你想要设置视图镜像,可以将 GameObject 的 scaleX 设为 -1+1

    本地视图的镜像模式。

      @@ -84,7 +86,8 @@
    • (1):开启本地视图的镜像模式。
    • (2):关闭本地视图的镜像模式。

    - 如果你使用前置摄像头,默认启动本地用户视图镜像模式;如果你使用后置摄像头,默认关闭本地视图镜像模式。
    + 如果你使用前置摄像头,默认启动本地用户视图镜像模式;如果你使用后置摄像头,默认关闭本地视图镜像模式。 +
    diff --git a/dita/RTC-NG/API/api_irtcengine_setlocalvideomirrormode.dita b/dita/RTC-NG/API/api_irtcengine_setlocalvideomirrormode.dita index d0fbf66aac6..cc3d9b3e3b8 100644 --- a/dita/RTC-NG/API/api_irtcengine_setlocalvideomirrormode.dita +++ b/dita/RTC-NG/API/api_irtcengine_setlocalvideomirrormode.dita @@ -48,6 +48,7 @@

    +
    diff --git a/dita/RTC-NG/API/api_irtcengine_setlocalvoiceequalization.dita b/dita/RTC-NG/API/api_irtcengine_setlocalvoiceequalization.dita index 512402fefd9..f8054c71b3d 100644 --- a/dita/RTC-NG/API/api_irtcengine_setlocalvoiceequalization.dita +++ b/dita/RTC-NG/API/api_irtcengine_setlocalvoiceequalization.dita @@ -35,10 +35,16 @@ required int bandGain});

    -
    - 详情 - 该方法在加入频道前后都能调用。
    -
    +
    +
    + 调用时机 +

    加入频道前后均可调用。

    +
    +
    + 调用限制 +

    无。

    +
    +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setlocalvoiceformant.dita b/dita/RTC-NG/API/api_irtcengine_setlocalvoiceformant.dita index b7f04d9d1cb..63f81a0135f 100644 --- a/dita/RTC-NG/API/api_irtcengine_setlocalvoiceformant.dita +++ b/dita/RTC-NG/API/api_irtcengine_setlocalvoiceformant.dita @@ -25,19 +25,28 @@ abstract setLocalVoiceFormant(formantRatio: number): number; Future<void> setLocalVoiceFormant(double formantRatio);

    -
    - 详情 +
    自从
    v4.2.0
    -

    共振峰比率是影响声音音色的一个参数,共振峰比率取值越小声音会更低沉,取值越大声音会更尖锐。

    -

    在语音直播、语聊房、K 歌房等场景中,你可以调用该方法设置本地语音的共振峰比率参数从而改变音色效果。设置共振峰比率后,频道内所有用户都能听到该效果。如果你想要在调整音色的同时改变音调,声网推荐你搭配 一起使用。 - 该方法在加入频道前后均可调用。

    +

    共振峰比率是影响声音音色的一个参数,共振峰比率取值越小声音会更低沉,取值越大声音会更尖锐。设置共振峰比率后,频道内所有用户都能听到该效果。如果你想要在调整音色的同时改变音调,声网推荐你搭配 一起使用。

    -
    +
    + 适用场景 +

    在语音直播、语聊房、K 歌房等场景中,你可以调用该方法设置本地语音的共振峰比率参数从而改变音色效果。

    +
    +
    + 调用时机 +

    加入频道前后均可调用。

    +
    +
    + 调用限制 +

    无。

    +
    +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setlocalvoicepitch.dita b/dita/RTC-NG/API/api_irtcengine_setlocalvoicepitch.dita index 6de83516adc..3380aa03d1c 100644 --- a/dita/RTC-NG/API/api_irtcengine_setlocalvoicepitch.dita +++ b/dita/RTC-NG/API/api_irtcengine_setlocalvoicepitch.dita @@ -25,10 +25,16 @@ Future<void> setLocalVoicePitch(double pitch);

    -
    - 详情 - 该方法在加入频道前后都能调用。
    -
    +
    +
    + 调用时机 +

    加入频道前后均可调用。

    +
    +
    + 调用限制 +

    无。

    +
    +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setlogfile.dita b/dita/RTC-NG/API/api_irtcengine_setlogfile.dita index eeb2f17a80e..962fb765cb7 100644 --- a/dita/RTC-NG/API/api_irtcengine_setlogfile.dita +++ b/dita/RTC-NG/API/api_irtcengine_setlogfile.dita @@ -25,20 +25,25 @@ Future<void> setLogFile(String filePath);

    -
    - 详情 +
    弃用:
    -
    此方法已废弃,请改用 中的 logConfigmLogConfig 参数设置日志文件路径。
    +
    该方法已废弃,请在调用 时通过 contextconfig 参数设置日志文件路径。
    -

    设置 SDK 的输出 log 文件。SDK 运行时产生的所有 log 将写入该文件。App 必须保证指定的目录存在而且可写。

    - -

    如需调用本方法,请在调用 方法初始化 对象后立即调用,否则输出日志可能不完整。

    -
    -
    - 参数 +

    设置 SDK 的输出 log 文件。SDK 运行时产生的所有 log 将写入该文件。

    +
    +
    + 调用时机 +

    该方法需要在 后立即调用,否则输出日志可能不完整。

    +
    +
    + 调用限制 +

    App 必须保证指定的目录存在而且可写。

    +
    +
    + 参数 filePath diff --git a/dita/RTC-NG/API/api_irtcengine_setloglevel.dita b/dita/RTC-NG/API/api_irtcengine_setloglevel.dita index 5fa3a974fd0..7d982394b26 100644 --- a/dita/RTC-NG/API/api_irtcengine_setloglevel.dita +++ b/dita/RTC-NG/API/api_irtcengine_setloglevel.dita @@ -26,22 +26,21 @@ Future<void> setLogLevel(LogLevel level);

    -
    - 详情 +
    弃用:
    -
    该方法已经废弃。请改用 设置日志输出级别。
    +
    该方法已废弃,请在调用 时通过 contextconfig 参数设置日志输出级别。

    选择一个级别,你就可以看到该级别的日志信息。

    -
    +
    参数 level - 日志级别: + 日志级别。详见
    diff --git a/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita b/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita index 2b3706ee1c6..e2dd2c1d94f 100644 --- a/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita +++ b/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita @@ -82,6 +82,7 @@

    +
    diff --git a/dita/RTC-NG/API/api_irtcengine_setrouteincommunicationmode.dita b/dita/RTC-NG/API/api_irtcengine_setrouteincommunicationmode.dita index 7c535a8116b..2523d131fa9 100644 --- a/dita/RTC-NG/API/api_irtcengine_setrouteincommunicationmode.dita +++ b/dita/RTC-NG/API/api_irtcengine_setrouteincommunicationmode.dita @@ -22,19 +22,29 @@ abstract setRouteInCommunicationMode(route: number): number; Future<void> setRouteInCommunicationMode(int route);

    -
    - 详情 +
    自从
    v4.2.2
    -

    该方法用于在通话音量模式()下,将音频路由从蓝牙耳机切换为听筒、有线耳机或扬声器。该方法调用成功后,SDK 会触发 回调,报告修改后的路由。

    - 该方法与 同时使用时可能引起冲突。声网建议你单独使用 -
    • 该方法仅适用于 Android。
    • 该方法与 同时使用时可能引起冲突。声网建议你单独使用
    +

    该方法用于在通话音量模式()下,将音频路由从蓝牙耳机切换为听筒、有线耳机或扬声器。

    + 该方法仅适用于 Android。
    -
    +
    + 调用时机 +

    加入频道前后均可调用。

    +
    +
    + 调用限制 +

    该方法与 同时使用时可能引起冲突。声网建议你单独使用

    +
    + +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita b/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita index e5fcf6f130c..449a012565a 100644 --- a/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita +++ b/dita/RTC-NG/API/api_irtcengine_setupremotevideo.dita @@ -37,7 +37,7 @@
  • 在 Flutter 中你不需要主动调用该方法,请使用 渲染本地和远端视图。
  • 如果你想要在原生窗口上渲染图像,请调用此方法;如果你仅需在 Unity 项目内渲染图像,可直接通过 类来实现。
  • 如果你希望在通话中更新远端用户视图的渲染或镜像模式,请使用 方法。
  • -
  • 如果你使用了录制服务,录制服务会作为一个哑客户端加入频道,因此也会触发 回调。由于录制服务不会发送视频流,App 无需为它绑定视图。如果 App 无法识别哑客户端,可以在收到 回调时再绑定远端用户视图。
  • +
  • 当使用录制服务时,由于它不会发送视频流,App 无需为它绑定视图。如果 App 无法识别录制服务,可以在收到 回调时再绑定远端用户视图。
  • 如果想要停止渲染视图,需要将 view 设为 后再次调用该方法,以停止渲染并清理渲染缓存。
  • diff --git a/dita/RTC-NG/API/api_irtcengine_setview.dita b/dita/RTC-NG/API/api_irtcengine_setview.dita deleted file mode 100644 index d90a9336104..00000000000 --- a/dita/RTC-NG/API/api_irtcengine_setview.dita +++ /dev/null @@ -1,35 +0,0 @@ - - - - <ph keyref="setView"/> - 设置视频渲染。 - - - - - - - - -
    -

    - - - - - - - - -

    -
    -
    - 参数 - - - renderConfig - 视频渲染配置。详见 - -
    -
    -
    diff --git a/dita/RTC-NG/API/api_irtcengine_setvoicebeautifierpreset.dita b/dita/RTC-NG/API/api_irtcengine_setvoicebeautifierpreset.dita index 8ab949c25cc..39bf51e7ff7 100644 --- a/dita/RTC-NG/API/api_irtcengine_setvoicebeautifierpreset.dita +++ b/dita/RTC-NG/API/api_irtcengine_setvoicebeautifierpreset.dita @@ -31,17 +31,16 @@
    调用时机

    加入频道前后均可调用。

    +

    为获取更好的人声效果,建议你在调用该方法前进行以下操作: +

      +
    • 调用 将音频场景设为高音质场景,即 (3)。
    • +
    • 调用 profile 设为 (4) 或 (5)。
    • +
    +

    调用限制
      -
    • 为获取更好的人声效果,建议你在调用该方法前进行以下操作: -

        -
      • 调用 将音频场景设为高音质场景,即 (3)。
      • -
      • 调用 profile 设为 (4) 或 (5)。
      • -
      -

      -
    • 请勿将 profile 参数设置为 (1)(6),否则该方法不生效。
    • 该方法对人声的处理效果最佳,不建议调用该方法处理含音乐的音频数据。
    • 调用 ,不建议调用以下方法,否则 设置的效果会被覆盖: diff --git a/dita/RTC-NG/API/api_irtcengine_setvoiceconversionpreset.dita b/dita/RTC-NG/API/api_irtcengine_setvoiceconversionpreset.dita index 2ebe807288f..a85914d84a0 100644 --- a/dita/RTC-NG/API/api_irtcengine_setvoiceconversionpreset.dita +++ b/dita/RTC-NG/API/api_irtcengine_setvoiceconversionpreset.dita @@ -25,14 +25,18 @@ Future<void> setVoiceConversionPreset(VoiceConversionPreset preset);

    -
    - 详情 -

    调用该方法可以为本地发流用户设置 SDK 预设的变声效果。设置变声效果后,频道内所有用户都能听到该效果。根据不同的场景,你可以为用户设置不同的变声效果。

    +
    +

    调用该方法可以为本地发流用户设置 SDK 预设的变声效果。设置变声效果后,频道内所有用户都能听到该效果。根据不同的场景,你可以为用户设置不同的变声效果。

    各变声效果的适用场景可参考

    +
    +
    + 调用时机 +

    加入频道前后均可调用。

    - +

    +
    + 调用限制
      -
    • 该方法在加入频道前后都能调用。
    • 该方法对人声的处理效果最佳,不建议调用该方法处理含音乐的音频数据。
    • 调用 后,不建议调用以下方法,否则 设置的效果会被覆盖: @@ -48,8 +52,9 @@
  • 该方法依赖于美声动态库 ,如果删除该动态库会导致无法正常开启该功能。
  • -
    -
    + +
    +
    参数 diff --git a/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita b/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita index 29687f0713c..a828da7bf24 100644 --- a/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita +++ b/dita/RTC-NG/API/api_irtcengine_startscreencapture.dita @@ -33,7 +33,7 @@
  • 该方法仅适用于 Android 和 iOS 平台。
  • 屏幕共享流的计费标准以 中的 dimensions 值为准:
    • 当你未传值时,以 1280 × 720 计费。
    • -
    • 当你传值时,以你传入的值计费。计费示例请参考
  • +
  • 当你传值时,以你传入的值计费。
  • diff --git a/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita b/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita index b4e1e55e1ee..588f8f4dd3b 100644 --- a/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita +++ b/dita/RTC-NG/API/api_irtcengine_takesnapshot.dita @@ -25,18 +25,27 @@ Future<void> takeSnapshot({required int uid, required String filePath});

    -
    - 详情 -

    该方法用于对指定用户的视频流进行截图,生成一张 JPG 格式的图片,并保存至指定的路径。

    -

    该方法是异步操作,调用返回时 SDK 并没有真正获取截图。成功调用该方法后,SDK 会触发 回调报告截图是否成功和获取截图的详情。

    -

    调用该方法返回时 SDK 并没有真正获取截图。成功调用该方法后,SDK 会触发 回调报告截图是否成功和获取截图的详情。

    - -
      -
    • 该方法需要在加入频道后调用。
    • -
    • 该方法用于本地视频截图时,是对 中指定发布的视频流进行截图。
    • -
    • 如果用户的视频经过前处理,例如,添加了水印或美颜,生成的截图会包含前处理效果。
    • -
    -
    +
    +

    该方法用于对指定用户的视频流进行截图,生成一张 JPG 格式的图片,并保存至指定的路径。

    +
    +
    + 调用时机 +

    该方法需要在加入频道后调用。

    +
    +
    + 调用限制 +
      +
    • 该方法是异步操作,调用返回时 SDK 并没有真正获取截图。
    • +
    • 调用该方法返回时 SDK 并没有真正获取截图。
    • +
    • 该方法用于本地视频截图时,是对 中指定发布的视频流进行截图。
    • +
    • 如果用户的视频经过前处理,例如,添加了水印或美颜,生成的截图会包含前处理效果。
    • +
    +
    + +
    参数 @@ -46,13 +55,15 @@ filePath -

    截图的本地保存路径,需精确到文件名及格式, 例如: +

    截图的本地保存路径,需精确到文件名及格式,例如:

    • Windows: C:\Users\<user_name>\AppData\Local\Agora\<process_name>\example.jpg
    • iOS: /App Sandbox/Library/Caches/example.jpg
    • macOS: ~/Library/Logs/example.jpg
    • Android: /storage/emulated/0/Android/data/<package name>/files/example.jpg
    • -
    请确保目录存在且可写。

    + +

    + 请确保目录存在且可写。
    diff --git a/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita b/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita index 3405e12b240..41e016f0084 100644 --- a/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita +++ b/dita/RTC-NG/API/api_irtcengineex_setremoterendermodeex.dita @@ -74,6 +74,7 @@ mirrorMode

    远端用户视图的镜像模式,详见

    +

    远端用户视图的镜像模式:

    • diff --git a/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita b/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita index ed48b5fb8c4..093f7d085ce 100644 --- a/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita +++ b/dita/RTC-NG/API/api_irtcengineex_takesnapshotex.dita @@ -2,7 +2,7 @@ <ph keyref="takeSnapshotEx"/> - 获取视频截图。 + 使用连接 ID 获取视频截图。 @@ -36,18 +36,14 @@ required String filePath});

    -
    - 详情 -

    -

    -

    调用该方法返回时 SDK 并没有真正获取截图。成功调用该方法后,SDK 会触发 回调报告截图是否成功和获取截图的详情。

    - -
      -
    • 该方法需要在调用 后调用。
    • -
    • 该方法用于本地视频截图时,是对 中指定发布的视频流进行截图。
    • -
    • 如果用户的视频经过前处理,例如,添加了水印或美颜,生成的截图会包含前处理效果。
    • -
    -
    +
    +
    + 调用时机 +

    该方法需要在 后调用。

    +
    +
    +
    @@ -36,14 +36,6 @@ - - - - - - - -
    \ No newline at end of file diff --git a/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita b/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita index c3c361dbecc..1ec204944f9 100644 --- a/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita +++ b/dita/RTC-NG/API/callback_irtcengineeventhandler_onjoinchannelsuccess.dita @@ -37,7 +37,8 @@
    触发时机 -

    当你调用 方法成功加入频道后,SDK 会触发该回调。

    +

    当你调用 方法成功加入频道后,SDK 会触发该回调。

    +

    当你调用 方法成功加入频道后,SDK 会触发该回调。

    当你调用 方法成功加入频道后,SDK 会触发该回调。

    当你调用 方法成功加入频道后,SDK 会触发该回调。

    @@ -70,4 +71,4 @@
    - \ No newline at end of file + diff --git a/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita b/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita index 1939e1699dc..3a94fd31033 100644 --- a/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita +++ b/dita/RTC-NG/API/callback_irtcengineeventhandler_onvideosubscribestatechanged.dita @@ -85,15 +85,15 @@
    • 远端用户:
        -
      • 调用 () 或 () 停止发送本地媒体流。
      • -
      • 调用 关闭本地音频或视频模块。
      • -
      • 调用 () 或 () 关闭本地音频或视频采集。
      • +
      • 调用 () 停止发送本地视频流。
      • +
      • 调用 关闭本地视频模块。
      • +
      • 调用 () 关闭本地视频采集。
      • 用户角色为观众。
    • -
    • 本地用户调用以下方法停止接收远端媒体流: +
    • 本地用户调用以下方法停止接收远端视频流:
        -
      • 调用 ()、 () 停止接收远端音频流。
      • -
      • 调用 ()、 () 停止接收远端视频流。
      • +
      • 调用 时设置 autoSubscribeVideo,不自动订阅任何视频流。
      • +
      • 调用 时设置 mutedmute,停止接收远端视频流。
  • (2): 正在订阅。
  • @@ -112,16 +112,16 @@
  • 远端用户:
      -
    • 调用 () 或 () 停止发送本地媒体流。
    • -
    • 调用 关闭本地音频或视频模块。
    • -
    • 调用 () 或 () 关闭本地音频或视频采集。
    • +
    • 调用 () 停止发送本地视频流。
    • +
    • 调用 关闭本地视频模块。
    • +
    • 调用 () 关闭本地视频采集。
    • 用户角色为观众。
  • -
  • 本地用户调用以下方法停止接收远端媒体流: +
  • 本地用户调用以下方法停止接收远端视频流:
      -
    • 调用 ()、 () 停止接收远端音频流。
    • -
    • 调用 ()、 () 停止接收远端视频流。
    • +
    • 调用 时设置 autoSubscribeVideo,不自动订阅任何视频流。
    • +
    • 调用 时设置 mutedmute,停止接收远端视频流。
  • (2): 正在订阅。
  • diff --git a/dita/RTC-NG/API/class_advanceoptions.dita b/dita/RTC-NG/API/class_advanceoptions.dita index 967b6484454..82aa0a26f7d 100644 --- a/dita/RTC-NG/API/class_advanceoptions.dita +++ b/dita/RTC-NG/API/class_advanceoptions.dita @@ -68,41 +68,52 @@ struct FAdvanceOptions { export class AdvanceOptions { encodingPreference?: EncodingPreference; compressionPreference?: CompressionPreference; + encodeAlpha?: boolean; } public class AdvanceOptions - { - public ENCODING_PREFERENCE encodingPreference { set; get; } - public COMPRESSION_PREFERENCE compressionPreference { set; get; } + { + public ENCODING_PREFERENCE encodingPreference; + public COMPRESSION_PREFERENCE compressionPreference; + public bool encodeAlpha; - public AdvanceOptions() - { - encodingPreference = ENCODING_PREFERENCE.PREFER_AUTO; - compressionPreference = COMPRESSION_PREFERENCE.PREFER_LOW_LATENCY; - } + public AdvanceOptions() + { + this.encodingPreference = ENCODING_PREFERENCE.PREFER_AUTO; + this.compressionPreference = COMPRESSION_PREFERENCE.PREFER_LOW_LATENCY; + this.encodeAlpha = false; + } - public AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference) - { - encodingPreference = encoding_preference; - compressionPreference = compression_preference; - } - } + public AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference, bool encode_alpha) + { + this.encodingPreference = encoding_preference; + this.compressionPreference = compression_preference; + this.encodeAlpha = encode_alpha; + } + + } export class AdvanceOptions { encodingPreference?: EncodingPreference; compressionPreference?: CompressionPreference; + encodeAlpha?: boolean; } - class AdvanceOptions { - const AdvanceOptions({this.encodingPreference, this.compressionPreference}); + @JsonSerializable(explicitToJson: true, includeIfNull: false) +class AdvanceOptions { + const AdvanceOptions( + {this.encodingPreference, this.compressionPreference, this.encodeAlpha}); - @JsonKey(name: 'encodingPreference') + @JsonKey(name: 'encodingPreference') final EncodingPreference? encodingPreference; - @JsonKey(name: 'compressionPreference') + @JsonKey(name: 'compressionPreference') final CompressionPreference? compressionPreference; - factory AdvanceOptions.fromJson(Map<String, dynamic> json) => + @JsonKey(name: 'encodeAlpha') + final bool? encodeAlpha; + + factory AdvanceOptions.fromJson(Map<String, dynamic> json) => _$AdvanceOptionsFromJson(json); - Map<String, dynamic> toJson() => _$AdvanceOptionsToJson(this); + Map<String, dynamic> toJson() => _$AdvanceOptionsToJson(this); }

    diff --git a/dita/RTC-NG/API/class_channelmediaoptions.dita b/dita/RTC-NG/API/class_channelmediaoptions.dita index 5940608834a..4660733227d 100644 --- a/dita/RTC-NG/API/class_channelmediaoptions.dita +++ b/dita/RTC-NG/API/class_channelmediaoptions.dita @@ -5,7 +5,7 @@ 频道媒体设置选项。
    -

    +

    public class ChannelMediaOptions { public Boolean publishCameraTrack; public Boolean publishSecondaryCameraTrack; @@ -343,6 +343,8 @@ struct FChannelMediaOptions publishTranscodedVideoTrack?: boolean; + publishLipSyncTrack?: boolean; + autoSubscribeAudio?: boolean; autoSubscribeVideo?: boolean; @@ -391,6 +393,7 @@ struct FChannelMediaOptions public Optional<bool> publishMediaPlayerAudioTrack = new Optional<bool>(); public Optional<bool> publishMediaPlayerVideoTrack = new Optional<bool>(); public Optional<bool> publishTranscodedVideoTrack = new Optional<bool>(); + public Optional<bool> publishLipSyncTrack = new Optional<bool>(); public Optional<bool> autoSubscribeAudio = new Optional<bool>(); public Optional<bool> autoSubscribeVideo = new Optional<bool>(); public Optional<bool> enableAudioRecordingOrPlayout = new Optional<bool>(); @@ -442,6 +445,8 @@ struct FChannelMediaOptions publishTranscodedVideoTrack?: boolean; + publishLipSyncTrack?: boolean; + autoSubscribeAudio?: boolean; autoSubscribeVideo?: boolean; @@ -491,6 +496,8 @@ class ChannelMediaOptions { this.publishMediaPlayerAudioTrack, this.publishMediaPlayerVideoTrack, this.publishTranscodedVideoTrack, + this.publishMixedAudioTrack, + this.publishLipSyncTrack, this.autoSubscribeAudio, this.autoSubscribeVideo, this.enableAudioRecordingOrPlayout, @@ -506,117 +513,755 @@ class ChannelMediaOptions { this.publishRhythmPlayerTrack, this.isInteractiveAudience, this.customVideoTrackId, - this.isAudioFilterable}); + this.isAudioFilterable, + this.parameters}); - @JsonKey(name: 'publishCameraTrack') + @JsonKey(name: 'publishCameraTrack') final bool? publishCameraTrack; - @JsonKey(name: 'publishSecondaryCameraTrack') + @JsonKey(name: 'publishSecondaryCameraTrack') final bool? publishSecondaryCameraTrack; - @JsonKey(name: 'publishThirdCameraTrack') + @JsonKey(name: 'publishThirdCameraTrack') final bool? publishThirdCameraTrack; - @JsonKey(name: 'publishFourthCameraTrack') + @JsonKey(name: 'publishFourthCameraTrack') final bool? publishFourthCameraTrack; - @JsonKey(name: 'publishMicrophoneTrack') + @JsonKey(name: 'publishMicrophoneTrack') final bool? publishMicrophoneTrack; - @JsonKey(name: 'publishScreenCaptureVideo') + @JsonKey(name: 'publishScreenCaptureVideo') final bool? publishScreenCaptureVideo; - @JsonKey(name: 'publishScreenCaptureAudio') + @JsonKey(name: 'publishScreenCaptureAudio') final bool? publishScreenCaptureAudio; - @JsonKey(name: 'publishScreenTrack') + @JsonKey(name: 'publishScreenTrack') final bool? publishScreenTrack; - @JsonKey(name: 'publishSecondaryScreenTrack') + @JsonKey(name: 'publishSecondaryScreenTrack') final bool? publishSecondaryScreenTrack; - @JsonKey(name: 'publishThirdScreenTrack') + @JsonKey(name: 'publishThirdScreenTrack') final bool? publishThirdScreenTrack; - @JsonKey(name: 'publishFourthScreenTrack') + @JsonKey(name: 'publishFourthScreenTrack') final bool? publishFourthScreenTrack; - @JsonKey(name: 'publishCustomAudioTrack') + @JsonKey(name: 'publishCustomAudioTrack') final bool? publishCustomAudioTrack; - @JsonKey(name: 'publishCustomAudioTrackId') + @JsonKey(name: 'publishCustomAudioTrackId') final int? publishCustomAudioTrackId; - @JsonKey(name: 'publishCustomVideoTrack') + @JsonKey(name: 'publishCustomVideoTrack') final bool? publishCustomVideoTrack; - @JsonKey(name: 'publishEncodedVideoTrack') + @JsonKey(name: 'publishEncodedVideoTrack') final bool? publishEncodedVideoTrack; - @JsonKey(name: 'publishMediaPlayerAudioTrack') + @JsonKey(name: 'publishMediaPlayerAudioTrack') final bool? publishMediaPlayerAudioTrack; - @JsonKey(name: 'publishMediaPlayerVideoTrack') + @JsonKey(name: 'publishMediaPlayerVideoTrack') final bool? publishMediaPlayerVideoTrack; - @JsonKey(name: 'publishTranscodedVideoTrack') + @JsonKey(name: 'publishTranscodedVideoTrack') final bool? publishTranscodedVideoTrack; - @JsonKey(name: 'autoSubscribeAudio') + @JsonKey(name: 'publishMixedAudioTrack') + final bool? publishMixedAudioTrack; + + @JsonKey(name: 'autoSubscribeAudio') final bool? autoSubscribeAudio; - @JsonKey(name: 'autoSubscribeVideo') + @JsonKey(name: 'autoSubscribeVideo') final bool? autoSubscribeVideo; - @JsonKey(name: 'enableAudioRecordingOrPlayout') + @JsonKey(name: 'enableAudioRecordingOrPlayout') final bool? enableAudioRecordingOrPlayout; - @JsonKey(name: 'publishMediaPlayerId') + @JsonKey(name: 'publishMediaPlayerId') final int? publishMediaPlayerId; - @JsonKey(name: 'clientRoleType') + @JsonKey(name: 'clientRoleType') final ClientRoleType? clientRoleType; - @JsonKey(name: 'audienceLatencyLevel') + @JsonKey(name: 'audienceLatencyLevel') final AudienceLatencyLevelType? audienceLatencyLevel; - @JsonKey(name: 'defaultVideoStreamType') + @JsonKey(name: 'defaultVideoStreamType') final VideoStreamType? defaultVideoStreamType; - @JsonKey(name: 'channelProfile') + @JsonKey(name: 'channelProfile') final ChannelProfileType? channelProfile; - @JsonKey(name: 'audioDelayMs') + @JsonKey(name: 'audioDelayMs') final int? audioDelayMs; - @JsonKey(name: 'mediaPlayerAudioDelayMs') + @JsonKey(name: 'mediaPlayerAudioDelayMs') final int? mediaPlayerAudioDelayMs; - @JsonKey(name: 'token') + @JsonKey(name: 'token') final String? token; - @JsonKey(name: 'enableBuiltInMediaEncryption') + @JsonKey(name: 'enableBuiltInMediaEncryption') final bool? enableBuiltInMediaEncryption; - @JsonKey(name: 'publishRhythmPlayerTrack') + @JsonKey(name: 'publishRhythmPlayerTrack') final bool? publishRhythmPlayerTrack; - @JsonKey(name: 'isInteractiveAudience') + @JsonKey(name: 'isInteractiveAudience') final bool? isInteractiveAudience; - @JsonKey(name: 'customVideoTrackId') + @JsonKey(name: 'customVideoTrackId') final int? customVideoTrackId; - @JsonKey(name: 'isAudioFilterable') + @JsonKey(name: 'isAudioFilterable') final bool? isAudioFilterable; - factory ChannelMediaOptions.fromJson(Map<String, dynamic> json) => + @JsonKey(name: 'parameters') + final String? parameters; + + factory ChannelMediaOptions.fromJson(Map<String, dynamic> json) => _$ChannelMediaOptionsFromJson(json); - Map<String, dynamic> toJson() => _$ChannelMediaOptionsToJson(this); + Map<String, dynamic> toJson() => _$ChannelMediaOptionsToJson(this); }

    -
    +

    + public class ChannelMediaOptions { + public Boolean publishCameraTrack; + public Boolean publishSecondaryCameraTrack; + public Boolean publishThirdCameraTrack; + public Boolean publishFourthCameraTrack; + public Boolean publishMicrophoneTrack; + public Boolean publishScreenCaptureVideo; + public Boolean publishScreenCaptureAudio; + public Boolean publishCustomAudioTrack; + public Integer publishCustomAudioTrackId; + public Boolean publishCustomVideoTrack; + public Boolean publishEncodedVideoTrack; + public Boolean publishMediaPlayerAudioTrack; + public Boolean publishMediaPlayerVideoTrack; + public Boolean publishTranscodedVideoTrack; + public Boolean publishLipSyncTrack; + public Boolean autoSubscribeAudio; + public Boolean autoSubscribeVideo; + public Boolean enableAudioRecordingOrPlayout; + public Integer publishMediaPlayerId; + public Integer clientRoleType; + public Integer audienceLatencyLevel; + public Integer defaultVideoStreamType; + public Integer channelProfile; + public Integer mediaPlayerAudioDelayMs; + public String token; + public Boolean enableBuiltInMediaEncryption; + public Boolean publishRhythmPlayerTrack; + public Boolean isInteractiveAudience; + public Integer customVideoTrackId; + 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() { + } + } + __attribute__((visibility("default"))) @interface AgoraRtcChannelMediaOptions : NSObject + @property(assign, nonatomic) BOOL publishCameraTrack; + @property(assign, nonatomic) BOOL publishSecondaryCameraTrack; + @property(assign, nonatomic) BOOL publishMicrophoneTrack; + #if TARGET_OS_IPHONE + @property(assign, nonatomic) BOOL publishScreenCaptureVideo; + @property(assign, nonatomic) BOOL publishScreenCaptureAudio; + #elif TARGET_OS_MAC + @property(assign, nonatomic) BOOL publishThirdCameraTrack; + @property(assign, nonatomic) BOOL publishFourthCameraTrack; + @property(assign, nonatomic) BOOL publishScreenTrack; + @property(assign, nonatomic) BOOL publishSecondaryScreenTrack; + @property(assign, nonatomic) BOOL publishThirdScreenTrack; + @property(assign, nonatomic) BOOL publishFourthScreenTrack; + #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; + @property(assign, nonatomic) BOOL publishMediaPlayerVideoTrack; + @property(assign, nonatomic) BOOL publishTranscodedVideoTrack; + @property(assign, nonatomic) BOOL publishLipSyncTrack; + @property(assign, nonatomic) BOOL autoSubscribeAudio; + @property(assign, nonatomic) BOOL autoSubscribeVideo; + @property(assign, nonatomic) BOOL enableAudioRecordingOrPlayout; + @property(assign, nonatomic) NSInteger publishMediaPlayerId; + @property(assign, nonatomic) AgoraClientRole clientRoleType; + @property(assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel; + @property(assign, nonatomic) AgoraVideoStreamType defaultVideoStreamType; + @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; + Optional<bool> publishSecondaryCameraTrack; + 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; + #else + Optional<bool> publishScreenTrack; + Optional<bool> publishSecondaryScreenTrack; + Optional<bool> publishThirdScreenTrack; + Optional<bool> publishFourthScreenTrack; + #endif + + Optional<bool> publishCustomAudioTrack; + Optional<int> publishCustomAudioTrackId; + Optional<bool> publishCustomVideoTrack; + Optional<bool> publishEncodedVideoTrack; + Optional<bool> publishMediaPlayerAudioTrack; + Optional<bool> publishMediaPlayerVideoTrack; + Optional<bool> publishTranscodedVideoTrack; + Optional<bool> publishLipSyncTrack; + Optional<bool> autoSubscribeAudio; + Optional<bool> autoSubscribeVideo; + Optional<bool> enableAudioRecordingOrPlayout; + Optional<int> publishMediaPlayerId; + Optional<CLIENT_ROLE_TYPE> clientRoleType; + Optional<AUDIENCE_LATENCY_LEVEL_TYPE> audienceLatencyLevel; + Optional<VIDEO_STREAM_TYPE> defaultVideoStreamType; + Optional<CHANNEL_PROFILE_TYPE> channelProfile; + Optional<const char*> token; + Optional<bool> enableBuiltInMediaEncryption; + Optional<bool> publishRhythmPlayerTrack; + Optional<bool> isInteractiveAudience; + + Optional<video_track_id_t> customVideoTrackId; + + Optional<bool> isAudioFilterable; + + ChannelMediaOptions() {} + ~ChannelMediaOptions() {} + USTRUCT(BlueprintType) + struct FChannelMediaOptions + { + GENERATED_BODY() + + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishCameraTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishSecondaryCameraTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishMicrophoneTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishScreenCaptureVideo; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishScreenCaptureAudio; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishScreenTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishSecondaryScreenTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishCustomAudioTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool publishCustomAudioTrackId_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int publishCustomAudioTrackId; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishCustomVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishEncodedVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishMediaPlayerAudioTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishMediaPlayerVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishTranscodedVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL autoSubscribeAudio; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL autoSubscribeVideo; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL enableAudioRecordingOrPlayout; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool publishMediaPlayerId_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int publishMediaPlayerId; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool clientRoleType_SetValue = true; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + ECLIENT_ROLE_TYPE clientRoleType = ECLIENT_ROLE_TYPE::CLIENT_ROLE_BROADCASTER; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool audienceLatencyLevel_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + EAUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool defaultVideoStreamType_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + EVIDEO_STREAM_TYPE defaultVideoStreamType; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool channelProfile_SetValue = true; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + ECHANNEL_PROFILE_TYPE channelProfile = ECHANNEL_PROFILE_TYPE::CHANNEL_PROFILE_LIVE_BROADCASTING; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool audioDelayMs_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int audioDelayMs; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool mediaPlayerAudioDelayMs_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int mediaPlayerAudioDelayMs; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool token_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + FString token; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL enableBuiltInMediaEncryption; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishRhythmPlayerTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL isInteractiveAudience; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool customVideoTrackId_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int64 customVideoTrackId; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL isAudioFilterable; + }; + struct ChannelMediaOptions { + 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; + #else + Optional<bool> publishScreenTrack; + Optional<bool> publishSecondaryScreenTrack; + #endif + + Optional<bool> publishCustomAudioTrack; + Optional<int> publishCustomAudioTrackId; + Optional<bool> publishCustomVideoTrack; + Optional<bool> publishEncodedVideoTrack; + Optional<bool> publishMediaPlayerAudioTrack; + Optional<bool> publishMediaPlayerVideoTrack; + Optional<bool> publishTranscodedVideoTrack; + Optional<bool> autoSubscribeAudio; + Optional<bool> autoSubscribeVideo; + Optional<bool> enableAudioRecordingOrPlayout; + Optional<int> publishMediaPlayerId; + Optional<CLIENT_ROLE_TYPE> clientRoleType; + Optional<AUDIENCE_LATENCY_LEVEL_TYPE> audienceLatencyLevel; + Optional<VIDEO_STREAM_TYPE> defaultVideoStreamType; + Optional<CHANNEL_PROFILE_TYPE> channelProfile; + Optional<const char*> token; + 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 + { + public Optional<bool> publishCameraTrack = new Optional<bool>(); + public Optional<bool> publishSecondaryCameraTrack = new Optional<bool>(); + public Optional<bool> publishThirdCameraTrack = new Optional<bool>(); + public Optional<bool> publishFourthCameraTrack = new Optional<bool>(); + public Optional<bool> publishMicrophoneTrack = new Optional<bool>(); + public Optional<bool> publishScreenCaptureVideo = new Optional<bool>(); + public Optional<bool> publishScreenCaptureAudio = new Optional<bool>(); + public Optional<bool> publishScreenTrack = new Optional<bool>(); + public Optional<bool> publishSecondaryScreenTrack = new Optional<bool>(); + public Optional<bool> publishThirdScreenTrack = new Optional<bool>(); + public Optional<bool> publishFourthScreenTrack = new Optional<bool>(); + public Optional<bool> publishCustomAudioTrack = new Optional<bool>(); + public Optional<int> publishCustomAudioTrackId = new Optional<int>(); + public Optional<bool> publishCustomVideoTrack = new Optional<bool>(); + public Optional<bool> publishEncodedVideoTrack = new Optional<bool>(); + public Optional<bool> publishMediaPlayerAudioTrack = new Optional<bool>(); + public Optional<bool> publishMediaPlayerVideoTrack = new Optional<bool>(); + public Optional<bool> publishTranscodedVideoTrack = new Optional<bool>(); + public Optional<bool> publishLipSyncTrack = new Optional<bool>(); + public Optional<bool> autoSubscribeAudio = new Optional<bool>(); + public Optional<bool> autoSubscribeVideo = new Optional<bool>(); + public Optional<bool> enableAudioRecordingOrPlayout = new Optional<bool>(); + public Optional<int> publishMediaPlayerId = new Optional<int>(); + public Optional<CLIENT_ROLE_TYPE> clientRoleType = new Optional<CLIENT_ROLE_TYPE>(); + public Optional<AUDIENCE_LATENCY_LEVEL_TYPE> audienceLatencyLevel = new Optional<AUDIENCE_LATENCY_LEVEL_TYPE>(); + public Optional<VIDEO_STREAM_TYPE> defaultVideoStreamType = new Optional<VIDEO_STREAM_TYPE>(); + public Optional<CHANNEL_PROFILE_TYPE> channelProfile = new Optional<CHANNEL_PROFILE_TYPE>(); + public Optional<string> token = new Optional<string>(); + public Optional<bool> publishRhythmPlayerTrack = new Optional<bool>(); + 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) + class ChannelMediaOptions { + const ChannelMediaOptions( + {this.publishCameraTrack, + this.publishSecondaryCameraTrack, + this.publishThirdCameraTrack, + this.publishFourthCameraTrack, + this.publishMicrophoneTrack, + this.publishScreenCaptureVideo, + this.publishScreenCaptureAudio, + this.publishScreenTrack, + this.publishSecondaryScreenTrack, + this.publishThirdScreenTrack, + this.publishFourthScreenTrack, + this.publishCustomAudioTrack, + this.publishCustomAudioTrackId, + this.publishCustomVideoTrack, + this.publishEncodedVideoTrack, + this.publishMediaPlayerAudioTrack, + this.publishMediaPlayerVideoTrack, + this.publishTranscodedVideoTrack, + this.publishMixedAudioTrack, + this.publishLipSyncTrack, + this.autoSubscribeAudio, + this.autoSubscribeVideo, + this.enableAudioRecordingOrPlayout, + this.publishMediaPlayerId, + this.clientRoleType, + this.audienceLatencyLevel, + this.defaultVideoStreamType, + this.channelProfile, + this.audioDelayMs, + this.mediaPlayerAudioDelayMs, + this.token, + this.enableBuiltInMediaEncryption, + this.publishRhythmPlayerTrack, + this.isInteractiveAudience, + 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); + } +

    +
    SDK 支持在同一时间、同一 中发布多路音频流、一路视频流。例如,publishMicrophoneTrackpublishCustomAudioTrackpublishMediaPlayerAudioTrack 可以同时为 publishCameraTrackpublishScreenCaptureVideopublishScreenTrackpublishCustomVideoTrackpublishEncodedVideoTrack 之中同一时间只能有一个为 建议你根据业务场景自行设置成员参数值,否则 SDK 会自动对成员参数进行赋值。
    diff --git a/dita/RTC-NG/API/class_extensioncontext.dita b/dita/RTC-NG/API/class_extensioncontext.dita index e83098cd2d4..7e79c88f30a 100644 --- a/dita/RTC-NG/API/class_extensioncontext.dita +++ b/dita/RTC-NG/API/class_extensioncontext.dita @@ -42,10 +42,71 @@ ExtensionContext():isValid(false), uid(0), providerName(NULL), extensionName(NULL) {} }; - - - -

    + export class ExtensionContext { + + isValid?: boolean; + + uid?: number; + + providerName?: string; + + extensionName?: string; +} + public class ExtensionContext + { + public bool isValid; + public uint uid; + public string providerName; + public string extensionName; + + public ExtensionContext() + { + this.isValid = false; + this.uid = 0; + this.providerName = ""; + this.extensionName = ""; + } + + public ExtensionContext(bool isValid, uint uid, string providerName, string extensionName) + { + this.isValid = isValid; + this.uid = uid; + this.providerName = providerName; + this.extensionName = extensionName; + } + } + export class ExtensionContext { + + isValid?: boolean; + + uid?: number; + + providerName?: string; + + extensionName?: string; +} + @JsonSerializable(explicitToJson: true, includeIfNull: false) +class ExtensionContext { + const ExtensionContext( + {this.isValid, this.uid, this.providerName, this.extensionName}); + + @JsonKey(name: 'isValid') + final bool? isValid; + + @JsonKey(name: 'uid') + final int? uid; + + @JsonKey(name: 'providerName') + final String? providerName; + + @JsonKey(name: 'extensionName') + final String? extensionName; + + factory ExtensionContext.fromJson(Map<String, dynamic> json) => + _$ExtensionContextFromJson(json); + + Map<String, dynamic> toJson() => _$ExtensionContextToJson(this); +}

    @@ -72,13 +133,13 @@ uid 用户 ID。0 代表本地用户,大于 0 代表远端用户。 - - - + + providerName + 提供插件的服务商名称。 - - - + + extensionName + 插件的名称。
    diff --git a/dita/RTC-NG/API/class_externalvideoframe.dita b/dita/RTC-NG/API/class_externalvideoframe.dita index 7e663e8ddb7..ba637e42536 100644 --- a/dita/RTC-NG/API/class_externalvideoframe.dita +++ b/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; @@ -67,20 +67,20 @@ __attribute__((visibility("default"))) @interface AgoraVideoFrame : NSObject @property(assign, nonatomic) NSInteger format; -@property(assign, nonatomic) CMTime time; +@property(assign, nonatomic) CMTime time; @property(assign, nonatomic) int stride DEPRECATED_MSG_ATTRIBUTE("use strideInPixels instead"); -@property(assign, nonatomic) int strideInPixels; -@property(assign, nonatomic) int height; +@property(assign, nonatomic) int strideInPixels; +@property(assign, nonatomic) int height; @property(assign, nonatomic) CVPixelBufferRef _Nullable textureBuf; @property(strong, nonatomic) IMAGE_CLASS * _Nullable image; -@property(strong, nonatomic) NSData *_Nullable dataBuf; +@property(strong, nonatomic) NSData *_Nullable dataBuf; @property(strong, nonatomic) NSData *_Nullable alphaBuf; @property(assign, nonatomic) AgoraAlphaStitchMode alphaStitchMode; -@property(assign, nonatomic) int cropLeft; -@property(assign, nonatomic) int cropTop; -@property(assign, nonatomic) int cropRight; -@property(assign, nonatomic) int cropBottom; -@property(assign, nonatomic) int rotation; +@property(assign, nonatomic) int cropLeft; +@property(assign, nonatomic) int cropTop; +@property(assign, nonatomic) int cropRight; +@property(assign, nonatomic) int cropBottom; +@property(assign, nonatomic) int rotation; - (void)fillAlphaData; @end struct ExternalVideoFrame { @@ -153,8 +153,13 @@ eglType?: EglContextType; textureId?: number; matrix?: number[]; - metadata_buffer?: Uint8Array; - metadata_size?: number; + metadataBuffer?: Uint8Array; + metadataSize?: number; + alphaBuffer?: Uint8Array; + fillAlphaBuffer?: boolean; + alphaStitchMode?: AlphaStitchMode; + d3d11Texture2d?: any; + textureSliceIndex?: number; } public class ExternalVideoFrame { @@ -172,8 +177,11 @@ public byte[] eglContext; public EGL_CONTEXT_TYPE eglType; public int textureId; - public byte[] metadata_buffer; - public int metadata_size; + public byte[] metadataBuffer; + public int metadataSize; + public byte[] alphaBuffer; + public bool fillAlphaBuffer; + public ALPHA_STITCH_MODE alphaStitchMode; public IntPtr d3d11_texture_2d; public int texture_slice_index; }; @@ -192,8 +200,11 @@ eglType?: EglContextType; textureId?: number; matrix?: number[]; - metadata_buffer?: Uint8Array; - metadata_size?: number; + metadataBuffer?: Uint8Array; + metadataSize?: number; + alphaBuffer?: Uint8Array; + fillAlphaBuffer?: boolean; + alphaStitchMode?: AlphaStitchMode; } @JsonSerializable(explicitToJson: true, includeIfNull: false) class ExternalVideoFrame { @@ -215,6 +226,9 @@ class ExternalVideoFrame { this.metadataBuffer, this.metadataSize, this.alphaBuffer, + this.fillAlphaBuffer, + this.alphaStitchMode, + this.d3d11Texture2d, this.textureSliceIndex}); @JsonKey(name: 'type') @@ -259,16 +273,25 @@ class ExternalVideoFrame { @JsonKey(name: 'matrix') final List<double>? matrix; - @JsonKey(name: 'metadata_buffer', ignore: true) + @JsonKey(name: 'metadataBuffer', ignore: true) final Uint8List? metadataBuffer; - @JsonKey(name: 'metadata_size') + @JsonKey(name: 'metadataSize') final int? metadataSize; @JsonKey(name: 'alphaBuffer', ignore: true) final Uint8List? alphaBuffer; - @JsonKey(name: 'texture_slice_index') + @JsonKey(name: 'fillAlphaBuffer') + final bool? fillAlphaBuffer; + + @JsonKey(name: 'alphaStitchMode') + final AlphaStitchMode? alphaStitchMode; + + @JsonKey(name: 'd3d11Texture2d', readValue: readIntPtr) + final int? d3d11Texture2d; + + @JsonKey(name: 'textureSliceIndex') final int? textureSliceIndex; factory ExternalVideoFrame.fromJson(Map<String, dynamic> json) => @@ -297,7 +320,7 @@ class ExternalVideoFrame { id="windows-format">像素格式。详见 传入的视频帧的格式,必须指定为下面的某一个值: - +
    • 1: I420。
    • 2: BGRA。
    • @@ -310,7 +333,7 @@ class ExternalVideoFrame {
    • 16: I422。
    视频数据的格式: - +
    • 10:TEXTURE_2D。
    • 11:TEXTURE_OES,通常摄像头采集的数据为这种格式。
    • @@ -335,7 +358,7 @@ class ExternalVideoFrame { stride 传入视频帧的行间距,单位为像素而不是字节。对于 Texture,该值指的是 Texture 的宽度。 - +

      @@ -350,7 +373,7 @@ class ExternalVideoFrame { strideInPixels 该帧的行跨度,即相邻两行视频帧之间的像素点数。 - +
      • 该参数单位为像素,不是字节数。
      • @@ -408,32 +431,30 @@ class ExternalVideoFrame { 该参数仅适用于 Texture 格式的视频数据。为一个输入的 4x4 变换矩阵,典型值为一个单位矩阵。 - metadata_buffer - metadataBuffer + metadataBuffer 该参数仅适用于 Texture 格式的视频数据。指 MetaData 的数据缓冲区,默认值为 NULL - metadata_size - metadataSize + metadataSize 该参数仅适用于 Texture 格式的视频数据。指 MetaData 的大小,默认值为 0 - - - - + + d3d11Texture2d + 该参数仅适用于 Windows Texture 格式的视频数据。表示一个指向 ID3D11Texture2D 类型对象的指针,该类型对象被视频帧所使用。 + - alphaBuffer + alphaBuffer alphaBuf

        采用人像分割算法输出的 Alpha 通道数据。该数据跟视频帧的尺寸一致,每个像素点的取值范围为 [0,255],其中 0 代表背景;255 代表前景(人像)。

        你可以通过设置该参数,实现将视频背景自渲染为各种效果,例如:透明、纯色、图片、视频等。

        - 在自定义视频渲染场景下,需确保传入的视频帧和 alphaBuffer 均为 Full Range 类型;其他类型可能导致 Alpha 数据渲染不正常。 + 在自定义视频渲染场景下,需确保传入的视频帧和 alphaBuffer 均为 Full Range 类型;其他类型可能导致 Alpha 数据渲染不正常。
        - fillAlphaBuffer + fillAlphaBuffer fillAlphaData - 该参数仅适用于 BGRA 或 RGBA 格式的视频数据。设置是否提取视频帧中的 Alpha 通道数据并自动填入到 alphaBuffer 中: + 该参数仅适用于 BGRA 或 RGBA 格式的视频数据。设置是否提取视频帧中的 Alpha 通道数据并自动填入到 alphaBuffer 中:
        • :提取并填充 Alpha 通道数据。
        • :(默认)不提取填充 Alpha 通道数据。
        • diff --git a/dita/RTC-NG/API/class_metadata.dita b/dita/RTC-NG/API/class_metadata.dita index 1ac893c186b..00f81d9970c 100644 --- a/dita/RTC-NG/API/class_metadata.dita +++ b/dita/RTC-NG/API/class_metadata.dita @@ -57,58 +57,67 @@ struct FAgoraMetadata }; public class Metadata { + public string channelId; public uint uid; public uint size; + public IntPtr buffer; + public long timeStampMs; - public IntPtr buffer + public Metadata() { - set - { - _buffer = (UInt64)value; - } - get - { - return (IntPtr)_buffer; - } + this.channelId = ""; + this.uid = 0; + this.size = 0; + this.buffer = IntPtr.Zero; + this.timeStampMs = 0; } - private UInt64 _buffer; - - public long timeStampMs; - }; + public Metadata(string channelId, uint uid, uint size, IntPtr buffer, long timeStampMs) + { + this.channelId = channelId; + this.uid = uid; + this.size = size; + this.buffer = buffer; + this.timeStampMs = timeStampMs; + } + } export class Metadata { - + channelId?: string; uid?: number; - size?: number; - buffer?: Uint8Array; - timeStampMs?: number; } export class Metadata { - + channelId?: string; uid?: number; - size?: number; - buffer?: Uint8Array; - timeStampMs?: number; } - class Metadata { - const Metadata({this.uid, this.size, this.buffer, this.timeStampMs}); + @JsonSerializable(explicitToJson: true, includeIfNull: false) +class Metadata { + const Metadata( + {this.channelId, this.uid, this.size, this.buffer, this.timeStampMs}); + + @JsonKey(name: 'channelId') + final String? channelId; @JsonKey(name: 'uid') final int? uid; + @JsonKey(name: 'size') final int? size; + @JsonKey(name: 'buffer', ignore: true) final Uint8List? buffer; + @JsonKey(name: 'timeStampMs') final int? timeStampMs; + factory Metadata.fromJson(Map<String, dynamic> json) => _$MetadataFromJson(json); + Map<String, dynamic> toJson() => _$MetadataToJson(this); }

          diff --git a/dita/RTC-NG/API/class_screenvideoparameters.dita b/dita/RTC-NG/API/class_screenvideoparameters.dita index b8b182210ea..31654bd5651 100644 --- a/dita/RTC-NG/API/class_screenvideoparameters.dita +++ b/dita/RTC-NG/API/class_screenvideoparameters.dita @@ -148,7 +148,7 @@ struct FScreenVideoParameters {
          -
        • 屏幕共享流的计费以 dimensions 的值为准:当你未传值时,以 1280 × 720 计费;当你传值时,以你传入的值计费。计费示例请参考
        • +
        • 屏幕共享流的计费以 dimensions 的值为准:当你未传值时,以 1280 × 720 计费;当你传值时,以你传入的值计费。
        • 该值不代表最终视频输出的方向。详见 了解设置视频方向。
        • 视频能否达到 720P 的分辨率取决于设备的性能,在性能配备较低的设备上有可能无法实现。如果采用 720P 分辨率而设备性能跟不上,则有可能出现帧率过低的情况。
        @@ -172,7 +172,7 @@ struct FScreenVideoParameters {
        -
      • 屏幕共享流的计费以 width 和 height 的值为准:当你未传值时,以 1280 × 720 计费;当你传值时,以你传入的值计费。计费示例请参考
      • +
      • 屏幕共享流的计费以 width 和 height 的值为准:当你未传值时,以 1280 × 720 计费;当你传值时,以你传入的值计费。
      • 该值不代表最终视频输出的方向。请查阅 了解设置视频方向。
      • 视频能否达到 720P 的分辨率取决于设备的性能,在性能配备较低的设备上有可能无法实现。如果采用 720P 分辨率而设备性能跟不上,则有可能出现帧率过低的情况。
      @@ -196,7 +196,7 @@ struct FScreenVideoParameters {
      -
    • 屏幕共享流的计费以 width 和 height 的值为准:当你未传值时,以 1280 × 720 计费;当你传值时,以你传入的值计费。计费示例请参考
    • +
    • 屏幕共享流的计费以 width 和 height 的值为准:当你未传值时,以 1280 × 720 计费;当你传值时,以你传入的值计费。
    • 该值不代表最终视频输出的方向。请查阅 了解设置视频方向。
    • 视频能否达到 720P 的分辨率取决于设备的性能,在性能配备较低的设备上有可能无法实现。如果采用 720P 分辨率而设备性能跟不上,则有可能出现帧率过低的情况。
    diff --git a/dita/RTC-NG/API/class_videocanvas.dita b/dita/RTC-NG/API/class_videocanvas.dita index ed844588797..951ee55a61e 100644 --- a/dita/RTC-NG/API/class_videocanvas.dita +++ b/dita/RTC-NG/API/class_videocanvas.dita @@ -292,6 +292,7 @@ class VideoCanvas { mirrorMode

    视图镜像模式,详见

    +

    • diff --git a/dita/RTC-NG/API/class_videoencoderconfiguration.dita b/dita/RTC-NG/API/class_videoencoderconfiguration.dita index 485434e7bce..e8e6aff4e8a 100644 --- a/dita/RTC-NG/API/class_videoencoderconfiguration.dita +++ b/dita/RTC-NG/API/class_videoencoderconfiguration.dita @@ -621,6 +621,7 @@ struct FVideoEncoderConfiguration mirrorMode

      发送编码视频时是否开启镜像模式,只影响远端用户看到的视频画面。详见

      +

      发送编码视频时是否开启镜像模式,只影响远端用户看到的视频画面。

      • (0):SDK 决定镜像模式。默认关闭远端用户的镜像模式。
      • diff --git a/dita/RTC-NG/API/class_videoframe.dita b/dita/RTC-NG/API/class_videoframe.dita index 329f1fbc6e2..d1cf26dfd1d 100644 --- a/dita/RTC-NG/API/class_videoframe.dita +++ b/dita/RTC-NG/API/class_videoframe.dita @@ -135,7 +135,7 @@ Unspecified(2), BT470M(4), BT470BG(5), - kSMPTE170M(6), + kSMPTE170M(6), kSMPTE240M(7), kFILM(8), kBT2020(9), @@ -421,6 +421,10 @@ struct FVideoFrame { matrix?: number[]; + alphaBuffer?: Uint8Array; + + alphaStitchMode?: AlphaStitchMode; + } public class VideoFrame { @@ -462,7 +466,13 @@ struct FVideoFrame { public int textureId; + public IntPtr d3d11Texture2d; + public float[] matrix; + + public byte[] alphaBuffer; + + public ALPHA_STITCH_MODE alphaStitchMode; }; export class VideoFrame { @@ -498,6 +508,10 @@ struct FVideoFrame { matrix?: number[]; + alphaBuffer?: Uint8Array; + + alphaStitchMode?: AlphaStitchMode; + } @JsonSerializable(explicitToJson: true, includeIfNull: false) class VideoFrame { @@ -518,63 +532,76 @@ class VideoFrame { this.metadataSize, this.textureId, this.matrix, - this.pixelBuffer}); + this.alphaBuffer, + this.alphaStitchMode, + this.pixelBuffer, + this.metaInfo}); - @JsonKey(name: 'type') + @JsonKey(name: 'type') final VideoPixelFormat? type; - @JsonKey(name: 'width') + @JsonKey(name: 'width') final int? width; - @JsonKey(name: 'height') + @JsonKey(name: 'height') final int? height; - @JsonKey(name: 'yStride') + @JsonKey(name: 'yStride') final int? yStride; - @JsonKey(name: 'uStride') + @JsonKey(name: 'uStride') final int? uStride; - @JsonKey(name: 'vStride') + @JsonKey(name: 'vStride') final int? vStride; - @JsonKey(name: 'yBuffer', ignore: true) + @JsonKey(name: 'yBuffer', ignore: true) final Uint8List? yBuffer; - @JsonKey(name: 'uBuffer', ignore: true) + @JsonKey(name: 'uBuffer', ignore: true) final Uint8List? uBuffer; - @JsonKey(name: 'vBuffer', ignore: true) + @JsonKey(name: 'vBuffer', ignore: true) final Uint8List? vBuffer; - @JsonKey(name: 'rotation') + @JsonKey(name: 'rotation') final int? rotation; - @JsonKey(name: 'renderTimeMs') + @JsonKey(name: 'renderTimeMs') final int? renderTimeMs; - @JsonKey(name: 'avsync_type') + @JsonKey(name: 'avsync_type') final int? avsyncType; - @JsonKey(name: 'metadata_buffer', ignore: true) + @JsonKey(name: 'metadata_buffer', ignore: true) final Uint8List? metadataBuffer; - @JsonKey(name: 'metadata_size') + @JsonKey(name: 'metadata_size') final int? metadataSize; - @JsonKey(name: 'textureId') + @JsonKey(name: 'textureId') final int? textureId; - @JsonKey(name: 'matrix') - final List<double>? matrix; + @JsonKey(name: 'matrix') + final List<double>? matrix; + + @JsonKey(name: 'alphaBuffer', ignore: true) + final Uint8List? alphaBuffer; - @JsonKey(name: 'pixelBuffer', ignore: true) + @JsonKey(name: 'alphaStitchMode') + final AlphaStitchMode? alphaStitchMode; + + @JsonKey(name: 'pixelBuffer', ignore: true) final Uint8List? pixelBuffer; - factory VideoFrame.fromJson(Map<String, dynamic> json) => + @VideoFrameMetaInfoConverter() + @JsonKey(name: 'metaInfo') + final VideoFrameMetaInfo? metaInfo; + + factory VideoFrame.fromJson(Map<String, dynamic> json) => _$VideoFrameFromJson(json); - Map<String, dynamic> toJson() => _$VideoFrameToJson(this); + Map<String, dynamic> toJson() => _$VideoFrameToJson(this); }

    @@ -688,7 +715,7 @@ class VideoFrame { textureId 该参数仅适用于 Texture 格式的视频数据。Texture ID。 - + d3d11Texture2d 该参数仅适用于 Windows Texture 格式的视频数据。表示一个指向 ID3D11Texture2D 类型对象的指针,该类型对象被视频帧所使用。 @@ -718,17 +745,17 @@ class VideoFrame { 单个像素的宽高比,即每个像素宽度与高度的比值。 - alphaBuffer + alphaBuffer alphaBuf

    采用人像分割算法输出的 Alpha 通道数据。该数据跟视频帧的尺寸一致,每个像素点的取值范围为 [0,255],其中 0 代表背景;255 代表前景(人像)。

    你可以通过设置该参数,实现将视频背景自渲染为各种效果,例如:透明、纯色、图片、视频等。

    - 在自定义视频渲染场景下,需确保传入的视频帧和 alphaBuffer 均为 Full Range 类型;其他类型可能导致 Alpha 数据渲染不正常。 + 在自定义视频渲染场景下,需确保传入的视频帧和 alphaBuffer 均为 Full Range 类型;其他类型可能导致 Alpha 数据渲染不正常。
    alphaStitchMode - 当视频帧中包含 Alpha 通道数据时,设置 alphaBuffer 和视频帧的相对位置。详见 + 当视频帧中包含 Alpha 通道数据时,设置 alphaBuffer 和视频帧的相对位置。详见
    • (0):(默认)仅视频帧,即 alphaBuffer 不和视频帧拼接。
    • (1):alphaBuffer 位于视频帧的上方。
    • diff --git a/dita/RTC-NG/API/enum_audioprocessingchannels.dita b/dita/RTC-NG/API/enum_audioprocessingchannels.dita index 64a4ff0e6c4..7a53f563b87 100644 --- a/dita/RTC-NG/API/enum_audioprocessingchannels.dita +++ b/dita/RTC-NG/API/enum_audioprocessingchannels.dita @@ -20,7 +20,7 @@

      立体声设置仅在媒体音量下生效。

      如需了解媒体音量和通话音量的区别,详见

      -
    • 在 iOS 上,立体声对设备性能要求较高。仅支持在 iOS 14.0 及以上版本的如下设备中实现立体声: +
    • 在 iOS 上,实现立体声 iOS 系统版本为 14.0 及以上。最低设备要求如下:
        diff --git a/dita/RTC-NG/API/enum_localvideostreamreason.dita b/dita/RTC-NG/API/enum_localvideostreamreason.dita index 211c688d266..a01bf08037b 100644 --- a/dita/RTC-NG/API/enum_localvideostreamreason.dita +++ b/dita/RTC-NG/API/enum_localvideostreamreason.dita @@ -128,9 +128,9 @@ 29:(仅适用于 Windows)屏幕采集已从暂停状态中恢复。 - + - 30:(仅适用于 Windows 和 macOS)进行屏幕采集的显示器已断开连接。 + 30:(仅适用于 Windows 和 macOS)进行屏幕采集的显示器已断开连接。 diff --git a/dita/RTC-NG/API/enum_videoviewsetupmode.dita b/dita/RTC-NG/API/enum_videoviewsetupmode.dita index 3f1befce01b..7112a512a64 100644 --- a/dita/RTC-NG/API/enum_videoviewsetupmode.dita +++ b/dita/RTC-NG/API/enum_videoviewsetupmode.dita @@ -10,7 +10,7 @@ - 0:(默认) 替换一个视图。 + 0:(默认) 清除已添加的所有视图、替换为新的视图。 diff --git a/dita/RTC-NG/API/rtc_api_data_type.dita b/dita/RTC-NG/API/rtc_api_data_type.dita index fa698da4ddb..d52c798d28e 100644 --- a/dita/RTC-NG/API/rtc_api_data_type.dita +++ b/dita/RTC-NG/API/rtc_api_data_type.dita @@ -596,6 +596,7 @@
      • +
      • @@ -800,6 +801,7 @@
      • +
      • @@ -918,6 +920,7 @@
      • +
      • @@ -1038,6 +1041,7 @@
      • +
      • @@ -1125,6 +1129,7 @@
        Enum
          +
        • @@ -1262,7 +1267,6 @@
        • -
        • @@ -1362,268 +1366,269 @@
        • -
        -
          -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • +
        +
          +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
          -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • -
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
        • +
          +
        • @@ -1711,6 +1716,7 @@
        • +
        • @@ -1758,11 +1764,11 @@
        • -
        • +
        • @@ -1895,7 +1901,6 @@
        • -
        • @@ -1905,6 +1910,7 @@
          +
        • @@ -1987,6 +1993,7 @@
        • +
        • @@ -2033,15 +2040,16 @@
        • -
        • +
          +
        • @@ -2125,6 +2133,7 @@
        • +
        • @@ -2171,15 +2180,16 @@
        • -
        • +
          +
        • @@ -2264,6 +2274,7 @@
        • +
        • @@ -2310,11 +2321,11 @@
        • -
        • +
        • diff --git a/dita/RTC-NG/API/rtc_api_overview.dita b/dita/RTC-NG/API/rtc_api_overview.dita index 373cc39c92a..976c6042e18 100644 --- a/dita/RTC-NG/API/rtc_api_overview.dita +++ b/dita/RTC-NG/API/rtc_api_overview.dita @@ -2163,6 +2163,10 @@ + + + + @@ -2231,9 +2235,9 @@ - + - (仅适用于 Android 和 iOS) + diff --git a/dita/RTC-NG/API/rtc_api_sunset.dita b/dita/RTC-NG/API/rtc_api_sunset.dita index b5bb0b29ce2..d424e5be1c3 100644 --- a/dita/RTC-NG/API/rtc_api_sunset.dita +++ b/dita/RTC-NG/API/rtc_api_sunset.dita @@ -67,9 +67,9 @@ v4.2.0 - - - + + + v4.2.0 @@ -244,9 +244,9 @@ v4.2.0 - - - + + + v4.2.0 diff --git a/dita/RTC-NG/RTC_NG_API_Electron.ditamap b/dita/RTC-NG/RTC_NG_API_Electron.ditamap index 18ca6c161b7..715d31e56c6 100644 --- a/dita/RTC-NG/RTC_NG_API_Electron.ditamap +++ b/dita/RTC-NG/RTC_NG_API_Electron.ditamap @@ -156,6 +156,7 @@ + @@ -518,6 +519,7 @@ + @@ -534,6 +536,7 @@ + @@ -621,13 +624,14 @@ - + + @@ -673,10 +677,10 @@ - - - - + + + + @@ -700,8 +704,6 @@ - - diff --git a/dita/RTC-NG/RTC_NG_API_Flutter.ditamap b/dita/RTC-NG/RTC_NG_API_Flutter.ditamap index a0112c1a085..45aa0e30ca7 100644 --- a/dita/RTC-NG/RTC_NG_API_Flutter.ditamap +++ b/dita/RTC-NG/RTC_NG_API_Flutter.ditamap @@ -160,6 +160,7 @@ + @@ -522,6 +523,7 @@ + @@ -538,6 +540,7 @@ + @@ -702,10 +705,10 @@ - - - - + + + + @@ -730,8 +733,6 @@ - - diff --git a/dita/RTC-NG/RTC_NG_API_RN.ditamap b/dita/RTC-NG/RTC_NG_API_RN.ditamap index f53dc13cc86..43b7a0febd2 100644 --- a/dita/RTC-NG/RTC_NG_API_RN.ditamap +++ b/dita/RTC-NG/RTC_NG_API_RN.ditamap @@ -153,6 +153,7 @@ + @@ -514,6 +515,7 @@ + @@ -530,6 +532,7 @@ + @@ -662,10 +665,10 @@ - - - - + + + + @@ -689,8 +692,6 @@ - - diff --git a/dita/RTC-NG/RTC_NG_API_Unity.ditamap b/dita/RTC-NG/RTC_NG_API_Unity.ditamap index 4261d8cddb9..d49f50f0632 100644 --- a/dita/RTC-NG/RTC_NG_API_Unity.ditamap +++ b/dita/RTC-NG/RTC_NG_API_Unity.ditamap @@ -149,6 +149,7 @@ + @@ -448,7 +449,6 @@ - @@ -522,6 +522,7 @@ + @@ -537,6 +538,7 @@ + @@ -714,10 +716,10 @@ - - - - + + + + @@ -742,8 +744,6 @@ - - @@ -752,8 +752,6 @@ - - diff --git a/dita/RTC-NG/RTC_NG_API_iOS.ditamap b/dita/RTC-NG/RTC_NG_API_iOS.ditamap index f7629af530e..07de44de4a0 100644 --- a/dita/RTC-NG/RTC_NG_API_iOS.ditamap +++ b/dita/RTC-NG/RTC_NG_API_iOS.ditamap @@ -9,7 +9,7 @@ - + diff --git a/dita/RTC-NG/RTC_NG_API_macOS.ditamap b/dita/RTC-NG/RTC_NG_API_macOS.ditamap index aff635a51e3..6177cb9c259 100644 --- a/dita/RTC-NG/RTC_NG_API_macOS.ditamap +++ b/dita/RTC-NG/RTC_NG_API_macOS.ditamap @@ -8,7 +8,7 @@ - + @@ -612,6 +612,7 @@ + diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap index c56ea6e11c7..bf4073b8d0e 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -12500,510 +12500,6 @@ - - - - VIDEO_PROFILE_TYPE - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_7 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_11 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P_2 - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_120P - - - - - - - VIDEO_PROFILE_PORTRAIT_120P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_7 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_11 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P - - - - - - - VIDEO_PROFILE_PORTRAIT_720P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P_5 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_1080P - - - - - - - VIDEO_PROFILE_PORTRAIT_1080P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_1080P_5 - - - - - - - VIDEO_PROFILE_PORTRAIT_1440P - - - - - - - VIDEO_PROFILE_PORTRAIT_1440P_2 - - - - - - - VIDEO_PROFILE_PORTRAIT_4K - - - - - - - VIDEO_PROFILE_PORTRAIT_4K_3 - - - - - - - VIDEO_PROFILE_DEFAULT - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap index 5db37df1213..4af0e354d1b 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap @@ -1870,6 +1870,13 @@ + + + + enableVoiceAITuner + + + @@ -2582,31 +2589,31 @@ - + - onExtensionEvent + onExtensionEventWithContext - + - onExtensionStarted + onExtensionStartedWithContext - + - onExtensionStopped + onExtensionStoppedWithContext - + - onExtensionError + onExtensionErrorWithContext @@ -2695,20 +2702,6 @@ - - - - setEncryptionMode - - - - - - - setEncryptionSecret - - - @@ -3059,6 +3052,13 @@ + + + + destroyMusicPlayer + + + @@ -3177,6 +3177,34 @@ kMusicContentCenterReasonHttpInternalError + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -3185,13 +3213,6 @@ - - - - onSongSimpleInfoResult - - - @@ -3213,6 +3234,13 @@ + + + + onSongSimpleInfoResult + + + @@ -3297,6 +3325,13 @@ + + + + setPlayMode + + + @@ -3415,6 +3450,13 @@ + + + + setCameraCapturerConfiguration + + + @@ -4771,6 +4813,13 @@ + + + + ExtensionContext + + + @@ -5277,6 +5326,48 @@ + + + + AlphaStitchMode + + + + + + + NoAlphaStitch + + + + + + + AlphaStitchUp + + + + + + + AlphaStitchBelow + + + + + + + AlphaStitchLeft + + + + + + + AlphaStitchRight + + + @@ -8693,7 +8784,14 @@ - + + + + LocalVideoStreamReasonScreenCaptureDisplayDisconnected + + + + LocalVideoStreamState @@ -10702,6 +10800,13 @@ + + + + ApplicationScenario1v1 + + + @@ -11388,591 +11493,164 @@ - - - - VideoProfileType - - - - - - - VideoProfileLandscape120p - - - - - - - VideoProfileLandscape120p3 - - - - - - - VideoProfileLandscape180p - - - - - - - VideoProfileLandscape180p3 - - - - - - - VideoProfileLandscape180p4 - - - - - - - VideoProfileLandscape240p - - - - - - - VideoProfileLandscape240p3 - - - - - - - VideoProfileLandscape240p4 - - - - - - - VideoProfileLandscape360p - - - - - - - VideoProfileLandscape360p3 - - - - - - - VideoProfileLandscape360p4 - - - - - - - VideoProfileLandscape360p6 - - - - - - - VideoProfileLandscape360p7 - - - - - - - VideoProfileLandscape360p8 - - - - - - - VideoProfileLandscape360p9 - - - - - - - VideoProfileLandscape360p10 - - - - - - - VideoProfileLandscape360p11 - - - - - - - VideoProfileLandscape480p - - - - - - - VideoProfileLandscape480p3 - - - - - - - VideoProfileLandscape480p4 - - - - - - - VideoProfileLandscape480p6 - - - - - - - VideoProfileLandscape480p8 - - - - - - - VideoProfileLandscape480p9 - - - - - - - VideoProfileLandscape480p10 - - - - - - - VideoProfileLandscape720p - - - - - - - VideoProfileLandscape720p3 - - - - - - - VideoProfileLandscape720p5 - - - - - - - VideoProfileLandscape720p6 - - - - - - - VideoProfileLandscape1080p - - - - - - - VideoProfileLandscape1080p3 - - - - - - - VideoProfileLandscape1080p5 - - - - - - - VideoProfileLandscape1440p - - - - - - - VideoProfileLandscape1440p2 - - - - - - - VideoProfileLandscape4k - - - - - - - VideoProfileLandscape4k3 - - - - - - - VideoProfilePortrait120p - - - - - - - VideoProfilePortrait120p3 - - - - - - - VideoProfilePortrait180p - - - - - - - VideoProfilePortrait180p3 - - - - - - - VideoProfilePortrait180p4 - - - - - - - VideoProfilePortrait240p - - - - - - - VideoProfilePortrait240p3 - - - - - - - VideoProfilePortrait240p4 - - - - - - - VideoProfilePortrait360p - - - - - - - VideoProfilePortrait360p3 - - - - - - - VideoProfilePortrait360p4 - - - - - - - VideoProfilePortrait360p6 - - - - - - - VideoProfilePortrait360p7 - - - - - - - VideoProfilePortrait360p8 - - - - - - - VideoProfilePortrait360p9 - - - - - - - VideoProfilePortrait360p10 - - - - - - - VideoProfilePortrait360p11 - - - - - - - VideoProfilePortrait480p - - - - - - - VideoProfilePortrait480p3 - - - - - - - VideoProfilePortrait480p4 - - - - - - - VideoProfilePortrait480p6 - - - - - - - VideoProfilePortrait480p8 - - - - - - - VideoProfilePortrait480p9 - - - - - - - VideoProfilePortrait480p10 - - - - - - - VideoProfilePortrait720p - - - - + + + + VideoViewSetupMode + + + + + + + VideoViewSetupReplace + + + + + + + VideoViewSetupAdd + + + + + + + VideoViewSetupRemove + + + + - VideoProfilePortrait720p3 + VideoTranscoderError - + - VideoProfilePortrait720p5 + VtErrOk - + - VideoProfilePortrait720p6 + VtErrVideoSourceNotReady - + - VideoProfilePortrait1080p + VtErrInvalidVideoSourceType - + - VideoProfilePortrait1080p3 + VtErrInvalidImagePath - + - VideoProfilePortrait1080p5 + VtErrUnsupportImageFormat - + - VideoProfilePortrait1440p + VtErrInvalidLayout - + - VideoProfilePortrait1440p2 + VtErrInternal - + - VideoProfilePortrait4k + VoiceAiTunerType - + - VideoProfilePortrait4k3 + VoiceAiTunerMatureMale - + - VideoProfileDefault + VoiceAiTunerFreshMale - - - - VideoViewSetupMode - - - - - - - VideoViewSetupReplace - - - - - - - VideoViewSetupAdd - - - - - - - VideoViewSetupRemove - - - - + - VideoTranscoderError + VoiceAiTunerElegantFemale - + - VtErrOk + VoiceAiTunerSweetFemale - + - VtErrVideoSourceNotReady + VoiceAiTunerWarmMaleSinging - + - VtErrInvalidVideoSourceType + VoiceAiTunerGentleFemaleSinging - + - VtErrInvalidImagePath + VoiceAiTunerHuskyMaleSinging - + - VtErrUnsupportImageFormat + VoiceAiTunerWarmElegantFemaleSinging - + - VtErrInvalidLayout + VoiceAiTunerPowerfulMaleSinging - + - VtErrInternal + VoiceAiTunerDreamyFemaleSinging diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap index 7408c54b4a8..96fafab5e72 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap @@ -1911,6 +1911,13 @@ + + + + enableVoiceAITuner + + + @@ -2673,31 +2680,31 @@ - + - onExtensionEvent + onExtensionEventWithContext - + - onExtensionStarted + onExtensionStartedWithContext - + - onExtensionStopped + onExtensionStoppedWithContext - + - onExtensionError + onExtensionErrorWithContext @@ -2772,20 +2779,6 @@ - - - - setEncryptionMode - - - - - - - setEncryptionSecret - - - @@ -3278,6 +3271,13 @@ + + + + destroyMusicPlayer + + + @@ -3390,90 +3390,6 @@ - - - - MusicCacheStatusType - - - - - - - musicCacheStatusTypeCached - - - - - - - musicCacheStatusTypeCaching - - - - - - - MusicContentCenterStateReason - - - - - - - kMusicContentCenterReasonOk - - - - - - - kMusicContentCenterReasonError - - - - - - - kMusicContentCenterReasonGateway - - - - - - - kMusicContentCenterReasonPermissionAndResource - - - - - - - kMusicContentCenterReasonInternalDataParse - - - - - - - kMusicContentCenterReasonMusicLoading - - - - - - - kMusicContentCenterReasonMusicDecryption - - - - - - - kMusicContentCenterReasonHttpInternalError - - - @@ -3593,6 +3509,13 @@ + + + + setPlayMode + + + @@ -4966,6 +4889,13 @@ + + + + ExtensionContext + + + @@ -5472,6 +5402,48 @@ + + + + AlphaStitchMode + + + + + + + noAlphaStitch + + + + + + + alphaStitchUp + + + + + + + alphaStitchBelow + + + + + + + alphaStitchLeft + + + + + + + alphaStitchRight + + + @@ -8678,6 +8650,13 @@ + + + + localVideoStreamReasonScreenCaptureDisplayDisconnected + + + @@ -9448,6 +9427,118 @@ + + + + MusicCacheStatusType + + + + + + + musicCacheStatusTypeCached + + + + + + + musicCacheStatusTypeCaching + + + + + + + MusicContentCenterStateReason + + + + + + + kMusicContentCenterReasonOk + + + + + + + kMusicContentCenterReasonError + + + + + + + kMusicContentCenterReasonGateway + + + + + + + kMusicContentCenterReasonPermissionAndResource + + + + + + + kMusicContentCenterReasonInternalDataParse + + + + + + + kMusicContentCenterReasonMusicLoading + + + + + + + kMusicContentCenterReasonMusicDecryption + + + + + + + kMusicContentCenterReasonHttpInternalError + + + + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -10722,6 +10813,13 @@ + + + + applicationScenario1v1 + + + @@ -11380,591 +11478,164 @@ - - - - VideoProfileType - - - - - - - videoProfileLandscape120p - - - - - - - videoProfileLandscape120p3 - - - - - - - videoProfileLandscape180p - - - - + - videoProfileLandscape180p3 + VideoViewSetupMode - + - videoProfileLandscape180p4 + videoViewSetupReplace - + - videoProfileLandscape240p + videoViewSetupAdd - + - videoProfileLandscape240p3 + videoViewSetupRemove - + - videoProfileLandscape240p4 + VideoTranscoderError - + - videoProfileLandscape360p + vtErrOk - + - videoProfileLandscape360p3 + vtErrVideoSourceNotReady - + - videoProfileLandscape360p4 + vtErrInvalidVideoSourceType - + - videoProfileLandscape360p6 + vtErrInvalidImagePath - + - videoProfileLandscape360p7 + vtErrUnsupportImageFormat - + - videoProfileLandscape360p8 + vtErrInvalidLayout - + - videoProfileLandscape360p9 + vtErrInternal - + - videoProfileLandscape360p10 + VoiceAiTunerType - + - videoProfileLandscape360p11 + voiceAiTunerMatureMale - + - videoProfileLandscape480p + voiceAiTunerFreshMale - + - videoProfileLandscape480p3 + voiceAiTunerElegantFemale - + - videoProfileLandscape480p4 + voiceAiTunerSweetFemale - + - videoProfileLandscape480p6 + voiceAiTunerWarmMaleSinging - + - videoProfileLandscape480p8 + voiceAiTunerGentleFemaleSinging - + - videoProfileLandscape480p9 + voiceAiTunerHuskyMaleSinging - + - videoProfileLandscape480p10 + voiceAiTunerWarmElegantFemaleSinging - + - videoProfileLandscape720p + voiceAiTunerPowerfulMaleSinging - + - videoProfileLandscape720p3 - - - - - - - videoProfileLandscape720p5 - - - - - - - videoProfileLandscape720p6 - - - - - - - videoProfileLandscape1080p - - - - - - - videoProfileLandscape1080p3 - - - - - - - videoProfileLandscape1080p5 - - - - - - - videoProfileLandscape1440p - - - - - - - videoProfileLandscape1440p2 - - - - - - - videoProfileLandscape4k - - - - - - - videoProfileLandscape4k3 - - - - - - - videoProfilePortrait120p - - - - - - - videoProfilePortrait120p3 - - - - - - - videoProfilePortrait180p - - - - - - - videoProfilePortrait180p3 - - - - - - - videoProfilePortrait180p4 - - - - - - - videoProfilePortrait240p - - - - - - - videoProfilePortrait240p3 - - - - - - - videoProfilePortrait240p4 - - - - - - - videoProfilePortrait360p - - - - - - - videoProfilePortrait360p3 - - - - - - - videoProfilePortrait360p4 - - - - - - - videoProfilePortrait360p6 - - - - - - - videoProfilePortrait360p7 - - - - - - - videoProfilePortrait360p8 - - - - - - - videoProfilePortrait360p9 - - - - - - - videoProfilePortrait360p10 - - - - - - - videoProfilePortrait360p11 - - - - - - - videoProfilePortrait480p - - - - - - - videoProfilePortrait480p3 - - - - - - - videoProfilePortrait480p4 - - - - - - - videoProfilePortrait480p6 - - - - - - - videoProfilePortrait480p8 - - - - - - - videoProfilePortrait480p9 - - - - - - - videoProfilePortrait480p10 - - - - - - - videoProfilePortrait720p - - - - - - - videoProfilePortrait720p3 - - - - - - - videoProfilePortrait720p5 - - - - - - - videoProfilePortrait720p6 - - - - - - - videoProfilePortrait1080p - - - - - - - videoProfilePortrait1080p3 - - - - - - - videoProfilePortrait1080p5 - - - - - - - videoProfilePortrait1440p - - - - - - - videoProfilePortrait1440p2 - - - - - - - videoProfilePortrait4k - - - - - - - videoProfilePortrait4k3 - - - - - - - videoProfileDefault - - - - - - - VideoViewSetupMode - - - - - - - videoViewSetupReplace - - - - - - - videoViewSetupAdd - - - - - - - videoViewSetupRemove - - - - - - - VideoTranscoderError - - - - - - - vtErrOk - - - - - - - vtErrVideoSourceNotReady - - - - - - - vtErrInvalidVideoSourceType - - - - - - - vtErrInvalidImagePath - - - - - - - vtErrUnsupportImageFormat - - - - - - - vtErrInvalidLayout - - - - - - - vtErrInternal + voiceAiTunerDreamyFemaleSinging diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap index 31b09e1621f..6abda2d0f86 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -221,7 +221,7 @@ - AgoraBaseSpatialAudioKit + AgoraSpatialAudioKitBase @@ -11527,517 +11527,6 @@ - - - - AgoraVideoProfile - - - - - - - AgoraVideoProfileInvalid - - - - - - - AgoraVideoProfileLandscape120P - - - - - - - AgoraVideoProfileLandscape120P_3 - - - - - - - AgoraVideoProfileLandscape180P - - - - - - - AgoraVideoProfileLandscape180P_3 - - - - - - - AgoraVideoProfileLandscape180P_4 - - - - - - - AgoraVideoProfileLandscape240P - - - - - - - AgoraVideoProfileLandscape240P_3 - - - - - - - AgoraVideoProfileLandscape240P_4 - - - - - - - AgoraVideoProfileLandscape360P - - - - - - - AgoraVideoProfileLandscape360P_3 - - - - - - - AgoraVideoProfileLandscape360P_4 - - - - - - - AgoraVideoProfileLandscape360P_6 - - - - - - - AgoraVideoProfileLandscape360P_7 - - - - - - - AgoraVideoProfileLandscape360P_8 - - - - - - - AgoraVideoProfileLandscape360P_9 - - - - - - - AgoraVideoProfileLandscape360P_10 - - - - - - - AgoraVideoProfileLandscape360P_11 - - - - - - - AgoraVideoProfileLandscape480P - - - - - - - AgoraVideoProfileLandscape480P_3 - - - - - - - AgoraVideoProfileLandscape480P_4 - - - - - - - AgoraVideoProfileLandscape480P_6 - - - - - - - AgoraVideoProfileLandscape480P_8 - - - - - - - AgoraVideoProfileLandscape480P_9 - - - - - - - AgoraVideoProfileLandscape480P_10 - - - - - - - AgoraVideoProfileLandscape720P - - - - - - - AgoraVideoProfileLandscape720P_3 - - - - - - - AgoraVideoProfileLandscape720P_5 - - - - - - - AgoraVideoProfileLandscape720P_6 - - - - - - - AgoraVideoProfileLandscape1080P - - - - - - - AgoraVideoProfileLandscape1080P_3 - - - - - - - AgoraVideoProfileLandscape1080P_5 - - - - - - - AgoraVideoProfileLandscape1440P - - - - - - - AgoraVideoProfileLandscape1440P_2 - - - - - - - AgoraVideoProfileLandscape4K - - - - - - - AgoraVideoProfileLandscape4K_3 - - - - - - - AgoraVideoProfilePortrait120P - - - - - - - AgoraVideoProfilePortrait120P_3 - - - - - - - AgoraVideoProfilePortrait180P - - - - - - - AgoraVideoProfilePortrait180P_3 - - - - - - - AgoraVideoProfilePortrait180P_4 - - - - - - - AgoraVideoProfilePortrait240P - - - - - - - AgoraVideoProfilePortrait240P_3 - - - - - - - AgoraVideoProfilePortrait240P_4 - - - - - - - AgoraVideoProfilePortrait360P - - - - - - - AgoraVideoProfilePortrait360P_3 - - - - - - - AgoraVideoProfilePortrait360P_4 - - - - - - - AgoraVideoProfilePortrait360P_6 - - - - - - - AgoraVideoProfilePortrait360P_7 - - - - - - - AgoraVideoProfilePortrait360P_8 - - - - - - - AgoraVideoProfilePortrait360P_9 - - - - - - - AgoraVideoProfilePortrait360P_10 - - - - - - - AgoraVideoProfilePortrait360P_11 - - - - - - - AgoraVideoProfilePortrait480P - - - - - - - AgoraVideoProfilePortrait480P_3 - - - - - - - AgoraVideoProfilePortrait480P_4 - - - - - - - AgoraVideoProfilePortrait480P_6 - - - - - - - AgoraVideoProfilePortrait480P_8 - - - - - - - AgoraVideoProfilePortrait480P_9 - - - - - - - AgoraVideoProfilePortrait480P_10 - - - - - - - AgoraVideoProfilePortrait720P - - - - - - - AgoraVideoProfilePortrait720P_3 - - - - - - - AgoraVideoProfilePortrait720P_5 - - - - - - - AgoraVideoProfilePortrait720P_6 - - - - - - - AgoraVideoProfilePortrait1080P - - - - - - - AgoraVideoProfilePortrait1080P_3 - - - - - - - AgoraVideoProfilePortrait1080P_5 - - - - - - - AgoraVideoProfilePortrait1440P - - - - - - - AgoraVideoProfilePortrait1440P_2 - - - - - - - AgoraVideoProfilePortrait4K - - - - - - - AgoraVideoProfilePortrait4K_3 - - - - - - - AgoraVideoProfileDEFAULT - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap index 407da6ac82e..170af666800 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -199,7 +199,7 @@ - AgoraBaseSpatialAudioKit + AgoraSpatialAudioKitBase @@ -3137,6 +3137,13 @@ + + + + setCameraCapturerConfiguration + + + @@ -10965,517 +10972,6 @@ - - - - AgoraVideoProfile - - - - - - - AgoraVideoProfileInvalid - - - - - - - AgoraVideoProfileLandscape120P - - - - - - - AgoraVideoProfileLandscape120P_3 - - - - - - - AgoraVideoProfileLandscape180P - - - - - - - AgoraVideoProfileLandscape180P_3 - - - - - - - AgoraVideoProfileLandscape180P_4 - - - - - - - AgoraVideoProfileLandscape240P - - - - - - - AgoraVideoProfileLandscape240P_3 - - - - - - - AgoraVideoProfileLandscape240P_4 - - - - - - - AgoraVideoProfileLandscape360P - - - - - - - AgoraVideoProfileLandscape360P_3 - - - - - - - AgoraVideoProfileLandscape360P_4 - - - - - - - AgoraVideoProfileLandscape360P_6 - - - - - - - AgoraVideoProfileLandscape360P_7 - - - - - - - AgoraVideoProfileLandscape360P_8 - - - - - - - AgoraVideoProfileLandscape360P_9 - - - - - - - AgoraVideoProfileLandscape360P_10 - - - - - - - AgoraVideoProfileLandscape360P_11 - - - - - - - AgoraVideoProfileLandscape480P - - - - - - - AgoraVideoProfileLandscape480P_3 - - - - - - - AgoraVideoProfileLandscape480P_4 - - - - - - - AgoraVideoProfileLandscape480P_6 - - - - - - - AgoraVideoProfileLandscape480P_8 - - - - - - - AgoraVideoProfileLandscape480P_9 - - - - - - - AgoraVideoProfileLandscape480P_10 - - - - - - - AgoraVideoProfileLandscape720P - - - - - - - AgoraVideoProfileLandscape720P_3 - - - - - - - AgoraVideoProfileLandscape720P_5 - - - - - - - AgoraVideoProfileLandscape720P_6 - - - - - - - AgoraVideoProfileLandscape1080P - - - - - - - AgoraVideoProfileLandscape1080P_3 - - - - - - - AgoraVideoProfileLandscape1080P_5 - - - - - - - AgoraVideoProfileLandscape1440P - - - - - - - AgoraVideoProfileLandscape1440P_2 - - - - - - - AgoraVideoProfileLandscape4K - - - - - - - AgoraVideoProfileLandscape4K_3 - - - - - - - AgoraVideoProfilePortrait120P - - - - - - - AgoraVideoProfilePortrait120P_3 - - - - - - - AgoraVideoProfilePortrait180P - - - - - - - AgoraVideoProfilePortrait180P_3 - - - - - - - AgoraVideoProfilePortrait180P_4 - - - - - - - AgoraVideoProfilePortrait240P - - - - - - - AgoraVideoProfilePortrait240P_3 - - - - - - - AgoraVideoProfilePortrait240P_4 - - - - - - - AgoraVideoProfilePortrait360P - - - - - - - AgoraVideoProfilePortrait360P_3 - - - - - - - AgoraVideoProfilePortrait360P_4 - - - - - - - AgoraVideoProfilePortrait360P_6 - - - - - - - AgoraVideoProfilePortrait360P_7 - - - - - - - AgoraVideoProfilePortrait360P_8 - - - - - - - AgoraVideoProfilePortrait360P_9 - - - - - - - AgoraVideoProfilePortrait360P_10 - - - - - - - AgoraVideoProfilePortrait360P_11 - - - - - - - AgoraVideoProfilePortrait480P - - - - - - - AgoraVideoProfilePortrait480P_3 - - - - - - - AgoraVideoProfilePortrait480P_4 - - - - - - - AgoraVideoProfilePortrait480P_6 - - - - - - - AgoraVideoProfilePortrait480P_8 - - - - - - - AgoraVideoProfilePortrait480P_9 - - - - - - - AgoraVideoProfilePortrait480P_10 - - - - - - - AgoraVideoProfilePortrait720P - - - - - - - AgoraVideoProfilePortrait720P_3 - - - - - - - AgoraVideoProfilePortrait720P_5 - - - - - - - AgoraVideoProfilePortrait720P_6 - - - - - - - AgoraVideoProfilePortrait1080P - - - - - - - AgoraVideoProfilePortrait1080P_3 - - - - - - - AgoraVideoProfilePortrait1080P_5 - - - - - - - AgoraVideoProfilePortrait1440P - - - - - - - AgoraVideoProfilePortrait1440P_2 - - - - - - - AgoraVideoProfilePortrait4K - - - - - - - AgoraVideoProfilePortrait4K_3 - - - - - - - AgoraVideoProfileDEFAULT - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap index 2e159cba455..80eba449e27 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap @@ -1882,6 +1882,13 @@ + + + + enableVoiceAITuner + + + @@ -2636,31 +2643,31 @@ - + - onExtensionEvent + onExtensionEventWithContext - + - onExtensionStarted + onExtensionStartedWithContext - + - onExtensionStopped + onExtensionStoppedWithContext - + - onExtensionError + onExtensionErrorWithContext @@ -2749,20 +2756,6 @@ - - - - setEncryptionMode - - - - - - - setEncryptionSecret - - - @@ -3141,6 +3134,34 @@ + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -3183,6 +3204,20 @@ + + + + setPlayMode + + + + + + + destroyMusicPlayer + + + @@ -4737,6 +4772,13 @@ EncryptionConfig + + + + + ExtensionContext + + @@ -5223,6 +5265,48 @@ + + + + AlphaStitchMode + + + + + + + NoAlphaStitch + + + + + + + AlphaStitchUp + + + + + + + AlphaStitchBelow + + + + + + + AlphaStitchLeft + + + + + + + AlphaStitchRight + + + @@ -10676,6 +10760,13 @@ + + + + ApplicationScenario1v1 + + + @@ -11327,591 +11418,164 @@ - - - - VideoProfileType - - - - - - - VideoProfileLandscape120p - - - - - - - VideoProfileLandscape120p3 - - - - - - - VideoProfileLandscape180p - - - - - - - VideoProfileLandscape180p3 - - - - - - - VideoProfileLandscape180p4 - - - - - - - VideoProfileLandscape240p - - - - - - - VideoProfileLandscape240p3 - - - - - - - VideoProfileLandscape240p4 - - - - - - - VideoProfileLandscape360p - - - - - - - VideoProfileLandscape360p3 - - - - - - - VideoProfileLandscape360p4 - - - - - - - VideoProfileLandscape360p6 - - - - - - - VideoProfileLandscape360p7 - - - - - - - VideoProfileLandscape360p8 - - - - - - - VideoProfileLandscape360p9 - - - - - - - VideoProfileLandscape360p10 - - - - - - - VideoProfileLandscape360p11 - - - - - - - VideoProfileLandscape480p - - - - - - - VideoProfileLandscape480p3 - - - - - - - VideoProfileLandscape480p4 - - - - - - - VideoProfileLandscape480p6 - - - - - - - VideoProfileLandscape480p8 - - - - - - - VideoProfileLandscape480p9 - - - - - - - VideoProfileLandscape480p10 - - - - - - - VideoProfileLandscape720p - - - - - - - VideoProfileLandscape720p3 - - - - - - - VideoProfileLandscape720p5 - - - - - - - VideoProfileLandscape720p6 - - - - - - - VideoProfileLandscape1080p - - - - - - - VideoProfileLandscape1080p3 - - - - - - - VideoProfileLandscape1080p5 - - - - - - - VideoProfileLandscape1440p - - - - - - - VideoProfileLandscape1440p2 - - - - - - - VideoProfileLandscape4k - - - - - - - VideoProfileLandscape4k3 - - - - - - - VideoProfilePortrait120p - - - - - - - VideoProfilePortrait120p3 - - - - - - - VideoProfilePortrait180p - - - - - - - VideoProfilePortrait180p3 - - - - - - - VideoProfilePortrait180p4 - - - - - - - VideoProfilePortrait240p - - - - - - - VideoProfilePortrait240p3 - - - - - - - VideoProfilePortrait240p4 - - - - - - - VideoProfilePortrait360p - - - - - - - VideoProfilePortrait360p3 - - - - - - - VideoProfilePortrait360p4 - - - - - - - VideoProfilePortrait360p6 - - - - - - - VideoProfilePortrait360p7 - - - - - - - VideoProfilePortrait360p8 - - - - - - - VideoProfilePortrait360p9 - - - - - - - VideoProfilePortrait360p10 - - - - - - - VideoProfilePortrait360p11 - - - - - - - VideoProfilePortrait480p - - - - - - - VideoProfilePortrait480p3 - - - - - - - VideoProfilePortrait480p4 - - - - - - - VideoProfilePortrait480p6 - - - - - - - VideoProfilePortrait480p8 - - - - - - - VideoProfilePortrait480p9 - - - - - - - VideoProfilePortrait480p10 - - - - - - - VideoProfilePortrait720p - - - - + + + + VideoViewSetupMode + + + + + + + VideoViewSetupReplace + + + + + + + VideoViewSetupAdd + + + + + + + VideoViewSetupRemove + + + + - VideoProfilePortrait720p3 + VideoTranscoderError - + - VideoProfilePortrait720p5 + VtErrOk - + - VideoProfilePortrait720p6 + VtErrVideoSourceNotReady - + - VideoProfilePortrait1080p + VtErrInvalidVideoSourceType - + - VideoProfilePortrait1080p3 + VtErrInvalidImagePath - + - VideoProfilePortrait1080p5 + VtErrUnsupportImageFormat - + - VideoProfilePortrait1440p + VtErrInvalidLayout - + - VideoProfilePortrait1440p2 + VtErrInternal - + - VideoProfilePortrait4k + VoiceAiTunerType - + - VideoProfilePortrait4k3 + VoiceAiTunerMatureMale - + - VideoProfileDefault + VoiceAiTunerFreshMale - - - - VideoViewSetupMode - - - - - - - VideoViewSetupReplace - - - - - - - VideoViewSetupAdd - - - - - - - VideoViewSetupRemove - - - - + - VideoTranscoderError + VoiceAiTunerElegantFemale - + - VtErrOk + VoiceAiTunerSweetFemale - + - VtErrVideoSourceNotReady + VoiceAiTunerWarmMaleSinging - + - VtErrInvalidVideoSourceType + VoiceAiTunerGentleFemaleSinging - + - VtErrInvalidImagePath + VoiceAiTunerHuskyMaleSinging - + - VtErrUnsupportImageFormat + VoiceAiTunerWarmElegantFemaleSinging - + - VtErrInvalidLayout + VoiceAiTunerPowerfulMaleSinging - + - VtErrInternal + VoiceAiTunerDreamyFemaleSinging diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap index ab3978b9479..8480f2f4bbc 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap @@ -797,13 +797,7 @@ - - - - OpenWithCustomSource - - - + @@ -1960,6 +1954,13 @@ + + + + EnableVoiceAITuner + + + @@ -2457,24 +2458,10 @@ - - - - StartEchoTest [1/3] - - - - - - - StartEchoTest [2/3] - - - - StartEchoTest [3/3] + StartEchoTest @@ -2760,31 +2747,31 @@ - + - OnExtensionEvent + OnExtensionEventWithContext - + - OnExtensionStarted + OnExtensionStartedWithContext - + - OnExtensionStopped + OnExtensionStoppedWithContext - + - OnExtensionError + OnExtensionErrorWithContext @@ -2882,20 +2869,6 @@ - - - - SetEncryptionMode - - - - - - - SetEncryptionSecret - - - @@ -3597,6 +3570,13 @@ + + + + DestroyMusicPlayer + + + @@ -3639,6 +3619,13 @@ + + + + SetPlayMode + + + @@ -5029,6 +5016,13 @@ ExternalVideoFrame + + + + + ExtensionContext + + @@ -5545,6 +5539,48 @@ + + + + ALPHA_STITCH_MODE + + + + + + + NO_ALPHA_STITCH + + + + + + + ALPHA_STITCH_UP + + + + + + + ALPHA_STITCH_BELOW + + + + + + + ALPHA_STITCH_LEFT + + + + + + + ALPHA_STITCH_RIGHT + + + @@ -6833,6 +6869,13 @@ + + + + APPLICATION_SCENARIO_1V1 + + + @@ -9031,6 +9074,13 @@ + + + + LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED + + + @@ -9892,6 +9942,34 @@ + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -11957,591 +12035,164 @@ - - - - VIDEO_PROFILE_TYPE - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_7 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_11 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P_2 - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_120P - - - - - - - VIDEO_PROFILE_PORTRAIT_120P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_7 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_11 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P - - - - + - VIDEO_PROFILE_PORTRAIT_720P_3 + VIDEO_VIEW_SETUP_MODE - + - VIDEO_PROFILE_PORTRAIT_720P_5 + VIDEO_VIEW_SETUP_REPLACE - + - VIDEO_PROFILE_PORTRAIT_720P_6 + VIDEO_VIEW_SETUP_ADD - + - VIDEO_PROFILE_PORTRAIT_1080P + VIDEO_VIEW_SETUP_REMOVE - + - VIDEO_PROFILE_PORTRAIT_1080P_3 + VIDEO_TRANSCODER_ERROR - + - VIDEO_PROFILE_PORTRAIT_1080P_5 + VT_ERR_OK - + - VIDEO_PROFILE_PORTRAIT_1440P + VT_ERR_VIDEO_SOURCE_NOT_READY - + - VIDEO_PROFILE_PORTRAIT_1440P_2 + VT_ERR_INVALID_VIDEO_SOURCE_TYPE - + - VIDEO_PROFILE_PORTRAIT_4K + VT_ERR_INVALID_IMAGE_PATH - + - VIDEO_PROFILE_PORTRAIT_4K_3 + VT_ERR_UNSUPPORT_IMAGE_FORMAT - + - VIDEO_PROFILE_DEFAULT + VT_ERR_INVALID_LAYOUT - + - VIDEO_VIEW_SETUP_MODE + VT_ERR_INTERNAL - + - VIDEO_VIEW_SETUP_REPLACE + VOICE_AI_TUNER_TYPE - + - VIDEO_VIEW_SETUP_ADD + VOICE_AI_TUNER_MATURE_MALE - + - VIDEO_VIEW_SETUP_REMOVE + VOICE_AI_TUNER_FRESH_MALE - + - VIDEO_TRANSCODER_ERROR + VOICE_AI_TUNER_ELEGANT_FEMALE - + - VT_ERR_OK + VOICE_AI_TUNER_SWEET_FEMALE - + - VT_ERR_VIDEO_SOURCE_NOT_READY + VOICE_AI_TUNER_WARM_MALE_SINGING - + - VT_ERR_INVALID_VIDEO_SOURCE_TYPE + VOICE_AI_TUNER_GENTLE_FEMALE_SINGING - + - VT_ERR_INVALID_IMAGE_PATH + VOICE_AI_TUNER_HUSKY_MALE_SINGING - + - VT_ERR_UNSUPPORT_IMAGE_FORMAT + VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING - + - VT_ERR_INVALID_LAYOUT + VOICE_AI_TUNER_POWERFUL_MALE_SINGING - + - VT_ERR_INTERNAL + VOICE_AI_TUNER_DREAMY_FEMALE_SINGING diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-android.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-android.ditamap index 56baef0abb8..38c5a447f70 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-android.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-android.ditamap @@ -3,25 +3,24 @@ Keys RTC NG Android Links - - + - 音量类型 + 音频路由 - + - 视频属性 + 音量类型 - + - 计费示例 + 视频属性 diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-cpp.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-cpp.ditamap index 10e24eab522..28aaff82664 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-cpp.ditamap @@ -4,25 +4,24 @@ Keys RTC NG Windows Links - - + - 音量类型 + 音频路由 - + - 视频属性 + 音量类型 - + - 计费示例 + 视频属性 diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-electron.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-electron.ditamap index 4d4ad55ed18..1479630c116 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-electron.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-electron.ditamap @@ -18,13 +18,6 @@ - - - - 计费示例 - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-flutter.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-flutter.ditamap index 64f7cd11988..cff7fd5b5a0 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-flutter.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-flutter.ditamap @@ -3,7 +3,13 @@ Keys RTC NG Flutter Links - + + + + 音频路由 + + + @@ -25,13 +31,6 @@ - - - - 计费示例 - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-harmony.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-harmony.ditamap index 53cec3c4b60..7306c00e8b4 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-harmony.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-harmony.ditamap @@ -4,24 +4,23 @@ Keys RTC NG Android Links - - 音量类型 + 音频路由 - + - 视频属性 + 音量类型 - + - 计费示例 + 视频属性 diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-ios.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-ios.ditamap index 25f644a5e6f..909e190e4fe 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-ios.ditamap @@ -3,25 +3,24 @@ Keys RTC NG iOS Links - - + - 音量类型 + 音频路由 - + - 视频属性 + 音量类型 - + - 计费示例 + 视频属性 diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-rn.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-rn.ditamap index 29043204df6..834db554074 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-rn.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-rn.ditamap @@ -4,25 +4,24 @@ Keys RTC NG Windows Links - - + - 音量类型 + 音频路由 - + - 视频属性 + 音量类型 - + - 计费示例 + 视频属性 diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-unity.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-unity.ditamap index a1b8a88e0ee..f4c392d3080 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-unity.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-unity.ditamap @@ -4,7 +4,13 @@ Keys RTC NG Unity Links - + + + + 音频路由 + + + @@ -27,13 +33,6 @@ - - - - 计费示例 - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-unreal-blueprint.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-unreal-blueprint.ditamap index b5ad5da136f..51035654358 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-unreal-blueprint.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-unreal-blueprint.ditamap @@ -3,7 +3,13 @@ Keys RTC NG Unreal C++ Links - + + + + 音频路由 + + + @@ -25,13 +31,6 @@ - - - - 计费示例 - - - diff --git a/dita/RTC-NG/config/keys-rtc-ng-links-unreal-cpp.ditamap b/dita/RTC-NG/config/keys-rtc-ng-links-unreal-cpp.ditamap index a7998cd7f64..3f60cdf1404 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-links-unreal-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-links-unreal-cpp.ditamap @@ -3,7 +3,13 @@ Keys RTC NG Unreal C++ Links - + + + + 音频路由 + + + @@ -25,13 +31,6 @@ - - - - 计费示例 - - - diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index 7d952b690a6..b49a666bf6c 100644 --- a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap +++ b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap @@ -2395,7 +2395,7 @@ - + diff --git a/en-US/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita b/en-US/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita index 646fd7e580e..f65990908ac 100644 --- a/en-US/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita +++ b/en-US/dita/RTC-NG/API/api_irtcengine_enablevoiceaituner.dita @@ -17,10 +17,11 @@ - (int)enableVoiceAITuner:(bool)enabled type:(AgoraVoiceAITunerType)type NS_SWIFT_NAME(enableVoiceAITuner(_:type:)); virtual int enableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type) = 0; - - - -

          + abstract enableVoiceAITuner(enabled: boolean, type: VoiceAiTunerType): number; + public abstract int EnableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type); + abstract enableVoiceAITuner(enabled: boolean, type: VoiceAiTunerType): number; + Future<void> enableVoiceAITuner( + {required bool enabled, required VoiceAiTunerType type});

        diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionerrorwithcontext.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionerrorwithcontext.dita index 2dc7f13c286..468d0e47c27 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionerrorwithcontext.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionerrorwithcontext.dita @@ -24,22 +24,19 @@ (void)message; } DECLARE_DYNAMIC_MULTICAST_DELEGATE_FourParams(FOnExtensionError, FString, provider, FString, extension, int, error, FString, message); - onExtensionError?( - provider: string, - extension: string, + onExtensionErrorWithContext?( + context: ExtensionContext, error: number, message: string ): void; - public virtual void OnExtensionError(string provider, string extension, int error, string message) { } - onExtensionError?( - provider: string, - extension: string, + public virtual void OnExtensionErrorWithContext(ExtensionContext context, int error, string message){} + onExtensionErrorWithContext?( + context: ExtensionContext, error: number, message: string ): void; - final void Function( - String provider, String extension, int error, String message)? - onExtensionError; + final void Function(ExtensionContext context, int error, String message)? + onExtensionErrorWithContext;

        diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensioneventwithcontext.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensioneventwithcontext.dita index 05996359cae..f9bcb7d0258 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensioneventwithcontext.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensioneventwithcontext.dita @@ -24,22 +24,19 @@ (void)value; } DECLARE_DYNAMIC_MULTICAST_DELEGATE_FourParams(FOnExtensionEvent, FString, provider, FString, extension, FString, key, FString, value); - onExtensionEvent?( - provider: string, - extension: string, + onExtensionEventWithContext?( + context: ExtensionContext, key: string, value: string ): void; - public virtual void OnExtensionEvent(string provider, string extension, string key, string value) { } - onExtensionEvent?( - provider: string, - extension: string, + public virtual void OnExtensionEventWithContext(ExtensionContext context, string key, string value){} + onExtensionEventWithContext?( + context: ExtensionContext, key: string, value: string ): void; - final void Function( - String provider, String extName, String key, String value)? - onExtensionEvent; + final void Function(ExtensionContext context, String key, String value)? + onExtensionEventWithContext;

        diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstartedwithcontext.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstartedwithcontext.dita index a2af322073b..808ed6f91da 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstartedwithcontext.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstartedwithcontext.dita @@ -20,10 +20,10 @@ (void)context; } DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnExtensionStarted, FString, provider, FString, extension); - onExtensionStarted?(provider: string, extension: string): void; - public virtual void OnExtensionStarted(string provider, string extension) { } - onExtensionStarted?(provider: string, extension: string): void; - final void Function(String provider, String extName)? onExtensionStarted; + onExtensionStartedWithContext?(context: ExtensionContext): void; + public virtual void OnExtensionEventWithContext(ExtensionContext context, string key, string value){ } + onExtensionStartedWithContext?(context: ExtensionContext): void; + final void Function(ExtensionContext context)? onExtensionStartedWithContext;

        diff --git a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstoppedwithcontext.dita b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstoppedwithcontext.dita index 6d68d544ea2..da58558e123 100644 --- a/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstoppedwithcontext.dita +++ b/en-US/dita/RTC-NG/API/callback_irtcengineeventhandler_onextensionstoppedwithcontext.dita @@ -20,10 +20,10 @@ (void)context; } DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnExtensionStopped, FString, provider, FString, extension); - onExtensionStopped?(provider: string, extension: string): void; - public virtual void OnExtensionStopped(string provider, string extension) { } - onExtensionStopped?(provider: string, extension: string): void; - final void Function(String provider, String extName)? onExtensionStopped; + onExtensionStoppedWithContext?(context: ExtensionContext): void; + public virtual void OnExtensionStoppedWithContext(ExtensionContext context){ } + onExtensionStoppedWithContext?(context: ExtensionContext): void; + final void Function(ExtensionContext context)? onExtensionStoppedWithContext;

        diff --git a/en-US/dita/RTC-NG/API/class_advanceoptions.dita b/en-US/dita/RTC-NG/API/class_advanceoptions.dita index 3cf02ad43c8..6b2f460e793 100644 --- a/en-US/dita/RTC-NG/API/class_advanceoptions.dita +++ b/en-US/dita/RTC-NG/API/class_advanceoptions.dita @@ -68,41 +68,52 @@ struct FAdvanceOptions { export class AdvanceOptions { encodingPreference?: EncodingPreference; compressionPreference?: CompressionPreference; + encodeAlpha?: boolean; } public class AdvanceOptions - { - public ENCODING_PREFERENCE encodingPreference { set; get; } - public COMPRESSION_PREFERENCE compressionPreference { set; get; } + { + public ENCODING_PREFERENCE encodingPreference; + public COMPRESSION_PREFERENCE compressionPreference; + public bool encodeAlpha; - public AdvanceOptions() - { - encodingPreference = ENCODING_PREFERENCE.PREFER_AUTO; - compressionPreference = COMPRESSION_PREFERENCE.PREFER_LOW_LATENCY; - } + public AdvanceOptions() + { + this.encodingPreference = ENCODING_PREFERENCE.PREFER_AUTO; + this.compressionPreference = COMPRESSION_PREFERENCE.PREFER_LOW_LATENCY; + this.encodeAlpha = false; + } - public AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference) - { - encodingPreference = encoding_preference; - compressionPreference = compression_preference; - } - } + public AdvanceOptions(ENCODING_PREFERENCE encoding_preference, COMPRESSION_PREFERENCE compression_preference, bool encode_alpha) + { + this.encodingPreference = encoding_preference; + this.compressionPreference = compression_preference; + this.encodeAlpha = encode_alpha; + } + + } export class AdvanceOptions { encodingPreference?: EncodingPreference; compressionPreference?: CompressionPreference; + encodeAlpha?: boolean; } - class AdvanceOptions { - const AdvanceOptions({this.encodingPreference, this.compressionPreference}); + @JsonSerializable(explicitToJson: true, includeIfNull: false) +class AdvanceOptions { + const AdvanceOptions( + {this.encodingPreference, this.compressionPreference, this.encodeAlpha}); - @JsonKey(name: 'encodingPreference') + @JsonKey(name: 'encodingPreference') final EncodingPreference? encodingPreference; - @JsonKey(name: 'compressionPreference') + @JsonKey(name: 'compressionPreference') final CompressionPreference? compressionPreference; - factory AdvanceOptions.fromJson(Map<String, dynamic> json) => + @JsonKey(name: 'encodeAlpha') + final bool? encodeAlpha; + + factory AdvanceOptions.fromJson(Map<String, dynamic> json) => _$AdvanceOptionsFromJson(json); - Map<String, dynamic> toJson() => _$AdvanceOptionsToJson(this); + Map<String, dynamic> toJson() => _$AdvanceOptionsToJson(this); }

        diff --git a/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita b/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita index 3bc6d81c316..bb87752b55d 100644 --- a/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita +++ b/en-US/dita/RTC-NG/API/class_channelmediaoptions.dita @@ -5,7 +5,7 @@ The channel media options.
        -

        +

        public class ChannelMediaOptions { public Boolean publishCameraTrack; public Boolean publishSecondaryCameraTrack; @@ -343,6 +343,8 @@ struct FChannelMediaOptions publishTranscodedVideoTrack?: boolean; + publishLipSyncTrack?: boolean; + autoSubscribeAudio?: boolean; autoSubscribeVideo?: boolean; @@ -391,6 +393,7 @@ struct FChannelMediaOptions public Optional<bool> publishMediaPlayerAudioTrack = new Optional<bool>(); public Optional<bool> publishMediaPlayerVideoTrack = new Optional<bool>(); public Optional<bool> publishTranscodedVideoTrack = new Optional<bool>(); + public Optional<bool> publishLipSyncTrack = new Optional<bool>(); public Optional<bool> autoSubscribeAudio = new Optional<bool>(); public Optional<bool> autoSubscribeVideo = new Optional<bool>(); public Optional<bool> enableAudioRecordingOrPlayout = new Optional<bool>(); @@ -442,6 +445,8 @@ struct FChannelMediaOptions publishTranscodedVideoTrack?: boolean; + publishLipSyncTrack?: boolean; + autoSubscribeAudio?: boolean; autoSubscribeVideo?: boolean; @@ -491,6 +496,8 @@ class ChannelMediaOptions { this.publishMediaPlayerAudioTrack, this.publishMediaPlayerVideoTrack, this.publishTranscodedVideoTrack, + this.publishMixedAudioTrack, + this.publishLipSyncTrack, this.autoSubscribeAudio, this.autoSubscribeVideo, this.enableAudioRecordingOrPlayout, @@ -506,117 +513,755 @@ class ChannelMediaOptions { this.publishRhythmPlayerTrack, this.isInteractiveAudience, this.customVideoTrackId, - this.isAudioFilterable}); + this.isAudioFilterable, + this.parameters}); - @JsonKey(name: 'publishCameraTrack') + @JsonKey(name: 'publishCameraTrack') final bool? publishCameraTrack; - @JsonKey(name: 'publishSecondaryCameraTrack') + @JsonKey(name: 'publishSecondaryCameraTrack') final bool? publishSecondaryCameraTrack; - @JsonKey(name: 'publishThirdCameraTrack') + @JsonKey(name: 'publishThirdCameraTrack') final bool? publishThirdCameraTrack; - @JsonKey(name: 'publishFourthCameraTrack') + @JsonKey(name: 'publishFourthCameraTrack') final bool? publishFourthCameraTrack; - @JsonKey(name: 'publishMicrophoneTrack') + @JsonKey(name: 'publishMicrophoneTrack') final bool? publishMicrophoneTrack; - @JsonKey(name: 'publishScreenCaptureVideo') + @JsonKey(name: 'publishScreenCaptureVideo') final bool? publishScreenCaptureVideo; - @JsonKey(name: 'publishScreenCaptureAudio') + @JsonKey(name: 'publishScreenCaptureAudio') final bool? publishScreenCaptureAudio; - @JsonKey(name: 'publishScreenTrack') + @JsonKey(name: 'publishScreenTrack') final bool? publishScreenTrack; - @JsonKey(name: 'publishSecondaryScreenTrack') + @JsonKey(name: 'publishSecondaryScreenTrack') final bool? publishSecondaryScreenTrack; - @JsonKey(name: 'publishThirdScreenTrack') + @JsonKey(name: 'publishThirdScreenTrack') final bool? publishThirdScreenTrack; - @JsonKey(name: 'publishFourthScreenTrack') + @JsonKey(name: 'publishFourthScreenTrack') final bool? publishFourthScreenTrack; - @JsonKey(name: 'publishCustomAudioTrack') + @JsonKey(name: 'publishCustomAudioTrack') final bool? publishCustomAudioTrack; - @JsonKey(name: 'publishCustomAudioTrackId') + @JsonKey(name: 'publishCustomAudioTrackId') final int? publishCustomAudioTrackId; - @JsonKey(name: 'publishCustomVideoTrack') + @JsonKey(name: 'publishCustomVideoTrack') final bool? publishCustomVideoTrack; - @JsonKey(name: 'publishEncodedVideoTrack') + @JsonKey(name: 'publishEncodedVideoTrack') final bool? publishEncodedVideoTrack; - @JsonKey(name: 'publishMediaPlayerAudioTrack') + @JsonKey(name: 'publishMediaPlayerAudioTrack') final bool? publishMediaPlayerAudioTrack; - @JsonKey(name: 'publishMediaPlayerVideoTrack') + @JsonKey(name: 'publishMediaPlayerVideoTrack') final bool? publishMediaPlayerVideoTrack; - @JsonKey(name: 'publishTranscodedVideoTrack') + @JsonKey(name: 'publishTranscodedVideoTrack') final bool? publishTranscodedVideoTrack; - @JsonKey(name: 'autoSubscribeAudio') + @JsonKey(name: 'publishMixedAudioTrack') + final bool? publishMixedAudioTrack; + + @JsonKey(name: 'autoSubscribeAudio') final bool? autoSubscribeAudio; - @JsonKey(name: 'autoSubscribeVideo') + @JsonKey(name: 'autoSubscribeVideo') final bool? autoSubscribeVideo; - @JsonKey(name: 'enableAudioRecordingOrPlayout') + @JsonKey(name: 'enableAudioRecordingOrPlayout') final bool? enableAudioRecordingOrPlayout; - @JsonKey(name: 'publishMediaPlayerId') + @JsonKey(name: 'publishMediaPlayerId') final int? publishMediaPlayerId; - @JsonKey(name: 'clientRoleType') + @JsonKey(name: 'clientRoleType') final ClientRoleType? clientRoleType; - @JsonKey(name: 'audienceLatencyLevel') + @JsonKey(name: 'audienceLatencyLevel') final AudienceLatencyLevelType? audienceLatencyLevel; - @JsonKey(name: 'defaultVideoStreamType') + @JsonKey(name: 'defaultVideoStreamType') final VideoStreamType? defaultVideoStreamType; - @JsonKey(name: 'channelProfile') + @JsonKey(name: 'channelProfile') final ChannelProfileType? channelProfile; - @JsonKey(name: 'audioDelayMs') + @JsonKey(name: 'audioDelayMs') final int? audioDelayMs; - @JsonKey(name: 'mediaPlayerAudioDelayMs') + @JsonKey(name: 'mediaPlayerAudioDelayMs') final int? mediaPlayerAudioDelayMs; - @JsonKey(name: 'token') + @JsonKey(name: 'token') final String? token; - @JsonKey(name: 'enableBuiltInMediaEncryption') + @JsonKey(name: 'enableBuiltInMediaEncryption') final bool? enableBuiltInMediaEncryption; - @JsonKey(name: 'publishRhythmPlayerTrack') + @JsonKey(name: 'publishRhythmPlayerTrack') final bool? publishRhythmPlayerTrack; - @JsonKey(name: 'isInteractiveAudience') + @JsonKey(name: 'isInteractiveAudience') final bool? isInteractiveAudience; - @JsonKey(name: 'customVideoTrackId') + @JsonKey(name: 'customVideoTrackId') final int? customVideoTrackId; - @JsonKey(name: 'isAudioFilterable') + @JsonKey(name: 'isAudioFilterable') final bool? isAudioFilterable; - factory ChannelMediaOptions.fromJson(Map<String, dynamic> json) => + @JsonKey(name: 'parameters') + final String? parameters; + + factory ChannelMediaOptions.fromJson(Map<String, dynamic> json) => _$ChannelMediaOptionsFromJson(json); - Map<String, dynamic> toJson() => _$ChannelMediaOptionsToJson(this); + Map<String, dynamic> toJson() => _$ChannelMediaOptionsToJson(this); }

        -
        +

        + public class ChannelMediaOptions { + public Boolean publishCameraTrack; + public Boolean publishSecondaryCameraTrack; + public Boolean publishThirdCameraTrack; + public Boolean publishFourthCameraTrack; + public Boolean publishMicrophoneTrack; + public Boolean publishScreenCaptureVideo; + public Boolean publishScreenCaptureAudio; + public Boolean publishCustomAudioTrack; + public Integer publishCustomAudioTrackId; + public Boolean publishCustomVideoTrack; + public Boolean publishEncodedVideoTrack; + public Boolean publishMediaPlayerAudioTrack; + public Boolean publishMediaPlayerVideoTrack; + public Boolean publishTranscodedVideoTrack; + public Boolean publishLipSyncTrack; + public Boolean autoSubscribeAudio; + public Boolean autoSubscribeVideo; + public Boolean enableAudioRecordingOrPlayout; + public Integer publishMediaPlayerId; + public Integer clientRoleType; + public Integer audienceLatencyLevel; + public Integer defaultVideoStreamType; + public Integer channelProfile; + public Integer mediaPlayerAudioDelayMs; + public String token; + public Boolean enableBuiltInMediaEncryption; + public Boolean publishRhythmPlayerTrack; + public Boolean isInteractiveAudience; + public Integer customVideoTrackId; + 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() { + } + } + __attribute__((visibility("default"))) @interface AgoraRtcChannelMediaOptions : NSObject + @property(assign, nonatomic) BOOL publishCameraTrack; + @property(assign, nonatomic) BOOL publishSecondaryCameraTrack; + @property(assign, nonatomic) BOOL publishMicrophoneTrack; + #if TARGET_OS_IPHONE + @property(assign, nonatomic) BOOL publishScreenCaptureVideo; + @property(assign, nonatomic) BOOL publishScreenCaptureAudio; + #elif TARGET_OS_MAC + @property(assign, nonatomic) BOOL publishThirdCameraTrack; + @property(assign, nonatomic) BOOL publishFourthCameraTrack; + @property(assign, nonatomic) BOOL publishScreenTrack; + @property(assign, nonatomic) BOOL publishSecondaryScreenTrack; + @property(assign, nonatomic) BOOL publishThirdScreenTrack; + @property(assign, nonatomic) BOOL publishFourthScreenTrack; + #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; + @property(assign, nonatomic) BOOL publishMediaPlayerVideoTrack; + @property(assign, nonatomic) BOOL publishTranscodedVideoTrack; + @property(assign, nonatomic) BOOL publishLipSyncTrack; + @property(assign, nonatomic) BOOL autoSubscribeAudio; + @property(assign, nonatomic) BOOL autoSubscribeVideo; + @property(assign, nonatomic) BOOL enableAudioRecordingOrPlayout; + @property(assign, nonatomic) NSInteger publishMediaPlayerId; + @property(assign, nonatomic) AgoraClientRole clientRoleType; + @property(assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel; + @property(assign, nonatomic) AgoraVideoStreamType defaultVideoStreamType; + @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; + Optional<bool> publishSecondaryCameraTrack; + 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; + #else + Optional<bool> publishScreenTrack; + Optional<bool> publishSecondaryScreenTrack; + Optional<bool> publishThirdScreenTrack; + Optional<bool> publishFourthScreenTrack; + #endif + + Optional<bool> publishCustomAudioTrack; + Optional<int> publishCustomAudioTrackId; + Optional<bool> publishCustomVideoTrack; + Optional<bool> publishEncodedVideoTrack; + Optional<bool> publishMediaPlayerAudioTrack; + Optional<bool> publishMediaPlayerVideoTrack; + Optional<bool> publishTranscodedVideoTrack; + Optional<bool> publishLipSyncTrack; + Optional<bool> autoSubscribeAudio; + Optional<bool> autoSubscribeVideo; + Optional<bool> enableAudioRecordingOrPlayout; + Optional<int> publishMediaPlayerId; + Optional<CLIENT_ROLE_TYPE> clientRoleType; + Optional<AUDIENCE_LATENCY_LEVEL_TYPE> audienceLatencyLevel; + Optional<VIDEO_STREAM_TYPE> defaultVideoStreamType; + Optional<CHANNEL_PROFILE_TYPE> channelProfile; + Optional<const char*> token; + Optional<bool> enableBuiltInMediaEncryption; + Optional<bool> publishRhythmPlayerTrack; + Optional<bool> isInteractiveAudience; + + Optional<video_track_id_t> customVideoTrackId; + + Optional<bool> isAudioFilterable; + + ChannelMediaOptions() {} + ~ChannelMediaOptions() {} + USTRUCT(BlueprintType) + struct FChannelMediaOptions + { + GENERATED_BODY() + + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishCameraTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishSecondaryCameraTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishMicrophoneTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishScreenCaptureVideo; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishScreenCaptureAudio; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishScreenTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishSecondaryScreenTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishCustomAudioTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool publishCustomAudioTrackId_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int publishCustomAudioTrackId; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishCustomVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishEncodedVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishMediaPlayerAudioTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishMediaPlayerVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishTranscodedVideoTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL autoSubscribeAudio; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL autoSubscribeVideo; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL enableAudioRecordingOrPlayout; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool publishMediaPlayerId_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int publishMediaPlayerId; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool clientRoleType_SetValue = true; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + ECLIENT_ROLE_TYPE clientRoleType = ECLIENT_ROLE_TYPE::CLIENT_ROLE_BROADCASTER; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool audienceLatencyLevel_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + EAUDIENCE_LATENCY_LEVEL_TYPE audienceLatencyLevel; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool defaultVideoStreamType_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + EVIDEO_STREAM_TYPE defaultVideoStreamType; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool channelProfile_SetValue = true; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + ECHANNEL_PROFILE_TYPE channelProfile = ECHANNEL_PROFILE_TYPE::CHANNEL_PROFILE_LIVE_BROADCASTING; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool audioDelayMs_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int audioDelayMs; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool mediaPlayerAudioDelayMs_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int mediaPlayerAudioDelayMs; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool token_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + FString token; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL enableBuiltInMediaEncryption; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL publishRhythmPlayerTrack; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL isInteractiveAudience; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + bool customVideoTrackId_SetValue; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + int64 customVideoTrackId; + UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ChannelMediaOptions") + AGORAOPTIONAL isAudioFilterable; + }; + struct ChannelMediaOptions { + 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; + #else + Optional<bool> publishScreenTrack; + Optional<bool> publishSecondaryScreenTrack; + #endif + + Optional<bool> publishCustomAudioTrack; + Optional<int> publishCustomAudioTrackId; + Optional<bool> publishCustomVideoTrack; + Optional<bool> publishEncodedVideoTrack; + Optional<bool> publishMediaPlayerAudioTrack; + Optional<bool> publishMediaPlayerVideoTrack; + Optional<bool> publishTranscodedVideoTrack; + Optional<bool> autoSubscribeAudio; + Optional<bool> autoSubscribeVideo; + Optional<bool> enableAudioRecordingOrPlayout; + Optional<int> publishMediaPlayerId; + Optional<CLIENT_ROLE_TYPE> clientRoleType; + Optional<AUDIENCE_LATENCY_LEVEL_TYPE> audienceLatencyLevel; + Optional<VIDEO_STREAM_TYPE> defaultVideoStreamType; + Optional<CHANNEL_PROFILE_TYPE> channelProfile; + Optional<const char*> token; + 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 + { + public Optional<bool> publishCameraTrack = new Optional<bool>(); + public Optional<bool> publishSecondaryCameraTrack = new Optional<bool>(); + public Optional<bool> publishThirdCameraTrack = new Optional<bool>(); + public Optional<bool> publishFourthCameraTrack = new Optional<bool>(); + public Optional<bool> publishMicrophoneTrack = new Optional<bool>(); + public Optional<bool> publishScreenCaptureVideo = new Optional<bool>(); + public Optional<bool> publishScreenCaptureAudio = new Optional<bool>(); + public Optional<bool> publishScreenTrack = new Optional<bool>(); + public Optional<bool> publishSecondaryScreenTrack = new Optional<bool>(); + public Optional<bool> publishThirdScreenTrack = new Optional<bool>(); + public Optional<bool> publishFourthScreenTrack = new Optional<bool>(); + public Optional<bool> publishCustomAudioTrack = new Optional<bool>(); + public Optional<int> publishCustomAudioTrackId = new Optional<int>(); + public Optional<bool> publishCustomVideoTrack = new Optional<bool>(); + public Optional<bool> publishEncodedVideoTrack = new Optional<bool>(); + public Optional<bool> publishMediaPlayerAudioTrack = new Optional<bool>(); + public Optional<bool> publishMediaPlayerVideoTrack = new Optional<bool>(); + public Optional<bool> publishTranscodedVideoTrack = new Optional<bool>(); + public Optional<bool> publishLipSyncTrack = new Optional<bool>(); + public Optional<bool> autoSubscribeAudio = new Optional<bool>(); + public Optional<bool> autoSubscribeVideo = new Optional<bool>(); + public Optional<bool> enableAudioRecordingOrPlayout = new Optional<bool>(); + public Optional<int> publishMediaPlayerId = new Optional<int>(); + public Optional<CLIENT_ROLE_TYPE> clientRoleType = new Optional<CLIENT_ROLE_TYPE>(); + public Optional<AUDIENCE_LATENCY_LEVEL_TYPE> audienceLatencyLevel = new Optional<AUDIENCE_LATENCY_LEVEL_TYPE>(); + public Optional<VIDEO_STREAM_TYPE> defaultVideoStreamType = new Optional<VIDEO_STREAM_TYPE>(); + public Optional<CHANNEL_PROFILE_TYPE> channelProfile = new Optional<CHANNEL_PROFILE_TYPE>(); + public Optional<string> token = new Optional<string>(); + public Optional<bool> publishRhythmPlayerTrack = new Optional<bool>(); + 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) + class ChannelMediaOptions { + const ChannelMediaOptions( + {this.publishCameraTrack, + this.publishSecondaryCameraTrack, + this.publishThirdCameraTrack, + this.publishFourthCameraTrack, + this.publishMicrophoneTrack, + this.publishScreenCaptureVideo, + this.publishScreenCaptureAudio, + this.publishScreenTrack, + this.publishSecondaryScreenTrack, + this.publishThirdScreenTrack, + this.publishFourthScreenTrack, + this.publishCustomAudioTrack, + this.publishCustomAudioTrackId, + this.publishCustomVideoTrack, + this.publishEncodedVideoTrack, + this.publishMediaPlayerAudioTrack, + this.publishMediaPlayerVideoTrack, + this.publishTranscodedVideoTrack, + this.publishMixedAudioTrack, + this.publishLipSyncTrack, + this.autoSubscribeAudio, + this.autoSubscribeVideo, + this.enableAudioRecordingOrPlayout, + this.publishMediaPlayerId, + this.clientRoleType, + this.audienceLatencyLevel, + this.defaultVideoStreamType, + this.channelProfile, + this.audioDelayMs, + this.mediaPlayerAudioDelayMs, + this.token, + this.enableBuiltInMediaEncryption, + this.publishRhythmPlayerTrack, + this.isInteractiveAudience, + 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); + } +

        +
    Agora supports publishing multiple audio streams and one video stream at the same time and in the same . For example, publishMicrophoneTrack, publishCustomAudioTrack, and publishMediaPlayerAudioTrack can be set as at the same time, but only one of publishCameraTrack, publishScreenCaptureVideo, publishScreenTrack, publishCustomVideoTrack, or publishEncodedVideoTrack can be set as .Agora recommends that you set member parameter values yourself according to your business scenario, otherwise the SDK will automatically assign values to member parameters.
    diff --git a/en-US/dita/RTC-NG/API/class_extensioncontext.dita b/en-US/dita/RTC-NG/API/class_extensioncontext.dita index 6e653e4ace3..d35cedfa267 100644 --- a/en-US/dita/RTC-NG/API/class_extensioncontext.dita +++ b/en-US/dita/RTC-NG/API/class_extensioncontext.dita @@ -42,10 +42,71 @@ ExtensionContext():isValid(false), uid(0), providerName(NULL), extensionName(NULL) {} }; - - - -

    + export class ExtensionContext { + + isValid?: boolean; + + uid?: number; + + providerName?: string; + + extensionName?: string; +} + public class ExtensionContext + { + public bool isValid; + public uint uid; + public string providerName; + public string extensionName; + + public ExtensionContext() + { + this.isValid = false; + this.uid = 0; + this.providerName = ""; + this.extensionName = ""; + } + + public ExtensionContext(bool isValid, uint uid, string providerName, string extensionName) + { + this.isValid = isValid; + this.uid = uid; + this.providerName = providerName; + this.extensionName = extensionName; + } + } + export class ExtensionContext { + + isValid?: boolean; + + uid?: number; + + providerName?: string; + + extensionName?: string; +} + @JsonSerializable(explicitToJson: true, includeIfNull: false) +class ExtensionContext { + const ExtensionContext( + {this.isValid, this.uid, this.providerName, this.extensionName}); + + @JsonKey(name: 'isValid') + final bool? isValid; + + @JsonKey(name: 'uid') + final int? uid; + + @JsonKey(name: 'providerName') + final String? providerName; + + @JsonKey(name: 'extensionName') + final String? extensionName; + + factory ExtensionContext.fromJson(Map<String, dynamic> json) => + _$ExtensionContextFromJson(json); + + Map<String, dynamic> toJson() => _$ExtensionContextToJson(this); +}

    diff --git a/en-US/dita/RTC-NG/API/class_externalvideoframe.dita b/en-US/dita/RTC-NG/API/class_externalvideoframe.dita index b3bfee20dd8..2ab0a5c3afd 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; @@ -67,20 +67,20 @@ __attribute__((visibility("default"))) @interface AgoraVideoFrame : NSObject @property(assign, nonatomic) NSInteger format; -@property(assign, nonatomic) CMTime time; +@property(assign, nonatomic) CMTime time; @property(assign, nonatomic) int stride DEPRECATED_MSG_ATTRIBUTE("use strideInPixels instead"); -@property(assign, nonatomic) int strideInPixels; -@property(assign, nonatomic) int height; +@property(assign, nonatomic) int strideInPixels; +@property(assign, nonatomic) int height; @property(assign, nonatomic) CVPixelBufferRef _Nullable textureBuf; @property(strong, nonatomic) IMAGE_CLASS * _Nullable image; -@property(strong, nonatomic) NSData *_Nullable dataBuf; +@property(strong, nonatomic) NSData *_Nullable dataBuf; @property(strong, nonatomic) NSData *_Nullable alphaBuf; @property(assign, nonatomic) AgoraAlphaStitchMode alphaStitchMode; -@property(assign, nonatomic) int cropLeft; -@property(assign, nonatomic) int cropTop; -@property(assign, nonatomic) int cropRight; -@property(assign, nonatomic) int cropBottom; -@property(assign, nonatomic) int rotation; +@property(assign, nonatomic) int cropLeft; +@property(assign, nonatomic) int cropTop; +@property(assign, nonatomic) int cropRight; +@property(assign, nonatomic) int cropBottom; +@property(assign, nonatomic) int rotation; - (void)fillAlphaData; @end struct ExternalVideoFrame { @@ -153,8 +153,13 @@ eglType?: EglContextType; textureId?: number; matrix?: number[]; - metadata_buffer?: Uint8Array; - metadata_size?: number; + metadataBuffer?: Uint8Array; + metadataSize?: number; + alphaBuffer?: Uint8Array; + fillAlphaBuffer?: boolean; + alphaStitchMode?: AlphaStitchMode; + d3d11Texture2d?: any; + textureSliceIndex?: number; } public class ExternalVideoFrame { @@ -172,8 +177,11 @@ public byte[] eglContext; public EGL_CONTEXT_TYPE eglType; public int textureId; - public byte[] metadata_buffer; - public int metadata_size; + public byte[] metadataBuffer; + public int metadataSize; + public byte[] alphaBuffer; + public bool fillAlphaBuffer; + public ALPHA_STITCH_MODE alphaStitchMode; public IntPtr d3d11_texture_2d; public int texture_slice_index; }; @@ -192,8 +200,11 @@ eglType?: EglContextType; textureId?: number; matrix?: number[]; - metadata_buffer?: Uint8Array; - metadata_size?: number; + metadataBuffer?: Uint8Array; + metadataSize?: number; + alphaBuffer?: Uint8Array; + fillAlphaBuffer?: boolean; + alphaStitchMode?: AlphaStitchMode; } @JsonSerializable(explicitToJson: true, includeIfNull: false) class ExternalVideoFrame { @@ -215,6 +226,9 @@ class ExternalVideoFrame { this.metadataBuffer, this.metadataSize, this.alphaBuffer, + this.fillAlphaBuffer, + this.alphaStitchMode, + this.d3d11Texture2d, this.textureSliceIndex}); @JsonKey(name: 'type') @@ -259,16 +273,25 @@ class ExternalVideoFrame { @JsonKey(name: 'matrix') final List<double>? matrix; - @JsonKey(name: 'metadata_buffer', ignore: true) + @JsonKey(name: 'metadataBuffer', ignore: true) final Uint8List? metadataBuffer; - @JsonKey(name: 'metadata_size') + @JsonKey(name: 'metadataSize') final int? metadataSize; @JsonKey(name: 'alphaBuffer', ignore: true) final Uint8List? alphaBuffer; - @JsonKey(name: 'texture_slice_index') + @JsonKey(name: 'fillAlphaBuffer') + final bool? fillAlphaBuffer; + + @JsonKey(name: 'alphaStitchMode') + final AlphaStitchMode? alphaStitchMode; + + @JsonKey(name: 'd3d11Texture2d', readValue: readIntPtr) + final int? d3d11Texture2d; + + @JsonKey(name: 'textureSliceIndex') final int? textureSliceIndex; factory ExternalVideoFrame.fromJson(Map<String, dynamic> json) => diff --git a/en-US/dita/RTC-NG/API/class_metadata.dita b/en-US/dita/RTC-NG/API/class_metadata.dita index 37901d6a458..2cb9cf7bc55 100644 --- a/en-US/dita/RTC-NG/API/class_metadata.dita +++ b/en-US/dita/RTC-NG/API/class_metadata.dita @@ -57,58 +57,67 @@ struct FAgoraMetadata }; public class Metadata { + public string channelId; public uint uid; public uint size; + public IntPtr buffer; + public long timeStampMs; - public IntPtr buffer + public Metadata() { - set - { - _buffer = (UInt64)value; - } - get - { - return (IntPtr)_buffer; - } + this.channelId = ""; + this.uid = 0; + this.size = 0; + this.buffer = IntPtr.Zero; + this.timeStampMs = 0; } - private UInt64 _buffer; - - public long timeStampMs; - }; + public Metadata(string channelId, uint uid, uint size, IntPtr buffer, long timeStampMs) + { + this.channelId = channelId; + this.uid = uid; + this.size = size; + this.buffer = buffer; + this.timeStampMs = timeStampMs; + } + } export class Metadata { - + channelId?: string; uid?: number; - size?: number; - buffer?: Uint8Array; - timeStampMs?: number; } export class Metadata { - + channelId?: string; uid?: number; - size?: number; - buffer?: Uint8Array; - timeStampMs?: number; } - class Metadata { - const Metadata({this.uid, this.size, this.buffer, this.timeStampMs}); + @JsonSerializable(explicitToJson: true, includeIfNull: false) +class Metadata { + const Metadata( + {this.channelId, this.uid, this.size, this.buffer, this.timeStampMs}); + + @JsonKey(name: 'channelId') + final String? channelId; @JsonKey(name: 'uid') final int? uid; + @JsonKey(name: 'size') final int? size; + @JsonKey(name: 'buffer', ignore: true) final Uint8List? buffer; + @JsonKey(name: 'timeStampMs') final int? timeStampMs; + factory Metadata.fromJson(Map<String, dynamic> json) => _$MetadataFromJson(json); + Map<String, dynamic> toJson() => _$MetadataToJson(this); }

    diff --git a/en-US/dita/RTC-NG/API/class_videoframe.dita b/en-US/dita/RTC-NG/API/class_videoframe.dita index 5c74b9394f6..353c05ed784 100644 --- a/en-US/dita/RTC-NG/API/class_videoframe.dita +++ b/en-US/dita/RTC-NG/API/class_videoframe.dita @@ -135,7 +135,7 @@ Unspecified(2), BT470M(4), BT470BG(5), - kSMPTE170M(6), + kSMPTE170M(6), kSMPTE240M(7), kFILM(8), kBT2020(9), @@ -421,6 +421,10 @@ struct FVideoFrame { matrix?: number[]; + alphaBuffer?: Uint8Array; + + alphaStitchMode?: AlphaStitchMode; + }
    public class VideoFrame { @@ -462,7 +466,13 @@ struct FVideoFrame { public int textureId; + public IntPtr d3d11Texture2d; + public float[] matrix; + + public byte[] alphaBuffer; + + public ALPHA_STITCH_MODE alphaStitchMode; }; export class VideoFrame { @@ -498,6 +508,10 @@ struct FVideoFrame { matrix?: number[]; + alphaBuffer?: Uint8Array; + + alphaStitchMode?: AlphaStitchMode; + } @JsonSerializable(explicitToJson: true, includeIfNull: false) class VideoFrame { @@ -518,63 +532,76 @@ class VideoFrame { this.metadataSize, this.textureId, this.matrix, - this.pixelBuffer}); + this.alphaBuffer, + this.alphaStitchMode, + this.pixelBuffer, + this.metaInfo}); - @JsonKey(name: 'type') + @JsonKey(name: 'type') final VideoPixelFormat? type; - @JsonKey(name: 'width') + @JsonKey(name: 'width') final int? width; - @JsonKey(name: 'height') + @JsonKey(name: 'height') final int? height; - @JsonKey(name: 'yStride') + @JsonKey(name: 'yStride') final int? yStride; - @JsonKey(name: 'uStride') + @JsonKey(name: 'uStride') final int? uStride; - @JsonKey(name: 'vStride') + @JsonKey(name: 'vStride') final int? vStride; - @JsonKey(name: 'yBuffer', ignore: true) + @JsonKey(name: 'yBuffer', ignore: true) final Uint8List? yBuffer; - @JsonKey(name: 'uBuffer', ignore: true) + @JsonKey(name: 'uBuffer', ignore: true) final Uint8List? uBuffer; - @JsonKey(name: 'vBuffer', ignore: true) + @JsonKey(name: 'vBuffer', ignore: true) final Uint8List? vBuffer; - @JsonKey(name: 'rotation') + @JsonKey(name: 'rotation') final int? rotation; - @JsonKey(name: 'renderTimeMs') + @JsonKey(name: 'renderTimeMs') final int? renderTimeMs; - @JsonKey(name: 'avsync_type') + @JsonKey(name: 'avsync_type') final int? avsyncType; - @JsonKey(name: 'metadata_buffer', ignore: true) + @JsonKey(name: 'metadata_buffer', ignore: true) final Uint8List? metadataBuffer; - @JsonKey(name: 'metadata_size') + @JsonKey(name: 'metadata_size') final int? metadataSize; - @JsonKey(name: 'textureId') + @JsonKey(name: 'textureId') final int? textureId; - @JsonKey(name: 'matrix') - final List<double>? matrix; + @JsonKey(name: 'matrix') + final List<double>? matrix; + + @JsonKey(name: 'alphaBuffer', ignore: true) + final Uint8List? alphaBuffer; - @JsonKey(name: 'pixelBuffer', ignore: true) + @JsonKey(name: 'alphaStitchMode') + final AlphaStitchMode? alphaStitchMode; + + @JsonKey(name: 'pixelBuffer', ignore: true) final Uint8List? pixelBuffer; - factory VideoFrame.fromJson(Map<String, dynamic> json) => + @VideoFrameMetaInfoConverter() + @JsonKey(name: 'metaInfo') + final VideoFrameMetaInfo? metaInfo; + + factory VideoFrame.fromJson(Map<String, dynamic> json) => _$VideoFrameFromJson(json); - Map<String, dynamic> toJson() => _$VideoFrameToJson(this); + Map<String, dynamic> toJson() => _$VideoFrameToJson(this); }

    diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap index c56ea6e11c7..bf4073b8d0e 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -12500,510 +12500,6 @@ - - - - VIDEO_PROFILE_TYPE - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_7 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_11 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P_2 - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_120P - - - - - - - VIDEO_PROFILE_PORTRAIT_120P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_7 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_11 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P - - - - - - - VIDEO_PROFILE_PORTRAIT_720P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P_5 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_1080P - - - - - - - VIDEO_PROFILE_PORTRAIT_1080P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_1080P_5 - - - - - - - VIDEO_PROFILE_PORTRAIT_1440P - - - - - - - VIDEO_PROFILE_PORTRAIT_1440P_2 - - - - - - - VIDEO_PROFILE_PORTRAIT_4K - - - - - - - VIDEO_PROFILE_PORTRAIT_4K_3 - - - - - - - VIDEO_PROFILE_DEFAULT - - - diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap index 5db37df1213..4af0e354d1b 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap @@ -1870,6 +1870,13 @@ + + + + enableVoiceAITuner + + + @@ -2582,31 +2589,31 @@ - + - onExtensionEvent + onExtensionEventWithContext - + - onExtensionStarted + onExtensionStartedWithContext - + - onExtensionStopped + onExtensionStoppedWithContext - + - onExtensionError + onExtensionErrorWithContext @@ -2695,20 +2702,6 @@ - - - - setEncryptionMode - - - - - - - setEncryptionSecret - - - @@ -3059,6 +3052,13 @@ + + + + destroyMusicPlayer + + + @@ -3177,6 +3177,34 @@ kMusicContentCenterReasonHttpInternalError + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -3185,13 +3213,6 @@ - - - - onSongSimpleInfoResult - - - @@ -3213,6 +3234,13 @@ + + + + onSongSimpleInfoResult + + + @@ -3297,6 +3325,13 @@ + + + + setPlayMode + + + @@ -3415,6 +3450,13 @@ + + + + setCameraCapturerConfiguration + + + @@ -4771,6 +4813,13 @@ + + + + ExtensionContext + + + @@ -5277,6 +5326,48 @@ + + + + AlphaStitchMode + + + + + + + NoAlphaStitch + + + + + + + AlphaStitchUp + + + + + + + AlphaStitchBelow + + + + + + + AlphaStitchLeft + + + + + + + AlphaStitchRight + + + @@ -8693,7 +8784,14 @@ - + + + + LocalVideoStreamReasonScreenCaptureDisplayDisconnected + + + + LocalVideoStreamState @@ -10702,6 +10800,13 @@ + + + + ApplicationScenario1v1 + + + @@ -11388,591 +11493,164 @@ - - - - VideoProfileType - - - - - - - VideoProfileLandscape120p - - - - - - - VideoProfileLandscape120p3 - - - - - - - VideoProfileLandscape180p - - - - - - - VideoProfileLandscape180p3 - - - - - - - VideoProfileLandscape180p4 - - - - - - - VideoProfileLandscape240p - - - - - - - VideoProfileLandscape240p3 - - - - - - - VideoProfileLandscape240p4 - - - - - - - VideoProfileLandscape360p - - - - - - - VideoProfileLandscape360p3 - - - - - - - VideoProfileLandscape360p4 - - - - - - - VideoProfileLandscape360p6 - - - - - - - VideoProfileLandscape360p7 - - - - - - - VideoProfileLandscape360p8 - - - - - - - VideoProfileLandscape360p9 - - - - - - - VideoProfileLandscape360p10 - - - - - - - VideoProfileLandscape360p11 - - - - - - - VideoProfileLandscape480p - - - - - - - VideoProfileLandscape480p3 - - - - - - - VideoProfileLandscape480p4 - - - - - - - VideoProfileLandscape480p6 - - - - - - - VideoProfileLandscape480p8 - - - - - - - VideoProfileLandscape480p9 - - - - - - - VideoProfileLandscape480p10 - - - - - - - VideoProfileLandscape720p - - - - - - - VideoProfileLandscape720p3 - - - - - - - VideoProfileLandscape720p5 - - - - - - - VideoProfileLandscape720p6 - - - - - - - VideoProfileLandscape1080p - - - - - - - VideoProfileLandscape1080p3 - - - - - - - VideoProfileLandscape1080p5 - - - - - - - VideoProfileLandscape1440p - - - - - - - VideoProfileLandscape1440p2 - - - - - - - VideoProfileLandscape4k - - - - - - - VideoProfileLandscape4k3 - - - - - - - VideoProfilePortrait120p - - - - - - - VideoProfilePortrait120p3 - - - - - - - VideoProfilePortrait180p - - - - - - - VideoProfilePortrait180p3 - - - - - - - VideoProfilePortrait180p4 - - - - - - - VideoProfilePortrait240p - - - - - - - VideoProfilePortrait240p3 - - - - - - - VideoProfilePortrait240p4 - - - - - - - VideoProfilePortrait360p - - - - - - - VideoProfilePortrait360p3 - - - - - - - VideoProfilePortrait360p4 - - - - - - - VideoProfilePortrait360p6 - - - - - - - VideoProfilePortrait360p7 - - - - - - - VideoProfilePortrait360p8 - - - - - - - VideoProfilePortrait360p9 - - - - - - - VideoProfilePortrait360p10 - - - - - - - VideoProfilePortrait360p11 - - - - - - - VideoProfilePortrait480p - - - - - - - VideoProfilePortrait480p3 - - - - - - - VideoProfilePortrait480p4 - - - - - - - VideoProfilePortrait480p6 - - - - - - - VideoProfilePortrait480p8 - - - - - - - VideoProfilePortrait480p9 - - - - - - - VideoProfilePortrait480p10 - - - - - - - VideoProfilePortrait720p - - - - + + + + VideoViewSetupMode + + + + + + + VideoViewSetupReplace + + + + + + + VideoViewSetupAdd + + + + + + + VideoViewSetupRemove + + + + - VideoProfilePortrait720p3 + VideoTranscoderError - + - VideoProfilePortrait720p5 + VtErrOk - + - VideoProfilePortrait720p6 + VtErrVideoSourceNotReady - + - VideoProfilePortrait1080p + VtErrInvalidVideoSourceType - + - VideoProfilePortrait1080p3 + VtErrInvalidImagePath - + - VideoProfilePortrait1080p5 + VtErrUnsupportImageFormat - + - VideoProfilePortrait1440p + VtErrInvalidLayout - + - VideoProfilePortrait1440p2 + VtErrInternal - + - VideoProfilePortrait4k + VoiceAiTunerType - + - VideoProfilePortrait4k3 + VoiceAiTunerMatureMale - + - VideoProfileDefault + VoiceAiTunerFreshMale - - - - VideoViewSetupMode - - - - - - - VideoViewSetupReplace - - - - - - - VideoViewSetupAdd - - - - - - - VideoViewSetupRemove - - - - + - VideoTranscoderError + VoiceAiTunerElegantFemale - + - VtErrOk + VoiceAiTunerSweetFemale - + - VtErrVideoSourceNotReady + VoiceAiTunerWarmMaleSinging - + - VtErrInvalidVideoSourceType + VoiceAiTunerGentleFemaleSinging - + - VtErrInvalidImagePath + VoiceAiTunerHuskyMaleSinging - + - VtErrUnsupportImageFormat + VoiceAiTunerWarmElegantFemaleSinging - + - VtErrInvalidLayout + VoiceAiTunerPowerfulMaleSinging - + - VtErrInternal + VoiceAiTunerDreamyFemaleSinging diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap index 7408c54b4a8..96fafab5e72 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap @@ -1911,6 +1911,13 @@ + + + + enableVoiceAITuner + + + @@ -2673,31 +2680,31 @@ - + - onExtensionEvent + onExtensionEventWithContext - + - onExtensionStarted + onExtensionStartedWithContext - + - onExtensionStopped + onExtensionStoppedWithContext - + - onExtensionError + onExtensionErrorWithContext @@ -2772,20 +2779,6 @@ - - - - setEncryptionMode - - - - - - - setEncryptionSecret - - - @@ -3278,6 +3271,13 @@ + + + + destroyMusicPlayer + + + @@ -3390,90 +3390,6 @@ - - - - MusicCacheStatusType - - - - - - - musicCacheStatusTypeCached - - - - - - - musicCacheStatusTypeCaching - - - - - - - MusicContentCenterStateReason - - - - - - - kMusicContentCenterReasonOk - - - - - - - kMusicContentCenterReasonError - - - - - - - kMusicContentCenterReasonGateway - - - - - - - kMusicContentCenterReasonPermissionAndResource - - - - - - - kMusicContentCenterReasonInternalDataParse - - - - - - - kMusicContentCenterReasonMusicLoading - - - - - - - kMusicContentCenterReasonMusicDecryption - - - - - - - kMusicContentCenterReasonHttpInternalError - - - @@ -3593,6 +3509,13 @@ + + + + setPlayMode + + + @@ -4966,6 +4889,13 @@ + + + + ExtensionContext + + + @@ -5472,6 +5402,48 @@ + + + + AlphaStitchMode + + + + + + + noAlphaStitch + + + + + + + alphaStitchUp + + + + + + + alphaStitchBelow + + + + + + + alphaStitchLeft + + + + + + + alphaStitchRight + + + @@ -8678,6 +8650,13 @@ + + + + localVideoStreamReasonScreenCaptureDisplayDisconnected + + + @@ -9448,6 +9427,118 @@ + + + + MusicCacheStatusType + + + + + + + musicCacheStatusTypeCached + + + + + + + musicCacheStatusTypeCaching + + + + + + + MusicContentCenterStateReason + + + + + + + kMusicContentCenterReasonOk + + + + + + + kMusicContentCenterReasonError + + + + + + + kMusicContentCenterReasonGateway + + + + + + + kMusicContentCenterReasonPermissionAndResource + + + + + + + kMusicContentCenterReasonInternalDataParse + + + + + + + kMusicContentCenterReasonMusicLoading + + + + + + + kMusicContentCenterReasonMusicDecryption + + + + + + + kMusicContentCenterReasonHttpInternalError + + + + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -10722,6 +10813,13 @@ + + + + applicationScenario1v1 + + + @@ -11380,591 +11478,164 @@ - - - - VideoProfileType - - - - - - - videoProfileLandscape120p - - - - - - - videoProfileLandscape120p3 - - - - - - - videoProfileLandscape180p - - - - + - videoProfileLandscape180p3 + VideoViewSetupMode - + - videoProfileLandscape180p4 + videoViewSetupReplace - + - videoProfileLandscape240p + videoViewSetupAdd - + - videoProfileLandscape240p3 + videoViewSetupRemove - + - videoProfileLandscape240p4 + VideoTranscoderError - + - videoProfileLandscape360p + vtErrOk - + - videoProfileLandscape360p3 + vtErrVideoSourceNotReady - + - videoProfileLandscape360p4 + vtErrInvalidVideoSourceType - + - videoProfileLandscape360p6 + vtErrInvalidImagePath - + - videoProfileLandscape360p7 + vtErrUnsupportImageFormat - + - videoProfileLandscape360p8 + vtErrInvalidLayout - + - videoProfileLandscape360p9 + vtErrInternal - + - videoProfileLandscape360p10 + VoiceAiTunerType - + - videoProfileLandscape360p11 + voiceAiTunerMatureMale - + - videoProfileLandscape480p + voiceAiTunerFreshMale - + - videoProfileLandscape480p3 + voiceAiTunerElegantFemale - + - videoProfileLandscape480p4 + voiceAiTunerSweetFemale - + - videoProfileLandscape480p6 + voiceAiTunerWarmMaleSinging - + - videoProfileLandscape480p8 + voiceAiTunerGentleFemaleSinging - + - videoProfileLandscape480p9 + voiceAiTunerHuskyMaleSinging - + - videoProfileLandscape480p10 + voiceAiTunerWarmElegantFemaleSinging - + - videoProfileLandscape720p + voiceAiTunerPowerfulMaleSinging - + - videoProfileLandscape720p3 - - - - - - - videoProfileLandscape720p5 - - - - - - - videoProfileLandscape720p6 - - - - - - - videoProfileLandscape1080p - - - - - - - videoProfileLandscape1080p3 - - - - - - - videoProfileLandscape1080p5 - - - - - - - videoProfileLandscape1440p - - - - - - - videoProfileLandscape1440p2 - - - - - - - videoProfileLandscape4k - - - - - - - videoProfileLandscape4k3 - - - - - - - videoProfilePortrait120p - - - - - - - videoProfilePortrait120p3 - - - - - - - videoProfilePortrait180p - - - - - - - videoProfilePortrait180p3 - - - - - - - videoProfilePortrait180p4 - - - - - - - videoProfilePortrait240p - - - - - - - videoProfilePortrait240p3 - - - - - - - videoProfilePortrait240p4 - - - - - - - videoProfilePortrait360p - - - - - - - videoProfilePortrait360p3 - - - - - - - videoProfilePortrait360p4 - - - - - - - videoProfilePortrait360p6 - - - - - - - videoProfilePortrait360p7 - - - - - - - videoProfilePortrait360p8 - - - - - - - videoProfilePortrait360p9 - - - - - - - videoProfilePortrait360p10 - - - - - - - videoProfilePortrait360p11 - - - - - - - videoProfilePortrait480p - - - - - - - videoProfilePortrait480p3 - - - - - - - videoProfilePortrait480p4 - - - - - - - videoProfilePortrait480p6 - - - - - - - videoProfilePortrait480p8 - - - - - - - videoProfilePortrait480p9 - - - - - - - videoProfilePortrait480p10 - - - - - - - videoProfilePortrait720p - - - - - - - videoProfilePortrait720p3 - - - - - - - videoProfilePortrait720p5 - - - - - - - videoProfilePortrait720p6 - - - - - - - videoProfilePortrait1080p - - - - - - - videoProfilePortrait1080p3 - - - - - - - videoProfilePortrait1080p5 - - - - - - - videoProfilePortrait1440p - - - - - - - videoProfilePortrait1440p2 - - - - - - - videoProfilePortrait4k - - - - - - - videoProfilePortrait4k3 - - - - - - - videoProfileDefault - - - - - - - VideoViewSetupMode - - - - - - - videoViewSetupReplace - - - - - - - videoViewSetupAdd - - - - - - - videoViewSetupRemove - - - - - - - VideoTranscoderError - - - - - - - vtErrOk - - - - - - - vtErrVideoSourceNotReady - - - - - - - vtErrInvalidVideoSourceType - - - - - - - vtErrInvalidImagePath - - - - - - - vtErrUnsupportImageFormat - - - - - - - vtErrInvalidLayout - - - - - - - vtErrInternal + voiceAiTunerDreamyFemaleSinging diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap index dcc19efd325..c0c5975466f 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -87,7 +87,7 @@ - AgoraRtcEngineKit(Ex) + AgoraRtcEngineKit @@ -227,7 +227,7 @@ - AgoraBaseSpatialAudioKit + AgoraSpatialAudioKitBase @@ -286,14 +286,14 @@ - sharedEngineWithAppId + sharedEngineWithAppId:delegate: - sharedEngineWithConfig + sharedEngineWithConfig:delegate: @@ -307,91 +307,91 @@ - setChannelProfile + setChannelProfile: - setClientRole [1/2] + setClientRole: - setClientRole [2/2] + setClientRole:options: - joinChannelByToken [1/4] + joinChannelByToken:channelId:info:uid:joinSuccess: - joinChannelByToken [2/4] + joinChannelByToken:channelId:uid:mediaOptions:joinSuccess: - joinChannelByToken [3/4] + joinChannelByToken:channelId:userAccount:joinSuccess: - joinChannelByToken [4/4] + joinChannelByToken:channelId:userAccount:mediaOptions:joinSuccess: - updateChannelWithMediaOptions + updateChannelWithMediaOptions: - leaveChannel [1/2] + leaveChannel: - leaveChannel [2/2] + leaveChannel:leaveChannelBlock: - preloadChannelByToken + preloadChannelByToken:channelId:uid: - preloadChannelByTokenWithUserAccount + preloadChannelByTokenWithUserAccount:channelId:userAccount: - renewToken + renewToken: @@ -405,28 +405,28 @@ - registerLocalUserAccountWithAppID + registerLocalUserAccountWithAppID:userAccount: - getUserInfoByUid + getUserInfoByUid:withError: - getUserInfoByUserAccount + getUserInfoByUserAccount:withError: - enableWebSdkInteroperability + enableWebSdkInteroperability: @@ -440,7 +440,7 @@ - startMediaRenderingTracingEx + startMediaRenderingTracingEx: @@ -456,35 +456,35 @@ - createMediaPlayerWithDelegate + createMediaPlayerWithDelegate: - destroyMediaPlayer + destroyMediaPlayer: - enableAutoRemoveCache + enableAutoRemoveCache: - adjustPlayoutVolume + adjustPlayoutVolume: - adjustPublishSignalVolume + adjustPublishSignalVolume: @@ -589,21 +589,21 @@ - getStreamByIndex + getStreamByIndex: - mute + mute: - open + open:startPos: @@ -638,7 +638,7 @@ - removeCacheByUri + removeCacheByUri: @@ -659,105 +659,105 @@ - seekToPosition + seekToPosition: - selectAudioTrack + selectAudioTrack: - selectAudioTrack + selectAudioTrack: - selectMultiAudioTrack + selectMultiAudioTrack:publishTrackIndex: - setAudioDualMonoMode + setAudioDualMonoMode: - setAudioPitch + setAudioPitch: - setCacheDir + setCacheDir: - setLoopCount + setLoopCount: - setMaxCacheFileCount + setMaxCacheFileCount: - setMaxCacheFileSize + setMaxCacheFileSize: - setPlaybackSpeed + setPlaybackSpeed: - setPlayerOption [1/2] + setPlayerOption:value: - setPlayerOption [2/2] + setPlayerOptionString:value: - setRenderMode + setRenderMode: - setView + setView: @@ -778,14 +778,14 @@ - openWithAgoraCDNSrc + openWithAgoraCDNSrc:startPos: - openWithMediaSource + openWithMediaSource: @@ -806,56 +806,56 @@ - switchAgoraCDNLineByIndex + switchAgoraCDNLineByIndex: - enableAutoSwitchAgoraCDN + enableAutoSwitchAgoraCDN: - switchAgoraCDNSrc + switchAgoraCDNSrc:syncPts: - renewAgoraCDNSrcToken + renewAgoraCDNSrcToken:ts: - switchSrc + switchSrc:syncPts: - preloadSrc + preloadSrc:startPos: - unloadSrc + unloadSrc: - playPreloadedSrc + playPreloadedSrc: @@ -878,112 +878,112 @@ - setAudioProfile [1/2] + setAudioProfile:scenario: - setAudioProfile [2/2] + setAudioProfile: - setAudioScenario + setAudioScenario: - setAudioSessionOperationRestriction + setAudioSessionOperationRestriction: - adjustRecordingSignalVolume + adjustRecordingSignalVolume: - adjustUserPlaybackSignalVolume + adjustUserPlaybackSignalVolume:volume: - adjustPlaybackSignalVolume + adjustPlaybackSignalVolume: - adjustCustomAudioPlayoutVolume + adjustCustomAudioPlayoutVolume:volume: - adjustCustomAudioPublishVolume + adjustCustomAudioPublishVolume:volume: - enableLocalAudio + enableLocalAudio: - muteLocalAudioStream + muteLocalAudioStream: - muteRemoteAudioStream + muteRemoteAudioStream:mute: - muteAllRemoteAudioStreams + muteAllRemoteAudioStreams: - muteRecordingSignal + muteRecordingSignal: - setSubscribeAudioBlocklist + setSubscribeAudioBlocklist: - setSubscribeAudioAllowlist + setSubscribeAudioAllowlist: @@ -1006,140 +1006,140 @@ - initWithSize + initWithSize:frameRate:bitrate:orientationMode:mirrorMode: - initWithWidth + initWithWidth:height:frameRate:bitrate:orientationMode:mirrorMode: - setSubscribeVideoBlocklist + setSubscribeVideoBlocklist: - setSubscribeVideoAllowlist + setSubscribeVideoAllowlist: - setVideoEncoderConfiguration + setVideoEncoderConfiguration: - setVideoScenario + setVideoScenario: - setupLocalVideo + setupLocalVideo: - setupRemoteVideo + setupRemoteVideo: - setLocalRenderMode [1/2] + setLocalRenderMode:mode: - setLocalRenderMode [2/2] + setLocalRenderMode:mirror: - setRemoteRenderMode + setRemoteRenderMode:mode:mirror: - startPreview [1/2] + startPreview - startPreview [2/2] + startPreview: - stopPreview [1/2] + stopPreview - stopPreview [2/2] + stopPreview: - enableLocalVideo + enableLocalVideo: - muteLocalVideoStream + muteLocalVideoStream: - muteRemoteVideoStream + muteRemoteVideoStream:mute: - muteAllRemoteVideoStreams + muteAllRemoteVideoStreams: - setVideoProfile + setVideoResolution:andFrameRate:bitrate: @@ -1155,14 +1155,14 @@ - setAdvancedAudioOptions + setAdvancedAudioOptions: - setAINSMode + setAINSMode:mode: @@ -1171,77 +1171,77 @@ - setBeautyEffectOptions [1/2] + setBeautyEffectOptions:options: - setBeautyEffectOptions [2/2] + setBeautyEffectOptions:options:sourceType: - enableVirtualBackground [1/2] + enableVirtualBackground:backData:segData: - enableVirtualBackground [2/2] + enableVirtualBackground:backData:segData:sourceType: - setLowlightEnhanceOptions [1/2] + setLowlightEnhanceOptions:options: - setLowlightEnhanceOptions [2/2] + setLowlightEnhanceOptions:options:sourceType: - setVideoDenoiserOptions [1/2] + setVideoDenoiserOptions:options: - setVideoDenoiserOptions [2/2] + setVideoDenoiserOptions:options:sourceType: - setColorEnhanceOptions [1/2] + setColorEnhanceOptions:options: - setColorEnhanceOptions [2/2] + setColorEnhanceOptions:options:sourceType: - setFaceInfoDelegate + setFaceInfoDelegate: @@ -1250,287 +1250,287 @@ - addVideoWatermarkEx + addVideoWatermarkEx:options:connection: - adjustUserPlaybackSignalVolumeEx + adjustUserPlaybackSignalVolumeEx:volume:connection: - clearVideoWatermarkEx + clearVideoWatermarkEx: - enableAudioVolumeIndicationEx + enableAudioVolumeIndicationEx:smooth:reportVad:connection: - getConnectionStateEx + getConnectionStateEx: - getUserInfoByUidEx + getUserInfoWithUserId:userInfo:channelId:localUserAccount: - getUserInfoByUserAccountEx + getUserInfoWithUserAccount:userInfo:channelId:localUserAccount: - joinChannelExByToken [1/2] + joinChannelExByToken:connection:delegate:mediaOptions:joinSuccess: - joinChannelExByToken [2/2] + joinChannelExByToken:channelId:userAccount:delegate:mediaOptions:joinSuccess: - leaveChannelEx [1/2] + leaveChannelEx:leaveChannelBlock: - leaveChannelEx [2/2] + leaveChannelEx:options:leaveChannelBlock: - muteRemoteAudioStreamEx + muteRemoteAudioStreamEx:mute:connection: - muteRemoteVideoStreamEx + muteRemoteVideoStreamEx:mute:connection: - sendCustomReportMessageEx + sendCustomReportMessageEx:category:event:label:value:connection: - setRemoteRenderModeEx + setRemoteRenderModeEx:mode:mirror:connection: - setRemoteVideoStreamEx + setRemoteVideoStreamEx:type:connection: - setRemoteVideoSubscriptionOptionsEx + setRemoteVideoSubscriptionOptionsEx:options:connection: - setRemoteVoice3DPositionEx + setRemoteVoice3DPositionEx:azimuth:elevation:distance:connection: - setRemoteVoicePositionEx + setRemoteVoicePosition:pan:gain:connection: - setSubscribeAudioBlocklistEx + setSubscribeAudioBlocklistEx:connection: - setSubscribeAudioAllowlistEx + setSubscribeAudioAllowlistEx:connection: - setSubscribeVideoBlocklistEx + setSubscribeVideoBlocklistEx:connection: - setSubscribeVideoAllowlistEx + setSubscribeVideoAllowlistEx:connection: - setupRemoteVideoEx + setupRemoteVideoEx:connection: - setVideoEncoderConfigurationEx + setVideoEncoderConfigurationEx:connection: - takeSnapshotEx + takeSnapshotEx:uid:filePath: - updateChannelExWithMediaOptions + updateChannelExWithMediaOptions:connection: - updatePreloadChannelToken + updatePreloadChannelToken: - startRtmpStreamWithoutTranscodingEx + startRtmpStreamWithoutTranscodingEx:connection: - startRtmpStreamWithTranscodingEx + startRtmpStreamWithTranscodingEx:transcoding:connection: - updateRtmpTranscodingEx + updateRtmpTranscodingEx:connection: - stopRtmpStreamEx + stopRtmpStreamEx:connection: - resumeAllChannelMediaRelayEx + resumeAllChannelMediaRelayEx: - startOrUpdateChannelMediaRelayEx + startOrUpdateChannelMediaRelayEx:connection: - pauseAllChannelMediaRelayEx + pauseAllChannelMediaRelayEx: - muteLocalAudioStreamEx + muteLocalAudioStreamEx:connection: - muteLocalVideoStreamEx + muteLocalVideoStreamEx:connection: - muteAllRemoteAudioStreamsEx + muteAllRemoteAudioStreamsEx:connection: - muteAllRemoteVideoStreamsEx + muteAllRemoteVideoStreamsEx:connection: - muteRecordingSignalEx + muteRecordingSignalEx:connection: - StopChannelMediaRelayEx + stopChannelMediaRelayEx: @@ -1539,28 +1539,28 @@ - setAudioMixingDualMonoMode + setAudioMixingDualMonoMode: - setAudioMixingPlaybackSpeed + setAudioMixingPlaybackSpeed: - startAudioMixing [1/2] + startAudioMixing:loopback:cycle: - startAudioMixing [2/2] + startAudioMixing:loopback:cycle:startPos: @@ -1588,21 +1588,21 @@ - adjustAudioMixingVolume + adjustAudioMixingVolume: - adjustAudioMixingPlayoutVolume + adjustAudioMixingPlayoutVolume: - adjustAudioMixingPublishVolume + adjustAudioMixingPublishVolume: @@ -1644,14 +1644,14 @@ - setAudioMixingPitch + setAudioMixingPitch: - setAudioMixingPosition + setAudioMixingPosition: @@ -1667,49 +1667,49 @@ - setEffectsVolume + setEffectsVolume: - setVolumeOfEffect + setVolumeOfEffect:withVolume: - getVolumeOfEffect + getVolumeOfEffect: - playEffect [1/3] + playEffect:filePath:loopCount:pitch:pan:gain: - playEffect [2/3] + playEffect:filePath:loopCount:pitch:pan:gain:publish: - playEffect [3/3] + playEffect:filePath:loopCount:pitch:pan:gain:publish:startPos: - stopEffect + stopEffect: @@ -1723,21 +1723,21 @@ - preloadEffect + preloadEffect:filePath: - unloadEffect + unloadEffect: - pauseEffect + pauseEffect: @@ -1751,7 +1751,7 @@ - resumeEffect + resumeEffect: @@ -1765,21 +1765,21 @@ - setEffectPosition + setEffectPosition:pos: - getEffectDuration + getEffectDuration: - getEffectCurrentPosition + getEffectCurrentPosition: @@ -1788,7 +1788,7 @@ - startRhythmPlayer + startRhythmPlayer:sound2:config: @@ -1802,7 +1802,7 @@ - configRhythmPlayer + configRhythmPlayer: @@ -1811,7 +1811,7 @@ - didRhythmPlayerStateChanged + rtcEngine:didRhythmPlayerStateChanged:reason: @@ -1820,70 +1820,70 @@ - enableVoiceAITuner + enableVoiceAITuner:type: - setLocalVoicePitch + setLocalVoicePitch: - setLocalVoiceEqualizationOfBandFrequency + setLocalVoiceEqualizationOfBandFrequency:withGain: - setLocalVoiceReverbOfType + setLocalVoiceReverbOfType:withValue: - setVoiceBeautifierPreset + setVoiceBeautifierPreset: - setVoiceBeautifierParameters + setVoiceBeautifierParameters:param1:param2: - setAudioEffectPreset + setAudioEffectPreset: - setAudioEffectParameters + setAudioEffectParameters:param1:param2: - setLocalVoiceFormant + setLocalVoiceFormant: - setVoiceConversionPreset + setVoiceConversionPreset: @@ -1892,21 +1892,21 @@ - enableSoundPositionIndication + enableSoundPositionIndication: - setRemoteVoice3DPosition + setRemoteVoice3DPosition:azimuth:elevation:distance: - setRemoteVoicePosition + setRemoteVoicePosition:pan:gain: @@ -1915,84 +1915,84 @@ - muteLocalAudioStream + muteLocalAudioStream: - muteRemoteAudioStream + muteRemoteAudioStream:mute: - muteAllRemoteAudioStreams + muteAllRemoteAudioStreams: - setAudioRecvRange + setAudioRecvRange: - setDistanceUnit + setDistanceUnit: - setMaxAudioRecvCount + setMaxAudioRecvCount: - updatePlayerPositionInfo + updatePlayerPositionInfo:positionInfo: - updateSelfPosition + updateSelfPosition:axisForward:axisRight:axisUp: - setZones + setZones: - setPlayerAttenuation + setPlayerAttenuation:playerId:forceSet: - setRemoteAudioAttenuation + setRemoteAudioAttenuation:userId:forceSet: - updateSelfTransform + updateSelfTransform: @@ -2008,7 +2008,7 @@ - sharedLocalSpatialAudioWithConfig + sharedLocalSpatialAudioWithConfig: @@ -2022,14 +2022,14 @@ - removeRemotePosition + removeRemotePosition: - updateRemotePosition + updateRemotePosition:positionInfo: @@ -2045,21 +2045,21 @@ - enableSpatialAudio + enableSpatialAudio: - setRemoteUserSpatialAudioParams + setRemoteUserSpatialAudioParams:params: - setSpatialAudioParams + setSpatialAudioParams: @@ -2133,35 +2133,35 @@ - startRtmpStreamWithoutTranscoding + startRtmpStreamWithoutTranscoding: - startRtmpStreamWithTranscoding + startRtmpStreamWithTranscoding:transcoding: - updateRtmpTranscoding + updateRtmpTranscoding: - stopRtmpStream + stopRtmpStream: - addUser + addUser: @@ -2182,42 +2182,42 @@ - removeUser + removeUser: - setAdvancedFeatures + setAdvancedFeatures:opened: - setDirectCdnStreamingAudioConfiguration + setDirectCdnStreamingAudioConfiguration: - setDirectCdnStreamingVideoConfiguration + setDirectCdnStreamingVideoConfiguration: - setLiveTranscoding + setLiveTranscoding: - startDirectCdnStreaming + startDirectCdnStreaming:publishUrl:mediaOptions: @@ -2254,7 +2254,7 @@ - startOrUpdateChannelMediaRelay + startOrUpdateChannelMediaRelay: @@ -2268,14 +2268,14 @@ - setDestChannelInfo + setDestinationInfo:forChannelName: - removeDestinationInfoForChannelName + removeDestinationInfoForChannelName: @@ -2284,7 +2284,7 @@ - enableAudioVolumeIndication + enableAudioVolumeIndication:smooth:reportVad: @@ -2293,14 +2293,14 @@ - setDefaultAudioRouteToSpeakerphone + setDefaultAudioRouteToSpeakerphone: - setEnableSpeakerphone + setEnableSpeakerphone: @@ -2316,42 +2316,42 @@ - enableInEarMonitoring [1/2] + enableInEarMonitoring: - enableInEarMonitoring [2/2] + enableInEarMonitoring:includeAudioFilters: - setEarMonitoringAudioFrameParametersWithSampleRate + setEarMonitoringAudioFrameParametersWithSampleRate:channel:mode:samplesPerCall: - setInEarMonitoringVolume + setInEarMonitoringVolume: - setHeadphoneEQParameters + setHeadphoneEQParameters:highGain: - setHeadphoneEQPreset + setHeadphoneEQPreset: @@ -2360,57 +2360,57 @@ - enableDualStreamMode [1/2] + enableDualStreamMode: - + enableDualStreamMode:enabled: - enableDualStreamMode [2/2] + enableDualStreamMode:streamConfig: - enableDualStreamModeEx + enableDualStreamModeEx:streamConfig:connection: - setDualStreamMode [1/2] + setDualStreamMode: - setDualStreamMode [2/2] + setDualStreamMode:streamConfig: - setDualStreamModeEx + setDualStreamModeEx:streamConfig:connection: - setRemoteVideoStream + setRemoteVideoStream:type: - setRemoteDefaultVideoStreamType + setRemoteDefaultVideoStreamType: @@ -2419,7 +2419,7 @@ - setRemoteSubscribeFallbackOption + setRemoteSubscribeFallbackOption: @@ -2428,7 +2428,7 @@ - startEchoTestWithConfig + startEchoTestWithConfig: @@ -2442,7 +2442,7 @@ - startLastmileProbeTest + startLastmileProbeTest: @@ -2465,28 +2465,28 @@ - destroyCustomVideoTrack + destroyCustomVideoTrack: - setExternalVideoSource + setExternalVideoSource:useTexture:sourceType: - pushExternalVideoFrame [1/2] + pushExternalVideoFrame:videoTrackId: - pushExternalVideoFrame [2/2] + pushExternalVideoFrame: @@ -2502,77 +2502,77 @@ - createCustomAudioTrack + createCustomAudioTrack:config: - destroyCustomAudioTrack + destroyCustomAudioTrack: - enableCustomAudioLocalPlayback + enableCustomAudioLocalPlayback:enabled: - setExternalAudioSource [1/2] + setExternalAudioSource:sampleRate:channels: - setExternalAudioSource [2/2] + setExternalAudioSource:sampleRate:channels:localPlayback:publish: - pushExternalAudioFrameSampleBuffer [1/2] + pushExternalAudioFrameSampleBuffer: - pushExternalAudioFrameSampleBuffer [2/2] + pushExternalAudioFrameSampleBuffer:sampleRate:channels:trackId: - pushExternalAudioFrameRawData + pushExternalAudioFrameRawData:samples:sourceId:timestamp: - pushExternalAudioFrameRawData + pushExternalAudioFrameRawData:samples:sampleRate:channels:trackId:timestamp: - pushCaptureAudioFrame1 + pushCaptureAudioFrame: - pushReverseAudioFrame1 + pushReverseAudioFrame: @@ -2581,21 +2581,21 @@ - enableExternalAudioSink + enableExternalAudioSink:sampleRate:channels: - pullPlaybackAudioFrameRawData + pullPlaybackAudioFrameRawData:lengthInByte: - pullPlaybackAudioFrameSampleBufferByLengthInByte + pullPlaybackAudioFrameSampleBufferByLengthInByte: @@ -2604,28 +2604,28 @@ - registerAudioEncodedFrameObserver + setAudioEncodedFrameDelegate:config: - onPlaybackEncodedAudioFrame + onPlaybackEncodedAudioFrame:info: - onRecordEncodedAudioFrame + onRecordEncodedAudioFrame:info: - onMixedEncodedAudioFrame + onMixedEncodedAudioFrame:info: @@ -2634,42 +2634,42 @@ - setAudioFrameDelegate + setAudioFrameDelegate: - setRecordingAudioFrameParametersWithSampleRate + setRecordingAudioFrameParametersWithSampleRate:channel:mode:samplesPerCall: - setPlaybackAudioFrameParametersWithSampleRate + setPlaybackAudioFrameParametersWithSampleRate:channel:mode:samplesPerCall: - setMixedAudioFrameParametersWithSampleRate + setMixedAudioFrameParametersWithSampleRate:channel:samplesPerCall: - setPlaybackAudioFrameBeforeMixingParametersWithSampleRate + setPlaybackAudioFrameBeforeMixingParametersWithSampleRate:channel: - didReceiveAudioFrame + AgoraRtcMediaPlayer:didReceiveAudioFrame: @@ -2699,28 +2699,28 @@ - registerVideoEncodedFrameObserver + setEncodedVideoFrameDelegate: - setVideoFrameDelegate [1/2] + setVideoFrameDelegate: - setVideoFrameDelegate [2/2] + setVideoFrameDelegate: - didReceiveVideoFrame + AgoraRtcMediaPlayer:didReceiveVideoFrame: @@ -2729,70 +2729,70 @@ - getExtensionPropertyWithVendor [1/2] + getExtensionPropertyWithVendor:extension:key: - getExtensionPropertyWithVendor [2/2] + getExtensionPropertyWithVendor:extension:key:sourceType: - enableExtensionWithVendor + enableExtensionWithVendor:extension:enabled:sourceType: - registerExtensionWithVendor + registerExtensionWithVendor:extension:sourceType: - setExtensionPropertyWithVendor + setExtensionPropertyWithVendor:extension:key:value: - setExtensionProviderPropertyWithVendor + setExtensionProviderPropertyWithVendor:key:value: - onExtensionEventWithContext + onEventWithContext:key:value: - onExtensionStartedWithContext + onExtensionStartedWithContext: - onExtensionStoppedWithContext + onExtensionStoppedWithContext: - onExtensionErrorWithContext + onExtensionErrorWithContext:error:message: @@ -2801,7 +2801,7 @@ - startLocalVideoTranscoder + startLocalVideoTranscoder: @@ -2815,7 +2815,7 @@ - updateLocalTranscoderConfiguration + updateLocalTranscoderConfiguration: @@ -2824,14 +2824,14 @@ - setMediaMetadataDelegate + setMediaMetadataDelegate:withType: - setMediaMetadataDataSource + setMediaMetadataDataSource:withType: @@ -2840,14 +2840,14 @@ - addVideoWatermark [1/2] + addVideoWatermark: - addVideoWatermark [2/2] + addVideoWatermark:options: @@ -2863,14 +2863,14 @@ - enableEncryption + enableEncryption:encryptionConfig: - enableEncryptionEx + enableEncryptionEx:encryptionConfig:connection: @@ -2879,14 +2879,14 @@ - startAudioRecording [1/2] + startAudioRecording:quality: - startAudioRecording [2/2] + startAudioRecordingWithConfig: @@ -2902,35 +2902,35 @@ - createMediaRecorder + createMediaRecorder: - destroyMediaRecorder + destroyMediaRecorder: - enableMainQueueDispatch + enableMainQueueDispatch: - setMediaRecorderDelegate + setMediaRecorderDelegate: - startRecording + startRecording: @@ -3023,42 +3023,42 @@ - setCameraZoomFactor + setCameraZoomFactor: - setCameraFocusPositionInPreview + setCameraFocusPositionInPreview: - setCameraExposureFactor + setCameraExposureFactor: - setCameraExposurePosition + setCameraExposurePosition: - setCameraTorchOn + setCameraTorchOn: - setCameraAutoFocusFaceModeEnabled + setCameraAutoFocusFaceModeEnabled: @@ -3067,7 +3067,7 @@ - startPlaybackDeviceTest + startPlaybackDeviceTest: @@ -3081,7 +3081,7 @@ - startRecordingDeviceTest + startRecordingDeviceTest: @@ -3097,35 +3097,35 @@ - createDataStream [1/2] + createDataStream:reliable:ordered: - createDataStream [2/2] + createDataStream:config: - createDataStreamEx [1/2] + createDataStreamEx:reliable:ordered:connection: - createDataStreamEx [2/2] + createDataStreamEx:config:connection: - sendStreamMessage + sendStreamMessage:data: @@ -3141,21 +3141,21 @@ - enableAudioSpectrumMonitor + enableAudioSpectrumMonitor: - registerAudioSpectrumDelegate + registerAudioSpectrumDelegate: - unregisterAudioSpectrumDelegate + unregisterAudioSpectrumDelegate: @@ -3164,7 +3164,7 @@ - enableEchoCancellationExternal + enableEchoCancellationExternal:audioSourceDelay: @@ -3173,42 +3173,42 @@ - enableMainQueueDispatch + enableMainQueueDispatch: - openMediaWithSongCode + openMediaWithSongCode:startPos: - preloadWithSongCode [1/2] + preloadWithSongCode:jsonOption: - preloadWithSongCode [2/2] + preloadWithSongCode: - isPreloadedWithSongCode + isPreloadedWithSongCode: - sharedContentCenterWithConfig + sharedContentCenterWithConfig: @@ -3222,35 +3222,35 @@ - renewToken + renewToken: - registerEventDelegate + registerEventDelegate: - createMusicPlayerWithDelegate + createMusicPlayerWithDelegate: - destroyMusicPlayer + destroyMusicPlayer: - getLyricWithSongCode + getLyricWithSongCode:lyricType: @@ -3264,7 +3264,7 @@ - getMusicCollectionWithMusicChartId + getMusicCollectionWithMusicChartId:page:pageSize:jsonOption: @@ -3278,35 +3278,35 @@ - removeCacheWithSongCode + removeCacheWithSongCode: - getInternalSongCode + getInternalSongCode:jsonOption: - getSongSimpleInfoWithSongCode + getSongSimpleInfoWithSongCode: - searchMusicWithKeyWord + searchMusicWithKeyWord:page:pageSize:jsonOption: - setPlayMode + setPlayMode: @@ -3315,35 +3315,35 @@ - onPreLoadEvent + onPreLoadEvent:songCode:percent:lyricUrl:state:reason: - onMusicChartsResult + onMusicChartsResult:result:reason: - onMusicCollectionResult + onMusicCollectionResult:result:reason: - onLyricResult + onLyricResult:songCode:lyricUrl:reason: - onSongSimpleInfoResult + onSongSimpleInfoResult:songCode:simpleInfo:reason: @@ -3352,7 +3352,7 @@ - enableFaceDetection + enableFaceDetection: @@ -3361,28 +3361,28 @@ - enableMultiCamera + enableMultiCamera:config: - startCameraCapture + startCameraCapture:config: - stopCameraCapture + stopCameraCapture: - setCameraStabilizationMode + setCameraStabilizationMode: @@ -3391,7 +3391,7 @@ - enableCameraCenterStage + enableCameraCenterStage: @@ -3407,21 +3407,21 @@ - setCameraCapturerConfiguration + setCameraCapturerConfiguration: - setLocalVideoMirrorMode + setLocalVideoMirrorMode: - setRemoteVideoSubscriptionOptions + setRemoteVideoSubscriptionOptions:options: @@ -3430,21 +3430,21 @@ - takeSnapshot + takeSnapshot:filePath: - enableContentInspect + enableContentInspect:config: - enableContentInspectEx + enableContentInspectEx:config:connection: @@ -3460,14 +3460,14 @@ - enableMainQueueDispatch + enableMainQueueDispatch: - enableVideoImageSource + enableVideoImageSource:options: @@ -3488,28 +3488,28 @@ - removeInjectStreamUrl + removeInjectStreamUrl: - setAVSyncSource + setAVSyncSource:uid: - setParameters + setParameters: - complain + complain:description: @@ -3523,14 +3523,14 @@ - getCallIdEx + getCallIdEx: - getErrorDescription + getErrorDescription: @@ -3551,7 +3551,7 @@ - isFeatureAvailableOnDevice + isFeatureAvailableOnDevice: @@ -3565,56 +3565,56 @@ - rate + rate:rating:description: - setLocalAccessPoint + setLocalAccessPoint: - setCloudProxy + setCloudProxy: - setLogFile + setLogFile: - setLogFileSize + setLogFileSize: - setLogFilter + setLogFilter: - setLogLevel + setLogLevel: - sendCustomReportMessage + sendCustomReportMessage:category:event:label:value: @@ -3632,147 +3632,147 @@ - connectionStateChanged + rtcEngine:connectionStateChanged:reason: - didOccurError + rtcEngine:didOccurError: - firstRemoteAudioFrameDecodedOfUid + rtcEngine:firstRemoteAudioFrameDecodedOfUid:elapsed: - firstRemoteAudioFrameOfUid + rtcEngine:firstRemoteAudioFrameOfUid:elapsed: - didJoinChannel + rtcEngine:didJoinChannel:withUid:elapsed: - didRejoinChannel + rtcEngine:didRejoinChannel:withUid:elapsed: - didLeaveChannelWithStats + rtcEngine:didLeaveChannelWithStats: - didClientRoleChanged + rtcEngine:didClientRoleChanged:newRole:newRoleOptions: - didClientRoleChangeFailed + rtcEngine:didClientRoleChangeFailed:currentRole: - didJoinedOfUid + rtcEngine:didJoinedOfUid:elapsed: - didAudioMuted + rtcEngine:didAudioMuted:byUid: - didOfflineOfUid + rtcEngine:didOfflineOfUid:reason: - networkTypeChanged + rtcEngine:networkTypeChanged: - rtcEngineConnectionDidInterrupted + rtcEngineConnectionDidInterrupted: - rtcEngineConnectionDidLost + rtcEngineConnectionDidLost: - rtcEngineConnectionDidBanned + rtcEngineConnectionDidBanned: - tokenPrivilegeWillExpire + rtcEngine:tokenPrivilegeWillExpire: - rtcEngineRequestToken + rtcEngineRequestToken: - didLocalUserRegisteredWithUserId + rtcEngine:didLocalUserRegisteredWithUserId:userAccount: - didUserInfoUpdatedWithUserId + rtcEngine:didUserInfoUpdatedWithUserId:userInfo: - uplinkNetworkInfoUpdate + rtcEngine:uplinkNetworkInfoUpdate: @@ -3786,7 +3786,7 @@ - videoRenderingTracingResultOfUid + rtcEngine:videoRenderingTracingResultOfUid:currentEvent:tracingInfo: @@ -3795,56 +3795,56 @@ - localAudioStateChanged + rtcEngine:localAudioStateChanged:reason: - localVideoStateChangedOfState + rtcEngine:localVideoStateChangedOfState:reason:sourceType: - rtcEngineVideoDidStop + rtcEngineVideoDidStop: - firstLocalAudioFramePublished + rtcEngine:firstLocalAudioFramePublished: - firstLocalVideoFramePublishedWithElapsed + rtcEngine:firstLocalVideoFramePublishedWithElapsed:sourceType: - firstLocalVideoFrameWithSize + rtcEngine:firstLocalVideoFrameWithSize:elapsed:sourceType: - didAudioPublishStateChange + rtcEngine:didAudioPublishStateChange:oldState:newState:elapseSinceLastState: - didVideoPublishStateChange + rtcEngine:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState: @@ -3853,70 +3853,70 @@ - didAudioSubscribeStateChange + rtcEngine:didAudioSubscribeStateChange:uid:oldState:newState:elapseSinceLastState: - firstRemoteVideoDecodedOfUid + rtcEngine:firstRemoteVideoDecodedOfUid:size:elapsed: - firstRemoteVideoFrameOfUid + rtcEngine:firstRemoteVideoFrameOfUid:size:elapsed: - remoteAudioStateChangedOfUid + rtcEngine:remoteAudioStateChangedOfUid:state:reason:elapsed: - remoteVideoStateChangedOfUid + rtcEngine:remoteVideoStateChangedOfUid:state:reason:elapsed: - didLocalVideoEnabled + rtcEngine:didLocalVideoEnabled:byUid: - didVideoEnabled + rtcEngine:didVideoEnabled:byUid: - didVideoMuted + rtcEngine:didVideoMuted:byUid: - videoSizeChangedOfSourceType + rtcEngine:videoSizeChangedOfSourceType:uid:size:rotation: - didVideoSubscribeStateChange + rtcEngine:didVideoSubscribeStateChange:uid:oldState:newState:elapseSinceLastState: @@ -3925,63 +3925,63 @@ - reportRtcStats + rtcEngine:reportRtcStats: - networkQuality + rtcEngine:networkQuality:txQuality:rxQuality: - localAudioStats + rtcEngine:localAudioStats: - localVideoStats + rtcEngine:localVideoStats:sourceType: - remoteAudioStats + rtcEngine:remoteAudioStats: - audioTransportStatsOfUid + rtcEngine:audioTransportStatsOfUid:delay:lost:rxKBitRate: - remoteVideoStats + rtcEngine:remoteVideoStats: - videoTransportStatsOfUid + rtcEngine:videoTransportStatsOfUid:delay:lost:rxKBitRate: - audioQualityOfUid + audioQualityBlock: @@ -3997,56 +3997,56 @@ - volumeIndicationDidReceive + AgoraRtcMediaPlayer:volumeIndicationDidReceive: - didReceiveData + AgoraRtcMediaPlayer:didReceiveData:length: - didReceivePixelBuffer + AgoraRtcMediaPlayer:didReceivePixelBuffer: - didOccurEvent + AgoraRtcMediaPlayer:didOccurEvent:elapsedTime:message: - cacheStats + AgoraRtcMediaPlayer:cacheStats: - playbackStats + AgoraRtcMediaPlayer:playbackStats: - didChangedToState + AgoraRtcMediaPlayer:didChangedToState:reason: - didChangedToPosition + AgoraMediaPlayer:didChangedToPosition:atTimestamp: @@ -4067,14 +4067,14 @@ - didPlayBufferUpdated + AgoraRtcMediaPlayer:didPlayBufferUpdated: - didPreloadEvent + AgoraRtcMediaPlayer:didPreloadEvent: @@ -4088,14 +4088,14 @@ - didChangedPlayerSrcInfoFrom + AgoraRtcMediaPlayer:playerSrcInfoDidChange:from: - infoUpdated + AgoraRtcMediaPlayer:infoUpdated: @@ -4104,14 +4104,14 @@ - onDirectCdnStreamingStateChanged + onDirectCdnStreamingStateChanged:reason:message: - onDirectCdnStreamingStats + onDirectCdnStreamingStats: @@ -4120,28 +4120,28 @@ - audioMixingStateChanged + rtcEngine:audioMixingStateChanged:reasonCode: - rtcEngineLocalAudioMixingDidFinish + rtcEngineLocalAudioMixingDidFinish: - rtcEngineDidAudioEffectFinish + rtcEngineDidAudioEffectFinish:soundId: - audioMixingPositionChanged + rtcEngine:audioMixingPositionChanged: @@ -4150,7 +4150,7 @@ - didOccurEncryptionError + rtcEngine:didOccurEncryptionError: @@ -4159,21 +4159,21 @@ - rtmpStreamingChangedToState + rtcEngine:rtmpStreamingChangedToState:state:reason: - rtmpStreamingEventWithUrl + rtcEngine:rtmpStreamingEventWithUrl:eventCode: - rtcEngineTranscodingUpdated + rtcEngineTranscodingUpdated: @@ -4182,7 +4182,7 @@ - channelMediaRelayStateDidChange + rtcEngine:channelMediaRelayStateDidChange:error: @@ -4191,14 +4191,14 @@ - reportAudioVolumeIndicationOfSpeakers + rtcEngine:reportAudioVolumeIndicationOfSpeakers:totalVolume: - activeSpeaker + rtcEngine:activeSpeaker: @@ -4207,7 +4207,7 @@ - facePositionDidChangeWidth + rtcEngine:facePositionDidChangeWidth:previewHeight:faces: @@ -4216,7 +4216,7 @@ - didAudioRouteChanged + rtcEngine:didAudioRouteChanged: @@ -4225,7 +4225,7 @@ - didRemoteSubscribeFallbackToAudioOnly + rtcEngine:didRemoteSubscribeFallbackToAudioOnly:byUid: @@ -4234,14 +4234,14 @@ - lastmileQuality + rtcEngine:lastmileQuality: - lastmileProbeTestResult + rtcEngine:lastmileProbeTestResult: @@ -4250,14 +4250,14 @@ - onLocalAudioSpectrum + onLocalAudioSpectrum: - onRemoteAudioSpectrum + onRemoteAudioSpectrum: @@ -4266,28 +4266,28 @@ - onRecordAudioFrame + onRecordAudioFrame:channelId: - onPlaybackAudioFrame + onPlaybackAudioFrame: - onPlaybackAudioFrameBeforeMixing + onPlaybackAudioFrameBeforeMixing:channelId:uid: - onMixedAudioFrame + onMixedAudioFrame:channelId: @@ -4303,28 +4303,28 @@ - onCaptureVideoFrame + onCaptureVideoFrame:sourceType: - onEncodedVideoFrameReceived + onEncodedVideoFrameReceived:length:info: - onMediaPlayerVideoFrame + onMediaPlayerVideoFrame:mediaPlayerId: - onRenderVideoFrame + onRenderVideoFrame:uid:channelId: @@ -4366,7 +4366,7 @@ - onPreEncodeVideoFrame + onPreEncodeVideoFrame:sourceType: @@ -4375,14 +4375,14 @@ - stateDidChanged + mediaRecorder:stateDidChanged:uid:state:reason: - informationDidUpdated + mediaRecorder:informationDidUpdated:uid:info: @@ -4398,14 +4398,14 @@ - readyToSendMetadataAtTimestamp + readyToSendMetadataAtTimestamp:sourceType: - didMetadataReceived + didMetadataReceived: @@ -4414,21 +4414,21 @@ - cameraFocusDidChangedToRect + rtcEngine:cameraFocusDidChangedToRect: - cameraExposureDidChangedToRect + rtcEngine:cameraExposureDidChangedToRect: - rtcEngineCameraDidReady + rtcEngineCameraDidReady: @@ -4437,14 +4437,14 @@ - receiveStreamMessageFromUid + rtcEngine:receiveStreamMessageFromUid:streamId:data: - didOccurStreamMessageErrorFromUid + rtcEngine:didOccurStreamMessageErrorFromUid:streamId:error:missed:cached: @@ -4483,7 +4483,7 @@ - onEarMonitoringAudioFrame + onEarMonitoringAudioFrame: @@ -4499,14 +4499,14 @@ - didLocalVideoTranscoderErrorWithStream + rtcEngine:didLocalVideoTranscoderErrorWithStream:errorCode: - didTranscodedStreamLayoutInfoUpdatedWithUserId + rtcEngine:didTranscodedStreamLayoutInfoUpdatedWithUserId:videoLayoutInfo: @@ -4515,35 +4515,35 @@ - permissionError + rtcEngine:permissionError: - snapshotTaken + rtcEngine:snapshotTaken:filePath:width:height:errCode: - onContentInspectResult + rtcEngine:contentInspectResult: - didProxyConnected + rtcEngine:didProxyConnected:withUid:proxyType:localProxyIp:elapsed: - onFaceInfo + onFaceInfo: @@ -4560,7 +4560,7 @@ - setScreenCaptureScenario + setScreenCaptureScenario: @@ -4574,7 +4574,7 @@ - startScreenCapture + startScreenCapture: @@ -4588,14 +4588,14 @@ - updateScreenCapture + updateScreenCapture: - startScreenCaptureByDisplayId + startScreenCaptureByDisplayId:regionRect:captureParams: @@ -11533,517 +11533,6 @@ - - - - AgoraVideoProfile - - - - - - - AgoraVideoProfileInvalid - - - - - - - AgoraVideoProfileLandscape120P - - - - - - - AgoraVideoProfileLandscape120P_3 - - - - - - - AgoraVideoProfileLandscape180P - - - - - - - AgoraVideoProfileLandscape180P_3 - - - - - - - AgoraVideoProfileLandscape180P_4 - - - - - - - AgoraVideoProfileLandscape240P - - - - - - - AgoraVideoProfileLandscape240P_3 - - - - - - - AgoraVideoProfileLandscape240P_4 - - - - - - - AgoraVideoProfileLandscape360P - - - - - - - AgoraVideoProfileLandscape360P_3 - - - - - - - AgoraVideoProfileLandscape360P_4 - - - - - - - AgoraVideoProfileLandscape360P_6 - - - - - - - AgoraVideoProfileLandscape360P_7 - - - - - - - AgoraVideoProfileLandscape360P_8 - - - - - - - AgoraVideoProfileLandscape360P_9 - - - - - - - AgoraVideoProfileLandscape360P_10 - - - - - - - AgoraVideoProfileLandscape360P_11 - - - - - - - AgoraVideoProfileLandscape480P - - - - - - - AgoraVideoProfileLandscape480P_3 - - - - - - - AgoraVideoProfileLandscape480P_4 - - - - - - - AgoraVideoProfileLandscape480P_6 - - - - - - - AgoraVideoProfileLandscape480P_8 - - - - - - - AgoraVideoProfileLandscape480P_9 - - - - - - - AgoraVideoProfileLandscape480P_10 - - - - - - - AgoraVideoProfileLandscape720P - - - - - - - AgoraVideoProfileLandscape720P_3 - - - - - - - AgoraVideoProfileLandscape720P_5 - - - - - - - AgoraVideoProfileLandscape720P_6 - - - - - - - AgoraVideoProfileLandscape1080P - - - - - - - AgoraVideoProfileLandscape1080P_3 - - - - - - - AgoraVideoProfileLandscape1080P_5 - - - - - - - AgoraVideoProfileLandscape1440P - - - - - - - AgoraVideoProfileLandscape1440P_2 - - - - - - - AgoraVideoProfileLandscape4K - - - - - - - AgoraVideoProfileLandscape4K_3 - - - - - - - AgoraVideoProfilePortrait120P - - - - - - - AgoraVideoProfilePortrait120P_3 - - - - - - - AgoraVideoProfilePortrait180P - - - - - - - AgoraVideoProfilePortrait180P_3 - - - - - - - AgoraVideoProfilePortrait180P_4 - - - - - - - AgoraVideoProfilePortrait240P - - - - - - - AgoraVideoProfilePortrait240P_3 - - - - - - - AgoraVideoProfilePortrait240P_4 - - - - - - - AgoraVideoProfilePortrait360P - - - - - - - AgoraVideoProfilePortrait360P_3 - - - - - - - AgoraVideoProfilePortrait360P_4 - - - - - - - AgoraVideoProfilePortrait360P_6 - - - - - - - AgoraVideoProfilePortrait360P_7 - - - - - - - AgoraVideoProfilePortrait360P_8 - - - - - - - AgoraVideoProfilePortrait360P_9 - - - - - - - AgoraVideoProfilePortrait360P_10 - - - - - - - AgoraVideoProfilePortrait360P_11 - - - - - - - AgoraVideoProfilePortrait480P - - - - - - - AgoraVideoProfilePortrait480P_3 - - - - - - - AgoraVideoProfilePortrait480P_4 - - - - - - - AgoraVideoProfilePortrait480P_6 - - - - - - - AgoraVideoProfilePortrait480P_8 - - - - - - - AgoraVideoProfilePortrait480P_9 - - - - - - - AgoraVideoProfilePortrait480P_10 - - - - - - - AgoraVideoProfilePortrait720P - - - - - - - AgoraVideoProfilePortrait720P_3 - - - - - - - AgoraVideoProfilePortrait720P_5 - - - - - - - AgoraVideoProfilePortrait720P_6 - - - - - - - AgoraVideoProfilePortrait1080P - - - - - - - AgoraVideoProfilePortrait1080P_3 - - - - - - - AgoraVideoProfilePortrait1080P_5 - - - - - - - AgoraVideoProfilePortrait1440P - - - - - - - AgoraVideoProfilePortrait1440P_2 - - - - - - - AgoraVideoProfilePortrait4K - - - - - - - AgoraVideoProfilePortrait4K_3 - - - - - - - AgoraVideoProfileDEFAULT - - - @@ -12616,4 +12105,4 @@ - + \ No newline at end of file diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap index e7cfc64b64f..299bc6b503c 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -65,7 +65,7 @@ - AgoraRtcEngineKit(Ex) + AgoraRtcEngineKit @@ -205,7 +205,7 @@ - AgoraBaseSpatialAudioKit + AgoraSpatialAudioKitBase @@ -243,14 +243,14 @@ - sharedEngineWithAppId + sharedEngineWithAppId:delegate: - sharedEngineWithConfig + sharedEngineWithConfig:delegate: @@ -264,91 +264,91 @@ - setChannelProfile + setChannelProfile: - setClientRole [1/2] + setClientRole: - setClientRole [2/2] + setClientRole:options: - joinChannelByToken [1/4] + joinChannelByToken:channelId:info:uid:joinSuccess: - joinChannelByToken [2/4] + joinChannelByToken:channelId:uid:mediaOptions:joinSuccess: - joinChannelByToken [3/4] + joinChannelByToken:channelId:userAccount:joinSuccess: - joinChannelByToken [4/4] + joinChannelByToken:channelId:userAccount:mediaOptions:joinSuccess: - updateChannelWithMediaOptions + updateChannelWithMediaOptions: - leaveChannel [1/2] + leaveChannel: - leaveChannel [2/2] + leaveChannel:leaveChannelBlock: - preloadChannelByToken + preloadChannelByToken:channelId:uid: - preloadChannelByTokenWithUserAccount + preloadChannelByTokenWithUserAccount:channelId:userAccount: - renewToken + renewToken: @@ -362,28 +362,28 @@ - registerLocalUserAccountWithAppID + registerLocalUserAccountWithAppID:userAccount: - getUserInfoByUid + getUserInfoByUid:withError: - getUserInfoByUserAccount + getUserInfoByUserAccount:withError: - enableWebSdkInteroperability + enableWebSdkInteroperability: @@ -397,7 +397,7 @@ - startMediaRenderingTracingEx + startMediaRenderingTracingEx: @@ -413,35 +413,35 @@ - createMediaPlayerWithDelegate + createMediaPlayerWithDelegate: - destroyMediaPlayer + destroyMediaPlayer: - enableAutoRemoveCache + enableAutoRemoveCache: - adjustPlayoutVolume + adjustPlayoutVolume: - adjustPublishSignalVolume + adjustPublishSignalVolume: @@ -546,21 +546,21 @@ - getStreamByIndex + getStreamByIndex: - mute + mute: - open + open:startPos: @@ -595,7 +595,7 @@ - removeCacheByUri + removeCacheByUri: @@ -616,105 +616,105 @@ - seekToPosition + seekToPosition: - selectAudioTrack + selectAudioTrack: - selectAudioTrack + selectAudioTrack: - selectMultiAudioTrack + selectMultiAudioTrack:publishTrackIndex: - setAudioDualMonoMode + setAudioDualMonoMode: - setAudioPitch + setAudioPitch: - setCacheDir + setCacheDir: - setLoopCount + setLoopCount: - setMaxCacheFileCount + setMaxCacheFileCount: - setMaxCacheFileSize + setMaxCacheFileSize: - setPlaybackSpeed + setPlaybackSpeed: - setPlayerOption [1/2] + setPlayerOption:value: - setPlayerOption [2/2] + setPlayerOptionString:value: - setRenderMode + setRenderMode: - setView + setView: @@ -735,14 +735,14 @@ - openWithAgoraCDNSrc + openWithAgoraCDNSrc:startPos: - openWithMediaSource + openWithMediaSource: @@ -763,56 +763,56 @@ - switchAgoraCDNLineByIndex + switchAgoraCDNLineByIndex: - enableAutoSwitchAgoraCDN + enableAutoSwitchAgoraCDN: - switchAgoraCDNSrc + switchAgoraCDNSrc:syncPts: - renewAgoraCDNSrcToken + renewAgoraCDNSrcToken:ts: - switchSrc + switchSrc:syncPts: - preloadSrc + preloadSrc:startPos: - unloadSrc + unloadSrc: - playPreloadedSrc + playPreloadedSrc: @@ -835,112 +835,112 @@ - setAudioProfile [1/2] + setAudioProfile:scenario: - setAudioProfile [2/2] + setAudioProfile: - setAudioScenario + setAudioScenario: - adjustLoopbackSignalVolume + adjustLoopbackSignalVolume: - adjustRecordingSignalVolume + adjustRecordingSignalVolume: - adjustUserPlaybackSignalVolume + adjustUserPlaybackSignalVolume:volume: - adjustPlaybackSignalVolume + adjustPlaybackSignalVolume: - adjustCustomAudioPlayoutVolume + adjustCustomAudioPlayoutVolume:volume: - adjustCustomAudioPublishVolume + adjustCustomAudioPublishVolume:volume: - enableLocalAudio + enableLocalAudio: - muteLocalAudioStream + muteLocalAudioStream: - muteRemoteAudioStream + muteRemoteAudioStream:mute: - muteAllRemoteAudioStreams + muteAllRemoteAudioStreams: - muteRecordingSignal + muteRecordingSignal: - setSubscribeAudioBlocklist + setSubscribeAudioBlocklist: - setSubscribeAudioAllowlist + setSubscribeAudioAllowlist: @@ -963,140 +963,140 @@ - initWithSize + initWithSize:frameRate:bitrate:orientationMode:mirrorMode: - initWithWidth + initWithWidth:height:frameRate:bitrate:orientationMode:mirrorMode: - setSubscribeVideoBlocklist + setSubscribeVideoBlocklist: - setSubscribeVideoAllowlist + setSubscribeVideoAllowlist: - setVideoEncoderConfiguration + setVideoEncoderConfiguration: - setVideoScenario + setVideoScenario: - setupLocalVideo + setupLocalVideo: - setupRemoteVideo + setupRemoteVideo: - setLocalRenderMode [1/2] + setLocalRenderMode:mode: - setLocalRenderMode [2/2] + setLocalRenderMode:mirror: - setRemoteRenderMode + setRemoteRenderMode:mode:mirror: - startPreview [1/2] + startPreview - startPreview [2/2] + startPreview: - stopPreview [1/2] + stopPreview - stopPreview [2/2] + stopPreview: - enableLocalVideo + enableLocalVideo: - muteLocalVideoStream + muteLocalVideoStream: - muteRemoteVideoStream + muteRemoteVideoStream:mute: - muteAllRemoteVideoStreams + muteAllRemoteVideoStreams: - setVideoProfile + setVideoResolution:andFrameRate:bitrate: @@ -1105,14 +1105,14 @@ - setAdvancedAudioOptions + setAdvancedAudioOptions: - setAINSMode + setAINSMode:mode: @@ -1121,77 +1121,77 @@ - setBeautyEffectOptions [1/2] + setBeautyEffectOptions:options: - setBeautyEffectOptions [2/2] + setBeautyEffectOptions:options:sourceType: - enableVirtualBackground [1/2] + enableVirtualBackground:backData:segData: - enableVirtualBackground [2/2] + enableVirtualBackground:backData:segData:sourceType: - setLowlightEnhanceOptions [1/2] + setLowlightEnhanceOptions:options: - setLowlightEnhanceOptions [2/2] + setLowlightEnhanceOptions:options:sourceType: - setVideoDenoiserOptions [1/2] + setVideoDenoiserOptions:options: - setVideoDenoiserOptions [2/2] + setVideoDenoiserOptions:options:sourceType: - setColorEnhanceOptions [1/2] + setColorEnhanceOptions:options: - setColorEnhanceOptions [2/2] + setColorEnhanceOptions:options:sourceType: - setFaceInfoDelegate + setFaceInfoDelegate: @@ -1200,133 +1200,133 @@ - addVideoWatermarkEx + addVideoWatermarkEx:options:connection: - adjustUserPlaybackSignalVolumeEx + adjustUserPlaybackSignalVolumeEx:volume:connection: - clearVideoWatermarkEx + clearVideoWatermarkEx: - enableAudioVolumeIndicationEx + enableAudioVolumeIndicationEx:smooth:reportVad:connection: - enableLoopbackRecordingEx + enableLoopbackRecordingEx:deviceName:connection: - getConnectionStateEx + getConnectionStateEx: - getUserInfoByUidEx + getUserInfoWithUserId:userInfo:channelId:localUserAccount: - getUserInfoByUserAccountEx + getUserInfoWithUserAccount:userInfo:channelId:localUserAccount: - joinChannelExByToken [1/2] + joinChannelExByToken:connection:delegate:mediaOptions:joinSuccess: - joinChannelExByToken [2/2] + joinChannelExByToken:channelId:userAccount:delegate:mediaOptions:joinSuccess: - leaveChannelEx [1/2] + leaveChannelEx:leaveChannelBlock: - leaveChannelEx [2/2] + leaveChannelEx:options:leaveChannelBlock: - muteRemoteAudioStreamEx + muteRemoteAudioStreamEx:mute:connection: - muteRemoteVideoStreamEx + muteRemoteVideoStreamEx:mute:connection: - sendCustomReportMessageEx + sendCustomReportMessageEx:category:event:label:value:connection: - setRemoteRenderModeEx + setRemoteRenderModeEx:mode:mirror:connection: - setRemoteVoice3DPositionEx + setRemoteVoice3DPositionEx:azimuth:elevation:distance:connection: - setRemoteVideoStreamEx + setRemoteVideoStreamEx:type:connection: - setRemoteVideoSubscriptionOptionsEx + setRemoteVideoSubscriptionOptionsEx:options:connection: @@ -1340,161 +1340,161 @@ - setRemoteVoicePositionEx + setRemoteVoicePosition:pan:gain:connection: - setSubscribeAudioBlocklistEx + setSubscribeAudioBlocklistEx:connection: - setSubscribeAudioAllowlistEx + setSubscribeAudioAllowlistEx:connection: - setSubscribeVideoBlocklistEx + setSubscribeVideoBlocklistEx:connection: - setSubscribeVideoAllowlistEx + setSubscribeVideoAllowlistEx:connection: - setupRemoteVideoEx + setupRemoteVideoEx:connection: - setVideoEncoderConfigurationEx + setVideoEncoderConfigurationEx:connection: - takeSnapshotEx + takeSnapshotEx:uid:filePath: - updateChannelExWithMediaOptions + updateChannelExWithMediaOptions:connection: - updatePreloadChannelToken + updatePreloadChannelToken: - startRtmpStreamWithoutTranscodingEx + startRtmpStreamWithoutTranscodingEx:connection: - startRtmpStreamWithTranscodingEx + startRtmpStreamWithTranscodingEx:transcoding:connection: - updateRtmpTranscodingEx + updateRtmpTranscodingEx:connection: - stopRtmpStreamEx + stopRtmpStreamEx:connection: - startOrUpdateChannelMediaRelayEx + startOrUpdateChannelMediaRelayEx:connection: - pauseAllChannelMediaRelayEx + pauseAllChannelMediaRelayEx: - muteLocalAudioStreamEx + muteLocalAudioStreamEx:connection: - muteLocalVideoStreamEx + muteLocalVideoStreamEx:connection: - muteAllRemoteAudioStreamsEx + muteAllRemoteAudioStreamsEx:connection: - muteAllRemoteVideoStreamsEx + muteAllRemoteVideoStreamsEx:connection: - muteRecordingSignalEx + muteRecordingSignalEx:connection: - stopChannelMediaRelayEx + stopChannelMediaRelayEx: - resumeAllChannelMediaRelayEx + resumeAllChannelMediaRelayEx: @@ -1503,49 +1503,49 @@ - getScreenCaptureSourcesWithThumbSize + getScreenCaptureSourcesWithThumbSize:iconSize:includeScreen: - startScreenCaptureByDisplayId + startScreenCaptureByDisplayId:regionRect:captureParams: - startScreenCapture + startScreenCapture:config: - startScreenCaptureByWindowId + startScreenCaptureByWindowId:regionRect:captureParams: - setScreenCaptureScenario + setScreenCaptureScenario: - updateScreenCaptureParameters + updateScreenCaptureParameters: - updateScreenCaptureRegion + updateScreenCaptureRegion: @@ -1559,7 +1559,7 @@ - stopScreenCapture [2/2] + stopScreenCapture: @@ -1568,27 +1568,27 @@ - setAudioMixingDualMonoMode + setAudioMixingDualMonoMode: - setAudioMixingPlaybackSpeed + setAudioMixingPlaybackSpeed: - startAudioMixing [1/2] + startAudioMixing:loopback:cycle: - startAudioMixing [2/2] + startAudioMixing:loopback:cycle:startPos: @@ -1616,21 +1616,21 @@ - adjustAudioMixingVolume + adjustAudioMixingVolume: - adjustAudioMixingPlayoutVolume + adjustAudioMixingPlayoutVolume: - adjustAudioMixingPublishVolume + adjustAudioMixingPublishVolume: @@ -1672,14 +1672,14 @@ - setAudioMixingPitch + setAudioMixingPitch: - setAudioMixingPosition + setAudioMixingPosition: @@ -1695,49 +1695,49 @@ - setEffectsVolume + setEffectsVolume: - setVolumeOfEffect + setVolumeOfEffect:withVolume: - getVolumeOfEffect + getVolumeOfEffect: - playEffect [1/3] + playEffect:filePath:loopCount:pitch:pan:gain: - playEffect [2/3] + playEffect:filePath:loopCount:pitch:pan:gain:publish: - playEffect [3/3] + playEffect:filePath:loopCount:pitch:pan:gain:publish:startPos: - stopEffect + stopEffect: @@ -1751,21 +1751,21 @@ - preloadEffect + preloadEffect:filePath: - unloadEffect + unloadEffect: - pauseEffect + pauseEffect: @@ -1779,7 +1779,7 @@ - resumeEffect + resumeEffect: @@ -1793,21 +1793,21 @@ - setEffectPosition + setEffectPosition:pos: - getEffectDuration + getEffectDuration: - getEffectCurrentPosition + getEffectCurrentPosition: @@ -1816,7 +1816,7 @@ - startRhythmPlayer + startRhythmPlayer:sound2:config: @@ -1830,7 +1830,7 @@ - configRhythmPlayer + configRhythmPlayer: @@ -1839,7 +1839,7 @@ - didRhythmPlayerStateChanged + rtcEngine:didRhythmPlayerStateChanged:reason: @@ -1848,70 +1848,70 @@ - enableVoiceAITuner + enableVoiceAITuner:type: - setLocalVoicePitch + setLocalVoicePitch: - setLocalVoiceEqualizationOfBandFrequency + setLocalVoiceEqualizationOfBandFrequency:withGain: - setLocalVoiceReverbOfType + setLocalVoiceReverbOfType:withValue: - setVoiceBeautifierPreset + setVoiceBeautifierPreset: - setVoiceBeautifierParameters + setVoiceBeautifierParameters:param1:param2: - setAudioEffectPreset + setAudioEffectPreset: - setAudioEffectParameters + setAudioEffectParameters:param1:param2: - setLocalVoiceFormant + setLocalVoiceFormant: - setVoiceConversionPreset + setVoiceConversionPreset: @@ -1920,21 +1920,21 @@ - enableSoundPositionIndication + enableSoundPositionIndication: - setRemoteVoice3DPosition + setRemoteVoice3DPosition:azimuth:elevation:distance: - setRemoteVoicePosition + setRemoteVoicePosition:pan:gain: @@ -1943,77 +1943,77 @@ - muteLocalAudioStream + muteLocalAudioStream: - muteRemoteAudioStream + muteRemoteAudioStream:mute: - muteAllRemoteAudioStreams + muteAllRemoteAudioStreams: - setAudioRecvRange + setAudioRecvRange: - setDistanceUnit + setDistanceUnit: - setMaxAudioRecvCount + setMaxAudioRecvCount: - updatePlayerPositionInfo + updatePlayerPositionInfo:positionInfo: - updateSelfPosition + updateSelfPosition:axisForward:axisRight:axisUp: - setZones + setZones: - setPlayerAttenuation + setPlayerAttenuation:playerId:forceSet: - setRemoteAudioAttenuation + setRemoteAudioAttenuation:userId:forceSet: @@ -2029,7 +2029,7 @@ - sharedLocalSpatialAudioWithConfig + sharedLocalSpatialAudioWithConfig: @@ -2050,14 +2050,14 @@ - removeRemotePosition + removeRemotePosition: - updateRemotePosition + updateRemotePosition:positionInfo: @@ -2066,21 +2066,21 @@ - enableSpatialAudio + enableSpatialAudio: - setRemoteUserSpatialAudioParams + setRemoteUserSpatialAudioParams:params: - setSpatialAudioParams + setSpatialAudioParams: @@ -2154,35 +2154,35 @@ - startRtmpStreamWithoutTranscoding + startRtmpStreamWithoutTranscoding: - startRtmpStreamWithTranscoding + startRtmpStreamWithTranscoding:transcoding: - updateRtmpTranscoding + updateRtmpTranscoding: - stopRtmpStream + stopRtmpStream: - addUser + addUser: @@ -2203,42 +2203,42 @@ - removeUser + removeUser: - setAdvancedFeatures + setAdvancedFeatures:opened: - setDirectCdnStreamingAudioConfiguration + setDirectCdnStreamingAudioConfiguration: - setDirectCdnStreamingVideoConfiguration + setDirectCdnStreamingVideoConfiguration: - setLiveTranscoding + setLiveTranscoding: - startDirectCdnStreaming + startDirectCdnStreaming:publishUrl:mediaOptions: @@ -2276,7 +2276,7 @@ - startOrUpdateChannelMediaRelay + startOrUpdateChannelMediaRelay: @@ -2290,14 +2290,14 @@ - setDestChannelInfo + setDestinationInfo:forChannelName: - removeDestinationInfoForChannelName + removeDestinationInfoForChannelName: @@ -2306,7 +2306,7 @@ - enableAudioVolumeIndication + enableAudioVolumeIndication:smooth:reportVad: @@ -2315,42 +2315,42 @@ - enableInEarMonitoring [1/2] + enableInEarMonitoring: - enableInEarMonitoring [2/2] + enableInEarMonitoring:includeAudioFilters: - setEarMonitoringAudioFrameParametersWithSampleRate + setEarMonitoringAudioFrameParametersWithSampleRate:channel:mode:samplesPerCall: - setInEarMonitoringVolume + setInEarMonitoringVolume: - setHeadphoneEQParameters + setHeadphoneEQParameters:highGain: - setHeadphoneEQPreset + setHeadphoneEQPreset: @@ -2359,57 +2359,57 @@ - enableDualStreamMode [1/2] + enableDualStreamMode: - + enableDualStreamMode:enabled: - enableDualStreamMode [2/2] + enableDualStreamMode:streamConfig: - enableDualStreamModeEx + enableDualStreamModeEx:streamConfig:connection: - setDualStreamMode [1/2] + setDualStreamMode: - setDualStreamMode [2/2] + setDualStreamMode:streamConfig: - setDualStreamModeEx + setDualStreamModeEx:streamConfig:connection: - setRemoteVideoStream + setRemoteVideoStream:type: - setRemoteDefaultVideoStreamType + setRemoteDefaultVideoStreamType: @@ -2418,7 +2418,7 @@ - setRemoteSubscribeFallbackOption + setRemoteSubscribeFallbackOption: @@ -2427,7 +2427,7 @@ - startEchoTestWithConfig + startEchoTestWithConfig: @@ -2441,7 +2441,7 @@ - startLastmileProbeTest + startLastmileProbeTest: @@ -2464,28 +2464,28 @@ - destroyCustomVideoTrack + destroyCustomVideoTrack: - setExternalVideoSource + setExternalVideoSource:useTexture:sourceType: - pushExternalVideoFrame [1/2] + pushExternalVideoFrame:videoTrackId: - pushExternalVideoFrame [2/2] + pushExternalVideoFrame: @@ -2501,77 +2501,77 @@ - createCustomAudioTrack + createCustomAudioTrack:config: - destroyCustomAudioTrack + destroyCustomAudioTrack: - enableCustomAudioLocalPlayback + enableCustomAudioLocalPlayback:enabled: - setExternalAudioSource [1/2] + setExternalAudioSource:sampleRate:channels: - setExternalAudioSource [2/2] + setExternalAudioSource:sampleRate:channels:localPlayback:publish: - pushExternalAudioFrameSampleBuffer [1/2] + pushExternalAudioFrameSampleBuffer: - pushExternalAudioFrameSampleBuffer [2/2] + pushExternalAudioFrameSampleBuffer:sampleRate:channels:trackId: - pushExternalAudioFrameRawData + pushExternalAudioFrameRawData:samples:sourceId:timestamp: - pushExternalAudioFrameRawData + pushExternalAudioFrameRawData:samples:sampleRate:channels:trackId:timestamp: - pushCaptureAudioFrame1 + pushCaptureAudioFrame: - pushReverseAudioFrame1 + pushReverseAudioFrame: @@ -2580,21 +2580,21 @@ - enableExternalAudioSink + enableExternalAudioSink:sampleRate:channels: - pullPlaybackAudioFrameRawData + pullPlaybackAudioFrameRawData:lengthInByte: - pullPlaybackAudioFrameSampleBufferByLengthInByte + pullPlaybackAudioFrameSampleBufferByLengthInByte: @@ -2603,28 +2603,28 @@ - registerAudioEncodedFrameObserver + setAudioEncodedFrameDelegate:config: - onPlaybackEncodedAudioFrame + onPlaybackEncodedAudioFrame:info: - onRecordEncodedAudioFrame + onRecordEncodedAudioFrame:info: - onMixedEncodedAudioFrame + onMixedEncodedAudioFrame:info: @@ -2633,42 +2633,42 @@ - setAudioFrameDelegate + setAudioFrameDelegate: - setRecordingAudioFrameParametersWithSampleRate + setRecordingAudioFrameParametersWithSampleRate:channel:mode:samplesPerCall: - setPlaybackAudioFrameParametersWithSampleRate + setPlaybackAudioFrameParametersWithSampleRate:channel:mode:samplesPerCall: - setMixedAudioFrameParametersWithSampleRate + setMixedAudioFrameParametersWithSampleRate:channel:samplesPerCall: - setPlaybackAudioFrameBeforeMixingParametersWithSampleRate + setPlaybackAudioFrameBeforeMixingParametersWithSampleRate:channel: - didReceiveAudioFrame + AgoraRtcMediaPlayer:didReceiveAudioFrame: @@ -2677,28 +2677,28 @@ - registerVideoEncodedFrameObserver + setEncodedVideoFrameDelegate: - setVideoFrameDelegate [1/2] + setVideoFrameDelegate: - setVideoFrameDelegate [2/2] + setVideoFrameDelegate: - didReceiveVideoFrame + AgoraRtcMediaPlayer:didReceiveVideoFrame: @@ -2707,70 +2707,70 @@ - enableExtensionWithVendor + enableExtensionWithVendor:extension:enabled:sourceType: - getExtensionPropertyWithVendor [1/2] + getExtensionPropertyWithVendor:extension:key: - getExtensionPropertyWithVendor [2/2] + getExtensionPropertyWithVendor:extension:key:sourceType: - registerExtensionWithVendor + registerExtensionWithVendor:extension:sourceType: - setExtensionPropertyWithVendor + setExtensionPropertyWithVendor:extension:key:value: - setExtensionProviderPropertyWithVendor + setExtensionProviderPropertyWithVendor:key:value: - onExtensionEventWithContext + onEventWithContext:key:value: - onExtensionStartedWithContext + onExtensionStartedWithContext: - onExtensionStoppedWithContext + onExtensionStoppedWithContext: - onExtensionErrorWithContext + onExtensionErrorWithContext:error:message: @@ -2779,7 +2779,7 @@ - startLocalVideoTranscoder + startLocalVideoTranscoder: @@ -2793,7 +2793,7 @@ - updateLocalTranscoderConfiguration + updateLocalTranscoderConfiguration: @@ -2802,14 +2802,14 @@ - setMediaMetadataDelegate + setMediaMetadataDelegate:withType: - setMediaMetadataDataSource + setMediaMetadataDataSource:withType: @@ -2818,14 +2818,14 @@ - addVideoWatermark [1/2] + addVideoWatermark: - addVideoWatermark [2/2] + addVideoWatermark:options: @@ -2841,14 +2841,14 @@ - enableEncryption + enableEncryption:encryptionConfig: - enableEncryptionEx + enableEncryptionEx:encryptionConfig:connection: @@ -2857,14 +2857,14 @@ - startAudioRecording [1/2] + startAudioRecording:quality: - startAudioRecording [2/2] + startAudioRecordingWithConfig: @@ -2880,35 +2880,35 @@ - createMediaRecorder + createMediaRecorder: - destroyMediaRecorder + destroyMediaRecorder: - enableMainQueueDispatch + enableMainQueueDispatch: - setMediaRecorderDelegate + setMediaRecorderDelegate: - startRecording + startRecording: @@ -2924,84 +2924,84 @@ - enumerateDevices + enumerateDevices: - followSystemPlaybackDevice + followSystemPlaybackDevice: - followSystemRecordingDevice + followSystemRecordingDevice: - getDeviceInfo + getDeviceInfo: - getDeviceVolume + getDeviceVolume: - getDefaultAudioDevice + getDefaultAudioDevice: - monitorDeviceChange + monitorDeviceChange: - setDevice + setDevice:deviceId: - setDeviceVolume + setDeviceVolume:volume: - startAudioDeviceLoopbackTest + startAudioDeviceLoopbackTest: - startPlaybackDeviceTest + startPlaybackDeviceTest: - startRecordingDeviceTest + startRecordingDeviceTest: @@ -3031,35 +3031,35 @@ - createDataStream [1/2] + createDataStream:reliable:ordered: - createDataStream [2/2] + createDataStream:config: - createDataStreamEx [1/2] + createDataStreamEx:reliable:ordered:connection: - createDataStreamEx [2/2] + createDataStreamEx:config:connection: - sendStreamMessage + sendStreamMessage:data: @@ -3075,21 +3075,21 @@ - enableAudioSpectrumMonitor + enableAudioSpectrumMonitor: - registerAudioSpectrumDelegate + registerAudioSpectrumDelegate: - unregisterAudioSpectrumDelegate + unregisterAudioSpectrumDelegate: @@ -3098,14 +3098,14 @@ - enableEchoCancellationExternal + enableEchoCancellationExternal:audioSourceDelay: - enableLoopbackRecording + enableLoopbackRecording:deviceName: @@ -3114,14 +3114,14 @@ - startCameraCapture + startCameraCapture:config: - stopCameraCapture + stopCameraCapture: @@ -3130,7 +3130,7 @@ - enableCameraCenterStage + enableCameraCenterStage: @@ -3143,17 +3143,24 @@ + + + + setCameraCapturerConfiguration + + + - setLocalVideoMirrorMode + setLocalVideoMirrorMode: - setRemoteVideoSubscriptionOptions + setRemoteVideoSubscriptionOptions:options: @@ -3162,21 +3169,21 @@ - takeSnapshot + takeSnapshot:filePath: - enableContentInspect + enableContentInspect:config: - enableContentInspectEx + enableContentInspectEx:config:connection: @@ -3192,14 +3199,14 @@ - enableMainQueueDispatch + enableMainQueueDispatch: - enableVideoImageSource + enableVideoImageSource:options: @@ -3220,28 +3227,28 @@ - removeInjectStreamUrl + removeInjectStreamUrl: - setAVSyncSource + setAVSyncSource:uid: - setParameters + setParameters: - complain + complain:description: @@ -3255,14 +3262,14 @@ - getCallIdEx + getCallIdEx: - getErrorDescription + getErrorDescription: @@ -3283,7 +3290,7 @@ - isFeatureAvailableOnDevice + isFeatureAvailableOnDevice: @@ -3297,56 +3304,56 @@ - rate + rate:rating:description: - setLocalAccessPoint + setLocalAccessPoint: - setCloudProxy + setCloudProxy: - setLogFile + setLogFile: - setLogFileSize + setLogFileSize: - setLogFilter + setLogFilter: - setLogLevel + setLogLevel: - sendCustomReportMessage + sendCustomReportMessage:category:event:label:value: @@ -3364,147 +3371,147 @@ - connectionStateChanged + rtcEngine:connectionStateChanged:reason: - didOccurError + rtcEngine:didOccurError: - firstRemoteAudioFrameDecodedOfUid + rtcEngine:firstRemoteAudioFrameDecodedOfUid:elapsed: - firstRemoteAudioFrameOfUid + rtcEngine:firstRemoteAudioFrameOfUid:elapsed: - didJoinChannel + rtcEngine:didJoinChannel:withUid:elapsed: - didRejoinChannel + rtcEngine:didRejoinChannel:withUid:elapsed: - didLeaveChannelWithStats + rtcEngine:didLeaveChannelWithStats: - didClientRoleChanged + rtcEngine:didClientRoleChanged:newRole:newRoleOptions: - didClientRoleChangeFailed + rtcEngine:didClientRoleChangeFailed:currentRole: - didJoinedOfUid + rtcEngine:didJoinedOfUid:elapsed: - didAudioMuted + rtcEngine:didAudioMuted:byUid: - didOfflineOfUid + rtcEngine:didOfflineOfUid:reason: - networkTypeChanged + rtcEngine:networkTypeChanged: - rtcEngineConnectionDidInterrupted + rtcEngineConnectionDidInterrupted: - rtcEngineConnectionDidLost + rtcEngineConnectionDidLost: - rtcEngineConnectionDidBanned + rtcEngineConnectionDidBanned: - tokenPrivilegeWillExpire + rtcEngine:tokenPrivilegeWillExpire: - rtcEngineRequestToken + rtcEngineRequestToken: - didLocalUserRegisteredWithUserId + rtcEngine:didLocalUserRegisteredWithUserId:userAccount: - didUserInfoUpdatedWithUserId + rtcEngine:didUserInfoUpdatedWithUserId:userInfo: - uplinkNetworkInfoUpdate + rtcEngine:uplinkNetworkInfoUpdate: @@ -3518,7 +3525,7 @@ - videoRenderingTracingResultOfUid + rtcEngine:videoRenderingTracingResultOfUid:currentEvent:tracingInfo: @@ -3527,56 +3534,56 @@ - localAudioStateChanged + rtcEngine:localAudioStateChanged:reason: - localVideoStateChangedOfState + rtcEngine:localVideoStateChangedOfState:reason:sourceType: - rtcEngineVideoDidStop + rtcEngineVideoDidStop: - firstLocalAudioFramePublished + rtcEngine:firstLocalAudioFramePublished: - firstLocalVideoFramePublishedWithElapsed + rtcEngine:firstLocalVideoFramePublishedWithElapsed:sourceType: - firstLocalVideoFrameWithSize + rtcEngine:firstLocalVideoFrameWithSize:elapsed:sourceType: - didAudioPublishStateChange + rtcEngine:didAudioPublishStateChange:oldState:newState:elapseSinceLastState: - didVideoPublishStateChange + rtcEngine:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState: @@ -3585,70 +3592,70 @@ - didAudioSubscribeStateChange + rtcEngine:didAudioSubscribeStateChange:uid:oldState:newState:elapseSinceLastState: - firstRemoteVideoDecodedOfUid + rtcEngine:firstRemoteVideoDecodedOfUid:size:elapsed: - firstRemoteVideoFrameOfUid + rtcEngine:firstRemoteVideoFrameOfUid:size:elapsed: - remoteAudioStateChangedOfUid + rtcEngine:remoteAudioStateChangedOfUid:state:reason:elapsed: - remoteVideoStateChangedOfUid + rtcEngine:remoteVideoStateChangedOfUid:state:reason:elapsed: - didLocalVideoEnabled + rtcEngine:didLocalVideoEnabled:byUid: - didVideoEnabled + rtcEngine:didVideoEnabled:byUid: - didVideoMuted + rtcEngine:didVideoMuted:byUid: - videoSizeChangedOfSourceType + rtcEngine:videoSizeChangedOfSourceType:uid:size:rotation: - didVideoSubscribeStateChange + rtcEngine:didVideoSubscribeStateChange:uid:oldState:newState:elapseSinceLastState: @@ -3657,21 +3664,21 @@ - reportRtcStats + rtcEngine:reportRtcStats: - networkQuality + rtcEngine:networkQuality:txQuality:rxQuality: - localAudioStats + rtcEngine:localAudioStats: @@ -3685,42 +3692,42 @@ - localVideoStats + rtcEngine:localVideoStats:sourceType: - remoteAudioStats + rtcEngine:remoteAudioStats: - audioTransportStatsOfUid + rtcEngine:audioTransportStatsOfUid:delay:lost:rxKBitRate: - remoteVideoStats + rtcEngine:remoteVideoStats: - videoTransportStatsOfUid + rtcEngine:videoTransportStatsOfUid:delay:lost:rxKBitRate: - audioQualityOfUid + audioQualityBlock: @@ -3736,49 +3743,49 @@ - volumeIndicationDidReceive + AgoraRtcMediaPlayer:volumeIndicationDidReceive: - didReceiveData + AgoraRtcMediaPlayer:didReceiveData:length: - didOccurEvent + AgoraRtcMediaPlayer:didOccurEvent:elapsedTime:message: - cacheStats + AgoraRtcMediaPlayer:cacheStats: - playbackStats + AgoraRtcMediaPlayer:playbackStats: - didChangedToState + AgoraRtcMediaPlayer:didChangedToState:reason: - didChangedToPosition + AgoraMediaPlayer:didChangedToPosition:atTimestamp: @@ -3799,21 +3806,21 @@ - didPlayBufferUpdated + AgoraRtcMediaPlayer:didPlayBufferUpdated: - didPreloadEvent + AgoraRtcMediaPlayer:didPreloadEvent: - didReceivePixelBuffer + AgoraRtcMediaPlayer:didReceivePixelBuffer: @@ -3827,14 +3834,14 @@ - didChangedPlayerSrcInfoFrom + AgoraRtcMediaPlayer:playerSrcInfoDidChange:from: - infoUpdated + AgoraRtcMediaPlayer:infoUpdated: @@ -3843,14 +3850,14 @@ - onDirectCdnStreamingStateChanged + onDirectCdnStreamingStateChanged:reason:message: - onDirectCdnStreamingStats + onDirectCdnStreamingStats: @@ -3859,28 +3866,28 @@ - audioMixingStateChanged + rtcEngine:audioMixingStateChanged:reasonCode: - rtcEngineLocalAudioMixingDidFinish + rtcEngineLocalAudioMixingDidFinish: - rtcEngineDidAudioEffectFinish + rtcEngineDidAudioEffectFinish:soundId: - audioMixingPositionChanged + rtcEngine:audioMixingPositionChanged: @@ -3889,7 +3896,7 @@ - didOccurEncryptionError + rtcEngine:didOccurEncryptionError: @@ -3898,21 +3905,21 @@ - rtmpStreamingChangedToState + rtcEngine:rtmpStreamingChangedToState:state:reason: - rtmpStreamingEventWithUrl + rtcEngine:rtmpStreamingEventWithUrl:eventCode: - rtcEngineTranscodingUpdated + rtcEngineTranscodingUpdated: @@ -3921,7 +3928,7 @@ - channelMediaRelayStateDidChange + rtcEngine:channelMediaRelayStateDidChange:error: @@ -3930,14 +3937,14 @@ - reportAudioVolumeIndicationOfSpeakers + rtcEngine:reportAudioVolumeIndicationOfSpeakers:totalVolume: - activeSpeaker + rtcEngine:activeSpeaker: @@ -3946,7 +3953,7 @@ - didAudioRouteChanged + rtcEngine:didAudioRouteChanged: @@ -3955,7 +3962,7 @@ - didRemoteSubscribeFallbackToAudioOnly + rtcEngine:didRemoteSubscribeFallbackToAudioOnly:byUid: @@ -3964,14 +3971,14 @@ - lastmileQuality + rtcEngine:lastmileQuality: - lastmileProbeTestResult + rtcEngine:lastmileProbeTestResult: @@ -3980,14 +3987,14 @@ - onLocalAudioSpectrum + onLocalAudioSpectrum: - onRemoteAudioSpectrum + onRemoteAudioSpectrum: @@ -3996,28 +4003,28 @@ - onRecordAudioFrame + onRecordAudioFrame:channelId: - onPlaybackAudioFrame + onPlaybackAudioFrame: - onPlaybackAudioFrameBeforeMixing + onPlaybackAudioFrameBeforeMixing:channelId:uid: - onMixedAudioFrame + onMixedAudioFrame:channelId: @@ -4054,28 +4061,28 @@ - onCaptureVideoFrame + onCaptureVideoFrame:sourceType: - onEncodedVideoFrameReceived + onEncodedVideoFrameReceived:length:info: - onMediaPlayerVideoFrame + onMediaPlayerVideoFrame:mediaPlayerId: - onRenderVideoFrame + onRenderVideoFrame:uid:channelId: @@ -4117,7 +4124,7 @@ - onPreEncodeVideoFrame + onPreEncodeVideoFrame:sourceType: @@ -4126,14 +4133,14 @@ - stateDidChanged + mediaRecorder:stateDidChanged:uid:state:reason: - informationDidUpdated + mediaRecorder:informationDidUpdated:uid:info: @@ -4149,14 +4156,14 @@ - readyToSendMetadataAtTimestamp + readyToSendMetadataAtTimestamp:sourceType: - didMetadataReceived + didMetadataReceived: @@ -4165,7 +4172,7 @@ - stateChanged + rtcEngine:device:type:stateChanged: @@ -4174,14 +4181,14 @@ - receiveStreamMessageFromUid + rtcEngine:receiveStreamMessageFromUid:streamId:data: - didOccurStreamMessageErrorFromUid + rtcEngine:didOccurStreamMessageErrorFromUid:streamId:error:missed:cached: @@ -4220,7 +4227,7 @@ - onEarMonitoringAudioFrame + onEarMonitoringAudioFrame: @@ -4236,7 +4243,7 @@ - didLocalVideoTranscoderErrorWithStream + rtcEngine:didLocalVideoTranscoderErrorWithStream:errorCode: @@ -4245,35 +4252,35 @@ - permissionError + rtcEngine:permissionError: - snapshotTaken + rtcEngine:snapshotTaken:filePath:width:height:errCode: - onContentInspectResult + rtcEngine:contentInspectResult: - didProxyConnected + rtcEngine:didProxyConnected:withUid:proxyType:localProxyIp:elapsed: - onFaceInfo + onFaceInfo: @@ -4290,7 +4297,7 @@ - startScreenCapture + startScreenCapture: @@ -10971,517 +10978,6 @@ - - - - AgoraVideoProfile - - - - - - - AgoraVideoProfileInvalid - - - - - - - AgoraVideoProfileLandscape120P - - - - - - - AgoraVideoProfileLandscape120P_3 - - - - - - - AgoraVideoProfileLandscape180P - - - - - - - AgoraVideoProfileLandscape180P_3 - - - - - - - AgoraVideoProfileLandscape180P_4 - - - - - - - AgoraVideoProfileLandscape240P - - - - - - - AgoraVideoProfileLandscape240P_3 - - - - - - - AgoraVideoProfileLandscape240P_4 - - - - - - - AgoraVideoProfileLandscape360P - - - - - - - AgoraVideoProfileLandscape360P_3 - - - - - - - AgoraVideoProfileLandscape360P_4 - - - - - - - AgoraVideoProfileLandscape360P_6 - - - - - - - AgoraVideoProfileLandscape360P_7 - - - - - - - AgoraVideoProfileLandscape360P_8 - - - - - - - AgoraVideoProfileLandscape360P_9 - - - - - - - AgoraVideoProfileLandscape360P_10 - - - - - - - AgoraVideoProfileLandscape360P_11 - - - - - - - AgoraVideoProfileLandscape480P - - - - - - - AgoraVideoProfileLandscape480P_3 - - - - - - - AgoraVideoProfileLandscape480P_4 - - - - - - - AgoraVideoProfileLandscape480P_6 - - - - - - - AgoraVideoProfileLandscape480P_8 - - - - - - - AgoraVideoProfileLandscape480P_9 - - - - - - - AgoraVideoProfileLandscape480P_10 - - - - - - - AgoraVideoProfileLandscape720P - - - - - - - AgoraVideoProfileLandscape720P_3 - - - - - - - AgoraVideoProfileLandscape720P_5 - - - - - - - AgoraVideoProfileLandscape720P_6 - - - - - - - AgoraVideoProfileLandscape1080P - - - - - - - AgoraVideoProfileLandscape1080P_3 - - - - - - - AgoraVideoProfileLandscape1080P_5 - - - - - - - AgoraVideoProfileLandscape1440P - - - - - - - AgoraVideoProfileLandscape1440P_2 - - - - - - - AgoraVideoProfileLandscape4K - - - - - - - AgoraVideoProfileLandscape4K_3 - - - - - - - AgoraVideoProfilePortrait120P - - - - - - - AgoraVideoProfilePortrait120P_3 - - - - - - - AgoraVideoProfilePortrait180P - - - - - - - AgoraVideoProfilePortrait180P_3 - - - - - - - AgoraVideoProfilePortrait180P_4 - - - - - - - AgoraVideoProfilePortrait240P - - - - - - - AgoraVideoProfilePortrait240P_3 - - - - - - - AgoraVideoProfilePortrait240P_4 - - - - - - - AgoraVideoProfilePortrait360P - - - - - - - AgoraVideoProfilePortrait360P_3 - - - - - - - AgoraVideoProfilePortrait360P_4 - - - - - - - AgoraVideoProfilePortrait360P_6 - - - - - - - AgoraVideoProfilePortrait360P_7 - - - - - - - AgoraVideoProfilePortrait360P_8 - - - - - - - AgoraVideoProfilePortrait360P_9 - - - - - - - AgoraVideoProfilePortrait360P_10 - - - - - - - AgoraVideoProfilePortrait360P_11 - - - - - - - AgoraVideoProfilePortrait480P - - - - - - - AgoraVideoProfilePortrait480P_3 - - - - - - - AgoraVideoProfilePortrait480P_4 - - - - - - - AgoraVideoProfilePortrait480P_6 - - - - - - - AgoraVideoProfilePortrait480P_8 - - - - - - - AgoraVideoProfilePortrait480P_9 - - - - - - - AgoraVideoProfilePortrait480P_10 - - - - - - - AgoraVideoProfilePortrait720P - - - - - - - AgoraVideoProfilePortrait720P_3 - - - - - - - AgoraVideoProfilePortrait720P_5 - - - - - - - AgoraVideoProfilePortrait720P_6 - - - - - - - AgoraVideoProfilePortrait1080P - - - - - - - AgoraVideoProfilePortrait1080P_3 - - - - - - - AgoraVideoProfilePortrait1080P_5 - - - - - - - AgoraVideoProfilePortrait1440P - - - - - - - AgoraVideoProfilePortrait1440P_2 - - - - - - - AgoraVideoProfilePortrait4K - - - - - - - AgoraVideoProfilePortrait4K_3 - - - - - - - AgoraVideoProfileDEFAULT - - - @@ -12069,4 +11565,4 @@ - + \ No newline at end of file diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap index 2e159cba455..80eba449e27 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap @@ -1882,6 +1882,13 @@ + + + + enableVoiceAITuner + + + @@ -2636,31 +2643,31 @@ - + - onExtensionEvent + onExtensionEventWithContext - + - onExtensionStarted + onExtensionStartedWithContext - + - onExtensionStopped + onExtensionStoppedWithContext - + - onExtensionError + onExtensionErrorWithContext @@ -2749,20 +2756,6 @@ - - - - setEncryptionMode - - - - - - - setEncryptionSecret - - - @@ -3141,6 +3134,34 @@ + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -3183,6 +3204,20 @@ + + + + setPlayMode + + + + + + + destroyMusicPlayer + + + @@ -4737,6 +4772,13 @@ EncryptionConfig + + + + + ExtensionContext + + @@ -5223,6 +5265,48 @@ + + + + AlphaStitchMode + + + + + + + NoAlphaStitch + + + + + + + AlphaStitchUp + + + + + + + AlphaStitchBelow + + + + + + + AlphaStitchLeft + + + + + + + AlphaStitchRight + + + @@ -10676,6 +10760,13 @@ + + + + ApplicationScenario1v1 + + + @@ -11327,591 +11418,164 @@ - - - - VideoProfileType - - - - - - - VideoProfileLandscape120p - - - - - - - VideoProfileLandscape120p3 - - - - - - - VideoProfileLandscape180p - - - - - - - VideoProfileLandscape180p3 - - - - - - - VideoProfileLandscape180p4 - - - - - - - VideoProfileLandscape240p - - - - - - - VideoProfileLandscape240p3 - - - - - - - VideoProfileLandscape240p4 - - - - - - - VideoProfileLandscape360p - - - - - - - VideoProfileLandscape360p3 - - - - - - - VideoProfileLandscape360p4 - - - - - - - VideoProfileLandscape360p6 - - - - - - - VideoProfileLandscape360p7 - - - - - - - VideoProfileLandscape360p8 - - - - - - - VideoProfileLandscape360p9 - - - - - - - VideoProfileLandscape360p10 - - - - - - - VideoProfileLandscape360p11 - - - - - - - VideoProfileLandscape480p - - - - - - - VideoProfileLandscape480p3 - - - - - - - VideoProfileLandscape480p4 - - - - - - - VideoProfileLandscape480p6 - - - - - - - VideoProfileLandscape480p8 - - - - - - - VideoProfileLandscape480p9 - - - - - - - VideoProfileLandscape480p10 - - - - - - - VideoProfileLandscape720p - - - - - - - VideoProfileLandscape720p3 - - - - - - - VideoProfileLandscape720p5 - - - - - - - VideoProfileLandscape720p6 - - - - - - - VideoProfileLandscape1080p - - - - - - - VideoProfileLandscape1080p3 - - - - - - - VideoProfileLandscape1080p5 - - - - - - - VideoProfileLandscape1440p - - - - - - - VideoProfileLandscape1440p2 - - - - - - - VideoProfileLandscape4k - - - - - - - VideoProfileLandscape4k3 - - - - - - - VideoProfilePortrait120p - - - - - - - VideoProfilePortrait120p3 - - - - - - - VideoProfilePortrait180p - - - - - - - VideoProfilePortrait180p3 - - - - - - - VideoProfilePortrait180p4 - - - - - - - VideoProfilePortrait240p - - - - - - - VideoProfilePortrait240p3 - - - - - - - VideoProfilePortrait240p4 - - - - - - - VideoProfilePortrait360p - - - - - - - VideoProfilePortrait360p3 - - - - - - - VideoProfilePortrait360p4 - - - - - - - VideoProfilePortrait360p6 - - - - - - - VideoProfilePortrait360p7 - - - - - - - VideoProfilePortrait360p8 - - - - - - - VideoProfilePortrait360p9 - - - - - - - VideoProfilePortrait360p10 - - - - - - - VideoProfilePortrait360p11 - - - - - - - VideoProfilePortrait480p - - - - - - - VideoProfilePortrait480p3 - - - - - - - VideoProfilePortrait480p4 - - - - - - - VideoProfilePortrait480p6 - - - - - - - VideoProfilePortrait480p8 - - - - - - - VideoProfilePortrait480p9 - - - - - - - VideoProfilePortrait480p10 - - - - - - - VideoProfilePortrait720p - - - - + + + + VideoViewSetupMode + + + + + + + VideoViewSetupReplace + + + + + + + VideoViewSetupAdd + + + + + + + VideoViewSetupRemove + + + + - VideoProfilePortrait720p3 + VideoTranscoderError - + - VideoProfilePortrait720p5 + VtErrOk - + - VideoProfilePortrait720p6 + VtErrVideoSourceNotReady - + - VideoProfilePortrait1080p + VtErrInvalidVideoSourceType - + - VideoProfilePortrait1080p3 + VtErrInvalidImagePath - + - VideoProfilePortrait1080p5 + VtErrUnsupportImageFormat - + - VideoProfilePortrait1440p + VtErrInvalidLayout - + - VideoProfilePortrait1440p2 + VtErrInternal - + - VideoProfilePortrait4k + VoiceAiTunerType - + - VideoProfilePortrait4k3 + VoiceAiTunerMatureMale - + - VideoProfileDefault + VoiceAiTunerFreshMale - - - - VideoViewSetupMode - - - - - - - VideoViewSetupReplace - - - - - - - VideoViewSetupAdd - - - - - - - VideoViewSetupRemove - - - - + - VideoTranscoderError + VoiceAiTunerElegantFemale - + - VtErrOk + VoiceAiTunerSweetFemale - + - VtErrVideoSourceNotReady + VoiceAiTunerWarmMaleSinging - + - VtErrInvalidVideoSourceType + VoiceAiTunerGentleFemaleSinging - + - VtErrInvalidImagePath + VoiceAiTunerHuskyMaleSinging - + - VtErrUnsupportImageFormat + VoiceAiTunerWarmElegantFemaleSinging - + - VtErrInvalidLayout + VoiceAiTunerPowerfulMaleSinging - + - VtErrInternal + VoiceAiTunerDreamyFemaleSinging diff --git a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap index ab3978b9479..8480f2f4bbc 100644 --- a/en-US/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap +++ b/en-US/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap @@ -797,13 +797,7 @@ - - - - OpenWithCustomSource - - - + @@ -1960,6 +1954,13 @@ + + + + EnableVoiceAITuner + + + @@ -2457,24 +2458,10 @@ - - - - StartEchoTest [1/3] - - - - - - - StartEchoTest [2/3] - - - - StartEchoTest [3/3] + StartEchoTest @@ -2760,31 +2747,31 @@ - + - OnExtensionEvent + OnExtensionEventWithContext - + - OnExtensionStarted + OnExtensionStartedWithContext - + - OnExtensionStopped + OnExtensionStoppedWithContext - + - OnExtensionError + OnExtensionErrorWithContext @@ -2882,20 +2869,6 @@ - - - - SetEncryptionMode - - - - - - - SetEncryptionSecret - - - @@ -3597,6 +3570,13 @@ + + + + DestroyMusicPlayer + + + @@ -3639,6 +3619,13 @@ + + + + SetPlayMode + + + @@ -5029,6 +5016,13 @@ ExternalVideoFrame + + + + + ExtensionContext + + @@ -5545,6 +5539,48 @@ + + + + ALPHA_STITCH_MODE + + + + + + + NO_ALPHA_STITCH + + + + + + + ALPHA_STITCH_UP + + + + + + + ALPHA_STITCH_BELOW + + + + + + + ALPHA_STITCH_LEFT + + + + + + + ALPHA_STITCH_RIGHT + + + @@ -6833,6 +6869,13 @@ + + + + APPLICATION_SCENARIO_1V1 + + + @@ -9031,6 +9074,13 @@ + + + + LOCAL_VIDEO_STREAM_REASON_SCREEN_CAPTURE_DISPLAY_DISCONNECTED + + + @@ -9892,6 +9942,34 @@ + + + + MusicPlayMode + + + + + + + kMusicPlayModeOriginal + + + + + + + kMusicPlayModeAccompany + + + + + + + kMusicPlayModeLeadSing + + + @@ -11957,591 +12035,164 @@ - - - - VIDEO_PROFILE_TYPE - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P - - - - - - - VIDEO_PROFILE_LANDSCAPE_120P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_180P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_240P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_7 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_360P_11 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_4 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_8 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_9 - - - - - - - VIDEO_PROFILE_LANDSCAPE_480P_10 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_720P_6 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_3 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1080P_5 - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P - - - - - - - VIDEO_PROFILE_LANDSCAPE_1440P_2 - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K - - - - - - - VIDEO_PROFILE_LANDSCAPE_4K_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_120P - - - - - - - VIDEO_PROFILE_PORTRAIT_120P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_180P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_240P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_7 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_360P_11 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_3 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_4 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_6 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_8 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_9 - - - - - - - VIDEO_PROFILE_PORTRAIT_480P_10 - - - - - - - VIDEO_PROFILE_PORTRAIT_720P - - - - + - VIDEO_PROFILE_PORTRAIT_720P_3 + VIDEO_VIEW_SETUP_MODE - + - VIDEO_PROFILE_PORTRAIT_720P_5 + VIDEO_VIEW_SETUP_REPLACE - + - VIDEO_PROFILE_PORTRAIT_720P_6 + VIDEO_VIEW_SETUP_ADD - + - VIDEO_PROFILE_PORTRAIT_1080P + VIDEO_VIEW_SETUP_REMOVE - + - VIDEO_PROFILE_PORTRAIT_1080P_3 + VIDEO_TRANSCODER_ERROR - + - VIDEO_PROFILE_PORTRAIT_1080P_5 + VT_ERR_OK - + - VIDEO_PROFILE_PORTRAIT_1440P + VT_ERR_VIDEO_SOURCE_NOT_READY - + - VIDEO_PROFILE_PORTRAIT_1440P_2 + VT_ERR_INVALID_VIDEO_SOURCE_TYPE - + - VIDEO_PROFILE_PORTRAIT_4K + VT_ERR_INVALID_IMAGE_PATH - + - VIDEO_PROFILE_PORTRAIT_4K_3 + VT_ERR_UNSUPPORT_IMAGE_FORMAT - + - VIDEO_PROFILE_DEFAULT + VT_ERR_INVALID_LAYOUT - + - VIDEO_VIEW_SETUP_MODE + VT_ERR_INTERNAL - + - VIDEO_VIEW_SETUP_REPLACE + VOICE_AI_TUNER_TYPE - + - VIDEO_VIEW_SETUP_ADD + VOICE_AI_TUNER_MATURE_MALE - + - VIDEO_VIEW_SETUP_REMOVE + VOICE_AI_TUNER_FRESH_MALE - + - VIDEO_TRANSCODER_ERROR + VOICE_AI_TUNER_ELEGANT_FEMALE - + - VT_ERR_OK + VOICE_AI_TUNER_SWEET_FEMALE - + - VT_ERR_VIDEO_SOURCE_NOT_READY + VOICE_AI_TUNER_WARM_MALE_SINGING - + - VT_ERR_INVALID_VIDEO_SOURCE_TYPE + VOICE_AI_TUNER_GENTLE_FEMALE_SINGING - + - VT_ERR_INVALID_IMAGE_PATH + VOICE_AI_TUNER_HUSKY_MALE_SINGING - + - VT_ERR_UNSUPPORT_IMAGE_FORMAT + VOICE_AI_TUNER_WARM_ELEGANT_FEMALE_SINGING - + - VT_ERR_INVALID_LAYOUT + VOICE_AI_TUNER_POWERFUL_MALE_SINGING - + - VT_ERR_INTERNAL + VOICE_AI_TUNER_DREAMY_FEMALE_SINGING diff --git a/markdown/RTC 4.x/release-notes/en-US/native/release_android_ng.md b/markdown/RTC 4.x/release-notes/en-US/native/release_android_ng.md index c8487569c17..4db20af91fa 100644 --- a/markdown/RTC 4.x/release-notes/en-US/native/release_android_ng.md +++ b/markdown/RTC 4.x/release-notes/en-US/native/release_android_ng.md @@ -5,6 +5,15 @@ On Android 14 devices (such as OnePlus 11), screen sharing may not be available when `targetSdkVersion` is set to 34. For example, half of the shared screen may be black. To avoid this issue, Agora recommends setting `targetSdkVersion` to 34 or below. However, this may cause the screen sharing process to be interrupted when switching between portrait and landscape mode. In this case, a window will pop up on the device asking if you want to start recording the screen. After confirming, you can resume screen sharing. +## v4.4.1 + +This version was released on Aug x, 2024. + +#### Issues fixed + +This version fixed the issue where `io.agora.rtc:full-rtc-basic:4.4.0` and `io.agora.rtc:voice-rtc-basic:4.4.0` were not working properly on Maven Central due to an upload error. + + ## v4.4.0