From 2a22bf618db3c921e5fa31e8968c1f240caa7d57 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Wed, 2 Apr 2025 14:00:22 +0800 Subject: [PATCH 01/23] add release note --- dita/RTC-NG/release/release_notes.dita | 25 +++----- dita/RTC-NG/release/release_notes_4.5.1.dita | 60 ++++++++++++++++++++ 2 files changed, 68 insertions(+), 17 deletions(-) create mode 100644 dita/RTC-NG/release/release_notes_4.5.1.dita diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index c836b66a39e..76371006fda 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -3,7 +3,7 @@ v4.5.1 -

该版本于 2025 年 3 月 3 日发布。

+

该版本于 2025 年 4 月 xx 日发布。

@@ -13,7 +13,7 @@ <note type="attention" props="native"> <ul> <li>自 4.5.0 起,RTC SDK 和 RTM SDK (2.2.0 及以上版本) 都包含 <codeph props="android">libaosl.so</codeph><codeph props="cpp">libaosl.dll</codeph><codeph props="apple">aosl.xcframework</codeph> 库。如果你通过 CDN 手动集成 RTC SDK 且同时集成了 RTM SDK,为避免冲突,请手动删除版本较低的 <codeph props="android">libaosl.so</codeph><codeph props="cpp">libaosl.dll</codeph><codeph props="apple">aosl.xcframework</codeph> 库。</li> - <li>4.5.1 RTC SDK <codeph props="android">libaosl.so</codeph><codeph props="cpp">libaosl.dll</codeph><codeph props="apple">aosl.xcframework</codeph> 库版本为 xxx。<ph props="apple">你可以在 <codeph>Info.plist</codeph> 中查看库的版本信息。</ph><ph props="cpp">你可以通过查看 <codeph>libaosl.dll</codeph> 文件的属性来得知库的版本信息。</ph></li></ul> + <li>4.5.2 RTC SDK <codeph props="android">libaosl.so</codeph><codeph props="cpp">libaosl.dll</codeph><codeph props="apple">aosl.xcframework</codeph> 库版本为 xxx。<ph props="apple">你可以在 <codeph>Info.plist</codeph> 中查看库的版本信息。</ph><ph props="cpp">你可以通过查看 <codeph>libaosl.dll</codeph> 文件的属性来得知库的版本信息。</ph></li></ul> </note> </body> </topic> @@ -22,7 +22,7 @@ <body> <ol> <li><ph><b>AI 对话场景</b></ph> - <p>该版本新增了专为与<xref keyref="convoai"/>创建的智能体互动设计的 <codeph><ph keyref="AUDIO_SCENARIO_AI_CLIENT"/></codeph> 音频场景。该场景根据 AI 智能体生成语音的特点,针对优化了音频传输算法,能够在弱网环境下(例如 80% 丢包率)稳定传输语音数据,确保对话的连续性和可靠性,适应多样化的复杂网络条件。</p> + <p></p> </li> </ol> </body> @@ -31,7 +31,9 @@ <title>改进
    -
  1. 优化了特定机型上 SDK 初始化的耗时。(iOS)
  2. +
  3. URL 拉流播放t +

    该版本进一步优化了 URL 拉流播放的功能,支持播放 CDN URL 和本地媒体资源文件,同时可以设置从指定位置开始播放、调节播放速度、设置播放音量、在播放过程中切换播放源等。你可以通过 类下的方法来体验完整的播放功能。

    +
@@ -40,19 +42,8 @@

该版本修复了以下问题:

diff --git a/dita/RTC-NG/release/release_notes_4.5.1.dita b/dita/RTC-NG/release/release_notes_4.5.1.dita new file mode 100644 index 00000000000..c836b66a39e --- /dev/null +++ b/dita/RTC-NG/release/release_notes_4.5.1.dita @@ -0,0 +1,60 @@ + + + + v4.5.1 + +

该版本于 2025 年 3 月 3 日发布。

+ + + + <topic id="compatibility" props="native"> + <title>升级必看 + + +
    +
  • 自 4.5.0 起,RTC SDK 和 RTM SDK (2.2.0 及以上版本) 都包含 libaosl.solibaosl.dllaosl.xcframework 库。如果你通过 CDN 手动集成 RTC SDK 且同时集成了 RTM SDK,为避免冲突,请手动删除版本较低的 libaosl.solibaosl.dllaosl.xcframework 库。
  • +
  • 4.5.1 RTC SDK libaosl.solibaosl.dllaosl.xcframework 库版本为 xxx。你可以在 Info.plist 中查看库的版本信息。你可以通过查看 libaosl.dll 文件的属性来得知库的版本信息。
+
+ +
+ + 新增特性 + +
    +
  1. AI 对话场景 +

    该版本新增了专为与创建的智能体互动设计的 音频场景。该场景根据 AI 智能体生成语音的特点,针对优化了音频传输算法,能够在弱网环境下(例如 80% 丢包率)稳定传输语音数据,确保对话的连续性和可靠性,适应多样化的复杂网络条件。

    +
  2. +
+ +
+ + 改进 + +
    +
  1. 优化了特定机型上 SDK 初始化的耗时。(iOS)
  2. +
+ +
+ + 问题修复 + +

该版本修复了以下问题:

+
    +
  • 集成 SDK 的 App 设置 targetSdkVersion 为 34,在 Android 14 系统上首次开启屏幕共享进行授权时出现崩溃。(Android)
  • +
  • 同时加入两个及以上的频道,连续调用 分别对频道中的本地视频流进行截图,在先调用的频道截图会失败。
  • +
  • 使用媒体播放器时,调用 暂停播放后,调用 定位到指定播放位置、然后调用 继续播放,播放时会先从暂停播放的位置播放,然后再从新的位置播放。
  • +
  • 使用媒体播放器时,调用 切换媒体资源后,调用 获取当前正在播放的媒体资源的路径没有变化。
  • +
  • 用户在特定机型上进行音视频互动并使用蓝牙耳机,偶现调整手机音量后改变的是媒体音量而非蓝牙音量。(Android)
  • +
  • 音视频互动时,偶现接收端观看发送端画面出现黑屏。(Android)
  • +
  • 在特定机型上,调用 在设备的某个特定角度设置当前摄像头的曝光系数后,当设备移动到另一个角度时,偶现视频画面变暗。(Android)
  • +
  • 播放 CDN 直播流时,直播流短暂中断后恢复,偶现播放画面长时间卡住。(Android)
  • +
  • 在推送 i420 格式的视频帧到频道内时,使用 CVPixelBuffer 会导致崩溃。(iOS)
  • +
  • 调用 设置两个视图(view),然后调用 开启人脸检测,后传入的视图中无法检测到人脸信息。(iOS)
  • +
  • 屏幕共享场景下,接收端用户看到的共享图像出现绿线。(iOS)
  • +
  • 在极速直播场景下,观众通过 string 型的用户 ID 加入频道观看直播,偶现音频和画面不同步。
  • +
  • 在同时使用 AI 降噪、AI 回声消除插件时,偶现插件不生效。
  • +
+ +
+
+ From 52452e904ba201b03bfd08483a3667537b069f9f Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 3 Apr 2025 15:34:08 +0800 Subject: [PATCH 02/23] Update release_notes.dita --- dita/RTC-NG/release/release_notes.dita | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index 76371006fda..ccf85811ea6 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -21,7 +21,7 @@ 新增特性
    -
  1. AI 对话场景 +
@@ -42,8 +42,18 @@

该版本修复了以下问题:

From 91202c81d22cd8e96c2482cb984d534c233f4499 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 3 Apr 2025 16:55:09 +0800 Subject: [PATCH 03/23] Update release_notes.dita --- dita/RTC-NG/release/release_notes.dita | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index ccf85811ea6..84eb43116fc 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -32,7 +32,7 @@
  1. URL 拉流播放t -

    该版本进一步优化了 URL 拉流播放的功能,支持播放 CDN URL 和本地媒体资源文件,同时可以设置从指定位置开始播放、调节播放速度、设置播放音量、在播放过程中切换播放源等。你可以通过 类下的方法来体验完整的播放功能。

    +

    该版本进一步优化了 URL 拉流播放的功能,支持播放 CDN URL 和本地媒体资源文件,同时可以设置从指定位置开始播放、调节播放速度、设置播放音量、在播放过程中切换播放源等,详见

From 5864a8c735eb85668370d65679bae37c864b0559 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Mon, 7 Apr 2025 14:03:51 +0800 Subject: [PATCH 04/23] update --- dita/RTC-NG/release/release_notes.dita | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index 84eb43116fc..e9c86e533cd 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -1,7 +1,7 @@ - v4.5.1 + v4.5.2

该版本于 2025 年 4 月 xx 日发布。

@@ -31,8 +31,8 @@ 改进
    -
  1. URL 拉流播放t -

    该版本进一步优化了 URL 拉流播放的功能,支持播放 CDN URL 和本地媒体资源文件,同时可以设置从指定位置开始播放、调节播放速度、设置播放音量、在播放过程中切换播放源等,详见

    +
  2. URL 拉流播放 +

    该版本进一步拓展了 URL 拉流播放的功能,支持播放 CDN URL 和本地媒体资源文件,同时可以设置从指定位置开始播放、调节播放速度、设置播放音量、在播放过程中切换播放源等,详见

From 2eb2efecbd9cec3d4d4540033c78e01482716092 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Tue, 8 Apr 2025 17:27:06 +0800 Subject: [PATCH 05/23] Update release_notes.dita --- dita/RTC-NG/release/release_notes.dita | 28 +++++++++++--------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index e9c86e533cd..6d4b1a4f9de 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -4,25 +4,21 @@ v4.5.2

该版本于 2025 年 4 月 xx 日发布。

+ +
    +
  • 自 4.5.0 起,RTC SDK 和 RTM SDK (2.2.0 及以上版本) 都包含 libaosl.solibaosl.dllaosl.xcframework 库。如果你通过 CDN 手动集成 RTC SDK 且同时集成了 RTM SDK,为避免冲突,请手动删除版本较低的 libaosl.solibaosl.dllaosl.xcframework 库。
  • +
  • 4.5.2 RTC SDK libaosl.solibaosl.dllaosl.xcframework 库版本为 1.2.13。你可以在 Info.plist 中查看库的版本信息。你可以通过查看 libaosl.dll 文件的属性来得知库的版本信息。
+
- <topic id="compatibility" props="native"> + <topic id="compatibility" props="android cpp"> <title>升级必看 - -
    -
  • 自 4.5.0 起,RTC SDK 和 RTM SDK (2.2.0 及以上版本) 都包含 libaosl.solibaosl.dllaosl.xcframework 库。如果你通过 CDN 手动集成 RTC SDK 且同时集成了 RTM SDK,为避免冲突,请手动删除版本较低的 libaosl.solibaosl.dllaosl.xcframework 库。
  • -
  • 4.5.2 RTC SDK libaosl.solibaosl.dllaosl.xcframework 库版本为 xxx。你可以在 Info.plist 中查看库的版本信息。你可以通过查看 libaosl.dll 文件的属性来得知库的版本信息。
-
- -
- - 新增特性 - +

该版本对部分功能的实现方式进行了优化,为确保项目的正常运行,你需要在升级到该版本后更新 App 中的代码。

    -
  1. -

    +
  2. 成员参数变更为方法 +

    为优化 API 设计,该版本对 结构体中的所有成员参数进行封装,变为 类。如果你的 App 中调用了 结构体中的成员参数,请更新为 类中对应的方法。

@@ -42,14 +38,14 @@

该版本修复了以下问题:

    -
  • 开启导唱功能播放多音轨歌曲时,调用 方法调整歌曲音调后出现杂音。
  • +
  • 开启导唱功能播放多音轨歌曲时,调用 方法调整歌曲音调后出现杂音。
  • 主播端调用 创建自定义音频采集轨道并将 trackType 设为 AUDIO_TRACK_DIRECT,调用 将自采集音频推送到频道内,然后调用 播放音效,频道内的观众听主播的音频有杂音。
  • -
  • 集成 SDK 的 App 在音视频互动时,偶现 UI 卡顿。
  • +
  • 集成了 SDK 的 App 在音视频互动过程中偶现主线程阻塞导致的 UI 卡顿。
  • 调用 播放 EAC3 音频编码的 MP4 文件时偶现无声。
  • 调用 开启屏幕共享并在 config 中将 enableHighLight 设为 对共享窗口进行描边,将共享窗口置于最上层并最大化后,本地预览的共享画面出现闪烁。
  • 调用 共享指定屏幕的视频流,通过 excludeWindowList 来指定屏蔽的窗口,偶现部分窗口屏蔽失败。
  • 应用程序共享外接屏幕的视频流,断开外接屏幕连接后偶现应用程序崩溃。
  • -
  • 音视频互动过程中偶现内存异常增长。
  • +
  • 退出频道停止视频渲染后出现渲染内存泄漏。
  • 调用 设置手动对焦位置,摄像头拍摄缩放画面后,设置的对焦位置不准确。
  • 调用 设置 SDK 外部的 MediaProjection 采集屏幕视频流,当屏幕变为横屏或竖屏时,发送的视频流宽、高没有随之变化。
  • 调用 并通过 source 参数将 isLiveSource 设为 并播放纯视频流,播放失败。
  • From 9793c6558a43b0fd47b5314d97bb8ebe61eaad68 Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Wed, 9 Apr 2025 11:41:04 +0800 Subject: [PATCH 06/23] update release notes --- dita/RTC-NG/release/release_notes.dita | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index 6d4b1a4f9de..4d713a13d69 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -50,6 +50,18 @@
  • 调用 设置 SDK 外部的 MediaProjection 采集屏幕视频流,当屏幕变为横屏或竖屏时,发送的视频流宽、高没有随之变化。
  • 调用 并通过 source 参数将 isLiveSource 设为 并播放纯视频流,播放失败。
  • 调用 开启虚拟背景功能,手机横竖屏旋转后,虚拟背景图像变大变模糊。
  • +
  • 使用媒体播放器打开实际不存在的本地媒体文件时,播放器状态改变回调 不会报告 PLAYER_STATE_FAILED,不符合预期。
  • +
  • 发送端传输多声道编码音频时,接收端偶现杂音。
  • +
  • App 集成媒体播放器场景下,先后两次调用 open 打开不同媒体资源,第二次打开时,媒体播放器信息变化回调 返回第一次媒体资源的信息,不符合预期。
  • +
  • 调用 启用用户音量提示本地发流用户和远端用户音量相关信息,用户音量提示回调 返回的本地用户音量为 0。
  • +
  • 音视频互通过程中偶现 App 卡死。
  • +
  • 调用 设置 key 为 "makeup_options" 实现美妆效果失败。
  • +
  • 发送端用户在光线较暗的环境中进行音视频互通,部分机型偶现本地预览的图像偏暗。
  • +
  • 使用 21:9 的显示屏(带鱼屏)进行音视频互通和屏幕共享场景下,设置高分辨率,如 3840*2160,屏幕共享画面在本地预览和接收端显示被裁剪。
  • +
  • App 调用 启用垫片推流功能,偶现发送端推流成功但是 返回当前的发布状态不是 PUB_STATE_PUBLISHED,不符合预期。
  • +
  • 多频道场景下,App 在调用 成功前调用 初始化远端用户视图,偶现远端用户视图首帧图像显示延时大。
  • +
  • App 退出时偶现崩溃。
  • +
  • 加入频道失败后,在没有调用 离开频道的情况下,再次调用 加入频道时偶现崩溃。
From 73651a668e5a8a06222cd4091aa78bd450710e6f Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Wed, 9 Apr 2025 14:54:12 +0800 Subject: [PATCH 07/23] add PlayerUpdatedInfo improvement --- dita/RTC-NG/release/release_notes.dita | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index 4d713a13d69..4df71ef0eeb 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -30,6 +30,9 @@
  • URL 拉流播放

    该版本进一步拓展了 URL 拉流播放的功能,支持播放 CDN URL 和本地媒体资源文件,同时可以设置从指定位置开始播放、调节播放速度、设置播放音量、在播放过程中切换播放源等,详见

  • +
  • 媒体播放器信息属性可访问 +

    自该版本起,媒体播放器相关信息 中的所有属性访问修饰符已从 private 修改为 public。这一改进旨在提高类的可访问性,使得外部代码能够更方便地访问和修改这些属性。

    +
  • From 185c1b13e62edef048a66dbc6bf878d88df634d5 Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Thu, 10 Apr 2025 16:46:56 +0800 Subject: [PATCH 08/23] ditagen api (#3925) * ditagen api * modify desc --------- Co-authored-by: Suri539 --- dita/RTC-NG/API/api_player_getposition.dita | 79 +++++++++ dita/RTC-NG/API/api_player_seek.dita | 84 +++++++++ dita/RTC-NG/API/api_player_switchwithurl.dita | 97 ++++++++++ .../API/api_playerconfig_getloopcount.dita | 65 +++++++ .../api_playerconfig_getplaybackspeed.dita | 64 +++++++ .../api_playerconfig_getplayoutvolume.dita | 63 +++++++ .../API/api_playerconfig_setloopcount.dita | 86 +++++++++ .../api_playerconfig_setplaybackspeed.dita | 69 ++++++++ .../api_playerconfig_setplayoutvolume.dita | 75 ++++++++ .../api_playerinfo_abrsubscriptionlayer.dita | 57 ++++++ .../api_playerinfo_audiobitspersample.dita | 50 ++++++ .../API/api_playerinfo_audiochannels.dita | 49 +++++ .../API/api_playerinfo_audiosamplerate.dita | 49 +++++ .../RTC-NG/API/api_playerinfo_currenturl.dita | 53 ++++++ dita/RTC-NG/API/api_playerinfo_duration.dita | 51 ++++++ dita/RTC-NG/API/api_playerinfo_hasaudio.dita | 58 ++++++ dita/RTC-NG/API/api_playerinfo_hasvideo.dita | 58 ++++++ .../API/api_playerinfo_isaudiomuted.dita | 58 ++++++ .../API/api_playerinfo_isvideomuted.dita | 59 +++++++ dita/RTC-NG/API/api_playerinfo_state.dita | 52 ++++++ .../API/api_playerinfo_streamcount.dita | 51 ++++++ .../API/api_playerinfo_videoheight.dita | 49 +++++ .../RTC-NG/API/api_playerinfo_videowidth.dita | 49 +++++ dita/RTC-NG/API/rtc_api_data_type.dita | 48 ++--- dita/RTC-NG/RTC_NG_API_Android.ditamap | 85 +++++---- dita/RTC-NG/RTC_NG_API_CPP.ditamap | 79 ++++++--- dita/RTC-NG/RTC_NG_API_iOS.ditamap | 65 ++++--- dita/RTC-NG/RTC_NG_API_macOS.ditamap | 65 ++++--- .../RTC-NG/config/keys-rtc-ng-api-cpp.ditamap | 167 +++++++++++++++++- .../RTC-NG/config/keys-rtc-ng-api-ios.ditamap | 76 +++++++- .../config/keys-rtc-ng-api-java.ditamap | 153 +++++++++++++++- .../config/keys-rtc-ng-api-macos.ditamap | 76 +++++++- .../config/relations-rtc-ng-api.ditamap | 25 ++- 33 files changed, 2105 insertions(+), 159 deletions(-) create mode 100644 dita/RTC-NG/API/api_player_getposition.dita create mode 100644 dita/RTC-NG/API/api_player_seek.dita create mode 100644 dita/RTC-NG/API/api_player_switchwithurl.dita create mode 100644 dita/RTC-NG/API/api_playerconfig_getloopcount.dita create mode 100644 dita/RTC-NG/API/api_playerconfig_getplaybackspeed.dita create mode 100644 dita/RTC-NG/API/api_playerconfig_getplayoutvolume.dita create mode 100644 dita/RTC-NG/API/api_playerconfig_setloopcount.dita create mode 100644 dita/RTC-NG/API/api_playerconfig_setplaybackspeed.dita create mode 100644 dita/RTC-NG/API/api_playerconfig_setplayoutvolume.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_abrsubscriptionlayer.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_audiobitspersample.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_audiochannels.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_audiosamplerate.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_currenturl.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_duration.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_hasaudio.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_hasvideo.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_isaudiomuted.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_isvideomuted.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_state.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_streamcount.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_videoheight.dita create mode 100644 dita/RTC-NG/API/api_playerinfo_videowidth.dita diff --git a/dita/RTC-NG/API/api_player_getposition.dita b/dita/RTC-NG/API/api_player_getposition.dita new file mode 100644 index 00000000000..f2a0b78c3bd --- /dev/null +++ b/dita/RTC-NG/API/api_player_getposition.dita @@ -0,0 +1,79 @@ + + + + <ph keyref="GetPosition"/> + 获取当前的播放位置。 + + + + + + + + +
    +

    + public long getPosition() throws RteException + + - (uint64_t)getPosition:(AgoraRteError * _Nullable)error; + uint64_t GetPosition(Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    该方法用于获取当前播放的时间位置,单位为毫秒。

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + error + err + 输出参数,表示错误信息。可能返回以下值: +
      +
    • :调用成功。
    • +
      • +
      • 对应的内部 AgoraRtePlayer 对象已被销毁或无效。
      • +
      • 打开的是 RTE URL,不支持调用 。详见
      • +
      +
    • +
    +
    + 状态或错误信息,详见 。 +可能的错误码包括: +
      +
    • :调用成功。
    • +
      • +
      • 对应的内部 对象已被销毁或无效。
      • +
      • 打开的是 RTE URL,不支持调用
      • +
      +
    • +
    +
    +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回当前的播放位置,单位为毫秒。

    +

    方法调用成功,返回当前播放位置,单位为毫秒。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_player_seek.dita b/dita/RTC-NG/API/api_player_seek.dita new file mode 100644 index 00000000000..0b91426b5e0 --- /dev/null +++ b/dita/RTC-NG/API/api_player_seek.dita @@ -0,0 +1,84 @@ + + + + <ph keyref="Seek"/> + 跳转播放位置。 + + + + + + + + +
    +

    + public void seek(long newTime) throws RteException + + - (BOOL)seek:(uint64_t)newTime error:(AgoraRteError * _Nullable)error; + bool Seek(uint64_t new_time, Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + new_time + newTime + 要跳转到的播放位置,单位为毫秒。 + 你希望跳转到的播放位置。 + 要跳转到的新播放位置。 + + + err + error + 输出参数,用于返回跳转失败时的错误信息。详见 + 输出参数,表示错误码: +
      +
    • :成功。
    • +
      • +
      • 对应的内部 对象已被销毁或无效。
      • +
      • 打开的 URL 是 RTE URL,不支持跳转播放位置。详见
      • +
      +
    • +
    +
    +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • :跳转成功。
    • +
    • :跳转失败。
    • +
    +

    +

      +
    • :跳转成功。
    • +
    • :跳转失败。你可以通过 参数查看具体错误信息。
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_player_switchwithurl.dita b/dita/RTC-NG/API/api_player_switchwithurl.dita new file mode 100644 index 00000000000..77d5bd95ac3 --- /dev/null +++ b/dita/RTC-NG/API/api_player_switchwithurl.dita @@ -0,0 +1,97 @@ + + + + <ph keyref="SwitchWithUrl"/> + 在播放过程中切换至新的 URL。 + + + + + + + + +
    +

    + public void switchWithUrl(String url, boolean syncPts, AsyncCallback callback) + + - (void)switchWithUrl:(NSString * _Nonnull)url syncPts:(BOOL)syncPts cb:(void (^_Nullable)(AgoraRteError* _Nullable err))cb; + void SwitchWithUrl(const char* url, bool sync_pts, std::function&lt;void(rte::Error* err)&gt; cb) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    请在 SDK 返回播放器状态为 时调用该方法。

    + 该方法仅在播放器打开的是非 RTE URL 时有效。请在 SDK 返回播放器状态为 时调用该方法。 + 该方法仅在播放器打开的是非 RTE URL 时有效。 +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + url + 要切换的 URL 资源。 + 要切换的目标 URL。 + 要切换的新 URL。 + + + syncPts + syncPts + sync_pts +
      +
    • :同步播放位置。
    • +
    • :(默认)不同步播放位置。
    • +
    +
    +
      +
    • :切换后同步播放位置(单位为毫秒)。
    • +
    • :(默认)切换后不同步播放位置。
    • +
    +
    +
    + + cb + 异步通知切换操作结果的回调。你可以通过该回调的 err 参数得知操作的结果或错误码信息,详见 + 异步通知切换操作结果的回调。你可以通过该回调的 err 参数得知操作的结果或错误码信息,详见 。 + +err 的可能取值包括: +
      +
    • :切换成功。
    • +
    • :切换失败。
    • +
    • :传入的 URL 为空或格式非法。
    • +
      • +
      • 对应的内部 对象已被销毁或无效。
      • +
      • 当前打开的是 URL,不支持切换。
      • +
      +
    • +
    +
    +
    + + callback + 异步回调,用于通知切换操作的结果,详见 + +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerconfig_getloopcount.dita b/dita/RTC-NG/API/api_playerconfig_getloopcount.dita new file mode 100644 index 00000000000..68d0aff1b25 --- /dev/null +++ b/dita/RTC-NG/API/api_playerconfig_getloopcount.dita @@ -0,0 +1,65 @@ + + + + <ph keyref="GetLoopCount"/> + 获取媒体文件的循环次数参数。 + + + + + + + + +
    +

    + public int getLoopCount() throws RteException + + - (int32_t)loopCount:(AgoraRteError * _Nullable)error; + int32_t GetLoopCount(Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + err + error + 输出参数,状态或错误信息,详见 。 +
      +
    • :表示成功。
    • +
    +
    + 输出参数,表示错误信息。详见 +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回媒体文件的循环次数。

    +

    方法调用成功,返回媒体文件的循环播放次数。

    +

    方法调用成功时,返回媒体文件的循环播放次数。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerconfig_getplaybackspeed.dita b/dita/RTC-NG/API/api_playerconfig_getplaybackspeed.dita new file mode 100644 index 00000000000..222fc8d4994 --- /dev/null +++ b/dita/RTC-NG/API/api_playerconfig_getplaybackspeed.dita @@ -0,0 +1,64 @@ + + + + <ph keyref="GetPlaybackSpeed"/> + 获取播放速度参数。 + + + + + + + + +
    +

    + public int getPlaybackSpeed() throws RteException + + - (int32_t)playbackSpeed:(AgoraRteError * _Nullable)error; + int32_t GetPlaybackSpeed(Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + err + error + 状态或错误信息,详见 。 +
      +
    • :表示成功。
    • +
    +
    + 输出参数,表示错误信息。详见 +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回播放速度的值。

    +

    方法调用成功,返回播放速度的数值。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerconfig_getplayoutvolume.dita b/dita/RTC-NG/API/api_playerconfig_getplayoutvolume.dita new file mode 100644 index 00000000000..98374c92eba --- /dev/null +++ b/dita/RTC-NG/API/api_playerconfig_getplayoutvolume.dita @@ -0,0 +1,63 @@ + + + + <ph keyref="GetPlayoutVolume"/> + 获取播放器的播放音量。 + + + + + + + + +
    +

    + public int getPlayoutVolume() throws RteException + + - (int32_t)playoutVolume:(AgoraRteError * _Nullable)error; + int32_t GetPlayoutVolume(Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + err + error + 状态或错误信息,详见 。 +
      +
    • :表示成功。
    • +
    +
    + 输出参数,返回错误信息。详见 +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回播放器的音量值。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerconfig_setloopcount.dita b/dita/RTC-NG/API/api_playerconfig_setloopcount.dita new file mode 100644 index 00000000000..fd2ae0a12d1 --- /dev/null +++ b/dita/RTC-NG/API/api_playerconfig_setloopcount.dita @@ -0,0 +1,86 @@ + + + + <ph keyref="SetLoopCount"/> + 设置媒体文件的循环播放次数。 + + + + + + + + +
    +

    + public void setLoopCount(int count) throws RteException + + - (void)setLoopCount:(int32_t)count error:(AgoraRteError * _Nullable)error; + void SetLoopCount(int32_t count, Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    你可以通过该方法设置媒体文件的循环播放次数,包括播放一次、两次,或无限循环播放,直到调用 方法停止播放。

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + count + 媒体文件的循环播放次数。 +
      +
    • 0:播放一次。
    • +
    • 1:播放两次。
    • +
    • -1:无限循环播放,直到调用 方法停止播放。
    • +
    +
    + 媒体文件的循环播放次数。 +
      +
    • 0:播放一次。
    • +
    • 1:播放两次。
    • +
    • -1:无限循环播放,直到调用 方法停止播放。
    • +
    +
    + 媒体文件的循环播放次数。 +
      +
    • 0:播放一次。
    • +
    • 1:播放两次。
    • +
    • -1:无限循环播放,直到调用 停止播放。
    • +
    +
    +
    + + error + err + 输出参数,返回错误信息。详见 + 状态或错误信息,详见 。 +
      +
    • :成功。
    • +
    +
    +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerconfig_setplaybackspeed.dita b/dita/RTC-NG/API/api_playerconfig_setplaybackspeed.dita new file mode 100644 index 00000000000..7d67278eaae --- /dev/null +++ b/dita/RTC-NG/API/api_playerconfig_setplaybackspeed.dita @@ -0,0 +1,69 @@ + + + + <ph keyref="SetPlaybackSpeed"/> + 设置播放速度参数。 + + + + + + + + +
    +

    + public void setPlaybackSpeed(int speed) throws RteException + + - (void)setPlaybackSpeed:(int32_t)speed error:(AgoraRteError * _Nullable)error; + void SetPlaybackSpeed(int32_t speed, Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    你可以在调用 方法之后调用此方法。

    + 你可以在调用 方法之后调用此方法。 +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + speed + 播放速度。取值范围为 [50, 400]。 + 播放速度,取值范围为 [50, 400]。 + + + error + err + 输出参数,用于返回错误信息,详见 + 状态或错误信息,详见 。 +
      +
    • :调用成功。
    • +
    • speed 参数设置为非法值。
    • +
    +
    +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerconfig_setplayoutvolume.dita b/dita/RTC-NG/API/api_playerconfig_setplayoutvolume.dita new file mode 100644 index 00000000000..414aec5c07f --- /dev/null +++ b/dita/RTC-NG/API/api_playerconfig_setplayoutvolume.dita @@ -0,0 +1,75 @@ + + + + <ph keyref="SetPlayoutVolume"/> + 设置播放音量参数。 + + + + + + + + +
    +

    + public void setPlayoutVolume(int volume) throws RteException + + - (void)setPlayoutVolume:(int32_t)volume error:(AgoraRteError * _Nullable)error; + void SetPlayoutVolume(int32_t volume, Error *err = nullptr) + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    你可以通过该方法设置播放音量,取值范围为 [0, 400]。

    +
    +
    + 调用限制 +

    无。

    +
    +
    + 参数 + + + volume + 播放器的音量值。取值范围为 [0, 400]。 + 要设置的播放音量,取值范围为 [0, 400]。 + 要设置的音量值,取值范围为 [0, 400]。 + + + error + err + 输出参数,返回错误信息,详见 。 +
      +
    • :设置成功。
    • +
    • :音量参数非法。
    • +
    +
    + 状态或错误信息,详见 。 +可能的错误码包括: +
      +
    • :设置成功。
    • +
    • :音量参数设置为非法值。
    • +
    +
    +
    +
    +
    + <ph keyref="return-section-title"/> +

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_abrsubscriptionlayer.dita b/dita/RTC-NG/API/api_playerinfo_abrsubscriptionlayer.dita new file mode 100644 index 00000000000..55dfe3269b4 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_abrsubscriptionlayer.dita @@ -0,0 +1,57 @@ + + + + <ph keyref="AbrSubscriptionLayer"/> + 获取当前订阅的视频层级。 + + + + + + + + +
    +

    + public Constants.AbrSubscriptionLayer abrSubscriptionLayer() + + + AbrSubscriptionLayer AbrSubscriptionLayer() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    该字段仅在打开 RTE URL 时有效。

    + 该字段仅在你打开 RTE URL 时有效。 +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • 方法调用成功,返回当前订阅的视频层级,详见
    • +
    +

    +

      +
    • 方法调用成功,返回 对象,详见
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_audiobitspersample.dita b/dita/RTC-NG/API/api_playerinfo_audiobitspersample.dita new file mode 100644 index 00000000000..bd0414072a0 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_audiobitspersample.dita @@ -0,0 +1,50 @@ + + + + <ph keyref="AudioBitsPerSample"/> + 获取每个音频采样点的位数。 + + + + + + + + +
    +

    + public int audioBitsPerSample() + + + int AudioBitsPerSample() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    + 该字段仅在打开非 RTE URL 时有效。 +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回每个音频采样点的位数,单位为 bit。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_audiochannels.dita b/dita/RTC-NG/API/api_playerinfo_audiochannels.dita new file mode 100644 index 00000000000..5a9b3fced66 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_audiochannels.dita @@ -0,0 +1,49 @@ + + + + <ph keyref="AudioChannels"/> + 获取音频的声道数量。 + + + + + + + + +
    +

    + public int audioChannels() + + + int AudioChannels() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回音频的声道数量。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_audiosamplerate.dita b/dita/RTC-NG/API/api_playerinfo_audiosamplerate.dita new file mode 100644 index 00000000000..27a0ad35f60 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_audiosamplerate.dita @@ -0,0 +1,49 @@ + + + + <ph keyref="AudioSampleRate"/> + 获取音频采样率。 + + + + + + + + +
    +

    + public int audioSampleRate() + + + int AudioSampleRate() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回音频采样率,单位为 Hz。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_currenturl.dita b/dita/RTC-NG/API/api_playerinfo_currenturl.dita new file mode 100644 index 00000000000..7d8d5ef8c5c --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_currenturl.dita @@ -0,0 +1,53 @@ + + + + <ph keyref="CurrentUrl"/> + 获取当前正在播放的 URL。 + + + + + + + + +
    +

    + public String currentUrl() + + + std::string CurrentUrl() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • 方法调用成功时,返回当前正在播放的 URL。
    • +
    • 方法调用失败,返回空字符串。
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_duration.dita b/dita/RTC-NG/API/api_playerinfo_duration.dita new file mode 100644 index 00000000000..eba6e0c89aa --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_duration.dita @@ -0,0 +1,51 @@ + + + + <ph keyref="Duration"/> + 获取当前媒体资源的时长。 + + + + + + + + +
    +

    + public long duration() + + + size_t Duration() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    + 仅在播放本地媒体文件或点播流时有效。 + 该方法仅在播放本地媒体文件或点播流时有效。 +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回当前媒体资源的时长,单位为毫秒。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_hasaudio.dita b/dita/RTC-NG/API/api_playerinfo_hasaudio.dita new file mode 100644 index 00000000000..0700327ee62 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_hasaudio.dita @@ -0,0 +1,58 @@ + + + + <ph keyref="HasAudio"/> + 判断媒体资源中是否包含音频流。 + + + + + + + + +
    +

    + public boolean hasAudio() + + + bool HasAudio() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    表示 URL 源是否包含音频流。

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • :媒体资源中包含音频流。
    • +
    • :媒体资源中不包含音频流。
    • +
    +

    +

      +
    • :URL 源包含音频流。
    • +
    • :URL 源不包含音频流。
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_hasvideo.dita b/dita/RTC-NG/API/api_playerinfo_hasvideo.dita new file mode 100644 index 00000000000..24274dc668e --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_hasvideo.dita @@ -0,0 +1,58 @@ + + + + <ph keyref="HasVideo"/> + 判断是否包含视频流。 + + + + + + + + +
    +

    + public boolean hasVideo() + + + bool HasVideo() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • :URL 源中包含视频流。
    • +
    • :URL 源中不包含视频流。
    • +
    +

    +

      +
    • :URL 源包含视频流。
    • +
    • :URL 源不包含视频流。
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_isaudiomuted.dita b/dita/RTC-NG/API/api_playerinfo_isaudiomuted.dita new file mode 100644 index 00000000000..47eee5d29a6 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_isaudiomuted.dita @@ -0,0 +1,58 @@ + + + + <ph keyref="IsAudioMuted"/> + 判断播放器是否停止接收音频流。 + + + + + + + + +
    +

    + public boolean isAudioMuted() + + + bool IsAudioMuted() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    该方法用于判断播放器是否停止接收音频流。

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • :播放器已停止接收音频流。
    • +
    • :播放器仍在接收音频流。
    • +
    +

    +

      +
    • :停止接收音频流。
    • +
    • :继续接收音频流。
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_isvideomuted.dita b/dita/RTC-NG/API/api_playerinfo_isvideomuted.dita new file mode 100644 index 00000000000..0effe65b721 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_isvideomuted.dita @@ -0,0 +1,59 @@ + + + + <ph keyref="IsVideoMuted"/> + 判断播放器是否停止接收视频流。 + + + + + + + + +
    +

    + public boolean isVideoMuted() + + + bool IsVideoMuted() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    + IsVideoMuted 接口仅在打开 RTE URL 时有效。 +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • :播放器已停止接收视频流。
    • +
    • :播放器仍在接收视频流。
    • +
    +

    +

      +
    • :停止接收视频流。
    • +
    • :继续接收视频流。
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_state.dita b/dita/RTC-NG/API/api_playerinfo_state.dita new file mode 100644 index 00000000000..c92a82a7431 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_state.dita @@ -0,0 +1,52 @@ + + + + <ph keyref="State"/> + 获取当前播放器状态。 + + + + + + + + +
    +

    + public int state() + + + RtePlayerState State() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

      +
    • 方法调用成功,返回当前播放器状态,详见
    • +
    +

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_streamcount.dita b/dita/RTC-NG/API/api_playerinfo_streamcount.dita new file mode 100644 index 00000000000..f232f058b90 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_streamcount.dita @@ -0,0 +1,51 @@ + + + + <ph keyref="StreamCount"/> + 获取当前播放源中的流的数量。 + + + + + + + + +
    +

    + public int streamCount() + + + size_t StreamCount() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    该方法仅在打开非 RTE URL 时有效。

    + 该方法在打开非 RTE URL 时有效。 +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回当前播放源中的流的数量。

    +

    方法调用成功,返回流的数量。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_videoheight.dita b/dita/RTC-NG/API/api_playerinfo_videoheight.dita new file mode 100644 index 00000000000..3214f9d0221 --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_videoheight.dita @@ -0,0 +1,49 @@ + + + + <ph keyref="VideoHeight"/> + 获取视频分辨率高度。 + + + + + + + + +
    +

    + public int videoHeight() + + + int VideoHeight() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 0: 方法调用成功。
    • +
    • < 0: 方法调用失败。详见了解详情和解决建议。
    • +
    +

    方法调用成功,返回视频分辨率的高度,单位为像素。

    +
    +
    +
    diff --git a/dita/RTC-NG/API/api_playerinfo_videowidth.dita b/dita/RTC-NG/API/api_playerinfo_videowidth.dita new file mode 100644 index 00000000000..d57f927dbce --- /dev/null +++ b/dita/RTC-NG/API/api_playerinfo_videowidth.dita @@ -0,0 +1,49 @@ + + + + <ph keyref="VideoWidth"/> + 获取视频分辨率宽度。 + + + + + + + + +
    +

    + public int videoWidth() + + + int VideoWidth() const + + + + +

    +
    +
    +
    + +
    自从:
    +
    自 v4.5.1 版本新增。
    +
    +
    +

    +
    +
    + 调用限制 +

    无。

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

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

    +
      +
    • 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 9965df3a56e..17ae48e1155 100644 --- a/dita/RTC-NG/API/rtc_api_data_type.dita +++ b/dita/RTC-NG/API/rtc_api_data_type.dita @@ -1,4 +1,4 @@ - + <ph keyref="typedef"/> @@ -328,7 +328,7 @@
  • -
  • +
  • @@ -385,12 +385,13 @@
    • +
    • -
    • +
    • @@ -398,8 +399,8 @@
    • -
    • +
    • @@ -410,9 +411,9 @@
  • -
  • +
  • @@ -453,9 +454,9 @@
  • -
  • -
  • +
  • +
  • @@ -463,22 +464,22 @@
  • -
  • +
  • -
  • +
  • -
  • +
  • @@ -500,27 +501,30 @@
  • -
  • +
  • - +
      +
    • -
    • +
    • +
    • +
    • -
    • +
    • @@ -530,9 +534,9 @@
  • -
  • +
  • @@ -574,9 +578,9 @@
  • -
  • -
  • +
  • +
  • @@ -586,15 +590,15 @@
  • -
  • +
  • -
  • +
  • @@ -617,10 +621,8 @@
  • -
  • -
  • - +
    • @@ -2473,4 +2475,4 @@
    -
    + \ No newline at end of file diff --git a/dita/RTC-NG/RTC_NG_API_Android.ditamap b/dita/RTC-NG/RTC_NG_API_Android.ditamap index 85000530fa2..a6c190964ad 100644 --- a/dita/RTC-NG/RTC_NG_API_Android.ditamap +++ b/dita/RTC-NG/RTC_NG_API_Android.ditamap @@ -1,4 +1,4 @@ - + Android API Reference @@ -465,62 +465,83 @@ + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + - - - - - - - - - - - - - - + + - - - - - - - - - + + - + @@ -704,7 +725,7 @@ - + @@ -822,4 +843,4 @@ - + \ No newline at end of file diff --git a/dita/RTC-NG/RTC_NG_API_CPP.ditamap b/dita/RTC-NG/RTC_NG_API_CPP.ditamap index c9388d308d1..321b6d8a529 100644 --- a/dita/RTC-NG/RTC_NG_API_CPP.ditamap +++ b/dita/RTC-NG/RTC_NG_API_CPP.ditamap @@ -1,4 +1,4 @@ - + C++ API Reference for All Platforms @@ -466,59 +466,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + + - - - - - - - - - - - - - - + + - - - - - - - + + - + @@ -886,4 +909,4 @@ - + \ No newline at end of file diff --git a/dita/RTC-NG/RTC_NG_API_iOS.ditamap b/dita/RTC-NG/RTC_NG_API_iOS.ditamap index 03130ad447d..be6a1c2b88b 100644 --- a/dita/RTC-NG/RTC_NG_API_iOS.ditamap +++ b/dita/RTC-NG/RTC_NG_API_iOS.ditamap @@ -1,4 +1,4 @@ - + iOS API Reference @@ -467,56 +467,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + - - - - - - - - - - - - - - + - - - - - - - - + @@ -808,4 +817,4 @@ - + \ No newline at end of file diff --git a/dita/RTC-NG/RTC_NG_API_macOS.ditamap b/dita/RTC-NG/RTC_NG_API_macOS.ditamap index 27091a429a0..91310a4c05b 100644 --- a/dita/RTC-NG/RTC_NG_API_macOS.ditamap +++ b/dita/RTC-NG/RTC_NG_API_macOS.ditamap @@ -1,4 +1,4 @@ - + @@ -459,56 +459,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + - - - - - - - - - - - - - - + - - - - - - - - + @@ -759,4 +768,4 @@ - + \ No newline at end of file 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 efb1ab271ab..4014dcefc21 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -1,4 +1,4 @@ - + Keys RTC NG C++ API @@ -1310,6 +1310,167 @@ + + + + State + + + + + + + Duration + + + + + + + StreamCount + + + + + + + HasAudio + + + + + + + HasVideo + + + + + + + IsAudioMuted + + + + + + + IsVideoMuted + + + + + + + VideoHeight + + + + + + + VideoWidth + + + + + + + AbrSubscriptionLayer + + + + + + + AudioSampleRate + + + + + + + AudioChannels + + + + + + + AudioBitsPerSample + + + + + + + CurrentUrl + + + + + + + SetPlaybackSpeed + + + + + + + GetPlaybackSpeed + + + + + + + SetPlayoutVolume + + + + + + + GetPlayoutVolume + + + + + + + SetLoopCount + + + + + + + GetLoopCount + + + + + + + SwitchWithUrl + + + + + + + Seek + + + + + + + GetPosition + + + @@ -14240,7 +14401,7 @@ - C:\Users\<user_name>\AppData\Local\Agora\<process_name>\example.jpg + C:\Users\<user_name>\AppData\Local\Agora\<process_name>\example.jpg @@ -14336,4 +14497,4 @@ - + \ No newline at end of file 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 aa9deff270c..db8d3e99079 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -1,4 +1,4 @@ - + Keys RTC NG Objective-C API @@ -1207,6 +1207,69 @@ + + + + setPlaybackSpeed + + + + + + + playbackSpeed + + + + + + + setPlayoutVolume + + + + + + + playoutVolume + + + + + + + setLoopCount + + + + + + + loopCount + + + + + + + switchWithUrl + + + + + + + seek + + + + + + + getPosition + + + @@ -6003,7 +6066,14 @@ - + + + + AgoraRtePlayerInfo + + + + @@ -13296,4 +13366,4 @@ - + \ No newline at end of file diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap index 2454503264f..3f0587fbe70 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap @@ -1,4 +1,4 @@ - + Keys RTC NG Java API @@ -1253,6 +1253,153 @@ + + + + duration + + + + + + + streamCount + + + + + + + hasAudio + + + + + + + hasVideo + + + + + + + isAudioMuted + + + + + + + isVideoMuted + + + + + + + videoHeight + + + + + + + videoWidth + + + + + + + abrSubscriptionLayer + + + + + + + audioSampleRate + + + + + + + audioBitsPerSample + + + + + + + currentUrl + + + + + + + setPlaybackSpeed + + + + + + + getPlaybackSpeed + + + + + + + setPlayoutVolume + + + + + + + getPlayoutVolume + + + + + + + setLoopCount + + + + + + + getLoopCount + + + + + + + switchWithUrl + + + + + + + seek + + + + + + + getPosition + + + @@ -13448,7 +13595,7 @@ - /storage/emulated/0/Android/data/<packagename>/files/example.jpg + /storage/emulated/0/Android/data/<packagename>/files/example.jpg @@ -13559,4 +13706,4 @@ - + \ No newline at end of file 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 2acd7cb3804..ffdda0e8412 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -1,4 +1,4 @@ - + Keys RTC NG Objective-C API @@ -1164,6 +1164,69 @@ + + + + setPlaybackSpeed + + + + + + + playbackSpeed + + + + + + + setPlayoutVolume + + + + + + + playoutVolume + + + + + + + setLoopCount + + + + + + + loopCount + + + + + + + switchWithUrl + + + + + + + seek + + + + + + + getPosition + + + @@ -5614,7 +5677,14 @@ - + + + + AgoraRtePlayerInfo + + + + @@ -12749,4 +12819,4 @@ - + \ No newline at end of file diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index 1186ccb62ee..3508ae8468b 100644 --- a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap +++ b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap @@ -1,4 +1,4 @@ - + Relations @@ -2470,7 +2470,7 @@ - + @@ -3377,22 +3377,25 @@ + + + + + + - - - + - - + @@ -3404,9 +3407,15 @@ + + + + + + @@ -3442,4 +3451,4 @@ - + \ No newline at end of file From 24739a02c7a6d212a68e7a6af765abfc60b77129 Mon Sep 17 00:00:00 2001 From: Suri539 <84306751+Suri539@users.noreply.github.com> Date: Thu, 10 Apr 2025 16:48:29 +0800 Subject: [PATCH 09/23] 4.5.2 yy (#3926) * Update enum_rteplayerstate.dita * update desc * fix java keywords * add a note in 1v1 * Create api_playerobserver_onpositionchanged.dita * methods to be added * add rte player events and cpp&java keys * csd-68005 * DOC-4670 * DOC-4676 * fix * add aidoc navtitle --- ...pi_irtcengine_enablevirtualbackground.dita | 1 + .../api_irtcengine_setremoterendermode2.dita | 12 +- .../API/api_irtcengine_setvideoscenario.dita | 3 +- dita/RTC-NG/API/api_player_openwithurl.dita | 4 +- .../api_playerobserver_onpositionchanged.dita | 59 +++++++++ ...layerobserver_onaudiovolumeindication.dita | 6 +- dita/RTC-NG/API/class_rteplayerinfo.dita | 102 +++++---------- .../API/enum_localvideostreamreason.dita | 3 +- dita/RTC-NG/API/enum_rteplayerevent.dita | 66 ++++++++++ dita/RTC-NG/API/enum_rteplayerstate.dita | 2 +- .../RTC-NG/config/keys-rtc-ng-api-cpp.ditamap | 114 ++++++++++++++++ .../config/keys-rtc-ng-api-electron.ditamap | 2 + .../config/keys-rtc-ng-api-flutter.ditamap | 2 + .../RTC-NG/config/keys-rtc-ng-api-ios.ditamap | 2 + .../config/keys-rtc-ng-api-java.ditamap | 122 +++++++++++++++++- .../config/keys-rtc-ng-api-macos.ditamap | 2 + dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap | 2 + .../config/keys-rtc-ng-api-unity.ditamap | 2 + .../config/keys-rtc-ng-api-unreal.ditamap | 2 + 19 files changed, 421 insertions(+), 87 deletions(-) create mode 100644 dita/RTC-NG/API/api_playerobserver_onpositionchanged.dita diff --git a/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground.dita b/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground.dita index 9bab340bf81..51a6095bf9f 100644 --- a/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground.dita +++ b/dita/RTC-NG/API/api_irtcengine_enablevirtualbackground.dita @@ -48,6 +48,7 @@

    请在 之后调用该方法。

      +
    • 使用视频作为虚拟背景会导致内存占用持续增加,可能会导致 App 出现闪退等问题,因此在使用时请尽量降低视频的分辨率和帧率。
    • 该功能对设备性能要求较高,调用该方法时 SDK 会自动对当前设备能力进行检查。建议你在搭载如下芯片的设备上使用:
      • 骁龙 700 系列 750G 及以上
      • diff --git a/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita b/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita index 959603d3a68..513e6b3eb2b 100644 --- a/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita +++ b/dita/RTC-NG/API/api_irtcengine_setremoterendermode2.dita @@ -75,13 +75,11 @@

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

        远端用户视图的镜像模式。 - - - - -

          -
        • -

        +
          +
        • (0):SDK 决定镜像模式。默认关闭远端用户的镜像模式。
        • +
        • (1):开启远端用户视图的镜像模式。
        • +
        • (2):关闭远端用户视图的镜像模式。
        • +

        diff --git a/dita/RTC-NG/API/api_irtcengine_setvideoscenario.dita b/dita/RTC-NG/API/api_irtcengine_setvideoscenario.dita index 483f516bf3a..a686c04be4f 100644 --- a/dita/RTC-NG/API/api_irtcengine_setvideoscenario.dita +++ b/dita/RTC-NG/API/api_irtcengine_setvideoscenario.dita @@ -77,7 +77,8 @@

      -

      (2) 适用于场景。针对该场景低延迟、高画质的体验要求,SDK 进行了策略调优,提升了画质、首帧出图、中低端机延迟及弱网流畅度等性能表现。

      +

      (2) 适用于场景。针对该场景低延迟、高画质的体验要求,SDK 进行了策略调优,提升了画质、首帧出图、中低端机延迟及弱网流畅度等性能表现。 + 该枚举值仅适用于主播 vs 主播场景。

      (3) 适用于场景。针对该场景对首帧出图时间和画质清晰度的高要求,SDK 进行了策略调优,例如,默认开启音视频帧加速渲染来提升首帧出图体验,无需再额外调用 ,同时会默认开启 B 帧来确保较高的图像质量、提高传输效率。此外,也增强了在弱网环境和低端设备上的画质和流畅度表现。

      diff --git a/dita/RTC-NG/API/api_player_openwithurl.dita b/dita/RTC-NG/API/api_player_openwithurl.dita index 9144afa867a..cab38f39e53 100644 --- a/dita/RTC-NG/API/api_player_openwithurl.dita +++ b/dita/RTC-NG/API/api_player_openwithurl.dita @@ -39,7 +39,7 @@
      调用限制 -

      该方法目前仅支持打开以 rte:// 开头的 URL。

      +

      该方法目前仅支持打开以 rte:// 开头的 URL、CDN URL 和本地媒体文件。//TODO

      触发时机 -

      当主播的音量发生变化时,SDK 会触发该回调。

      +

      当播放器的音量发生变化时,SDK 会触发该回调。

      使用限制 @@ -45,7 +45,7 @@ volume - 主播当前的音量,取值范围为 [0,225]。 + 播放器当前的音量,取值范围为 [0,225]。
      diff --git a/dita/RTC-NG/API/class_rteplayerinfo.dita b/dita/RTC-NG/API/class_rteplayerinfo.dita index 2cd9a5d2fe2..b180e9224cf 100644 --- a/dita/RTC-NG/API/class_rteplayerinfo.dita +++ b/dita/RTC-NG/API/class_rteplayerinfo.dita @@ -6,21 +6,7 @@

      - public class PlayerInfo { - public int state(); - public long duration(); - public int streamCount(); - public boolean hasAudio(); - public boolean hasVideo(); - public boolean isAudioMuted(); - public boolean isVideoMuted(); - public int videoHeight(); - public int videoWidth(); - public Constants.AbrSubscriptionLayer abrSubscriptionLayer(); - public int audioSampleRate(); - public int audioChannels(); - public int audioBitsPerSample(); -} + @interface AgoraRtePlayerInfo : NSObject - (int)state; @@ -36,22 +22,9 @@ - (int)audioSampleRate; - (int)audioChannels; - (int)audioBitsPerSample; +- (NSString \* _Nullable)currentUrl; @end - typedef struct RtePlayerInfo { - RtePlayerState state; - size_t duration; - size_t stream_count; - bool has_audio; - bool has_video; - bool is_audio_muted; - bool is_video_muted; - int video_height; - int video_width; - RteAbrSubscriptionLayer abr_subscription_layer; - int audio_sample_rate; - int audio_channels; - int audio_bits_per_sample; -} RtePlayerInfo; + @@ -66,7 +39,7 @@

      -
      +
      <text conref="../conref/conref_api_metadata.dita#conref_api_metadata/property"/> @@ -75,70 +48,63 @@ duration - 预留参数。 + 媒体资源的时长(ms)。 - stream_count - streamCount - 预留参数。 + streamCount + 媒体流的数量。 - has_audio - hasAudio - URL 媒体流中是否存在音频流: -
      • :存在音频流。
      • -
      • :不存在音频流。
      + hasAudio + URL 媒体流中是否包含音频流: +
      • :包含音频流。
      • +
      • :不包含音频流。
      - has_video - hasVideo - URL 媒体流中是否存在视频流: -
      • :存在视频流。
      • -
      • :不存在视频流。
      + hasVideo + URL 媒体流中是否包含视频流: +
      • :包含视频流。
      • +
      • :不包含视频流。
      - is_audio_muted - isAudioMuted - 本地用户是否订阅了音频流: -
      • :未订阅音频流。
      • -
      • :订阅了音频流。
      + isAudioMuted + 播放器是否停止接受音频流: +
      • :停止接受音频流。
      • +
      • :继续接受音频流。
      - is_video_muted - isVideoMuted - 本地用户是否订阅了视频流: -
      • :未订阅视频流。
      • -
      • :订阅了视频流。
      + isVideoMuted + 播放器是否停止接受视频流: +
      • :停止接受视频流。
      • +
      • :继续接受视频流。
      - video_height - videoHeight + videoHeight 视频帧的高度(px)。 - video_width - videoWidth + videoWidth 视频帧的宽度(px)。 - abr_subscription_layer - abrSubscriptionLayer + abrSubscriptionLayer 订阅的视频流的质量级别。在自适应码率(ABR)视频流中,不同的质量级别对应不同的分辨率和码率,详见 - audio_sample_rate - audioSampleRate + audioSampleRate 音频采样率(Hz)。 - audio_channels - audioChannels + audioChannels 音频声道数。 - audio_bits_per_sample - audioBitsPerSample - 预留参数。 + audioBitsPerSample + 每个音频采样点的位数(bit)。 + + + currentUrl + 当前正在播放的 URL。
      diff --git a/dita/RTC-NG/API/enum_localvideostreamreason.dita b/dita/RTC-NG/API/enum_localvideostreamreason.dita index d9d95cc026e..8228bc4521d 100644 --- a/dita/RTC-NG/API/enum_localvideostreamreason.dita +++ b/dita/RTC-NG/API/enum_localvideostreamreason.dita @@ -106,7 +106,8 @@ - 24:(仅适用于 Windows)屏幕共享过程中发生意外错误(可能由于窗口阻塞失败),导致性能下降,但屏幕共享过程本身没有受到影响。 + 24:(仅适用于 Windows)屏幕共享过程中发生意外错误(可能由于窗口屏蔽失败),导致屏幕共享策略降级,但屏幕共享过程本身没有受到影响。 + 屏幕共享过程中,由于设备本身驱动等问题导致屏蔽指定窗口失败时,SDK 也会报告该事件并自动回退到共享整个屏幕。如果你的应用场景需要屏蔽特定窗口以保护隐私,建议监听此事件并在事件触发时添加额外的隐私保护机制。 diff --git a/dita/RTC-NG/API/enum_rteplayerevent.dita b/dita/RTC-NG/API/enum_rteplayerevent.dita index 57e6910e28d..c9275d535c0 100644 --- a/dita/RTC-NG/API/enum_rteplayerevent.dita +++ b/dita/RTC-NG/API/enum_rteplayerevent.dita @@ -15,6 +15,26 @@
      枚举值 + + + 0:开始跳转到指定位置进行播放。 + + + + 1:跳转到指定位置完成。 + + + + 2:跳转到指定播放位置时发生错误。 + + + + 3:当前缓冲的数据不足以支持播放。 + + + + 4:当前缓冲的数据刚好能支持播放。 + 5:音频或视频出现卡顿。 @@ -23,6 +43,10 @@ 6:音频和视频均停止卡顿。 + + + 7:单次循环播放完成。 + 8:Token 即将过期。在收到此事件后你需要重新生成一个新的 Token 并通过 更新 URL。 @@ -35,6 +59,48 @@ 10:网络状态恢复后,从仅接收音频流恢复到接收音视频流。 + + + 11:开始切换到新的 URL。 + + + + 12:切换到新的 URL 完成。 + + + + 13:切换到新的 URL 时发生错误。 + + + + 14:视频首帧已显示。 + + + + 15:缓存文件数量达到上限。 + + + + 16:缓存文件大小达到上限。 + + + + 17:开始尝试打开新 URL。 + + + + 18:成功打开新的 URL。 + + + + 19:打开新的 URL 失败。 + + + + 20:当前音轨发生改变。 + + +
      diff --git a/dita/RTC-NG/API/enum_rteplayerstate.dita b/dita/RTC-NG/API/enum_rteplayerstate.dita index cee5d2ea572..2dcd9bf66f1 100644 --- a/dita/RTC-NG/API/enum_rteplayerstate.dita +++ b/dita/RTC-NG/API/enum_rteplayerstate.dita @@ -37,7 +37,7 @@
      - 5:播放完成。当主播结束推流退出房间后,会报告该状态码。 + 5:播放完成。 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 4014dcefc21..07ab673ee59 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -5780,6 +5780,8 @@ + + @@ -12369,6 +12371,118 @@ + + + + kRtePlayerEventSeekBegin + + + + + + + kRtePlayerEventSeekComplete + + + + + + + kRtePlayerEventSeekError + + + + + + + kRtePlayerEventBufferLow + + + + + + + kRtePlayerEventBufferRecover + + + + + + + kRtePlayerEventOneLoopPlaybackCompleted + + + + + + + kRtePlayerEventSwitchBegin + + + + + + + kRtePlayerEventSwitchComplete + + + + + + + kRtePlayerEventSwitchError + + + + + + + kRtePlayerEventFirstDisplayed + + + + + + + kRtePlayerEventReachCacheFileMaxCount + + + + + + + kRtePlayerEventReachCacheFileMaxSize + + + + + + + kRtePlayerEventTryOpenStart + + + + + + + kRtePlayerEventTryOpenSucceed + + + + + + + kRtePlayerEventTryOpenFailed + + + + + + + kRtePlayerEventAudioTrackChanged + + + 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 5b69df22e48..d0e92d66f45 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-electron.ditamap @@ -4695,6 +4695,8 @@ + + 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 8a3bbdceb32..00ca60b6de7 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-flutter.ditamap @@ -4778,6 +4778,8 @@ + + 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 db8d3e99079..d29ee392439 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -5176,6 +5176,8 @@ + + diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap index 3f0587fbe70..dee25c3c099 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap @@ -813,7 +813,7 @@ - setRenderMode + setVideoRenderMode @@ -1081,14 +1081,14 @@ - getMirrorMode + getVideoRenderMode - getRenderMode + getVideoRenderMode @@ -1130,7 +1130,7 @@ - setMirrorMode + setVideoMirrorMode @@ -5504,6 +5504,8 @@ + + @@ -11451,6 +11453,118 @@ + + + + SEEK_BEGIN + + + + + + + SEEK_COMPLETE + + + + + + + SEEK_ERROR + + + + + + + BUFFER_LOW + + + + + + + BUFFER_RECOVER + + + + + + + ONE_LOOP_PLAYBACK_COMPLETED + + + + + + + SWITCH_BEGIN + + + + + + + SWITCH_COMPLETE + + + + + + + SWITCH_ERROR + + + + + + + FIRST_DISPLAYED + + + + + + + REACH_CACHE_FILE_MAX_COUNT + + + + + + + REACH_CACHE_FILE_MAX_SIZE + + + + + + + TRY_OPEN_START + + + + + + + TRY_OPEN_SUCCEED + + + + + + + TRY_OPEN_FAILED + + + + + + + AUDIO_TRACK_CHANGED + + + 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 ffdda0e8412..2bb7a33005e 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -4878,6 +4878,8 @@ + + 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 2711d8d3fb3..00ccbc32445 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-rn.ditamap @@ -4655,6 +4655,8 @@ + + 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 a7915202641..68c5c8b1416 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-unity.ditamap @@ -4885,6 +4885,8 @@ + + diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-unreal.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-unreal.ditamap index deb8b34d008..daaad543da3 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-unreal.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-unreal.ditamap @@ -5215,6 +5215,8 @@ + + From c3cba6467138d0b71644aed8f72099cf0b0fb184 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 17:15:55 +0800 Subject: [PATCH 10/23] add onpositionchanged --- ...ack_playerobserver_onpositionchanged.dita} | 4 +- dita/RTC-NG/API/class_playerupdatedinfo.dita | 40 ++++++------ dita/RTC-NG/API/class_rteplayerinfo.dita | 63 ++++++++++++++++++- dita/RTC-NG/API/rtc_api_data_type.dita | 19 +++++- dita/RTC-NG/RTC_NG_API_Android.ditamap | 1 + dita/RTC-NG/RTC_NG_API_CPP.ditamap | 1 + dita/RTC-NG/RTC_NG_API_iOS.ditamap | 1 + dita/RTC-NG/RTC_NG_API_macOS.ditamap | 1 + .../RTC-NG/config/keys-rtc-ng-api-cpp.ditamap | 7 +++ .../RTC-NG/config/keys-rtc-ng-api-ios.ditamap | 7 +++ .../config/keys-rtc-ng-api-java.ditamap | 7 +++ .../config/keys-rtc-ng-api-macos.ditamap | 7 +++ .../config/relations-rtc-ng-api.ditamap | 1 + 13 files changed, 135 insertions(+), 24 deletions(-) rename dita/RTC-NG/API/{api_playerobserver_onpositionchanged.dita => callback_playerobserver_onpositionchanged.dita} (97%) diff --git a/dita/RTC-NG/API/api_playerobserver_onpositionchanged.dita b/dita/RTC-NG/API/callback_playerobserver_onpositionchanged.dita similarity index 97% rename from dita/RTC-NG/API/api_playerobserver_onpositionchanged.dita rename to dita/RTC-NG/API/callback_playerobserver_onpositionchanged.dita index fcad5dec202..a7ee96d2bd1 100644 --- a/dita/RTC-NG/API/api_playerobserver_onpositionchanged.dita +++ b/dita/RTC-NG/API/callback_playerobserver_onpositionchanged.dita @@ -1,6 +1,6 @@ - + <ph keyref="onPositionChanged_PlayerObserver"/> 报告媒体资源当前的播放进度。 @@ -36,7 +36,7 @@
      触发时机

      该回调在媒体资源播放过程中每秒触发一次。

      -
      +
      使用限制

      无。

      diff --git a/dita/RTC-NG/API/class_playerupdatedinfo.dita b/dita/RTC-NG/API/class_playerupdatedinfo.dita index e90e563370d..5d9d6d8e57a 100644 --- a/dita/RTC-NG/API/class_playerupdatedinfo.dita +++ b/dita/RTC-NG/API/class_playerupdatedinfo.dita @@ -7,28 +7,28 @@

      public class PlayerUpdatedInfo { - private String deviceId; - private long videoHeight; - private long videoWidth; - private long audioSampleRate; - private long audioChannels; - private long audioBitsPerSample; + public String deviceId; + public long videoHeight; + public long videoWidth; + public long audioSampleRate; + public long audioChannels; + public long audioBitsPerSample; } export class PlayerUpdatedInfo { - + public internalPlayerUuid:string = "" - + public deviceId:string = "" - + public videoHeight:number = 0 - + public videoWidth:number = 0 - + public audioSampleRate:number = 0 - + public audioChannels:number = 0 - + public audioBitsPerSample:number = 0 } __attribute__((visibility("default"))) @interface AgoraMediaPlayerUpdatedInfo : NSObject @@ -69,7 +69,7 @@ public: FPlayerUpdatedInfo(){} FPlayerUpdatedInfo(const agora::media::base::PlayerUpdatedInfo& playerUpdatedInfo) { - + internalPlayerUuid = UTF8_TO_TCHAR(playerUpdatedInfo.internalPlayerUuid); deviceId = UTF8_TO_TCHAR(playerUpdatedInfo.deviceId); videoHeight = playerUpdatedInfo.videoHeight; @@ -95,11 +95,11 @@ public: } }; export class PlayerUpdatedInfo { - + playerId?: string; - + deviceId?: string; - + cacheStatistics?: CacheStatistics; } public class PlayerUpdatedInfo : OptionalJsonParse @@ -111,11 +111,11 @@ public: public Optional<CacheStatistics> cacheStatistics = new Optional<CacheStatistics>(); } export class PlayerUpdatedInfo { - + playerId?: string; - + deviceId?: string; - + cacheStatistics?: CacheStatistics; } class PlayerUpdatedInfo { diff --git a/dita/RTC-NG/API/class_rteplayerinfo.dita b/dita/RTC-NG/API/class_rteplayerinfo.dita index b180e9224cf..b5a113dde5e 100644 --- a/dita/RTC-NG/API/class_rteplayerinfo.dita +++ b/dita/RTC-NG/API/class_rteplayerinfo.dita @@ -107,5 +107,66 @@ 当前正在播放的 URL。

      - +
      + 方法 + + + state + 获取播放器当前的状态。详见 + + + duration + 获取媒体资源的时长(ms),详见 + + + streamCount + 获取媒体流的数量,详见 + + + hasAudio + 获取 URL 媒体流中是否包含音频流,详见 + + + hasVideo + 获取 URL 媒体流中是否包含视频流,详见 + + + isAudioMuted + 获取播放器是否停止接受音频流,详见 + + + isVideoMuted + 获取播放器是否停止接受视频流,详见 + + + videoHeight + 获取视频帧的高度(px),详见 + + + videoWidth + 获取视频帧的宽度(px),详见 + + + abrSubscriptionLayer + 获取订阅的视频流的质量级别,详见 + + + audioSampleRate + 获取音频采样率(Hz),详见 + + + audioChannels + 获取音频声道数,详见 + + + audioBitsPerSample + 获取每个音频采样点的位数(bit),详见 + + + currentUrl + 获取当前正在播放的 URL,详见 + + +
      + diff --git a/dita/RTC-NG/API/rtc_api_data_type.dita b/dita/RTC-NG/API/rtc_api_data_type.dita index 17ae48e1155..4e9218412e9 100644 --- a/dita/RTC-NG/API/rtc_api_data_type.dita +++ b/dita/RTC-NG/API/rtc_api_data_type.dita @@ -255,7 +255,24 @@
    • -
    • +
    • +
        +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      +
    • diff --git a/dita/RTC-NG/RTC_NG_API_Android.ditamap b/dita/RTC-NG/RTC_NG_API_Android.ditamap index a6c190964ad..826ee11f9fb 100644 --- a/dita/RTC-NG/RTC_NG_API_Android.ditamap +++ b/dita/RTC-NG/RTC_NG_API_Android.ditamap @@ -504,6 +504,7 @@ + diff --git a/dita/RTC-NG/RTC_NG_API_CPP.ditamap b/dita/RTC-NG/RTC_NG_API_CPP.ditamap index 321b6d8a529..fe9533fa826 100644 --- a/dita/RTC-NG/RTC_NG_API_CPP.ditamap +++ b/dita/RTC-NG/RTC_NG_API_CPP.ditamap @@ -505,6 +505,7 @@ + diff --git a/dita/RTC-NG/RTC_NG_API_iOS.ditamap b/dita/RTC-NG/RTC_NG_API_iOS.ditamap index be6a1c2b88b..11aa7cda7bd 100644 --- a/dita/RTC-NG/RTC_NG_API_iOS.ditamap +++ b/dita/RTC-NG/RTC_NG_API_iOS.ditamap @@ -493,6 +493,7 @@ + diff --git a/dita/RTC-NG/RTC_NG_API_macOS.ditamap b/dita/RTC-NG/RTC_NG_API_macOS.ditamap index 91310a4c05b..0e06b42ef0f 100644 --- a/dita/RTC-NG/RTC_NG_API_macOS.ditamap +++ b/dita/RTC-NG/RTC_NG_API_macOS.ditamap @@ -485,6 +485,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 07ab673ee59..d47a4e5abf4 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -1515,6 +1515,13 @@ + + + + onPositionChanged + + + 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 d29ee392439..909c9ef9df6 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -1272,6 +1272,13 @@ + + + + onPositionChanged + + + diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap index dee25c3c099..0221ab9fc2a 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap @@ -1402,6 +1402,13 @@ + + + + onPositionChanged + + + 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 2bb7a33005e..ea2285e3281 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -1229,6 +1229,13 @@ + + + + onPositionChanged + + + diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index 3508ae8468b..cb78dd36cd2 100644 --- a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap +++ b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap @@ -3429,6 +3429,7 @@ + From dc16b1a6ab3d1e229c675d08a02018e73f6fe679 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 17:22:34 +0800 Subject: [PATCH 11/23] fix parse error --- dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap | 2 +- dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap | 2 +- dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap | 2 +- dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) 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 d47a4e5abf4..07d525fe2e7 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-cpp.ditamap @@ -1515,7 +1515,7 @@ - + onPositionChanged 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 909c9ef9df6..ac337fda7d3 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -1272,7 +1272,7 @@ - + onPositionChanged diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap index 0221ab9fc2a..c1586c15db3 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap @@ -1402,7 +1402,7 @@ - + onPositionChanged 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 ea2285e3281..b484fa129b5 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -1229,7 +1229,7 @@ - + onPositionChanged From 6014684c0e744b0cbecfa3320cd589e76d0434bd Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 17:27:04 +0800 Subject: [PATCH 12/23] Update enum_rteplayerevent.dita --- dita/RTC-NG/API/enum_rteplayerevent.dita | 2 -- 1 file changed, 2 deletions(-) diff --git a/dita/RTC-NG/API/enum_rteplayerevent.dita b/dita/RTC-NG/API/enum_rteplayerevent.dita index c9275d535c0..ac5e257830f 100644 --- a/dita/RTC-NG/API/enum_rteplayerevent.dita +++ b/dita/RTC-NG/API/enum_rteplayerevent.dita @@ -99,8 +99,6 @@ 20:当前音轨发生改变。 - -
      From a38de3b3b00482a6ebab4f34d58564a476d67b97 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 17:37:25 +0800 Subject: [PATCH 13/23] add relations --- dita/RTC-NG/API/rtc_api_data_type.dita | 46 +++++++++++++------ .../config/relations-rtc-ng-api.ditamap | 20 ++++++++ 2 files changed, 51 insertions(+), 15 deletions(-) diff --git a/dita/RTC-NG/API/rtc_api_data_type.dita b/dita/RTC-NG/API/rtc_api_data_type.dita index 4e9218412e9..cdddeb22efd 100644 --- a/dita/RTC-NG/API/rtc_api_data_type.dita +++ b/dita/RTC-NG/API/rtc_api_data_type.dita @@ -105,7 +105,23 @@
    • -
    • +
    • +
        +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
    • @@ -257,20 +273,20 @@
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • -
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
      • +
    • diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index cb78dd36cd2..07862ee2117 100644 --- a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap +++ b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap @@ -3451,5 +3451,25 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From f27795a4ceb76f399f9e43e75a274219a0f555a4 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 17:41:01 +0800 Subject: [PATCH 14/23] Update relations-rtc-ng-api.ditamap --- dita/RTC-NG/config/relations-rtc-ng-api.ditamap | 1 + 1 file changed, 1 insertion(+) diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index 07862ee2117..8f06e1ae5e8 100644 --- a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap +++ b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap @@ -3470,6 +3470,7 @@ + \ No newline at end of file From faf2d802ccf08443a7ef2c455e1268e5de2eeeb1 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 17:52:47 +0800 Subject: [PATCH 15/23] Update keys-rtc-ng-api-java.ditamap --- dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap index c1586c15db3..cb20ea67de0 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-java.ditamap @@ -924,6 +924,13 @@ + + + + AudioChannels + + + @@ -987,6 +994,13 @@ + + + + State + + + From b1a1a4fe825566b1ea38b0825fcaece9232d8693 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Thu, 10 Apr 2025 18:27:11 +0800 Subject: [PATCH 16/23] update keys and desc --- dita/RTC-NG/API/api_player_muteaudio.dita | 9 ++++----- dita/RTC-NG/API/api_player_mutevideo.dita | 9 ++++----- dita/RTC-NG/API/rtc_api_data_type.dita | 2 -- dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap | 7 ------- dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap | 7 ------- 5 files changed, 8 insertions(+), 26 deletions(-) diff --git a/dita/RTC-NG/API/api_player_muteaudio.dita b/dita/RTC-NG/API/api_player_muteaudio.dita index 601dfa0c155..22aeecafc4d 100644 --- a/dita/RTC-NG/API/api_player_muteaudio.dita +++ b/dita/RTC-NG/API/api_player_muteaudio.dita @@ -2,7 +2,7 @@ <ph keyref="MuteAudio"/> - 订阅或取消订阅主播的音频流。 + 接收或停止接收音频流。 @@ -30,7 +30,6 @@
      v4.5.0
      -

      观众端可以调用该方法来设置是否订阅主播的音频流。

      调用时机 @@ -49,9 +48,9 @@ mute - 是否订阅主播的音频流: -
      • :不订阅主播的音频流。
      • -
      • :订阅主播的音频流。
      + 是否接收音频流: +
      • :不接收音频流。
      • +
      • :接收音频流。
      diff --git a/dita/RTC-NG/API/api_player_mutevideo.dita b/dita/RTC-NG/API/api_player_mutevideo.dita index 6d4a2f94219..d71db16f77f 100644 --- a/dita/RTC-NG/API/api_player_mutevideo.dita +++ b/dita/RTC-NG/API/api_player_mutevideo.dita @@ -2,7 +2,7 @@ <ph keyref="MuteVideo"/> - 订阅或取消订阅主播的视频流。 + 接收或停止接收视频流。 @@ -30,7 +30,6 @@
      v4.5.0
      -

      观众端可以调用该方法来设置是否订阅主播的视频流。

      调用时机 @@ -49,9 +48,9 @@ mute - 是否订阅主播的视频流: -
      • :不订阅主播的视频流。
      • -
      • :订阅主播的视频流。
      + 是否接收视频流: +
      • :不接收视频流。
      • +
      • :接收视频流。
      diff --git a/dita/RTC-NG/API/rtc_api_data_type.dita b/dita/RTC-NG/API/rtc_api_data_type.dita index cdddeb22efd..a897b554079 100644 --- a/dita/RTC-NG/API/rtc_api_data_type.dita +++ b/dita/RTC-NG/API/rtc_api_data_type.dita @@ -424,7 +424,6 @@
    • -
    • @@ -546,7 +545,6 @@
    • -
    • 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 ac337fda7d3..9f9f3f0f86e 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -6075,13 +6075,6 @@ - - - - AgoraRtePlayerInfo - - - 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 b484fa129b5..8d43b80639f 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -5686,13 +5686,6 @@ - - - - AgoraRtePlayerInfo - - - From 365e735dba8616f3895e22c63cf2df33cea0ea4e Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Fri, 11 Apr 2025 12:04:39 +0800 Subject: [PATCH 17/23] ios/mac: update rte enum keys --- .../RTC-NG/config/keys-rtc-ng-api-ios.ditamap | 112 +++++++++++++++++ .../config/keys-rtc-ng-api-macos.ditamap | 115 +++++++++++++++++- 2 files changed, 226 insertions(+), 1 deletion(-) 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 9f9f3f0f86e..d3ab473aa68 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-ios.ditamap @@ -11438,6 +11438,118 @@ + + + + AgoraRtePlayerEventSeekBegin + + + + + + + AgoraRtePlayerEventSeekComplete + + + + + + + AgoraRtePlayerEventSeekError + + + + + + + AgoraRtePlayerEventBufferLow + + + + + + + AgoraRtePlayerEventBufferRecover + + + + + + + AgoraRtePlayerEventOneLoopPlaybackCompleted + + + + + + + AgoraRtePlayerEventSwitchBegin + + + + + + + AgoraRtePlayerEventSwitchComplete + + + + + + + AgoraRtePlayerEventSwitchError + + + + + + + AgoraRtePlayerEventFirstDisplayed + + + + + + + AgoraRtePlayerEventReachCacheFileMaxCount + + + + + + + AgoraRtePlayerEventReachCacheFileMaxSize + + + + + + + AgoraRtePlayerEventTryOpenStart + + + + + + + AgoraRtePlayerEventTryOpenSucceed + + + + + + + AgoraRtePlayerEventTryOpenFailed + + + + + + + AgoraRtePlayerEventAudioTrackChanged + + + 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 8d43b80639f..b3152c1dc23 100644 --- a/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap +++ b/dita/RTC-NG/config/keys-rtc-ng-api-macos.ditamap @@ -10897,13 +10897,126 @@ AgoraRtePlayerEventAbrFallbackToAudioOnlyLayer - + + AgoraRtePlayerEventAbrRecoverFromAudioOnlyLayer + + + + AgoraRtePlayerEventSeekBegin + + + + + + + AgoraRtePlayerEventSeekComplete + + + + + + + AgoraRtePlayerEventSeekError + + + + + + + AgoraRtePlayerEventBufferLow + + + + + + + AgoraRtePlayerEventBufferRecover + + + + + + + AgoraRtePlayerEventOneLoopPlaybackCompleted + + + + + + + AgoraRtePlayerEventSwitchBegin + + + + + + + AgoraRtePlayerEventSwitchComplete + + + + + + + AgoraRtePlayerEventSwitchError + + + + + + + AgoraRtePlayerEventFirstDisplayed + + + + + + + AgoraRtePlayerEventReachCacheFileMaxCount + + + + + + + AgoraRtePlayerEventReachCacheFileMaxSize + + + + + + + AgoraRtePlayerEventTryOpenStart + + + + + + + AgoraRtePlayerEventTryOpenSucceed + + + + + + + AgoraRtePlayerEventTryOpenFailed + + + + + + + AgoraRtePlayerEventAudioTrackChanged + + + From 2dfa5342867cd86d09f70e1e2ad68237a98a74bb Mon Sep 17 00:00:00 2001 From: Suri539 Date: Fri, 11 Apr 2025 14:35:31 +0800 Subject: [PATCH 18/23] windows release note --- .../en-US/native/release_windows_ng.md | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/markdown/RTC 4.x/release-notes/en-US/native/release_windows_ng.md b/markdown/RTC 4.x/release-notes/en-US/native/release_windows_ng.md index 1b69584159d..2fe3b65fc4e 100644 --- a/markdown/RTC 4.x/release-notes/en-US/native/release_windows_ng.md +++ b/markdown/RTC 4.x/release-notes/en-US/native/release_windows_ng.md @@ -1,3 +1,30 @@ +## v4.5.2 + +v4.2.2 was released on April xx, 2025. + +**Attention:** + +- Starting from version 4.5.0, both RTC SDK and Signaling (version 2.2.0 and above) include the `libaosl.dll` library. If you manually integrate Video SDK via CDN and also use Signaling SDK, delete the earlier version of the `libaosl.dll` to avoid conflicts. +- 4.5.2 RTC SDK `libaosl.dll` library version is 1.2.13. You can find out the version information of the library by checking the properties of the `libaosl.dll` file. + +#### Issues fixed + +This release fixed the following issues: + +- When playing a multi-track media file, noise can be heard after calling the `setAudioPitch` method to adjust the audio pitch. +- The host called the `createCustomAudioTrack` method to create custom audio track and set `trackType` to `AUDIO_TRACK_DIRECT`, called the ```pushAudioFrame` to push custom audio frames into a channel and then called `playEffect` to play audio effects, audience members in the channel would hear noise. +- Apps integrated with the SDK occasionally encountered UI lag caused by main thread blocking during audio and video interactions. +- The local preview of the shared screen flickered after calling the `startScreenCapture [2/2]` to start screen sharing and set `enableHighLight` in `ScreenCaptureParameters` to `true` through the `config` parameter to outline the shared window, and then placed the window on the top layer and maximizing it. +- Calling `startScreenCaptureByDisplayId` to share the video stream of specified screen and specifying the windows to be blocked through `excludeWindowList` in `ScreenCaptureParameters`, occasionally some windows fail to be blocked. +- The application occasionally crashed after sharing the video stream of the external screen and disconnecting the external screen connection. +- Calling `openWithMediaSource` and set `isLiveSource` in the `source` parameter to `true` to play a video stream, the playback failed. +- When the sender transmits multi-channel encoded audio, the receiver occasionally experienced noise. +- In scenarios where the App integrates a media player, when the open function is called twice to open different media resources consecutively, the second call to open unexpectedly resulted in the `onPlayerInfoUpdated [1/2]` callback returning information for the first media resource. +- After calling `enableAudioVolumeIndication` to enable user volume indication, the `onAudioVolumeIndication` callback returned a local user volume of 0 for both local streaming users and remote users. +- In scenarios of audio and video communication and screen sharing using a 21:9 display (ultrawide screen), setting a high resolution such as 3840x2160 resulted in the screen sharing image being cropped in both local preview and on the receiver's display. +- When the App called `enableVideoImageSource` to enable the video image source feature, the sending side occasionally succeeded in streaming, but `onVideoPublishStateChanged` did not return the expected. +- In multi-channel scenarios, if the App called `setupRemoteVideoEx` to initialize the remote user's view before successfully calling `joinChannelEx`, the display of the first frame of the remote user's view occasionally experienced significant delay. + ## v4.5.1 v4.5.1 was released on March 3, 2025. From a1a7a3de7074b38e96e874f76ca252d4e51592e5 Mon Sep 17 00:00:00 2001 From: Suri539 Date: Fri, 11 Apr 2025 15:50:17 +0800 Subject: [PATCH 19/23] android release --- .../en-US/native/release_android_ng.md | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) 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 b79b5b2de4e..e6bfee6e814 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 @@ -1,3 +1,42 @@ +## v4.5.2 + +v4.2.2 was released on April xx, 2025. + +**Attention:** + +- Starting from version 4.5.0, both RTC SDK and Signaling (version 2.2.0 and above) include the `libaosl.so` library. If you manually integrate Video SDK via CDN and also use Signaling SDK, delete the earlier version of the `libaosl.so` to avoid conflicts. +- 4.5.2 RTC SDK `libaosl.so` library version is 1.2.13. + +#### Improvements + +1. **Accessible media player information properties** + + Starting from this version, the access modifiers for all attributes in media player-related information [PlayerUpdatedInfo](API/class_playerupdatedinfo.html) have been changed from private to public. This improvement aims to enhance the accessibility of these classes, allowing external code to access and modify these attributes more easily. + +#### Issues fixed + +This release fixed the following issues: + +- When playing a multi-track media file, noise can be heard after calling the `setAudioPitch` method to adjust the audio pitch. +- The host called the `createCustomAudioTrack` method to create custom audio track and set `trackType` to `AUDIO_TRACK_DIRECT`, called the `pushExternalAudioFrame` to push custom audio frames into a channel and then called `playEffect [2/2]` to play audio effects, audience members in the channel would hear noise. +- Apps integrated with the SDK occasionally encountered UI lag caused by main thread blocking during audio and video interactions. +- When playing an MP4 file with EAC3 audio encoding by calling the `startAudioMixing [2/2]` method, sometimes there was no sound. +- Memory leaks occurred after leaving the channel and stopping video rendering. +- After calling `setCameraFocusPositionInPreview` to set the focus position manually, the focus position was inaccurate when the camera captured a zoomed-in image. +- When calling `setExternalMediaProjection` to configure an external MediaProjection instance (outside the SDK) for screen video stream capture, the transmitted video stream resolution (width/height) did not dynamically adjusted when the screen orientation changed between landscape and portrait modes. +- Calling `openWithMediaSource` and set `isLiveSource` in the `source` parameter to `true` to play a video stream, the playback failed. +- When attempting to open a non-existent local media file with the media player, the `onPlayerStateChanged` callback did not report `PLAYER_STATE_FAILED` as expected. +- When the sender transmits multi-channel encoded audio, the receiver occasionally experienced noise. +- In scenarios where the App integrates a media player, when the open function is called twice to open different media resources consecutively, the second call to open unexpectedly resulted in the `onPlayerInfoUpdated` callback returning information for the first media resource. +- After calling `enableAudioVolumeIndication` to enable user volume indication, the `onAudioVolumeIndication` callback returned a local user volume of 0 for both local streaming users and remote users. +- During audio and video communication, the App occasionally froze. +- The operation failed when calling `setExtensionProperty` with the key set to "makeup_options" to achieve makeup effects. +- When the sending user conducted audio and video communication in dim lighting conditions, the preview image appeared darker on some device models. +- In scenarios of audio and video communication and screen sharing using a 21:9 display (ultrawide screen), setting a high resolution such as 3840x2160 resulted in the screen sharing image being cropped in both local preview and on the receiver's display. +- When the App called `enableVideoImageSource` to enable the video image source feature, the sending side occasionally succeeded in streaming, but `onVideoPublishStateChanged` did not return the expected. +- In multi-channel scenarios, if the App called `setupRemoteVideoEx` to initialize the remote user's view before successfully calling `joinChannelEx`, the display of the first frame of the remote user's view occasionally experienced significant delay. +- After a failure to join a channel, calling again without first calling `leaveChannel [1/2]` to exit the channel occasionally led to a crash. + ## v4.5.1 v4.5.1 was released on March 3, 2025. From ab1356cca2b65ba250bcd30392b3fea9d5d5c122 Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Fri, 11 Apr 2025 16:55:43 +0800 Subject: [PATCH 20/23] ios/mac: add releasenotes --- .../en-US/native/release_ios_ng.md | 31 +++++++++++++++++ .../en-US/native/release_mac_ng.md | 33 +++++++++++++++++-- 2 files changed, 62 insertions(+), 2 deletions(-) diff --git a/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md b/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md index c51c5229fdd..455f1034fc2 100644 --- a/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md +++ b/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md @@ -4,6 +4,37 @@ AirPods Pro does not support A2DP protocol in communication audio mode, which may lead to connection failure in that mode. +## v4.5.2 + +v4.2.2 was released on April xx, 2025. + +**Attention:** + +- Starting from version 4.5.0, both RTC SDK and Signaling (version 2.2.0 and above) include the `aosl.xcframework` library. If you manually integrate Video SDK via CDN and also use Signaling SDK, delete the earlier version of the `aosl.xcframework` to avoid conflicts. +- 4.5.2 RTC SDK `aosl.xcframework` library version is 1.2.13. You can check the version information of the library in `Info.plist`. + +#### Improvements + +1. **URL live streaming playback** + + This version further expands the functionality of URL streaming playback, supporting playback of CDN URLs and local media resource files. It also allows for starting playback from a specified position, adjusting playback speed, setting playback volume, switching playback sources during playback, and more. See for details. + +#### Issues fixed + +This release fixed the following issues: + +- When playing a multi-track media file, noise can be heard after calling the `setAudioPitch:` method to adjust the audio pitch. +- The host called the `createCustomAudioTrack:config:` method to create custom audio track and set `trackType` to `AUDIO_TRACK_DIRECT`, called the `pushExternalAudioFrameRawData:samples:sampleRate:channels:trackId:timestamp:` to push custom audio frames into a channel and then called `playEffect:filePath:loopCount:pitch:pan:gain:publish:startPos:` to play audio effects, audience members in the channel would hear noise. +- Apps integrated with the SDK occasionally encountered UI lag caused by main thread blocking during audio and video interactions. +- Calling `openWithMediaSource:` and set `isLiveSource` in the `source` parameter to `YES` to play a video stream, the playback failed. +- Calling `enableVirtualBackground` to enable virtual background function, the virtual background image became larger and blurry when the phone was rotated. +- When the sender transmits multi-channel encoded audio, the receiver occasionally experienced noise. +- In scenarios where the App integrates a media player, when the open function is called twice to open different media resources consecutively, the second call to open unexpectedly resulted in the `AgoraRtcMediaPlayer:infoUpdated:` callback returning information for the first media resource. +- After calling `enableAudioVolumeIndication:smooth:reportVad:` to enable user volume indication, the `rtcEngine:reportAudioVolumeIndicationOfSpeakers:totalVolume:` callback returned a local user volume of 0 for both local streaming users and remote users. +- During audio and video communication, the App occasionally froze. +- When the App called `enableVideoImageSource:options:` to enable the video image source feature, the sending side occasionally succeeded in streaming, but `rtcEngine:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState:` did not return the expected. +- In multi-channel scenarios, if the App called `setupRemoteVideoEx:connection:` to initialize the remote user's view before successfully calling `joinChannelExByToken:connection:delegate:mediaOptions:joinSuccess:`, the display of the first frame of the remote user's view occasionally experienced significant delay. + ## v4.5.1 v4.5.1 was released on March 3, 2025. diff --git a/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md b/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md index 058c2167808..29fb49264de 100644 --- a/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md +++ b/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md @@ -1,3 +1,32 @@ +## v4.5.2 + +v4.2.2 was released on April xx, 2025. + +**Attention:** + +- Starting from version 4.5.0, both RTC SDK and Signaling (version 2.2.0 and above) include the `aosl.xcframework` library. If you manually integrate Video SDK via CDN and also use Signaling SDK, delete the earlier version of the `aosl.xcframework` to avoid conflicts. +- 4.5.2 RTC SDK `aosl.xcframework` library version is 1.2.13. You can check the version information of the library in `Info.plist`. + +#### Improvements + +1. **URL live streaming playback** + + This version further expands the functionality of URL streaming playback, supporting playback of CDN URLs and local media resource files. It also allows for starting playback from a specified position, adjusting playback speed, setting playback volume, switching playback sources during playback, and more. See for details. + +#### Issues fixed + +This release fixed the following issues: + +- When playing a multi-track media file, noise can be heard after calling the `setAudioPitch:` method to adjust the audio pitch. +- The host called the `createCustomAudioTrack:config:` method to create custom audio track and set `trackType` to `AUDIO_TRACK_DIRECT`, called the `pushExternalAudioFrameRawData:samples:sampleRate:channels:trackId:timestamp:` to push custom audio frames into a channel and then called `playEffect:filePath:loopCount:pitch:pan:gain:publish:startPos:` to play audio effects, audience members in the channel would hear noise. +- Apps integrated with the SDK occasionally encountered UI lag caused by main thread blocking during audio and video interactions. +- Calling `openWithMediaSource:` and set `isLiveSource` in the `source` parameter to `YES` to play a video stream, the playback failed. +- When the sender transmits multi-channel encoded audio, the receiver occasionally experienced noise. +- In scenarios where the App integrates a media player, when the open function is called twice to open different media resources consecutively, the second call to open unexpectedly resulted in the `AgoraRtcMediaPlayer:infoUpdated:` callback returning information for the first media resource. +- After calling `enableAudioVolumeIndication:smooth:reportVad:` to enable user volume indication, the `rtcEngine:reportAudioVolumeIndicationOfSpeakers:totalVolume:` callback returned a local user volume of 0 for both local streaming users and remote users. +- When the App called `enableVideoImageSource:options:` to enable the video image source feature, the sending side occasionally succeeded in streaming, but `rtcEngine:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState:` did not return the expected. +- In multi-channel scenarios, if the App called `setupRemoteVideoEx:connection:` to initialize the remote user's view before successfully calling `joinChannelExByToken:connection:delegate:mediaOptions:joinSuccess:`, the display of the first frame of the remote user's view occasionally experienced significant delay. + ## v4.5.1 v4.5.1 was released on March 3, 2025. @@ -298,7 +327,7 @@ This version fixed the following issues: - [`enableCameraCenterStage`](/api-ref/rtc/macos/API/toc_center_stage#api_irtcengine_enablecameracenterstage) - [`isCameraCenterStageSupported`](/api-ref/rtc/macos/API/toc_center_stage#api_irtcengine_iscameracenterstagesupported) -- The following enumerations in [``AgoraLocalVideoStreamReason``](/api-ref/rtc/macos/API/enum_localvideostreamreason): +- The following enumerations in [`AgoraLocalVideoStreamReason`](/api-ref/rtc/macos/API/enum_localvideostreamreason): - `AgoraLocalVideoStreamReasonScreenCaptureRecoverFromMinimized` - [`setFaceInfoDelegate`](/api-ref/rtc/macos/API/toc_speech_driven#api_imediaengine_registerfaceinfoobserver) - [`AgoraFaceInfoDelegate`](/api-ref/rtc/macos/API/class_ifaceinfoobserver) @@ -307,7 +336,7 @@ This version fixed the following issues: - [`AgoraMediaSourceType`](/api-ref/rtc/macos/API/enum_mediasourcetype) adds `AgoraMediaSourceTypeSpeechDriven` - [`AgoraVideoSourceType`](/api-ref/rtc/macos/API/enum_videosourcetype) adds `AgoraVideoSourceTypeSpeechDriven` - [`AgoraEncryptionConfig`](/api-ref/rtc/macos/API/class_encryptionconfig) adds `datastreamEncryptionEnabled` -- [``AgoraEncryptionErrorType``](/api-ref/rtc/macos/API/enum_encryptionerrortype) adds the following enumerations: +- [`AgoraEncryptionErrorType`](/api-ref/rtc/macos/API/enum_encryptionerrortype) adds the following enumerations: - `ENCRYPTION_ERROR_DATASTREAM_DECRYPTION_FAILURE` - `ENCRYPTION_ERROR_DATASTREAM_ENCRYPTION_FAILURE` - [`AgoraRtcDeviceInfo`](/api-ref/rtc/macos/API/class_agorartcdeviceinfo) adds `deviceTypeName` From cc5047e214ad055e171b7a39b3a4c72044aa8f8c Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Fri, 11 Apr 2025 17:14:26 +0800 Subject: [PATCH 21/23] ios/mac: remove rte --- .../RTC 4.x/release-notes/en-US/native/release_ios_ng.md | 6 ------ .../RTC 4.x/release-notes/en-US/native/release_mac_ng.md | 6 ------ 2 files changed, 12 deletions(-) diff --git a/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md b/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md index 455f1034fc2..0fb1d22be44 100644 --- a/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md +++ b/markdown/RTC 4.x/release-notes/en-US/native/release_ios_ng.md @@ -13,12 +13,6 @@ v4.2.2 was released on April xx, 2025. - Starting from version 4.5.0, both RTC SDK and Signaling (version 2.2.0 and above) include the `aosl.xcframework` library. If you manually integrate Video SDK via CDN and also use Signaling SDK, delete the earlier version of the `aosl.xcframework` to avoid conflicts. - 4.5.2 RTC SDK `aosl.xcframework` library version is 1.2.13. You can check the version information of the library in `Info.plist`. -#### Improvements - -1. **URL live streaming playback** - - This version further expands the functionality of URL streaming playback, supporting playback of CDN URLs and local media resource files. It also allows for starting playback from a specified position, adjusting playback speed, setting playback volume, switching playback sources during playback, and more. See for details. - #### Issues fixed This release fixed the following issues: diff --git a/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md b/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md index 29fb49264de..8c531f36c0b 100644 --- a/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md +++ b/markdown/RTC 4.x/release-notes/en-US/native/release_mac_ng.md @@ -7,12 +7,6 @@ v4.2.2 was released on April xx, 2025. - Starting from version 4.5.0, both RTC SDK and Signaling (version 2.2.0 and above) include the `aosl.xcframework` library. If you manually integrate Video SDK via CDN and also use Signaling SDK, delete the earlier version of the `aosl.xcframework` to avoid conflicts. - 4.5.2 RTC SDK `aosl.xcframework` library version is 1.2.13. You can check the version information of the library in `Info.plist`. -#### Improvements - -1. **URL live streaming playback** - - This version further expands the functionality of URL streaming playback, supporting playback of CDN URLs and local media resource files. It also allows for starting playback from a specified position, adjusting playback speed, setting playback volume, switching playback sources during playback, and more. See for details. - #### Issues fixed This release fixed the following issues: From 69ffb9f626bbb20f1b1054735a7f6e361e4074fb Mon Sep 17 00:00:00 2001 From: Nero-Hu Date: Fri, 18 Apr 2025 17:13:31 +0800 Subject: [PATCH 22/23] update setloopcount --- .../API/api_playerconfig_setloopcount.dita | 34 +++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/dita/RTC-NG/API/api_playerconfig_setloopcount.dita b/dita/RTC-NG/API/api_playerconfig_setloopcount.dita index fd2ae0a12d1..ffe1afc31a5 100644 --- a/dita/RTC-NG/API/api_playerconfig_setloopcount.dita +++ b/dita/RTC-NG/API/api_playerconfig_setloopcount.dita @@ -30,7 +30,7 @@
      自 v4.5.1 版本新增。
      -

      你可以通过该方法设置媒体文件的循环播放次数,包括播放一次、两次,或无限循环播放,直到调用 方法停止播放。

      +

      调用限制 @@ -41,35 +41,41 @@ count - 媒体文件的循环播放次数。 + 循环播放媒体文件的次数:
        -
      • 0:播放一次。
      • -
      • 1:播放两次。
      • -
      • -1:无限循环播放,直到调用 方法停止播放。
      • +
      • 1:播放一次。
      • +
      • 2:播放两次。
      • +
      • -1:无限循环播放,直到调用 stop() 停止播放。
      - 媒体文件的循环播放次数。 + 媒体文件的循环次数:
        -
      • 0:播放一次。
      • -
      • 1:播放两次。
      • -
      • -1:无限循环播放,直到调用 方法停止播放。
      • +
      • 1:播放一次。
      • +
      • 2:播放两次。
      • +
      • -1:无限循环播放,直到调用
      媒体文件的循环播放次数。
        -
      • 0:播放一次。
      • -
      • 1:播放两次。
      • -
      • -1:无限循环播放,直到调用 停止播放。
      • +
      • 1:播放一次。
      • +
      • 2:播放两次。
      • +
      • -1:无限循环播放,直到调用 停止播放。
      error err - 输出参数,返回错误信息。详见 + 输出参数,表示错误信息。可能返回以下 : +
        +
      • :调用成功。
      • +
      • count 参数设置为非法值。详见
      • +
      +
      状态或错误信息,详见
        -
      • :成功。
      • +
      • :调用成功。
      • +
      • count 参数设置为非法值。
      From 5158fe761f0d05c5504dc7afffb9908ead60b5ae Mon Sep 17 00:00:00 2001 From: Suri539 Date: Fri, 18 Apr 2025 17:32:17 +0800 Subject: [PATCH 23/23] Update api_playerconfig_setloopcount.dita --- dita/RTC-NG/API/api_playerconfig_setloopcount.dita | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dita/RTC-NG/API/api_playerconfig_setloopcount.dita b/dita/RTC-NG/API/api_playerconfig_setloopcount.dita index ffe1afc31a5..1139e401a31 100644 --- a/dita/RTC-NG/API/api_playerconfig_setloopcount.dita +++ b/dita/RTC-NG/API/api_playerconfig_setloopcount.dita @@ -43,23 +43,23 @@ count 循环播放媒体文件的次数:
        -
      • 1:播放一次。
      • -
      • 2:播放两次。
      • -
      • -1:无限循环播放,直到调用 stop() 停止播放。
      • +
      • 1:播放一次。
      • +
      • 2:播放两次。
      • +
      • -1:无限循环播放,直到调用 停止播放。
      媒体文件的循环次数:
      • 1:播放一次。
      • 2:播放两次。
      • -
      • -1:无限循环播放,直到调用
      • +
      • -1:无限循环播放,直到调用
      媒体文件的循环播放次数。
      • 1:播放一次。
      • 2:播放两次。
      • -
      • -1:无限循环播放,直到调用 停止播放。
      • +
      • -1:无限循环播放,直到调用 停止播放。