更新日志
更新时间: 2024/06/25 14:56:06
近期重要更新
- V4.6.29开始,支持高级 Token 鉴权 , 支持对用户创建、加入房间和订阅、发布音视频流的权限进行校验,帮助您有效避免客户端遭遇破解攻击的问题。
- V4.6.20开始,支持以插件化方式集成美颜、虚拟背景、AI 降噪、AI 啸叫检测,提升 SDK 集成的灵活性与易操作性,您可以根据需要自行选择是否集成对应特性的动态库,使 App 的包体积更小,具体请参见集成 SDK。
- V4.6.20开始,支持通过视频辅流通道开启本地摄像头采集、自定义视频源输入等,具体请参见 设置视频编码属性和自定义视频采集。
[4.6.61] - 2023-09-01
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 外部 PCM 音频数据混音 | 支持将外部 PCM 数据混入RTC 本地播放或者发送远端,用于实现例如“一起看抖音” 等场景。 | - |
新增 API
API |
API 说明 |
---|---|
NERtcEx#startExternalAudioMixing() |
开启外部 PCM 音频数据混音 |
NERtcEx#stopExternalAudioMixing() |
关闭外部 PCM 音频数据混音 |
NERtcEx#pushExternalAudioMixingFrame() |
推送 PCM 音频帧数据用于混音 |
NERtcEx#setExternalAudioMixingPlaybackVolume() |
设置外部 PCM 数据混音本地播放音量 |
NERtcEx#getExternalAudioMixingPlaybackVolume() |
获取外部 PCM 数据混音的播放音量 |
NERtcEx#setExternalAudioMixingSendVolume() |
设置外部 PCM 数据混音发送音量 |
NERtcEx#getExternalAudioMixingSendVolume() |
获取外部 PCM 数据混音的播放音量 |
NERtcCallbackEx#onLocalAudioFirstPacketSent() |
本地第一帧音频发送到远端的回调 |
问题修复
-
修复频繁调用
playEffect
和stopEffect
导致无响应的问题。 -
在不开启本地音频采集但播放伴音的场景中,优化角色切换时的音频发送逻辑。
[4.6.56] - 2023-06-30
改进优化
当用户未赋予 BLUETOOTH_CONNECT
权限时,支持使用手机麦克风采集声音。
问题修复
- 修复Android 多线程环境下,个别 API 调用引起的崩溃问题。
- 修复其他已知问题。
[4.6.53] - 2023-05-11
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 自定义加密 | 媒体流加密新增支持自定义加密模式。除了国密算法,您可以使用自己独特的加密算法,使产品更安全、更难被攻击者破解。 | 媒体流加密 |
[4.6.52] - 2023-05-04
问题修复
- 修复了个别 Android 机型上出现的黑屏闪烁问题。
- 修复了 Android 端偶现的日志打印奔溃问题。
[4.6.50] - 2023-03-28
升级必看
从 V4.6.43 升级至 V4.6.50 版本,涉及如下接口变更,您需要结合实际业务场景更新相关的 App 代码:
序号 | 变更描述 | 集成修改建议 |
---|---|---|
1 | IVideoRender 中增加 setExternalRender 方法 |
空实现即可 |
2 | IVideoRender 中增加 isExternalRender 方法 |
返回 true 即可 |
3 | IVideoRender 中增加 setVideoBufferType 方法 |
空实现即可 |
4 | IVideoRender 中增加 getVideoBufferType 方法 |
按需要的真实的视频数据类型返回就行 |
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 调节本地播放的指定房间内所有远端用户的音量。 | 在多房间场景中,可以使用该方法单独调整主房间或者某个子房间的所有远端用户的播放音量。 | 设置通话音量 |
改进优化
- App 进程从后台切换至前台时,增加开启摄像头的失败重试次数。
- 修复部分场景下,误触发
onError
回调的问题。
新增 API
API |
API 说明 |
---|---|
adjustChannelPlaybackSignalVolume |
调节本地播放的指定房间内所有远端用户的音量。 |
setVideoBufferType |
自定义视频外部渲染格式。 |
getVideoBufferType |
获取视频外部渲染格式。 |
setExternalRender |
设置为外部渲染。 |
isExternalRender |
是否设置为外部渲染。 |
[4.6.43] - 2023-02-20
问题修复
修复了并发加房间时,偶现的多线程崩溃问题。
[4.6.42] - 2023-02-01
问题修复
- 修复 http3 请求导致的崩溃问题。
- 兼容部分鸿蒙系统的崩溃问题。
[4.6.40] - 2023-01-10
升级必看
自 V4.6.40 起,AI 降噪功能以插件化方式提供,对应的 AI 降噪库为 libNERtcAiDenoise.so
,可以与核心 SDK(基础音视频库)搭配使用,具体集成方式请参考集成 SDK。
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 音频裸流传输支持 ASL 选路 | 支持将编码后音频的音量数据传递给 SDK,以支持音频裸流参与 ASL 选路。 | 音频裸流传输 |
2 | 自定义视频画布颜色 | 支持设置视频画布的背景色,当视频尺寸与显示视窗尺寸不一致时,可以自定义改变传统黑框的颜色。 | - |
改进优化
- 支持平滑入会,优化摄像头预览期间的入会体验。
- 支持动态设置引擎回调,提高多场景切换的易用性。
- 子房间支持权限密钥相关回调的事件通知。
问题修复
修复入会场景下的已知问题。
新增 API
API |
API 说明 |
---|---|
setNERtcCallback |
设置事件通知回调。 |
onPermissionKeyWillExpire |
(子房间)权限密钥即将过期回调。 |
onUpdatePermissionKey |
(子房间)更新权限密钥成功回调。 |
变更 API
API |
API 说明 |
---|---|
pushExternalAudioEncodedFrame |
encodedAudioFrame 参数对应的 NERtcAudioEncodedFrame 类型新增 rmsLevel 字段,对应音频裸流主流的音量值。 |
pushExternalSubStreamAudioEncodedFrame |
encodedAudioFrame 参数对应的 NERtcAudioEncodedFrame 类型新增 rmsLevel 字段,对应音频裸流辅流的音量值。 |
[4.6.29] - 2022-11-18
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 高级 Token 鉴权 | 支持对用户创建、加入房间和订阅、发布音视频流的权限进行校验,帮助您有效避免客户端遭遇破解攻击的问题。 | 高级 Token 鉴权 |
2 | 设置混音文件音调 | 支持调整伴音和音效文件的音调,以实现例如在 K 歌场景中,为了使歌曲更适合主播的声线音域,升高或降低伴奏的音阶。 | 音效与伴音 |
3 | 音视频裸流传输 | 支持音视频裸流传输,您可以向 NERTC SDK 提供自定义格式的音视频编码数据,并由 NERTC SDK 进行推流。 | 音频裸流传输、视频裸流传输 |
改进优化
优化加入房间进程。
问题修复
- 修复伴音场景下的已知问题。
- 修复无法正常加入房间的问题。
新增 API
API |
API 说明 |
---|---|
joinChannel |
加入音视频房间(原同名接口保留,此接口新增 channelOptions 参数,用于携带自定义入会信息)。 |
updatePermissionKey |
设置新的权限密钥。 |
setEffectPitch |
设置音效文件的音调。 |
getEffectPitch |
获取音效文件的音调。 |
setEffectPosition |
设置音效文件的播放位置。 |
getAudioMixingPitch |
获取伴音文件的音调。 |
setAudioMixingPitch |
设置伴音文件的音调。 |
pushExternalAudioEncodedFrame |
推送外部音频主流编码帧。 |
pushExternalSubStreamAudioEncodedFrame |
推送外部音频辅流编码帧。 |
setPreDecodeObserver |
注册解码前媒体数据观测器。 |
pushExternalVideoEncodedFrame |
推送外部视频主流或辅流编码帧。 |
setVideoEncoderQosObserver |
注册视频编码 QoS 信息监听器。 |
onUserJoined |
远端用户加入房间回调(原同名回调不建议使用,此回调新增 joinExtraInfo 参数,用于返回自定义入会信息)。 |
onUserLeave |
远端用户离开房间回调(原同名回调不建议使用,此回调新增 leaveExtraInfo 参数,用于返回自定义入会信息)。 |
onPermissionKeyWillExpire |
权限密钥即将过期回调。 |
onUpdatePermissionKey |
更新权限密钥成功回调。 |
onAudioEffectTimestampUpdate |
音效文件播放进度回调。 |
onFrame |
解码前媒体数据回调。 |
onRequestSendKeyFrame |
I 帧请求事件回调。 |
onVideoCodecUpdated |
视频编码器类型信息回调。 |
onBitrateUpdated |
视频码率信息回调。 |
[4.6.22] - 2022-11-02
改进优化
- 视频后处理中增加丢帧处理机制。
- 视频采集帧率提升。
- 耳返延时优化。
问题修复
- 修复订阅远端音视频流与画布设置的异步问题。
- 修复安全通审核自动打码视频主流,但在视频辅流中生效的问题。
[4.6.20] - 2022-09-08
升级必看
-
自 V4.6.20 起,支持以插件化方式集成美颜、虚拟背景等功能,提升 SDK 集成的灵活性与易操作性,您根据需要自行选择是否集成对应特性的动态库,以实现轻量接入裁剪包,更多请参考集成 SDK。
-
自 V4.6.20 起,实现云信美颜所必需的资源文件(beauty 文件夹以及人脸模型文件 model.dat)已经随 SDK 发布至 maven 仓库中,若您已手动拷贝上述美颜资源文件且通过 Maven 集成 SDK,请参考以下步骤进行升级。
- 在本地项目中删除
assets
目录下的美颜资源文件夹 beauty 以及人脸模型文件model.dat、netease.lic(若存在)。 - 更新 Maven 仓库的 NERTC SDK 版本为 4.6.20 或更新版本。
- 卸载 App 后重试(覆盖安装无法清空 App 私有目录,本地美颜资源版本号可能无法检测到 SDK 版本升级而无法重新拷贝资源文件)。
若您不按上述步骤进行操作,可能会出现本地美颜资源文件版本号与 App 私有目录下的美颜资源不匹配的情况,从而导致花屏等其他异常问题。
- 在本地项目中删除
-
自 V4.6.20 起,新增了以下回调:
- 远端用户暂停或恢复发送视频流回调:
onUserVideoMute(streamType)
- 已显示首帧远端视频的回调:
onFirstVideoDataReceived(streamType)
- 已接收到远端视频首帧并完成解码的回调:
onFirstVideoFrameDecoded(streamType)
若您在初始化引擎时实现的回调类是
NERtcCallbackEx
,则需要手动在该实现类中新增以上回调方法;若您实现的是AbsNERtcCallbackEx
类,则无需更新代码。 - 远端用户暂停或恢复发送视频流回调:
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 视频辅流通道优化 | 支持通过视频辅流通道开启本地摄像头采集、自定义视频源输入等。 | 设置视频属性 |
2 | 美颜功能扩展 | 支持缩短脸长、调整嘴宽、淡化法令纹、淡化黑眼圈、淡化抬头纹等高级美颜效果。 | 云信美颜 |
3 | 监听音频辅流音量 | 支持监听房间内远端用户音频辅流的瞬时音量的回调。 | 监听发言者音量 |
4 | 旁路推流支持多幅占位图 | 支持设置主播离线后是否开启占位图,且支持设置占位图列表。 | 旁路推流画面布局 |
改进优化
- 优化高级美颜效果。
- HTTP DNS 解析优化,实现防域名劫持。
新增 API
API |
API 说明 |
---|---|
enableLocalVideo(streamType,enable) |
开启或关闭本地视频流的采集和发送(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道,且支持在房间内动态调用)。 |
muteLocalVideoStream(streamType,mute) |
取消或恢复发布本地视频流(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
setLocalVideoConfig(videoConfig,streamType) |
设置视频编码属性(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
setCameraCaptureConfig(captureConfig,streamType) |
设置本地摄像头的采集配置(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
setExternalVideoSource(streamType,enable) |
开启外部视频输入(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
pushExternalVideoFrame(streamType,frame) |
推送外部视频帧(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
startVideoPreview(streamType) |
开启视频预览(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
stopVideoPreview(streamType) |
关闭视频预览(原同名接口保留,此接口新增 streamType 参数,用于开启辅流通道)。 |
onUserVideoMute(uid,muted,streamType) |
远端用户暂停或恢复发送视频流的回调(原同名接口保留,此接口新增 streamType 参数,用于辅流通道)。 |
onFirstVideoFrameDecoded(userID,width,height,streamType) |
已接收到远端视频首帧并完成解码的回调(原同名接口保留,此接口新增 streamType 参数,用于辅流通道)。 |
onFirstVideoDataReceived(userID,streamType) |
已显示远端视频首帧的回调(原同名接口保留,此接口新增 streamType 参数,用于辅流通道)。 |
变更 API
API |
API 说明 |
---|---|
onLocalVideoWatermarkState |
state 参数对应的 NERtcLocalVideoWatermarkState 类型新增 LVW_STATE_SET_SUCCESS 等 4 种枚举值,支持字体设置错误等新增水印异常状态回调。 |
onRemoteAudioVolumeIndication |
volumeArray 参数对应的 NERtcAudioVolumeInfo 类型新增 subStreamVolume 字段,对应远端辅流音量回调值。 |
setBeautyEffect |
beautyType 参数对应的 NERtcBeautyEffectType 类型新增 kNERtcBeautyShortFace 等 5 种枚举值,支持短脸等新增美颜效果。 |
addLiveStreamTask |
config 参数对应的 NERtcLiveConfig 结构体新增 interruptedPlaceImage 字段,支持设置是否开启主播占位图模式。 |
layout 参数对应的 NERtcLiveStreamLayout 结构体新增 backgroundImgList 字段,支持设置占位图列表。backgroundImg 字段仍保留,但仅可设置一张占位图,建议您使用新字段。 |
|
NERtcLiveStreamImageInfo 结构体新增 zOrder 字段,支持设置占位图的图层编号。 |
[4.6.14] - 2022-08-15
改进优化
修复部分场景下的偶现崩溃。
[4.6.13] - 2022-06-29
改进优化
- 稳定性提升。
- 优化部分机型(Android 11)校验 BLUETOOTH_CONNECT 权限逻辑。
[4.6.12] - 2022-06-15
问题修复
- 修复部分场景下的崩溃问题。
- 修复部分场景下的帧率下降问题。
- 修复使用虚拟背景功能场景下的已知问题。
[4.6.10] - 2022-06-01
升级必看
从历史版本升级至 V4.6.10 及之后版本时,若您选择通过 Maven 集成 NERTC Android SDK,请在项目对应模块的 build.gradle
中,将 api 'com.netease.yunxin:nertc:x.x.x'
修改为 api 'com.netease.yunxin:nertc-full:x.x.x'
。
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 虚拟背景 | 支持通过自动识别用户人像,虚化用户周围的真实环境,或者以指定颜色的图片或自定义图像替代真实背景。 | 虚拟背景 |
2 | 云信美颜 | 云信自研的基础美颜和高级美颜功能,支持在音视频通话或互动直播场景中,对人脸进行美肤、美型等美颜调整,或通过画面滤镜改变视频的色调与氛围。 | 云信美颜 |
3 | 音频辅流 | 支持通过辅流输入伴音文件或自定义音频源。 | 音效与伴音 自定义音频采集与渲染 |
4 | 自定义混响效果 | 支持自定义设置本地人声的混响回声效果,赋予声音一定的立体效果。 | 美声变声与混响 |
5 | 视频编码水印 | 支持为视频流画面添加编码水印,例如添加公司名称、标语等文字水印、录制时间等时间戳水印、以及 logo 等图片水印。 | 水印 |
改进优化
- 修复同一 uid 在多端登录导致的互踢问题。
- 分离音频的引擎启动逻辑和流发布逻辑,有效减少大房间的性能压力。
- 支持在房间中根据不同场景切换音频模式,即允许在加入房间后动态切换 audioProfile。
API 变更
新增 API
变更 API
API |
API 说明 |
---|---|
startAudioMixing |
Option 参数新增 startTimeStamp 和 sendWithAudioType 字段,设置文件播放的起始位置和音频类型。 |
setAudioProfile |
支持在房间内动态调用此接口设置音频属性。 |
setCameraCaptureConfig |
captureConfig 参数废弃 preference 字段。 |
废弃 API
API |
API 说明 |
---|---|
setLocalCanvasWatermarkConfigs |
此接口已废弃,请使用新接口 setLocalVideoWatermarkConfigs 。 |
setRemoteCanvasWatermarkConfigs |
此接口已废弃。 |
[4.6.1] - 2022-03-08
修复极端场景下的偶现崩溃。
[4.6.0] - 2022-02-28
网易云信于 2022 年 2 月 28 日发布了 NERTC SDK 最新版本 V4.6.0。
新增特性
序号 |
新增特性 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 设置音频订阅优先级 | 支持优先订阅远端某用户发布的音频流。在 ASL 策略下,即在服务器线路上选择最清晰的三条音频流传输给本地用户时,本地用户设置优先订阅一个成员的音频流后,即使该成员的说话音量较低或不够清晰,本地用户仍能接收到该指定成员的音频流。 | 设置音频订阅优先级 |
2 | 音频循环缓存录制 | 在原有的支持实时写文件基础上,支持设置仅录制最近一段时间内的音频数据,最高为 15 分钟。 | 客户端音频录制 |
3 | 共享系统音频 | 支持将本地播放的音频或视频文件的声音分享给远端用户。 | 音频共享 |
4 | 视频图像畸变矫正 | 支持通过畸变矫正算法调整视窗内元素边角,还原真实画面和场景。 | 视频图像畸变矫正 |
5 | 云代理 | 支持使用云代理服务穿透防火墙限制,使用固定 IP 连接到网易云信服务器。 | 云代理 |
改进优化
序号 |
改进优化 |
特性描述 |
相关文档 |
---|---|---|---|
1 | 单声道最高支持码率提升 | 单声道最高音频码率从 64 Kbps 提升至 96 Kbps。 | 设置音频属性 |
2 | 音视频 2.0 SDK 增加裁剪包选项 | 用户可以根据实际场景中使用功能的差异,裁剪不需要的功能项。目前可裁剪的功能项包括:视频通话、虚拟背景、耳返、AI 降噪、AI 超分、美声变声、H265 和 VP8 视频编解码技术、Protocol Buffers 协议、SCTP 协议等。 | - |
API 变更
新增 API
API |
API 说明 |
---|---|
setRemoteHighPriorityAudioStream | 设置某用户的音频流为高优先级。 |
startAudioRecordingWithConfig | 开启音频录制。 |
enableLoopbackRecording | 开启或关闭音频共享。 |
adjustLoopBackRecordingSignalVolume | 调整音频共享音量。 |
enableVideoCorrection | 开启视频图像畸变矫正功能。 |
setVideoCorrectionConfig | 设置视频图像矫正参数。 |
setCloudProxy | 开启并设置云代理服务。 |
onMediaRightChange | 通知音视频权限是否被禁止的回调。 |
变更 API
API |
API 说明 |
---|---|
startAudioRecording | 新增参数 recordPosition、recordCycleTime,但均只可设为默认值,建议您改用新接口 startAudioRecordingWithConfig。 |
[4.5.3] - 2022-02-15
新增特性
支持自定义设置视频输入的旋转偏移量。
[4.5.1] - 2021-11-12
修复极端场景下的偶现崩溃。
[4.4.2] - 2021-09-08
网易云信于 2021 年 9 月 8 日发布了 NERTC SDK 最新版本 V4.4.2。
问题修复
修复某些场景下的入会失败问题。
[4.4.1] - 2021-09-03
网易云信于 2021 年 9 月 3 日发布了 NERTC SDK 最新版本 V4.4.1。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 提升安卓平台SDK的集成易用性。 | 新增 AbsNERtcCallbackEx , 用于简化 NERtcCallbackEx 接口的实现,init 时推荐使用 AbsNERtcCallbackEx。 | AbsNERtcCallbackEx |
2 | 支持静音状态下回调采集音量 | 支持设置静音状态下是否返回真实采集音量 | KEY_ENABLE_REPORT_VOLUME_WHEN_MUTE |
改进优化
完善音效功能。
问题修复
修复一些偶现的崩溃问题。
API 变更
新增 API
API | API 说明 |
---|---|
AbsNERtcCallbackEx | 简化 NERtcCallbackEx 接口的实现。 |
变更 API
API | API 说明 |
---|---|
setParameters | 增加参数 KEY_ENABLE_REPORT_VOLUME_WHEN_MUTE。 |
[4.4.0] - 2021-07-13
网易云信于 2021 年 7 月 13 日发布了 NERTC SDK 最新版本 V4.4.0。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 加入房间时自动生成uid | 加入音视频房间时,可以不设置 uid,此时云信服务器会自动为您生成一个随机 uid。 | joinChannel |
2 | 支持视频 AI 超分功能 | 客户端开启 AI 超分功能之后,符合超分条件的视频流会自动进行 AI 超分处理。 | AI 超分 |
3 | 支持媒体流加密 | 网易云信在默认加密算法的基础上,提供了国密加密方案,进一步保障数据安全。 | 媒体流加密 |
改进优化
- 网络类型检测新增 5G 类型。
- 解耦麦克风和伴音功能,在不开本地音频采集的前提下,可以直接使用伴音。
- 优化跨网情况下网络重连场景。当用户网络发现变更时,对应的媒体服务器地址也会择优重连。
API 变更
新增 API
API | API 说明 |
---|---|
getEffectDuration | 获取音效文件时长。 |
getEffectCurrentPosition | 获取音效的播放进度。 |
enableSuperResolution | 启用或停止 AI 超分。 |
enableEncryption | 开启或关闭媒体流加密。 |
变更 API
API | 变更说明 |
---|---|
startAudioMixing | 从 V4.4.0 版本开始,开启或关闭本地音频采集的操作不再影响音乐文件播放,即 enableLocalAudio(false) 后仍旧可以播放音乐文件。 |
joinChannel | 从 V4.4.0 版本开始,uid 可选且默认为 0。 |
onConnectionTypeChanged | 增加 CONNECTION_5G 枚举。 |
废弃 API
无
[4.3.2] - 2021-06-23
修复了伴音相关的稳定性问题。
[4.3.0] - 2021-06-04
网易云信于 2021 年 6 月 4 日发布了 NERTC SDK 最新版本 V4.3.0。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 伴音音量设置的生效周期调整 | 通过 startAudioMixing 播放伴音时,如果手动设置了伴音播放音量或发送音量,则当前通话中再次调用时默认沿用此设置。 | startAudioMixing |
2 | 支持更多伴音格式 | 伴音格式支持 MP3、M4A、AAC、3GP、WMA 和 WAV。 | playEffect |
3 | 在音视频通话协议中支持 VP8 编解码 | 移动端新增了 VP8 编解码器,可以与仅支持 VP8 的浏览器通过 VP8 编码进行音视频通话。 | - |
4 | 视频编码属性支持旋转方向模式和镜像模式 | 默认情况下,SDK 在编码时不对视频作镜像和旋转操作。您可以通过参数来设置视频编码的旋转方向模式和镜像模式,以控制远端用户看到的视频画面。 | setLocalVideoConfig |
5 | 视频流回退 | 网络不理想的环境下,音视频的质量都会下降。为提升用户体验,您可以通过指定接口设置视频流回退选项。在网络条件差、无法同时保证音频和视频质量的情况下,SDK 会自动将视频流从大流切换为小流,或将媒体流回退为音频流,从而提高音视频质量。 | setLocalPublishFallbackOption等视频流回退相关 API。 |
改进优化
优化高清音质下语音的传输码率,在弱网情况下预计减少 1/3。
API 变更
新增 API
API | API 说明 |
---|---|
adjustUserPlaybackSignalVolume | 调节本地播放的指定远端用户的信号音量。 |
setLocalPublishFallbackOption | 设置弱网条件下发布的音视频流回退选项。 |
setRemoteSubscribeFallbackOption | 设置弱网条件下订阅的音视频流回退选项。 |
onLocalPublishFallbackToAudioOnly | 本地发布流已回退为音频流或恢复为音视频流回调。 |
onRemoteSubscribeFallbackToAudioOnly | 远端订阅流已回退为音频流或恢复为音视频流回调。 |
变更 API
API | 变更说明 |
---|---|
startAudioMixing | 通过 startAudioMixing 播放伴音时,如果手动设置了伴音播放音量或发送音量,则当前通话中再次调用时默认沿用此设置。 |
playEffect | 伴音格式支持 MP3、M4A、AAC、3GP、WMA 和 WAV。 |
setLocalVideoConfig | 增加 mirrorMode 用于指定镜像模式;增加 orientationMode 用于指定旋转方向模式。 |
废弃 API
无
[4.2.1] - 2021-05-19
网易云信于 2021 年 5 月 19 日发布了 NERTC SDK 最新版本 V4.2.1。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 调节远端用户在本地播放的音量 | 通过 adjustUserPlaybackSignalVolume 可以调节指定远端用户混音后的音频流在本地播放的音量。 | adjustUserPlaybackSignalVolume |
2 | 跨房间媒体流转发 | 在 NERTC 直播场景的音视频房间中,跨房间媒体流转发功能可实现主播角色跨房间与其他主播实时交流互动,在娱乐场景下可实现跨直播间连麦效果。 | 跨房间媒体流转发 |
API 变更
新增 API
API | API 说明 |
---|---|
adjustUserPlaybackSignalVolume | 调节本地播放的指定远端用户的信号音量。 |
startChannelMediaRelay | 开始跨房间媒体流转发。 |
updateChannelMediaRelay | 更新媒体流转发的目标房间。 |
stopChannelMediaRelay | 停止跨房间媒体流转发。 |
onMediaRelayStatesChange | 跨房间媒体流转发状态发生改变回调。 |
onMediaRelayReceiveEvent | 媒体流相关转发事件回调。 |
变更 API
无
废弃 API
无
[4.2.0] - 2021-05-12
网易云信于 2021 年 5 月 12 日发布了 NERTC SDK 最新版本 V4.2.0。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 设置用户媒体流优先级 | 支持设置本地用户的媒体流为优先级。如果某个用户的优先级为高,那么该用户媒体流的优先级就会高于其他用户,弱网环境下 SDK 会优先保证其他用户收到的、高优先级用户的媒体流的质量。 | setLocalMediaPriority |
2 | 客户端截图功能 | 支持针对实时视频流进行截图,包括本地主流画面、本地辅流画面、远端主流和辅流画面。音视频通话过程中,用户可以通过视频截图功能截取实时视频流画面,以便后续的存档分析、事件备忘、证据留存等等。 | 视频截图 |
3 | 画布水印功能 | 视频画布中支持添加文字水印、时间戳水印和图片水印,适用于信息安全、版权声明、防伪、宣传等场景。 | 水印 |
4 | 客户端音频录制 | 支持在客户端侧进行实时音频流录制,包含房间内所有用户混流后的音频数据。开启录制时可以指定录制文件的存放路径及格式、录制采样率、音质等。 | 客户端音频录制 |
改进优化
序号 | 新增功能 | 功能描述 |
---|---|---|
1 | 优化耳机场景表现效果 | 优化戴耳机场景下回声和双讲卡顿效果;优化耳返的延时,从 300ms 降低到 80ms。 |
2 | 安卓端支持 NE265 | 安卓端支持 NE265,整体压缩效率较 NE264 提升 40%,同等带宽下,视频质量明显提升。 |
问题修复
修复蓝牙耳机音频通话被系统电话打断后,无法恢复到蓝牙耳机的问题。
API 变更
新增 API
API | API 说明 |
---|---|
setLocalMediaPriority | 设置本地用户的媒体流优先级。 |
takeLocalSnapshot | 本地视频画面截图。 |
takeRemoteSnapshot | 远端视频画面截图。 |
onTakeSnapshotResult | 截图结果回调。 |
setLocalCanvasWatermarkConfigs | 添加本地视频画布水印。 |
setRemoteCanvasWatermarkConfigs | 添加远端视频画布水印。 |
startAudioRecording | 开始客户端录音。 |
stopAudioRecording | 停止客户端录音。 |
onAudioRecording | 音频录制状态回调。 |
变更 API
无
废弃 API
无
[4.1.1] - 2021-04-07
网易云信于 2021 年 4 月 7 日发布了 NERTC SDK 最新版本 V4.1.1。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 支持双人通话的独立场景 | NERTC 在 V4.1.1 版本中提供了更加适合双人房间场景的底层策略,优化双人房间时的音视频质量效果。双人通话功能适用于点对点通话的业务场景。 | 双人通话 |
2 | NERTC Restful API 支持用房间名称(cname)发起调用 | 音视频通话和互动直播场景的服务端 API 通过新 URL 的方式支持使用房间名称发起调用,同时原 URL 及调用方式仍旧保留以保证新老兼容。 | API 概览 |
3 | 互动直播推流高清音质 | 对于高音质需求的场景,NERTC 提供灵活的互动直播音质调整策略,在创建推流任务时,支持采样率、声道数、编码格式等设置。 | 音视频流配置 |
4 | 互动直播支持画布层级 | 互动直播场景中,推流画面的画布层级可以通过新增参数 zOrder 实现自定义的画布层叠设计,让画布设计更为自由。 | 旁路推流画面布局 |
5 | 互动直播支持自定义消息 | V4.1.0 新版本提供了互动直播场景下自定义消息的能力,帮助您实现信令与互动直播音画同步的场景。调用服务端 API 实现互动直播时,可以通过 extraInfo 参数传递自定义信息。 | 创建推流任务 |
改进优化
序号 | 新增功能 | 功能描述 |
---|---|---|
1 | 优化音视频大房间的表现效果 | 客户端上实现音频选路策略ASL,在大房间的场景中降低客户端上性能消耗,来提升客户端上能支持的用户连接上限。配合级联服务器的使用,可以将房间内并发人数提升到万人。详细说明请参考 大房间使用说明。 |
2 | 优化变声美声效果 | 改造现有美声变声接口,提供更加丰富的美声和混响效果。新版美声变声接口有改动,若您已接入美声功能,升级 V4.1.1 版本时请注意接口变更。详细说明请参考 美声与变声。 |
3 | 视频引擎优化 |
|
API 变更
新增 API
API | API 说明 |
---|---|
setAudioEffectPreset | 设置 SDK 预设的人声的变声音效。 |
setVoiceBeautifierPreset | 设置 SDK 预设的美声效果。 |
setLocalVoicePitch | 设置本地语音音调。 |
setLocalVoiceEqualization | 设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。 |
变更 API
API | API 说明 |
---|---|
setParameters | 复杂参数设置接口。 |
addLiveStreamTask | 创建推流任务。 NERtcLiveStreamTaskInfo 的 config 结构体增加 audioCodecProfile、channels 和 sampleRate。NERtcLiveStreamUserTranscoding 增加 zOrder。 |
updateLiveStreamTask | 更新推流任务。 NERtcLiveStreamTaskInfo 的 config 结构体增加 audioCodecProfile、channels 和 sampleRate。NERtcLiveStreamUserTranscoding 增加 zOrder。 |
废弃 API
API | API 说明 |
---|---|
setLocalVoiceEqualizationPreset | 设置 SDK 预设的美声效果。推荐改用新方法 setVoiceBeautifierPreset。 |
setLocalVoiceEqualizations | 设置本地语音音效均衡。推荐改用新方法 setLocalVoiceEqualization。 |
setLocalVoiceChangerPreset | 使用 SDK 预设的变声效果。推荐改用新方法 setAudioEffectPreset 和 setLocalVoicePitch。 |
setLocalVoiceReverbPreset | 使用 SDK 预设的混响效果。推荐改用新方法 setVoiceBeautifierPreset。 |
[4.0.3] - 2021-03-26
修复
- 修复偶现的crash问题
- 优化音视频通话过程中带宽使用情况
[4.0.1] - 2021-03-05
修复
- 修复 video 下码率分配异常的问题。
- 优化音频质量。
[4.0.0] - 2021-02-24
网易云信于 2021 年 2 月 24 日发布了 NERTC SDK 最新版本 V4.0.0,在音视频能力和性能方面均有显著优化。从 V4.0.0 版本开始,NERTC 支持媒体补充增强信息(SEI)、新增美声变声功能。
新增特性
序号 | 新增特性 | 特性描述 | 相关文档 |
---|---|---|---|
1 | 发送媒体补充增强信息 | NERTC 支持将时间戳等自定义数据作为流媒体补充增强信息(SEI Supplemental Enhancement Information)的一部分,通过流媒体通道将其与视频内容打包在一起,发送给远端用户,以此实现文本数据与音视频内容的精准同步的目的。 | 媒体补充增强信息 |
2 | 美声与变声 | 支持美声的预设效果、美声的自定义调节、变声的预设效果和混响的场景化效果。 | 美声与变声 |
3 | 自定义音频渲染 | NERTC SDK 支持自定义音频渲染功能。拉取远端发送的音频数据之后,可使用自定义的渲染器进行音频渲染。 | 自定义音频采集与渲染 |
4 | 旁路推流支持设置音频码率 | 旁路推流过程中,NERTC 在云端混流转码后可以自定义设置输出的音频码率,语音场景建议使用 64 kbps,音乐场景建议使用 128 kbps。 | 设置音频码率 |
5 | 旁路推流支持单路视频透传 | 在互动直播的旁路推流过程中,如果房间中只有一路视频流输入,则不对输入视频流进行转码、不遵循转码布局,直接推流 CDN。 | 开启单路视频透传 |
改进优化
序号 | 新增功能 | 功能描述 |
---|---|---|
1 | NEVC 移动端支持优化 | NEVC 支持安卓端的软件解码,丰富了 NEVC 对于移动端的支持,优化了移动端的解码效果,提升视频的编解码效果,优化用户的视频感官体验。 |
2 | 伴音错误码优化 | 增加伴音任务状态相关的错误码,为伴音问题排查提供依据。 |
API 变更
新增 API
API | API 说明 |
---|---|
setLocalVoiceEqualizationPreset | 设置 SDK 预设的美声效果。 |
setLocalVoiceReverbPreset | 设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。 |
setLocalVoiceReverbPreset | 设置 SDK 预设的混响效果。 |
setLocalVoiceChangerPreset | 设置 SDK 预设的人声的变声音效。 |
sendSEIMsg | 通过主流通道发送媒体补充增强补充信息。 |
sendSEIMsg | 发送媒体补充增强信息。通过本接口可指定发送 SEI 时使用主流或辅流通道。 |
onRecvSEIMsg | 收到远端流的 SEI 内容回调。 |
setExternalAudioRender | 设置外部音频渲染 |
pullExternalAudioFrame | 拉取外部音频数据 |
变更 API
API | API 说明 |
---|---|
onAudioMixingStateChanged | 伴音错误码回调。NERtcConstants.AudioMixingError 中增加 AUDIO_MIXING_ERROR_CODEC_OPEN 等错误码。 |
addLiveStreamTask | 创建推流任务。NERtcLiveStreamTaskInfo 增加 config 结构体,用于配置音视频流属性。 |
updateLiveStreamTask | 更新推流任务。NERtcLiveStreamTaskInfo 增加 config 结构体,用于配置音视频流属性。 |
setAudioProfile | 设置音频场景与模式。scenario 参数新增 CHATROOM 枚举值,表示语音聊天室场景。 |
[3.9.0] - 2021-01-08
新增
- 支持主动获取网络连接状态。
- 新增实时音视频辅流功能。
- 支持设置屏幕共享内容类型。
- 直播模式下支持设置房间角色。
- 支持自定义音频输入。
- 音频支持 AI 降噪能力。
- 支持音视频啸叫检测。
技术优化
- 支持全新的 NEVC 编码协议,同等码率下提升视频整体清晰度,提高鲁棒性和错误恢复能力。
- 屏幕共享画面优化,提升静态共享画面的清晰度,优化用户体验。
- 支持暗场景视频图像增强,优化暗场景下的通话体验。
[3.8.2] - 2020-12-17
修复
修复房间名称抄送不准确的问题。
[3.8.1] - 2020-12-04
新增
- 房间连接状态通知功能。
- 支持视频设备调试与配置。
- 在语音场景中新增一档高清语音选项。
变更
- 屏幕录制功能SDK内部不在创建前台服务,改由应用自定义创建。
[3.7.3] - 2020-11-20
注意:如果需要通过 Gradle 方式集成 V3.7.X 版本的 NERTC SDK,请手动在
build.gradle
中额外加入一行implementation 'com.netease.yunxin:report:2.0.3'
。后续如果需要集成 V3.8.X 及以上版本时,无需添加该行,建议删除。详细集成方式请参考集成SDK(Android)。
优化
针对音视频引擎底层模块进行优化。
[3.7.1] - 2020-10-20
注意:如果需要通过 Gradle 方式集成 V3.7.X 版本的 NERTC SDK,请手动在
build.gradle
中额外加入一行implementation 'com.netease.yunxin:report:2.0.3'
。后续如果需要集成 V3.8.X 及以上版本时,无需添加该行,建议删除。详细集成方式请参考集成SDK(Android)。
修复
1. 修复Android 屏幕共享内容被裁剪的问题。
[3.7.0] - 2020-09-28
注意:如果需要通过 Gradle 方式集成 V3.7.X 版本的 NERTC SDK,请手动在
build.gradle
中额外加入一行implementation 'com.netease.yunxin:report:2.0.3'
。后续如果需要集成 V3.8.X 及以上版本时,无需添加该行,建议删除。详细集成方式请参考集成SDK(Android)。
新增
1. 新增发布流类型配置以及大小流开关。
2. 新增视频属性灵活配置。
3. 新增双声道效果支持。
优化
1. 回声消除模块优化,提升单讲、双讲场景下的音质效果。
2. 进入房间时默认打开音频设备。
[3.6.2] - 2020-08-31
修复
1. 修复异常网络下偶现的崩溃的问题。
[3.6.0] - 2020-08-20
新增
1. 新增音视频质量透明数据回调功能。
2. 新增音视频设置房间模式功能。
3. 新增伴音在线音频文件支持。
优化
1. 优化视频编码质量以及编码器优化。
2. 优化本地渲染体验,使渲染效果更加流畅。
3. 优化音频质量,保证多端音量稳定。
4. 优化屏幕共享,性能整体提升。
[3.5.2] - 2020-07-21
优化
1. 语音场景下优化音频降噪能力,提升默认的降噪等级。
[3.5.1] - 2020-07-06
修复
1. 修复无远端音频的情况下,音频回调不会触发的问题。
2. 修复32位CPU下偶现的崩溃问题
[3.5.0] - 2020-06-23
新增
1. 新增自定义视频数据输入功能。
2. 新增互动直播支持占位图片功能。
3. 新增订阅/取消订阅所有远端音频功能。
优化
1. 优化视频清晰度订阅机制,通过订阅大小流的方式来选择订阅视频的清晰度
2. 优化蓝牙耳机通话场景适配。
3. 优化视频抗丢包能力,视频抗丢包能力提升到40%(50ms rtt情况下)。
变更
1. 弃用通话模式设置,统一为多人会议场景。
修复
1. 客户端互动直播的请求在高频场景下无序的问题。
[3.4.2] - 2020-05-27
优化
1. 优化互动直播 addLiveStreamTask
、updateLiveStreamTask
、removeLiveStreamTask
接口的调用时序问题
[3.4.1] - 2020-05-11
优化
1. 修复蓝牙耳机在某些机型上的无声问题
[3.4.0] - 2020-04-28
新增
1. 新增互动直播推流功能。
2. 音频效果优化,新增音乐场景模式支持。
3. 新增网络状态回调。
优化
1. 音频通话效果优化,适配50+ 主流机型。
2. 网络切换优化,网络变更音视频恢复更加流畅。
[3.3.0] - 2020-03-31
新增
1. 新增音频场景设置。
2. 新增音频数据回调。
3. 新增屏幕共享功能。
[3.2.0] - 2020-01-15
新增
1. 新增录屏模式。
2. 支持音视频加密功能。
3. 接口优化接入更加方便。
[3.1.0] - 2019-11-19
新增
1. 支持多人会议功能。
2. 支持多流发送与订阅功能。
[3.0.0] - 2019-09-29
新增
1. 支持音视频通话功能。
2. 全面支持 arm64,armv7,x86 三大CPU架构。