发版说明
本页提供 RTC 服务端 SDK 的发版说明。
4.4.32 版
该版本于 2025 年 5 月 28 日发布。
该版本新增发送和接收音频 Metadata 数据功能。在需要发送音频附属信息,如播放进度等的场景下,你可以调用 sendAudioMetadata
方法进行发送,远端用户会在 onAudioMetadataReceived
回调中接收到发送的信息。
为支持获取原始音频数据中的 VAD 信息,该版本新增重载的 registerAudioFrameObserver
方法,支持通过 enableVad
参数开启 VAD 监测功能。
开启后,你可以通过 onPlaybackAudioFrameBeforeMixing
回调中的 vadResult
参数获取 VAD 状态信息。
该版本新增支持接收编码后的音频数据。相关接口如下:
registerAudioEncodedFrameObserver
:注册编码后的音频数据观测器IAudioEncodedFrameObserver
:编码后的音频数据接口类。你可以在该接口类中,通过onEncodedAudioFrameReceived
回调接收编码后的音频数据。
该版本在 ExternalVideoFrame
中增加 colorSpace
属性,支持对外部采集到的视频数据自定义颜色空间。
该版本在 AgoraServiceConfig
中增加 domainLimit
参数,支持对连接的域名进行设置和管理。
为提升音视频数据发送模块的易用性,该版本对如下接口和方法进行了优化:
AgoraAudioPcmDataSender
中,废弃了原来的send
方法,新增sendAudioPcmData
进行取代。AgoraAudioEncodedFrameSender
中,删除了原来的send
方法,新增sendEncodedAudioFrame
进行取代。AgoraVideoEncodedImageSender
中,删除了原来的send
方法,新增sendEncodedVideoImage
进行取代。AgoraVideoFrameSender
中,移除send
方法,新增sendVideoFrame
进行取代。
该版本新增了 sendStreamMessage
的重载方法。和已有的 sendStreamMessage
相比,该方法删除了 length
参数,并将 message
的数据类型由 String 改为 byte[]。
- 修复了
VideoFrame
中alphaBuffer
和metadataBuffer
的处理问题 - 修复了
destroy
方法可能导致的崩溃问题 - 修复了多处内存泄露和多线程问题,提高了系统稳定性
4.4.30 版
该版本于 2024 年 10 月 24 日发布。
出于安全性和性能考虑,自该版本起,SDK 对日志进行加密,并且不再支持通过控制台打印明文日志。针对不同的需求,请参考以下解决方案:
- 如果需要得知 API 的调用情况,请查看 API 的日志并自行打印 SDK 回调日志。
- 如有其他特殊需求,请联系技术支持并附上对应的加密日志。
该版本将 Maven 库名由 linux-sdk
变更为 linux-java-sdk
,集成时请将项目的 XML 文件代码进行如下修改:
-
v4.0.1 版本
XML<dependencies>
<dependency>
<groupId>io.agora.rtc</groupId>
<artifactId>linux-sdk</artifactId>
<version>4.0.1</version>
</dependency>
</dependencies> -
v4.4.30 及以上版本
XML<dependencies>
<dependency>
<groupId>io.agora.rtc</groupId>
<artifactId>linux-java-sdk</artifactId>
<version>4.4.30</version>
</dependency>
</dependencies>
在 AI 交互等应用场景中,发送端发送音频帧的频率可能不均匀。如果 SDK 按照实际的发送频率去发送给声网服务器,则接收端可能会有卡顿、丢帧等不良体验。为优化音频传输性能,该版本在 AgoraLocalAudioTrack
类中新增了设置音频发送缓冲区的方法:
setMaxBufferedAudioFrameNumber
:设置音频发送缓冲区的最大容量。clearSenderBuffer
:清除当前音频发送缓冲区,用于人机对话场景中的音频打断。setSendDelayMs
:设置音频发送缓冲区允许发送的最小数据时长,用于精确控制音频传输时延。
该版本新增了音频标记能力 (AudioLabel
)。通过添加音频标记,你可以直观地获取到用户的音频能量、基频、语音类型等,方便对音频进行后处理。联系 sales@shengwang.cn 开通并使用该功能。
该版本支持 22050 Hz 音频发送采样率,你可以在调用 AgoraAudioPcmDataSender.send
方法发送原始音频数据时设置。
该版本在 AgoraService
类中新增了 getAgoraParameter
方法。该方法和 AgoraRtcConn
类中的 getAgoraParameter
方法的区别是:
AgoraService.getAgoraParameter
对 SDK 全局有效。AgoraRtcConn.getAgoraParameter
仅对当前 Connection 有效。
该版本进行了如下改进:
- 降低了多频道场景下的 CPU 功耗。
- 优化了音频帧回调函数
onPlaybackAudioFrameBeforeMixing
、onRecordAudioFrame
、onPlaybackAudioFrame
、onMixedAudioFrame
的内存管理机制,提升了AudioFrame
处理的效率和稳定性。
该版本修复了如下问题:
onPlaybackAudioFrameBeforeMixing
回调中channelId
指针为null
导致的问题。onRemoteAudioTrackStatistics
、onUserAudioTrackSubscribed
、onUserAudioTrackStateChanged
、onUserVideoTrackSubscribed
、onUserVideoTrackStateChanged
、onRemoteVideoTrackStatistics
回调偶现的崩溃。
4.0.1 版
该版本于 2023 年 1 月 13 日发布。
为支持在数字人等数字化场景中收发消息,该版本新增流消息功能。发送端可以先后调用 createDataStream
和 sendStreamMessage
方法创建数据流并发送数据流消息;接收端可以通过 onStreamMessage
回调获取已接收的数据。
3.7.200.21 版
该版本于 2022 年 8 月 1 日发布,支持以下功能:
- 发送和接收不同格式的音视频数据。
- 相互独立的音视频收发流程。
- 在单进程中运行多个 SDK 实例。
- String 型用户 ID。
- 混音。
- 媒体流加密。
- 云代理。
- 地理区域限制。