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 @@

请在 之后调用该方法。

  • -
  • +
  • @@ -453,9 +486,9 @@
  • -
  • -
  • +
  • +
  • @@ -463,22 +496,22 @@
  • -
  • +
  • -
  • +
  • -
  • +
  • @@ -500,16 +533,16 @@
  • -
  • +
  • - +
  • -
  • +
  • @@ -574,9 +609,9 @@
  • -
  • -
  • +
  • +
  • @@ -586,15 +621,15 @@
  • -
  • +
  • -
  • +
  • @@ -617,10 +652,8 @@
  • -
  • -
  • - + - + \ 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..826ee11f9fb 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,84 @@ + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + - - - - - - - - - - - - - - + + - - - - - - - - - + + - + @@ -704,7 +726,7 @@ - + @@ -822,4 +844,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..fe9533fa826 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,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + + - - - - - - - - - - - - - - + + - - - - - - - + + - + @@ -886,4 +910,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..11aa7cda7bd 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,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + - - - - - - - - - - - - - - + - - - - - - - - + @@ -808,4 +818,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..0e06b42ef0f 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,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + - - + + + + + - - - - - - - - - - - - - - + - - - - - - - - + @@ -759,4 +769,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..07d525fe2e7 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 + + + @@ -1354,6 +1515,13 @@ + + + + onPositionChanged + + + @@ -5619,6 +5787,8 @@ + + @@ -12208,6 +12378,118 @@ + + + + kRtePlayerEventSeekBegin + + + + + + + kRtePlayerEventSeekComplete + + + + + + + kRtePlayerEventSeekError + + + + + + + kRtePlayerEventBufferLow + + + + + + + kRtePlayerEventBufferRecover + + + + + + + kRtePlayerEventOneLoopPlaybackCompleted + + + + + + + kRtePlayerEventSwitchBegin + + + + + + + kRtePlayerEventSwitchComplete + + + + + + + kRtePlayerEventSwitchError + + + + + + + kRtePlayerEventFirstDisplayed + + + + + + + kRtePlayerEventReachCacheFileMaxCount + + + + + + + kRtePlayerEventReachCacheFileMaxSize + + + + + + + kRtePlayerEventTryOpenStart + + + + + + + kRtePlayerEventTryOpenSucceed + + + + + + + kRtePlayerEventTryOpenFailed + + + + + + + kRtePlayerEventAudioTrackChanged + + + @@ -14240,7 +14522,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 +14618,4 @@ - + \ No newline at end of file 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 aa9deff270c..d3ab473aa68 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,8 +1207,78 @@ + + + + setPlaybackSpeed + + + + + + + playbackSpeed + + + + + + + setPlayoutVolume + + + + + + + playoutVolume + + + + + + + setLoopCount + + + + + + + loopCount + + + + + + + switchWithUrl + + + + + + + seek + + + + + + + getPosition + + + + + + + onPositionChanged + + + @@ -5113,6 +5183,8 @@ + + @@ -6003,7 +6075,7 @@ - + @@ -11366,6 +11438,118 @@ + + + + AgoraRtePlayerEventSeekBegin + + + + + + + AgoraRtePlayerEventSeekComplete + + + + + + + AgoraRtePlayerEventSeekError + + + + + + + AgoraRtePlayerEventBufferLow + + + + + + + AgoraRtePlayerEventBufferRecover + + + + + + + AgoraRtePlayerEventOneLoopPlaybackCompleted + + + + + + + AgoraRtePlayerEventSwitchBegin + + + + + + + AgoraRtePlayerEventSwitchComplete + + + + + + + AgoraRtePlayerEventSwitchError + + + + + + + AgoraRtePlayerEventFirstDisplayed + + + + + + + AgoraRtePlayerEventReachCacheFileMaxCount + + + + + + + AgoraRtePlayerEventReachCacheFileMaxSize + + + + + + + AgoraRtePlayerEventTryOpenStart + + + + + + + AgoraRtePlayerEventTryOpenSucceed + + + + + + + AgoraRtePlayerEventTryOpenFailed + + + + + + + AgoraRtePlayerEventAudioTrackChanged + + + @@ -13296,4 +13480,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..cb20ea67de0 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 @@ -813,7 +813,7 @@ - setRenderMode + setVideoRenderMode @@ -924,6 +924,13 @@ + + + + AudioChannels + + + @@ -987,6 +994,13 @@ + + + + State + + + @@ -1081,14 +1095,14 @@ - getMirrorMode + getVideoRenderMode - getRenderMode + getVideoRenderMode @@ -1130,7 +1144,7 @@ - setMirrorMode + setVideoMirrorMode @@ -1253,8 +1267,162 @@ + + + + duration + + + + + + + streamCount + + + + + + + hasAudio + + + + + + + hasVideo + + + + + + + isAudioMuted + + + + + + + isVideoMuted + + + + + + + videoHeight + + + + + + + videoWidth + + + + + + + abrSubscriptionLayer + + + + + + + audioSampleRate + + + + + + + audioBitsPerSample + + + + + + + currentUrl + + + + + + + setPlaybackSpeed + + + + + + + getPlaybackSpeed + + + + + + + setPlayoutVolume + + + + + + + getPlayoutVolume + + + + + + + setLoopCount + + + + + + + getLoopCount + + + + + + + switchWithUrl + + + + + + + seek + + + + + + + getPosition + + + + + + + onPositionChanged + + + @@ -5357,6 +5525,8 @@ + + @@ -11304,6 +11474,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 + + + @@ -13448,7 +13730,7 @@ - /storage/emulated/0/Android/data/<packagename>/files/example.jpg + /storage/emulated/0/Android/data/<packagename>/files/example.jpg @@ -13559,4 +13841,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..b3152c1dc23 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,8 +1164,78 @@ + + + + setPlaybackSpeed + + + + + + + playbackSpeed + + + + + + + setPlayoutVolume + + + + + + + playoutVolume + + + + + + + setLoopCount + + + + + + + loopCount + + + + + + + switchWithUrl + + + + + + + seek + + + + + + + getPosition + + + + + + + onPositionChanged + + + @@ -4815,6 +4885,8 @@ + + @@ -5614,7 +5686,7 @@ - + @@ -10825,13 +10897,126 @@ AgoraRtePlayerEventAbrFallbackToAudioOnlyLayer - + + AgoraRtePlayerEventAbrRecoverFromAudioOnlyLayer + + + + AgoraRtePlayerEventSeekBegin + + + + + + + AgoraRtePlayerEventSeekComplete + + + + + + + AgoraRtePlayerEventSeekError + + + + + + + AgoraRtePlayerEventBufferLow + + + + + + + AgoraRtePlayerEventBufferRecover + + + + + + + AgoraRtePlayerEventOneLoopPlaybackCompleted + + + + + + + AgoraRtePlayerEventSwitchBegin + + + + + + + AgoraRtePlayerEventSwitchComplete + + + + + + + AgoraRtePlayerEventSwitchError + + + + + + + AgoraRtePlayerEventFirstDisplayed + + + + + + + AgoraRtePlayerEventReachCacheFileMaxCount + + + + + + + AgoraRtePlayerEventReachCacheFileMaxSize + + + + + + + AgoraRtePlayerEventTryOpenStart + + + + + + + AgoraRtePlayerEventTryOpenSucceed + + + + + + + AgoraRtePlayerEventTryOpenFailed + + + + + + + AgoraRtePlayerEventAudioTrackChanged + + + @@ -12749,4 +12934,4 @@ - + \ No newline at end of file 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 @@ + + diff --git a/dita/RTC-NG/config/relations-rtc-ng-api.ditamap b/dita/RTC-NG/config/relations-rtc-ng-api.ditamap index 1186ccb62ee..8f06e1ae5e8 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 @@ + + + + + + @@ -3420,6 +3429,7 @@ + @@ -3441,5 +3451,26 @@ + + + + + + + + + + + + + + + + + + + + + - + \ No newline at end of file diff --git a/dita/RTC-NG/release/release_notes.dita b/dita/RTC-NG/release/release_notes.dita index c836b66a39e..4df71ef0eeb 100644 --- a/dita/RTC-NG/release/release_notes.dita +++ b/dita/RTC-NG/release/release_notes.dita @@ -1,28 +1,24 @@ - v4.5.1 + v4.5.2 -

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

    +

    该版本于 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.1 RTC SDK libaosl.solibaosl.dllaosl.xcframework 库版本为 xxx。你可以在 Info.plist 中查看库的版本信息。你可以通过查看 libaosl.dll 文件的属性来得知库的版本信息。
    -
    - -
    - - 新增特性 - +

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

      -
    1. AI 对话场景 -

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

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

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

    @@ -31,7 +27,12 @@ 改进
      -
    1. 优化了特定机型上 SDK 初始化的耗时。(iOS)
    2. +
    3. URL 拉流播放 +

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

      +
    4. +
    5. 媒体播放器信息属性可访问 +

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

      +
    @@ -40,19 +41,30 @@

    该版本修复了以下问题:

      -
    • 集成 SDK 的 App 设置 targetSdkVersion 为 34,在 Android 14 系统上首次开启屏幕共享进行授权时出现崩溃。(Android)
    • -
    • 同时加入两个及以上的频道,连续调用 分别对频道中的本地视频流进行截图,在先调用的频道截图会失败。
    • -
    • 使用媒体播放器时,调用 暂停播放后,调用 定位到指定播放位置、然后调用 继续播放,播放时会先从暂停播放的位置播放,然后再从新的位置播放。
    • -
    • 使用媒体播放器时,调用 切换媒体资源后,调用 获取当前正在播放的媒体资源的路径没有变化。
    • -
    • 用户在特定机型上进行音视频互动并使用蓝牙耳机,偶现调整手机音量后改变的是媒体音量而非蓝牙音量。(Android)
    • -
    • 音视频互动时,偶现接收端观看发送端画面出现黑屏。(Android)
    • -
    • 在特定机型上,调用 在设备的某个特定角度设置当前摄像头的曝光系数后,当设备移动到另一个角度时,偶现视频画面变暗。(Android)
    • -
    • 播放 CDN 直播流时,直播流短暂中断后恢复,偶现播放画面长时间卡住。(Android)
    • -
    • 在推送 i420 格式的视频帧到频道内时,使用 CVPixelBuffer 会导致崩溃。(iOS)
    • -
    • 调用 设置两个视图(view),然后调用 开启人脸检测,后传入的视图中无法检测到人脸信息。(iOS)
    • -
    • 屏幕共享场景下,接收端用户看到的共享图像出现绿线。(iOS)
    • -
    • 在极速直播场景下,观众通过 string 型的用户 ID 加入频道观看直播,偶现音频和画面不同步。
    • -
    • 在同时使用 AI 降噪、AI 回声消除插件时,偶现插件不生效。
    • +
    • 开启导唱功能播放多音轨歌曲时,调用 方法调整歌曲音调后出现杂音。
    • +
    • 主播端调用 创建自定义音频采集轨道并将 trackType 设为 AUDIO_TRACK_DIRECT,调用 将自采集音频推送到频道内,然后调用 播放音效,频道内的观众听主播的音频有杂音。
    • +
    • 集成了 SDK 的 App 在音视频互动过程中偶现主线程阻塞导致的 UI 卡顿。
    • +
    • 调用 播放 EAC3 音频编码的 MP4 文件时偶现无声。
    • +
    • 调用 开启屏幕共享并在 config 中将 enableHighLight 设为 对共享窗口进行描边,将共享窗口置于最上层并最大化后,本地预览的共享画面出现闪烁。
    • +
    • 调用 共享指定屏幕的视频流,通过 excludeWindowList 来指定屏蔽的窗口,偶现部分窗口屏蔽失败。
    • +
    • 应用程序共享外接屏幕的视频流,断开外接屏幕连接后偶现应用程序崩溃。
    • +
    • 退出频道停止视频渲染后出现渲染内存泄漏。
    • +
    • 调用 设置手动对焦位置,摄像头拍摄缩放画面后,设置的对焦位置不准确。
    • +
    • 调用 设置 SDK 外部的 MediaProjection 采集屏幕视频流,当屏幕变为横屏或竖屏时,发送的视频流宽、高没有随之变化。
    • +
    • 调用 并通过 source 参数将 isLiveSource 设为 并播放纯视频流,播放失败。
    • +
    • 调用 开启虚拟背景功能,手机横竖屏旋转后,虚拟背景图像变大变模糊。
    • +
    • 使用媒体播放器打开实际不存在的本地媒体文件时,播放器状态改变回调 不会报告 PLAYER_STATE_FAILED,不符合预期。
    • +
    • 发送端传输多声道编码音频时,接收端偶现杂音。
    • +
    • App 集成媒体播放器场景下,先后两次调用 open 打开不同媒体资源,第二次打开时,媒体播放器信息变化回调 返回第一次媒体资源的信息,不符合预期。
    • +
    • 调用 启用用户音量提示本地发流用户和远端用户音量相关信息,用户音量提示回调 返回的本地用户音量为 0。
    • +
    • 音视频互通过程中偶现 App 卡死。
    • +
    • 调用 设置 key 为 "makeup_options" 实现美妆效果失败。
    • +
    • 发送端用户在光线较暗的环境中进行音视频互通,部分机型偶现本地预览的图像偏暗。
    • +
    • 使用 21:9 的显示屏(带鱼屏)进行音视频互通和屏幕共享场景下,设置高分辨率,如 3840*2160,屏幕共享画面在本地预览和接收端显示被裁剪。
    • +
    • App 调用 启用垫片推流功能,偶现发送端推流成功但是 返回当前的发布状态不是 PUB_STATE_PUBLISHED,不符合预期。
    • +
    • 多频道场景下,App 在调用 成功前调用 初始化远端用户视图,偶现远端用户视图首帧图像显示延时大。
    • +
    • App 退出时偶现崩溃。
    • +
    • 加入频道失败后,在没有调用 离开频道的情况下,再次调用 加入频道时偶现崩溃。
    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 回声消除插件时,偶现插件不生效。
    • +
    + +
    +
    + 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. 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..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 @@ -4,6 +4,31 @@ 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`. + +#### 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..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 @@ -1,3 +1,26 @@ +## 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`. + +#### 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 +321,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 +330,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` 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.