3.52

该版本于 2023 年 7 月 3 日发布。
此次升级包含的客户端系统有:Android、iOS、macOS、Windows、Linux、Electron。

重要说明
  1. 应 Apple App Store 的要求,自此版本起,RTC SDK for iOS 不再支持 armv7 架构,兼容的最低版本为 iOS 11。
  2. 自该版本起,RTC SDK 将逐步拆分为主库加功能插件的形式,以适应不同的业务场景和 App 体积缩减需求。详情参看减小 App 体积。
  3. 该版本提供了用 Swift 开发的 iOS 快速开始 Demo 项目。参考跑通 iOS Swift 快速开始。
  4. 该版本提供了用 Swift 开发的 macOS 快速开始 Demo 项目。参考跑通 macOS Swift 快速开始。
升级必看

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看升级指南。

新增特性
  1. Linux 端支持使用 RTC SDK 内部采集方式进行屏幕音频采集,用于屏幕共享。 参看 startScreenAudioCapture 。
  2. Android 和 iOS 端新增支持启用蜂窝网络辅助增强通信效果。参看:
平台AndroidiOS
接口setCellularEnhancementsetCellularEnhancement:
  1. Android 和 Linux 端支持关闭音频相关功能,在纯视频场景下减小音频功能对 CPU 的占用。要使用此功能,联系技术支持人员。
  2. 新增支持设置本地代理。接口参看:
平台AndroidiOSmacOSWindowsLinuxElectron
接口setLocalProxysetLocalProxy:setLocalProxy:setLocalProxysetLocalProxysetLocalProxy
回调onLocalProxyStateChangedrtcEngine:onLocalProxyStateChanged:withProxyState:withProxyError:rtcEngine:onLocalProxyStateChanged:withProxyState:withProxyError:onLocalProxyStateChangedonLocalProxyStateChangedonLocalProxyStateChanged
  1. 新增支持开启或关闭字幕,可对房间内说话人的语音进行识别,转成文字或者进行翻译。接口参看:
平台AndroidiOSmacOSWindowsLinuxElectron

接口

回调

  1. 新增设置房间附加消息 API,支持设置房间相关的业务属性。具体参看:
平台AndroidiOSmacOSWindowsLinuxElectron
接口setRoomExtraInfosetRoomExtraInfo:value:setRoomExtraInfo:value:setRoomExtraInfosetRoomExtraInfosetRoomExtraInfo

回调

  1. 新增支持会前/会中音频设备回声抑制功能检测。接口参看:

平台

Android

iOS

macOS

Windows

Electron

接口

回调onHardwareEchoDetectionResultrtcEngine:onHardwareEchoDetectionResult:rtcEngine:onHardwareEchoDetectionResult:onHardwareEchoDetectionResultonHardwareEchoDetectionResult
  1. 新增通过数码变焦控制摄像头画面的能力,实现画面的上、下、左、右平移以及放大、缩小。接口参看:

平台

Android

iOS

macOS

Windows

Linux

Electron

接口

  1. PC 端支持将摄像头画面旋转为指定角度,包括 Windows、macOS 和 Electron。接口参看:

平台

Windows

macOS

Electron

接口setVideoCaptureRotationsetVideoCaptureRotation:setVideoCaptureRotation
  1. 根据进房时选择的业务场景自动适配音频降噪算法,满足多种场景下不同的降噪需求。支持通话过程中手动设置音频降噪模式。接口参看:
平台AndroidiOSmacOSWindowsLinuxElectron
APIsetAnsModesetAnsMode:setAnsMode:setAnsModesetAnsModesetAnsMode
  1. 调节远端公共音频在本地播放的音量。接口参看:

平台

Android

iOS

macOS

Windows

Linux

ELectron

APIsetPublicStreamAudioPlaybackVolumesetPublicStreamAudioPlaybackVolume:volume:setPublicStreamAudioPlaybackVolume:volume:setPublicStreamAudioPlaybackVolumesetPublicStreamAudioPlaybackVolumesetPublicStreamAudioPlaybackVolume
  1. 新增支持打开或关闭 AGC 功能。 接口参看:
平台macOSWindowsLinuxELectron
APIenableAGC:enableAGCenableAGCenableAGC
功能优化
  1. 优化千人会议体验,开启音频选路后,支持发布端设置不参与选路,适用于要求指定用户的发言能一直被收听到的场景,例如,有固定的主持人麦位。对于每个 appId,只区分是否开启音频选路功能,不再区分房间模式。详见千人会议和音频选路。具体参看:
平台AndroidiOSmacOSWindowsLinuxElectron
接口setAudioSelectionConfigsetAudioSelectionConfig:setAudioSelectionConfig:setAudioSelectionConfigsetAudioSelectionConfigsetAudioSelectionConfig
  1. 公共流功能优化,SEI 相关的信息回调功能,支持与 vp8、单流转封装功能同时使用。订阅端可以感知发布状态变化。
  2. 优化本地用户空间音频体验,支持本地用户设置自己和指定远端用户在空间音频坐标系中的位置和朝向,同时支持本地用户设置指定或全部远端用户不参与空间音频。具体参看:
平台AndroidiOSmacOSWindowsElectron

接口

  1. 在客户端进行视频编码时,优化了自适应码率的策略。针对内容自适应,在复杂场景下更清晰,在简单场景下更省带宽。要使用此功能,请联系技术支持人员。
3.51

Flutter 插件升级 RTC SDK 至 3.51 版本,于 2023 年 7 月 3 日发布。详情参看升级指南。

3.50

该版本于 2023 年 5 月 8 日发布,包含的客户端系统有:Android、iOS、macOS、Windows、Linux、Electron。若无特殊说明,本次发版说明中提及的变动适用于上述所有平台。

重要说明
  1. 该版本首次发布可原生支持搭载 ARM 架构芯片设备应用开发的 macOS SDK,如有需要请至资源获取下载。
  2. 该版本对部分 API 的命名、参数等进行了统一和规范。请根据升级指南按需修改工程文件。
新增特性
  1. MediaDeviceWarning 新增啸叫检测警告。以下情形将触发该警告:
    • 不支持啸叫抑制的房间模式下,检测到啸叫;
    • 支持啸叫抑制的房间模式下,检测到未被抑制的啸叫。
  2. 适配 iPadOS 16 和 macOS Ventura 多任务台前调度(Stage Manager)功能。丰富了可以通过 onVideoDeviceStateChanged 回调感知的系统摄像头状态信息,详见 通话打断和恢复。
平台iOS
枚举值ByteRTCMediaDeviceError :
  • ByteRTCMediaDeviceErrorNotAvailableInBackground
  • ByteRTCMediaDeviceErrorVideoInUseByAnotherClient
  • ByteRTCMediaDeviceErrorNotAvailableWithMultipleForegroundApps
  • ByteRTCMediaDeviceErrorNotAvailableDueToSystemPressure
  1. 支持在 CDN 推流时,将一些窗口设定为圆角矩形。参看 setCornerRadius。
  2. 支持在关闭摄像头后,上传静态图片填充本地推送的视频流。具体参看 API:
平台AndroidiOSmacOSWindowsLinuxElectron
APIsetDummyCaptureImagePathsetDummyCaptureImagePath:setDummyCaptureImagePath:setDummyCaptureImagePathsetDummyCaptureImagePathsetDummyCaptureImagePath
  1. PC 端支持在屏幕共享时,共享双声道的屏幕音频流。具体参看 API:
平台macOSWindowsElectron
APIsetScreenAudioChannelsetScreenAudioChannelsetScreenAudioChannel
  1. 对于已支持硬件耳返的 Android 机型,当你开启耳返功能时,会默认使用硬件耳返。
  2. 在纯媒体音频场景下,支持切换 iOS 设备与耳机之间的蓝牙传输协议。参看 setBluetoothMode:。
  3. 多房间场景下,支持调节某个远端房间内的所有用户的音量。具体参看 API:
平台AndroidiOSmacOSWindowsLinuxElectron
APIsetRemoteRoomAudioPlaybackVolumesetRemoteRoomAudioPlaybackVolume:setRemoteRoomAudioPlaybackVolume:setRemoteRoomAudioPlaybackVolumesetRemoteRoomAudioPlaybackVolumesetRemoteRoomAudioPlaybackVolume
  1. 全链路支持 VP8 编码。当你有大量用户在 Web 端使用 RTC 时,请联系技术支持人员,打开 VP8 编码的选项,使 Web 端用户获得最佳的兼容性体验。
  2. macOS 和 Windows 平台新增接口 setOriginalScreenVideoInfo,可在自定义采集时将采集能力边界告知 RTC,RTC 会据此做出最佳采集策略推荐,并通过 onExternalScreenFrameUpdate 回调告知用户调整采集参数。
  3. 客户端合流支持设置回调的视频帧格式,其中安卓支持回调纹理格式的视频,可以解决客户端合流在某些安卓设备上的性能问题。具体参看:
平台AndroidiOSmacOSWindows
KeytypeTranscoderClientMixVideoFormatByteRTCClientMixVideoFormatByteRTCClientMixVideoFormatTranscoderClientMixVideoFormat
  1. 支持在启用范围语音功能时,设置相互通话不受衰减影响的小队。具体参看 API:
平台AndroidiOSmacOSWindowsElectron
APIsetNoAttenuationFlagssetNoAttenuationFlags:setNoAttenuationFlags:setNoAttenuationFlagssetNoAttenuationFlags
  1. Windows、Linux、Electron 新增支持屏幕音频首帧发送和播放状态的回调。具体参看:
平台WindowsLinuxElectron
屏幕音频首帧发送状态回调onScreenAudioFrameSendStateChangedonScreenAudioFrameSendStateChangedonScreenAudioFrameSendStateChanged
屏幕音频首帧播放状态回调onScreenAudioFramePlayStateChangedonScreenAudioFramePlayStateChangedonScreenAudioFramePlayStateChanged
  1. 在 Android,iOS,macOS,Windows 端上,支持检测背景声中的音乐,并保护音乐的音质。要使用此功能,请联系技术支持人员开启。
  2. 新增 Token 的发布/订阅权限即将过期的回调,用于提示用户及时更新 Token 相关权限,以保证正常的音视频通话。该功能默认关闭,如有需要开启请联系技术支持开启。具体参看:
平台AndroidiOSmacOSWindowsLinuxElectron
发布权限 Token 即将过期的回调onPublishPrivilegeTokenWillExpireonPublishPrivilegeTokenWillExpire:onPublishPrivilegeTokenWillExpire:onPublishPrivilegeTokenWillExpireonPublishPrivilegeTokenWillExpireonPublishPrivilegeTokenWillExpire
订阅权限 Token 即将过期的回调onSubscribePrivilegeTokenWillExpireonSubscribePrivilegeTokenWillExpire:onSubscribePrivilegeTokenWillExpire:onSubscribePrivilegeTokenWillExpireonSubscribePrivilegeTokenWillExpireonSubscribePrivilegeTokenWillExpire
  1. 新增多种混响音效:录音棚,虚拟立体声,空旷,3D 人声等。关于现在支持的所有混响音效,参看 VoiceReverbType。
  2. 新增录制本地通话的功能。具体参看 API:
平台AndroidiOSmacOSWindowsLinuxElectron
APIstartAudioRecordingstartAudioRecordingstartAudioRecordingstartAudioRecordingstartAudioRecordingstartAudioRecording
  1. 新增对本地采集的音频添加音量均衡效果和混响参数。具体参看 API:
平台AndroidiOSmacOSWindowsElectron
添加音量均衡效果setLocalVoiceEqualizationsetLocalVoiceEqualizationsetLocalVoiceEqualizationsetLocalVoiceEqualizationsetLocalVoiceEqualization
添加混响参数setLocalVoiceReverbParamsetLocalVoiceReverbParamsetLocalVoiceReverbParamsetLocalVoiceReverbParamsetLocalVoiceReverbParam
启用混响参数enableLocalVoiceReverbenableLocalVoiceReverbenableLocalVoiceReverbenableLocalVoiceReverbenableLocalVoiceReverb
  1. 新增停止、暂停、恢复播放所有音频文件及混音的功能。具体参看 API:
平台AndroidiOSmacOSWindowsElectron
停止播放所有音频文件及混音stopAllAudioMixingstopAllAudioMixingstopAllAudioMixingstopAllAudioMixingstopAllAudioMixing
暂停播放所有音频文件及混音pauseAllAudioMixingpauseAllAudioMixingpauseAllAudioMixingpauseAllAudioMixingpauseAllAudioMixing
恢复播放所有音频文件及混音resumeAllAudioMixingresumeAllAudioMixingresumeAllAudioMixingresumeAllAudioMixingresumeAllAudioMixing
  1. SDK for Linux 另新增以下功能:
功能优化
  1. 优化实时信令线程与组件,降低消息到达时延。
  2. 3D 空间音频立体声效果升级,支持球面立体声渲染。能模拟头部球面区域立体声场,音频将随虚拟形象的头部位置朝向,与声源的距离,上下高度等渲染出不同的效果,使用户感受到更为接近真实世界的听感。
  3. 提升合流转推功能易用性,统一 RTC SDK 与 OpenAPI 的合流转推音视频参数限制范围及默认值,并在 SDK 层面进行参数校验。优化部分合流转推参数不合法时的处理方式,实现自动修正为默认值。具体参看:
平台AndroidiOSmacOSWindowsLinuxElectron
KeytypeLiveTranscodingByteRTCLiveTranscodingByteRTCLiveTranscodingITranscoderParamITranscoderParamITranscoderParam
  1. 在使用音频信息提示获取本地和远端的音量信息时,支持开启音量平滑功能。参看传入参数中新增的 smooth 参数和 audio_report_mode 参数:
平台AndroidiOSmacOSWindowsLinuxElectron
参数smoothsmoothsmoothsmoothsmoothsmooth
3.45.7

该版本于 2023 年 3 月 22 日发布,包含的客户端系统有:Android、iOS、macOS、Windows、Linux。
此次升级优化了移动端设备性能不足时的用户音视频体验。如有需要,请联系技术支持开启。

3.45.6

该版本于 2023 年 3 月 1 日发布。
此次升级包含的客户端系统有:Android、iOS、macOS、Windows、Linux。若无特殊说明,本次发版说明中提及的变动适用于上述所有平台。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 新增回调获取屏幕共享的音频帧地址,供自定义音频处理。具体参见:
平台AndroidiOSmacOSWindows
回调onProcessScreenAudioFrameonProcessScreenAudioFrame:onProcessScreenAudioFrame:onProcessScreenAudioFrame
  1. 桌面端新增回调通知麦克风和扬声器的音量调整和静音状态变化。具体参见:
平台macOSWindowsLinux
回调rtcEngine:onAudioDeviceVolumeChanged:volume:muted:onAudioDeviceVolumeChangedonAudioDeviceVolumeChanged
  1. 支持在客户端截取本地/远端视频截图。参看:
平台AndroidiOSmacOSWindows
截取本地视频图片takeLocalSnapshottakeLocalSnapshot:callback:takeLocalSnapshot:callback:takeLocalSnapshot
截取远端视频图片takeRemoteSnapshottakeRemoteSnapshot:callback:takeRemoteSnapshot:callback:takeRemoteSnapshot
功能优化
  1. 丰富通过网络质量回调获取到的网络状态,支持获取网络断开状态。
平台AndroidiOSmacOSWindowsLinux
类型NetworkQuality 增加 NETWORK_QUALITY_DOWN = 6ByteRTCNetworkQuality 增加 ByteRTCNetworkQualityDownByteRTCNetworkQuality 增加 ByteRTCNetworkQualityDownNetworkQuality 增加 kNetworkQualityDownNetworkQuality 增加 kNetworkQualityDown
  1. 设备成功连接蓝牙耳机但 sco 连接开启失败后,设备音频播放模式将由通话模式切换为媒体模式,即使用蓝牙耳机播放声音,优化听感体验。
  2. Android Target 31 API 环境下,语音通话中设备连接蓝牙时,无需向系统申请蓝牙权限,实现无感连接。
3.45.4

该版本于 2023 年 1 月 17 日发布。
此次升级包含的客户端系统有:Android、iOS、macOS、Windows、Linux(版本号为 3.45.2)

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。
如果开发目标平台为 Android 12(targetSdkVersion>=31) 及以上版本的应用,请先参考OpenCL 库 Android 12 适配说明。

新增特性
  1. 在调用 enableAudioPropertiesReport,获取本地音频信息时,支持设置获取本地混音音频信息。
  2. 支持单流直播功能。你可以使用纯 RTC 的能力,实现更低延迟,更低成本的直播功能。参看:
平台AndroidiOS/macOSWindows
APIstartPushSingleStreamToCDNstartPushSingleStreamToCDN:singleStream:observer:startPushSingleStreamToCDN
  1. 在移动端使用软件耳返功能时,包含混响变声的效果。另外,支持通过回调获取并自定义处理软件耳返的音频帧,具体参看:
平台AndroidiOS
回调onProcessEarMonitorAudioFrameonProcessEarMonitorAudioFrame:
  1. 支持获取混音音频文件的实际播放时长,即歌曲不受停止、跳转、倍速、卡顿影响的播放时长。参看:
平台
Android
iOS/macOS
Windows
APIgetAudioMixingPlaybackDurationgetAudioMixingPlaybackDuration:getAudioMixingPlaybackDuration
  1. 各端支持通过 RTC SDK 中的接口调用 SAMI 能力实现 K 歌打分。参看:
平台AndroidiOS/macOSWindows
APIgetSingScoringManagergetSingScoringManagergetSingScoringManager
  1. 新增接口支持订阅所有用户和取消订阅所有用户。对上麦人数固定的场景中,可以使用以下接口快速实现麦位切换。参看:
平台
Android
iOS/macOS
Windows/Linux

API

  1. 移动端支持通过一次接口调用,统一设置全局混音文件音量。参看:
平台AndroidiOS
APIsetAllAudioMixingVolumesetAllAudioMixingVolume:
功能优化
  1. iOS 端混音支持 iTunes 本地音乐文件。
  2. Android 端启用耳返时,自适应启用硬件耳返。参看 setEarMonitorMode。
问题修复
  1. 修复了 VP8 编码时,iOS 屏幕共享相关的问题。
  2. 修复了部分安卓机型回声消除失效问题。
3.45.2

该版本于 2022 年 12 月 9 日发布。
此次升级包含的客户端系统有:Android、iOS、macOS、Windows

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

3.45.1

该版本于 2022 年 12 月 9 日发布。
此次升级包含的客户端系统有:Linux、Flutter、Electron

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. Linux 平台 SDK 新增视频水印功能。你可以调用 setVideoWatermark 为指定的视频流添加水印,调用 clearVideoWatermark 移除水印。
3.44

该版本于 2022 年 8 月 5 日发布。

重要说明
  1. 自 3.44 版本起,正式提供 RTC SDK for macOS,提供原生 Objective-C 接口,此 SDK 可以在 macOS 10.10+ 版本集成使用。
  2. 自 3.44 版本起,正式提供 RTC SDK for Linux(x86)。此 SDK 可以在支持 glibc 2.27+ 的 Linux 版本配合 x86 处理器架构的硬件上使用。
  3. 自 3.44 版本起,正式提供包装原生平台 RTC SDK 接口的 Flutter 插件,用于进行跨平台开发时,接入实时音视频功能。此插件可以在 Android API Level 19+ 或 iOS 9.0+ 版本使用。
  4. 自 3.44 版本起,正式提供包装原生平台 RTC SDK 接口的 Electron SDK,用于开发可以在 macOS 和 Windows 端上使用的实时音视频 Electron 应用。
升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 支持移动端在自定义视频处理和编码环节之前,将视频帧中的旋转角处理为 0,并在整个 RTC 链路中传递调整后的视频帧。适用于单流转推、使用视频特效贴纸或自定义视频前处理等场景,具体参看:
AndroidiOS
设置视频帧朝向setVideoOrientationsetVideoOrientation:
问题修复
  1. 调用 joinRoom 加入房间时,由于 UserID、Token 等参数错误导致进房失败后,可以直接再次调用 joinRoom 重新发起进房,无需先调用 leaveRoom 离开房间后再进房。
3.43

该版本于 2022 年 7 月 21 日发布。

升级必看

为提升接口易用性,该版本引入了 SDK 整体架构的重大变更,具体表现为去除了引擎类和房间类中的重复 API,并根据 API 的作用域明确划分所属类,接口变更详情参看:升级指南。
基于旧架构的 API 将会在本版本后停止更新,因此强烈建议升级到新架构版本。如果你依旧需要使用旧架构,老版本 API 文档归档中提供了 3.43.1 版本旧架构下的参考文档。
各个平台上另有 API/回调/数据结构发生了变化。变化范围包括:

新增特性
  1. 扩展了转推直播配置参数结构体,支持图片合流。可以通过startLiveTranscoding和updateLiveTranscoding进行设置,具体参数结构参看:
AndroidiOSWindows
转推直播配置参数LiveTranscodingByteRTCLiveTranscodingITranscoderParam
单个图片或视频流在合流中的布局信息RegionByteRTCVideoCompositingRegionTranscoderLayoutRegion
功能优化
  1. 范围语音功能增加了音量衰减模式的选择接口,可根据场景需要,选择音量根据距离线性衰减或非线形衰减。音量随距离增大进行非线性衰减更符合真实世界中声音的表现。具体参看:
AndroidiOSWindows
设置范围语音的音量衰减模式setAttenuationModelsetAttenuationModel:coefficient:setAttenuationModel
3.42

该版本于 2022 年 7 月 8 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。
注意:此版本不提供多房间能力,如果需要使用多房间功能,请使用 3.41 版本。

新增特性
  1. 当使用外置声卡进行音频采集时,支持设置对应的音频处理模式,以获得最佳的音质。具体参看:
AndroidiOSWindows
启用匹配外置声卡的音频处理模式enableExternalSoundCardenableExternalSoundCard:enableExternalSoundCard
  1. 向所有用户提供包括美白、磨皮、锐化的基础美颜功能,无需额外鉴权。基础美颜接口不能与高级视频特效接口共用,如已购买高级视频特效,建议调用原接口使用高级特效、贴纸功能等。具体参看:
AndroidiOSWindows
开启/关闭基础美颜enableEffectBeautyenableEffectBeauty:enableEffectBeauty
调整基础美颜强度setBeautyIntensitysetBeautyIntensity:withIntensity:setBeautyIntensity
  1. 新增音频采集和播放设备测试功能,在通话前进行录音和播放测试,确保通话顺利进行。或者在通话中遇到无声问题时,发起音频设备检测,快速排查和定位问题。具体参看:
Windows
开始播放测试startAudioPlaybackDeviceTest
停止播放测试stopAudioPlaybackDeviceTest
开启录播测试startAudioDeviceRecordTest
停止录制,并开始播放测试语音stopAudioDeviceRecordAndPlayTest
停止录播测试stopAudioDevicePlayTest
  1. 新增 P2P 音视频传输接口和回调,适合游戏串流业务及其他 IOT 局域网中的实时音视频通话。由于串流场景的建联以及数据流的传输路径都与常规音视频通话有较大不同,使用一套独立的接口。使用该功能前,请联系售前或技术支持获取包含 P2P 音视频传输功能的 SDK 包。
  2. 支持在音视频通话前进行通话回路测试,包括对音视频采集/播放设备,以及上下行网络的测试,以便在通话开始前确认设备可用性及音视频流回路是否通畅,保证通话链路的整体连通性,具体参看:
AndroidiOSWindows
开启音视频回路测试startEchoTeststartEchoTest:playDelay:startEchoTest
  1. 房间内点对点消息、房间外点对点消息、房间广播消息均支持超低延时传输。
  2. 支持对在本地采集的音频和收到的来自远端的音频进行自定义处理。丰富了适用的音频场景范围,具体参看:
AndroidiOSWindows
注册自定义音频处理器registerAudioProcessorregisterAudioProcessor:registerAudioProcessor
  1. 各端支持 VP8 编码。
功能优化
  1. 移动端音频路由设置优化,setDefaultAudioRoute 选择设备的听筒或扬声器作为默认音频路由。setAudioRoute 支持更多音频设备类型,例如有线耳机、蓝牙耳机等,但只支持在 AUDIO_SCENARIO_COMMUNICATION 通话场景下调用生效。
  2. PC 端屏幕共享能力扩展,增加了枚举共享对象缩略图、应用图标和应用名称等信息,用于对应用进行分类展示,方便用户选取屏幕共享对象。
  3. 增强了 PC 端的音视频设备管理能力,提供了更多设备信息,例如是设备连接类型,是否为虚拟设备等。新增部分为对原有逻辑的扩展,之前使用方式不受影响。
  4. 提升音频属性设置接口易用性,丰富了音频场景 roomProfile 和音质选项 AudioProfileType,满足更多不同场景的需要。 roomProfile 既可以在客户端设置,也可以通过配置下发。在选定的音频场景 roomProfile 基础上,调用 AudioProfileType 切换音质档位。
  5. 细化了转推直播的任务状态回调,具体参看:
AndroidiOSWindows
转推直播任务状态ByteRTCStreamMixingEventByteRTCStreamMixingEventStreamMixingEvent
转推直播错误码ByteRTCTranscoderErrorCodeByteRtcTranscoderErrorCodeStreamMixingErrorCode
缺陷修复
  1. 修复某些情况下退后台采集停止及音画不同步等问题。
3.41

该版本于 2022 年 6 月 18 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 移动端支持手动对焦、曝光功能,具体参看:
AndroidiOS
检查当前使用的摄像头是否支持手动对焦isCameraFocusPositionSupported();isCameraFocusPositionSupported;
设置当前使用的摄像头的对焦点setCameraFocusPositionsetCameraFocusPosition:
检查当前使用的摄像头是否支持手动设置曝光点isCameraExposurePositionSupported();isCameraExposurePositionSupported;
设置当前使用的摄像头的曝光点setCameraExposurePositionsetCameraExposurePosition:
设置当前使用的摄像头的曝光补偿setCameraExposureCompensationsetCameraExposureCompensation:
  1. 优化了空间音频的朝向体验。在通话过程中,RTC 将根据通话用户各自的朝向渲染音频,收听者可以感受到发言者朝向改变带来的空间音频效果。具体参看空间音频。

  2. 支持云代理功能。能够在有防火墙限制的情况下,通过云代理实现正常的音视频通话。具体参看:

AndroidiOSWindows
开启云代理startCloudProxystartCloudProxy:StartCloudProxy
3.40

该版本于 2022 年 6 月 3 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 发流端同时使用两个设备分别采集音频和视频时,支持设置音画同步,具体参看 setMultiDeviceAVSync。
  2. 支持范围语音能力,同一房间中设定范围内的音源音量随距离增加呈衰减效果,具体参看范围语音文档。使用该功能需持有 Room 对象。
功能优化
  1. 支持在同一个音视频通话中,音频采集和渲染方式相互独立。对于收到的音频流,无论是通过 SDK 内部采集得到的,还是自定义采集得到的,在进行渲染播放时,都可以采用内部音频渲染或自定义音频渲染。
AndroidiOSWindows
设置音频采集方式setAudioSourceTypesetAudioSourceType:SetAudioSourceType
设置音频渲染方式setAudioRenderTypesetAudioRenderType:SetAudioRenderType
  1. 优化服务端合流转推的默认音频参数。
AndroidiOSWindows
获取默认的转推直播配置参数getDefualtLiveTranscodedefaultTranscodingdefaultTranscoding
3.39.102

该版本于 2022 年 5 月 27 日发布。

此版本是 hotFix 版本,修复了在 Android, iOS 平台上使用共享屏幕功能时,可能发生闪退的问题。

3.39.101

该版本于 2022 年 5 月 18 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 大会模式和音频选路功能正式上线。支持容纳高达千人的音视频互动。功能详细介绍和使用信息参看大会模式和音频选路。
  2. 在 RTC 客户端向应用服务端发送实时消息时,可以通过相应回调获取来自应用服务端的 response 消息。
AndroidiOSWindows
回调onServerMessageSendResultrtcEngine:onServerMessageSendResult:error:messageOnServerMessageSendResult
  1. 支持视频水印功能
AndroidiOSWindows
在指定视频流上添加水印setVideoWatermarkSetVideoWatermark:WithImagePath:WithRTCWatermarkConfig:SetVideoWatermark
移除指定视频流的水印clearVideoWatermarkClearVideoWatermark:ClearVideoWatermark
3.38

该版本于 2022 年 5 月 6 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 当通话被系统电话、锁屏或合盖等打断时,支持暂停采集音视频,并在打断结束后自动恢复。具体参看通话打断和恢复。
  2. 在 Android 和 iOS 平台上,支持获取当前的音频路由设置。参考 getAudioRoute。
  3. 在 Windows 平台上,支持音频播放和采集路由跟随系统的路由设置。参看 FollowSystemPlaybackDevice 和 FollowSystemCaptureDevice。
  4. 支持调整音视频通话中使用的音频文件的播放速度,参看 setAudioMixingPlaybackSpeed。
  5. 音视频通话外的系统音频支持根据远端音量进行闪避,参看 enablePlaybackDucking
缺陷修复
  1. 修复 iOS 成功集成 CV SDK 后返回值仍为未集成的问题。
3.37

该版本于 2022 年 4 月 22 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 支持公共流的发布和订阅,用户发布公共流后,使用同一个 appID 的用户无需进房即可订阅。详见发布和订阅公共流。
  2. 支持在音频数据回调中获取订阅的远端每个用户混音前的音频数据回调,音频回调方法在method中进行设置。具体参看 API 文档:
接口功能AndroidiOSWindows
开启音频回调enableAudioFrameCallbackenableAudioFrameCallback:format:EnableAudioFrameCallback
返回远端单个用户的音频数据onRemoteUserAudioFrameonRemoteUserAudioFrame:audioFrame:OnRemoteUserAudioFrame
  1. 支持关闭音频回调。具体参看 API 文档:
接口功能AndroidiOSWindows
关闭音频回调disableAudioFrameCallbackdisableAudioFrameCallback:DisableAudioFrameCallback
性能优化
  1. 优化视频采集模块,提升逆光、纯色光下白平衡和曝光准确度。升级后 Android 须在 gradle 里引入kotlin,iOS 须申请摄像头权限。
3.36

该版本于 2022 年 4 月 2 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 新增 setVideoRotationMode 支持设置内部视频采集旋转模式,满足不同业务场景需求,详见视频采集旋转方向。

  2. 本地/远端视频流渲染能力增强:

  1. 支持通过 onNetworkQuality 回调监测本端和已订阅用户的网络质量评分,详见通话质量监测。

  2. 移动端支持更新屏幕内部采集的媒体类型,参看:

接口功能AndroidiOS
更新屏幕内部采集的媒体类型updateScreenCaptureupdateScreenCapture:
  1. 使用 RTC SDK 中包含的 CV 特效时,可以通过 onFaceDetectResult 获取人脸检测结果。

  2. 支持单个用户在同一房间内发起多个转推直播任务,具体参看 API 文档:

接口功能AndroidiOSWindowsmacOS
新增转推直播任务startLiveTranscodingstartLiveTranscoding:transcoding:observer:StartLiveTranscoding/
  1. 收到用户离开房间回调 onUserLeave 时,支持区分用户主动离房行为和用户切换隐身身份。

  2. 支持通过 onActiveSpeaker 获取房间内最活跃用户(Active Speaker)的信息。本地和远端音量回调(onLocalAudioPropertiesReport 和 onRemoteAudioPropertiesReport )支持同时返回线性和非线性音量值。

  3. 增强混音功能:

功能优化
  1. 移动端支持屏幕音频内部采集,参看:
接口功能AndroidiOS
设置屏幕音频采集方式setScreenAudioSourceTypesetScreenAudioSourceType:
  1. 重新设计媒体流的控制接口,实现了摄像头/麦克风采集的媒体流与屏幕共享媒体流的分离控制,同时支持灵活控制媒体流的发布/取消发布、订阅/取消订阅,具体接口变更参看升级指南。

  2. 优化视频大小流的发布订阅流程,发布端开启发送多路流模式后,订阅端可自行设置期望订阅的视频参数,由发布端根据订阅端的设置自动匹配参数相近的流进行发送,具体参看 推送多路流。

  3. 丰富性能回退场景下视频的降级档位,具体参看音视频回退

缺陷修复
  1. 各端修复在手动订阅模式下,仍会在进房时自动订阅远端屏幕流的问题。
3.35

该版本于 2022 年 3 月 21 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

性能优化
  1. 本地视频采集支持设置采集模式,包括自动设置采集参数(默认)、手动设置采集参数、与编码参数保持一致三种模式供用户灵活配置,具体参看 VideoCaptureConfig。默认模式采集的本地预览视频清晰度和帧率较之前版本均有提高,但在美颜特效等场景下性能会受一定影响,如若介意,则将采集模式设置为与编码参数保持一致即可。
  2. 优化现有空间音频功能,在游戏的小队模式中支持开启空间音频。
缺陷修复
  1. 原 OnFirstRemoteVideoFrameRendered 回调名称与行为不一致,回调时机为第一帧远端视频解码后渲染前。新版本中该回调改为于渲染成功后触发,而第一帧远端视频解码后渲染前改为触发 OnFirstRemoteVideoFrameDecoded回调。
新增特性
  1. 移动端支持均衡混音中音频与人声的音量,避免混音音频或人声出现音量过大或过小的情况,导致听感体验下降,具体参看 API 文档:
功能简述AndroidiOS
开启/关闭音量均衡功能enableVocalInstrumentBalanceenableVocalInstrumentBalance:
传入混音音频原始响度setAudioMixingLoudnesssetAudioMixingLoudness:loudness:
  1. 移动端新增音量闪避功能,当检测到远端人声时,本地播放音频音量自动减弱,从而保证远端人声清晰可辨,具体参看 API 文档:
功能简述AndroidiOS
打开/关闭音量闪避功能enablePlaybackDuckingenablePlaybackDucking:
3.34

该版本于 2022 年 3 月 7 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

功能优化
  1. 自定义视频前处理节点由采集后移至编码前,可以针对镜像、CV 等处理后的视频画面进行二次加工,使得远端可以正常接收二次加工后的视频效果
  2. 屏幕采集回调中清晰定义启动、暂停、恢复、错误、停止五个状态,使用户能够通过回调感知采集状态变化,并进行相应操作,具体参看startScreenVideoCapture
  3. 优化 RTC SDK for Android 混淆规则,避免了因混淆配置疏漏而导致的崩溃问题
新增特性
  1. 支持周期性回调混音伴奏播放进度,具体参看 setAudioMixingProgressInterval
  2. 支持获取混音音频文件音轨索引,并指定当前音频文件的播放音轨,具体参看getAudioTrackCount, selectAudioTrack
  3. 支持对混音伴奏或人声进行升降调调节,具体参看SetAudioMixingPitch, setLocalVoicePitch
  4. 支持跨房间推拉流能力,具体参看跨房间转发媒体流
3.33

该版本于 2022 年 2 月 21 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

功能优化
  1. 提升了视频帧格式转换的效率。
新增特性
  1. 移动端支持视频通话时将视频中人像与背景分离,实现如虚拟背景等功能(桌面端已在上个版本中支持)。具体参看:背景分割。
  2. 在播放 PCM 音频数据时,支持调节音量。具体参看SetAudioMixingVolume。
  3. 支持进行人声提示(VAD)和音频频谱检测。具体参看enableAudioPropertiesReport。
3.32

该版本于 2022 年 1 月 26 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

功能优化
  1. 支持纯音频场景下,通过屏幕流进行信息同步。
新增特性
  1. 支持对音乐文件的声道进行设置,具体参看 API 文档:
方法简述AndroidiOSWindowsmacOS
设置当前音频文件的声道模式setaudiomixingdualmonomodesetAudioMixingDualMonoMode:mode:SetAudioMixingDualMonoMode/

同时新增部分支持播放的音频格式,目前各平台支持的音频格式如下:

mp3aacm4a3gpwavmp4wmatsogg
Windows√√√√√√√√
Android√√√√√√√
iOS/macOS√√√√√√
  1. 移动端支持摄像头变焦和开启闪光灯功能,具体参看 API 文档:
方法简述AndroidiOS
检测当前使用的摄像头(前置/后置),是否支持变焦(数码/光学变焦)isCameraZoomSupportedisCameraZoomSupported
设置当前使用的摄像头(前置/后置)的变焦倍数setCameraZoomRatiosetCameraZoomRatio:
获取当前使用的摄像头(前置/后置)的最大变焦倍数getCameraZoomMaxRatiogetCameraZoomMaxRatio
检测当前使用的摄像头(前置/后置),是否支持闪光灯isCameraTorchSupportedisCameraTorchSupported
打开/关闭当前使用的摄像头(前置/后置)的闪光灯setCameraTorchsetCameraTorch:
  1. 支持音视频通话前进行网络质量检测,具体参看:通话前网络检测(Native)
  2. 桌面端支持视频通话时将视频中人像与背景分离,实现如虚拟背景等功能,具体参看:背景分割
  3. 新增美声和混响特效,支持改变通话音频声色和音效,具体参看 API 文档:
方法简述AndroidiOS
设置变声特效类型setVoiceChangerTypesetVoiceChangerType:
设置混响特效类型setVoiceReverbTypesetVoiceReverbType:
3.30

该版本于 2022 年 1 月 4 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

功能优化
  1. 支持根据业务场景需要选择合适的音质档位,具体参看 API 文档:
方法简述AndroidiOSWindowsmacOS
设置音质档位setAudioProfilesetAudioProfile:SetAudioProfile/
  1. 支持纯音频场景下,发送音频流同步信息,具体参看 API 文档:
方法简述AndroidiOSWindowsmacOS
发送音频流同步信息sendStreamSyncInfosendStreamSyncInfo:config:SendStreamSyncInfo/
  1. 支持视频采集和编码参数分开设置,具体参看 API 文档:
方法简述AndroidiOSWindowsmacOS
设置视频采集参数setVideoCaptureConfigsetVideoCaptureConfig:SetVideoCaptureConfig/
新增特性
  1. 支持多房间模式下端云一体合流转推。
  2. 移动设备音视频订阅端支持空间音频效果,具体功能实现参看空间音频。
3.29

该版本于 2021 年 12 月 20 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性
  1. 移动端(Android,iOS)支持使用耳返功能,并且可以设置耳返音量,满足互娱音频相关场景下,用户感知自身声音变化的需求,详情参看具体的 API 文档:
方法简述AndroidiOS
开启/关闭耳返功能setEarMonitorModeSetEarMonitorMode:
设置耳返音量setEarMonitorVolumeSetEarMonitorVolume:
  1. 支持本地采集画面在编码传输时做镜像处理,使远端用户与本地用户看到的本地画面一致,具体功能实现参看镜像。
  2. 支持自定义视频编解码,具体功能实现参看自定义视频编解码。
  3. 支持通话前音量检测。
功能优化
  1. iOS 端新增离开房间回调,用户调用 leaveRoom 并成功离开房间后,会收到 rtcEngine:onLeaveRoomWithStats: 回调。
  2. 全平台增加进房参数校验,并统一进房相关错误提示。
3.28

该版本于 2021 年 12 月 6 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增特性

支持将 SDK 采集到的音频数据进行自定义加工(如美声、变声、音效、混响等处理等),并返回给 RTC 进行编码和发送,详情参看文档 自定义音频处理

3.27

该版本于 2021 年 11 月 26 日发布。

升级必看

各个平台上的 API/回调/数据结构发生了变化。变化范围包括:

如果你需要将应用中使用的旧版本 RTC SDK 升级为最新版,参看:升级指南。

新增接口
  1. 各平台新增全套多房间接口,同一用户可同时加入多个房间,新增接口详情参看:
AndroidiOSWindowsMac
多房间多房间多房间/
新增特性
  1. 支持推送自定义采集的屏幕共享音频流,参看具体的 API 文档:
方法简述AndroidiOSWindowsMac
使用自定义屏幕共享音频流采集setScreenAudioSourceTypesetScreenAudioSourceTypeSetScreenAudioSourceType/
推送自定义采集的屏幕共享音频流pushScreenAudioFramepushScreenAudioFramePushScreenAudioFrame/
  1. 实现屏幕共享时麦克风采集音频流和屏幕音频流分两路发送,参看具体的 API 文档:
方法简述AndroidiOSWindowsMac
设置屏幕音频流和麦克风采集音频流的混流方式setScreenAudioStreamIndexsetScreenAudioStreamIndexSetScreenAudioStreamIndex/
  1. 支持多房间模式下端云一体合流转推
接口功能优化
  1. 解耦屏幕流的采集与发布,支持编码参数的动态变更
  2. 补充用户反馈类型,解耦问题类型与问题描述,用户可对任何问题类型添加描述
  3. 对 SEI 信息的发送/接收逻辑进行了整合,以 Android 为例:
方法简述326.1327.1
发送/接收 SEI 信息通过 registerMetadataObserver 注册回调,在 onReadyToSendMetadata/onMetadataReceived 回调中进行 SEI 信息的发送和接收通过 sendSEIMessage/onSEIMessageReceived 发送/接收 SEI 信息
  1. 支持在 RTC 内部采集的前提下,对采集后的视频数据进行自定义加工(如美颜等),并返回给 RTC 进行渲染、编码和发送,参看自定义视频处理。