音视频通话 Android 端更新日志

[6.10.1] - 2019-11-4

修复

1. 优化多人音视频场景下的稳定性,修复引擎可能存在的崩溃风险

[6.10.0] - 2019-10-29

新增

1. 支持单独设置预览分辨率 AVChatParameters#KEY_VIDEO_PREVIEW_QUALITY

2. 本地音视频录制开始回调目录 AVChatStateObserver#onAudioRecordingStart(fileDir)AVChatStateObserver#onAVRecordingStart(account,fileDir)

3. 新增房间推流 AVChatManager#getInstance()#createRoom( roomName, extraMessage ,liveConfigList , callback)

4. 视频订阅支持端到端QoS策略AVChatManager#getInstance()#setPublishFallbackOption(option)

5. 新增视频采集回调接口,onVideoFrameFilter(final com.netease.nrtc.sdk.video.VideoFrame input, com.netease.nrtc.sdk.video.VideoFrame[] outputFrames, VideoFilterParameter filterParameter);, 回调数据格式支持I420/NV21/Texture. 通过AVChatParameters.KEY_VIDEO_FRAME_FILTER_NEW设置开启。

变更

1. 音频默认模式统一成高清语音

2. 适配Android Q

[6.8.0] - 2019-08-13

新增

1. 多流 ( beta ) AVChatManager.getInstance().setLocalVideoSimulcastModel(mode)

变更

1. 独立出原先的美颜库依赖,改为jcenter方式 implementation 'com.netease.nrtc:videoeffect:1.0.0'

2. 视频订阅接口支持多流 AVChatManager.getInstance().subscribeVideo(account, videoType)

3. 视频订阅/取消订阅 回调支持多流 AVChatStateObserver.onSubscribeVideoResult(account, videoType,result)AVChatStateObserver.onUnsubscribeVideoResult( account, videoType, result)

4. 远端用户发布回调支持多流 AVChatStateObserver.onRemotePublishVideo(account, videoTypes)

5. AVChatSessionStats 支持多流,增加simulcastVideos , 影响AVChatStateObserverLite.onSessionStats回调

6. 提升白板整体的稳定性。

修复

1. 修复了在vivo x9plus上面伴音无法循环的问题。

[6.6.7] - 2019-07-17

修复

1. 伴音音量非线性问题

[6.6.0] - 2019-06-25

修复

1. 修复伴音无法直接切到下一首

2. 修复硬编切软编崩溃

3. 屏幕录制效果优化

4. 解决耳机插拔多次导致的AEC失效问题

5. 优化了卡顿率上报规则,使卡顿率更加贴近终端用户的真实体验。

6. 优化了高清音乐模式下的带宽策略及码率上探策略,在带宽良好的情况下进一步提升音频质量。

新增

1. 视频订阅,详情参考订阅相关文档

2. 支持Camera2采集 , AVChatVideoCapturerFactory#createCamera2Capturer

变更

1. 废弃 AVChatStateObserverLite#onJoinedChannel(加入频道成功的回调)中的两个文件路径参数audioFile、videoFile,可能为null

2. 不推荐使用AVChatManager.getInstance().muteLocalVideo(),建议使用发布订阅功能。

3. 不推荐使用AVChatManager.getInstance().muteRemoteVideo(),建议使用发布订阅功能。

[6.4.0] - 2019-04-26

修复

1. 修复来回切换视频卡住

2. 修复muteAllRemoteAudioStream导致的取消观众模式崩溃

3. 过滤伴音不支持的采样率

新增

1. 通话质量打分 AVChatManager#getInstance #rate

2. 音效功能 AVChatManager#getInstance#playAudioEffect

3. 音频设备新增有线外放、蓝牙外放 AVChatStateObserverLite#onAudioDeviceChanged

变更

1. 支持不销毁SDK , 重复Join Leave Channel

[6.2.0] - 2019-03-14

修复

1. fix 设置录制主讲人不生效问题

2. 硬件编码线程优化

新增

1. 屏幕录制共享

2. 本地录制支持AAC格式

[6.1.2] - 2019-02-15

修复

1. 完善日志上报

2. 修复了断网重连情况下的部分问题,提升了音视频体验

[6.0.0] - 2019-01-14

新增

1. 新版QoS策略上线,全面提升低带宽和高延时场景下的音频和视频流畅度

2. 音视频编解码器全新升级,有效提升视频清晰度

3. 音视频服务器录制新增自定义布局

变更

1. Native 库结构变更

2. 系统类型设置变更

3. 移除DTX参数设置 AVChatParameters#KEY_AUDIO_DTX_ENABLE

[5.8.0] - 2018-11-13

新增

1. 新增上传兴趣点进行手动对焦

2. 新增白板代理功能

修复

1. 修复部分arm64架构手机只采用armV7架构SDK后偶现的硬件编码崩溃问题

[5.6.0] - 2018-08-30

新增

1. 新增外部音视频输入接口

2. 音视频服务端录制功能全面升级

变更

1. 录制能力

2. 音频双讲效果优化

[5.5.0] - 2018-08-07

变更

1. 优化视频绘制

2. 移除啸叫抑制 AVChatParameters#KEY_AUDIO_HOWLING_SUPPRESS

[5.4.0] - 2018-07-10

新增

1. 多人音视频服务端录制开放

2. 全员静音功能,禁止播放所有远端音频流

3. 丰富伴音功能,支持进度条控制和云端文件播放

4. 移动端新增通过兴趣点坐标设置实现手动曝光, AVChatCameraCapturer#setMeteringAreas.

5. 支持分开设置伴音发送音量&播放音量

6. 优化Camera被抢占后自动恢复流程

[5.2.0] - 2018-05-24

新增

1. 深度优化音频带宽利用率,保障更佳音视频通话质量

2. 音乐模式机型适配与低带宽场景深度优化

修复

1. 修复已知问题

[5.0.0] -2018-03-29

新增

1. 高清音乐模式全面升级,针对音乐教学陪练场景定制优化

2. 互动直播音视频连麦人数提升

3. 新增互动直播场景下,主播设置某一个视频连麦者为主画面的功能

4. 新增服务器超时断开时,客户端自动重连

5. 新增极端网络下关闭视频的回调

变更

1. 开启视频模块时移除摄像头权限检查

2. 移除Camera接口中相关对焦API

修复

1. 修复部分手机摄像头对焦兼容性问题

[4.9.0] -2018-02-11

新增

1. 新增视频屏幕共享场景调控策略,支持通话过程调控策略动态切换

变更

1. 删除WebRTC与私有互通开关,已默认支持各端与WebRTC的互通

修正

1. 修复偶现伴音崩溃问题

[4.7.3] -2018-01-25

修复

1. 优化与V4.2.0之前版本的视频通话效果,提升音视频服务体验。

[4.7.1] -2018-01-17

修复

1. 修复已知问题,优化音频抗丢包能力。

[4.7.0] -2018-01-09

新增

1. 新增耳返功能。当主播想要从耳机中听到自己的声音时,可以开启耳返。一般使用在主播开启伴音,主播戴上耳机,随着伴奏说话唱歌,可以从耳机中实时听到融合了音乐和自己人声的声音。

2. 全面提升音视频抗丢包能力,优化弱网下音视频表现。

3. 新增房间关闭错误码 AVChatResCode#ERROR_DISCONNECT_SERVER_CHANNEL_CLOSED 。当通过 Server RESTful API 强制解散音视频房间时会收到通知。

修复

1. 修复已知问题。

[4.5.1] - 2017-11-30

修正

1. 修复 AVChatManager#sendControlCommand 在某些情况下引起崩溃问题

[4.5.0] - 2017-11-23

新增

1. 新增麦克风静音 AVChatManagerLite#setMicrophoneMute AVChatManagerLite#isMicrophoneMute

2. 网络探测优化, 新增不同分辨率等级网络探测 AVChatNetDetectType

修正

1. 修复Meizu M5 Note 伴音创建解码器异常问题

2. 修复Meizu MX4 Pro 语音采集问题

[4.3.0] - 2017-10-13

新增

1. 优化视频 QoS 调控策略,通过码率、帧率和分辨率的自动调节保证用户体验,并且可以通过方法 AVChatManagerLite#setVideoQualityStrategy 选择偏好的调控策略为质量优先或流畅优先。

2. 网络探测新增视频包探测 AVChatNetDetector#startNetDetect

3. 网络质量新增AVChatNetworkQuality#VERY_BAD档位,在此网络下建议不要发视频数据。

4. 视频采集新增 Camera2 支持,通过 AVChatVideoCapturerFactory#createCamera2Capturer 创建采集对象。

5. 统计数据回调新增部分字段,参考 AVChatSessionStats

变更

1. 音视频接口变更:

2. 外部语音数据输入变更 :

[4.1.0] - 2017-08-08

新增

1. 新增外部语音数据输入:

2. 新增外部视频数据输入:

3. 新增视频清晰度540P设置: AVChatVideoQuality#QUALITY_540P.

4. 新增 Android 兼容性适配接口, 对于开发过程中发现的兼容性问题可以通过此接口进行适配, 可适配参数参考使用手册:

5. 新增通话场景模式, 自适应高清音乐模式: AVChatChannelProfile#CHANNEL_PROFILE_HIGH_QUALITY_MUSIC_ADAPTIVE, 各种模式介绍参考使用手册.

变更

1. 从 3.6.0 版本开始我们提供了新的接口来实现音视频通话, 新版本移除了以下已经废弃接口:

2. 视频数据格式从内部类变为单独类: AVChatVideoFrame#AVChatImageFormat => AVChatImageFormat.

3. 视频画布变更:

4. 加入频道回调增加连接时长信息:AVChatStateObserver#onJoinedChannel(int code, String audioFile, String videoFile, int elapsed).

修正

1. 修复已知问题.

[3.9.1] - 2017-06-29

新增

1. 新增WebRTC支持: AVChatNotifyOption#webRTCCompat, AVChatManager#createRoom。有WebRTC客户端参与的房间中需要打开该开关, 目前WebRTC为 Beta 版本,如果没有WebRTC客户端参与,不要打开该开关

修正

1. 修复已知问题。

[3.9.0] - 2017-06-23

新增

1. 优化音乐效果。

2. 优化弱网环境下语音效果。

3. 互动直播新增自定义布局设置: AVChatParameters#KEY_SESSION_LIVE_PIP_MODE_ENHANCE

4. 新增前置摄像头镜像,支持本地预览和发送镜像处理: AVChatParameters#KEY_VIDEO_LOCAL_PREVIEW_MIRROR, AVChatParameters#KEY_VIDEO_TRANSPORT_MIRROR

5. 新增语音处理自动增益开关, 支持打开和关闭语音自动增益: AVChatParameters#KEY_AUDIO_EFFECT_AUTOMATIC_GAIN_CONTROL

6. 新增啸叫抑制开关, 默认关闭啸叫抑制: AVChatParameters#KEY_AUDIO_HOWLING_SUPPRESS

7. 新增互动直播状态通知: AVChatStateObserver#onLiveEvent

8. 增加实时统计信息通知: AVChatStateObserver#onSessionStats

9. 新增场景设置, 可以在高清语音开启时设置音乐场景, AVChatManager#setChannelProfile

变更

1. 网络质量通知新增当前网络的详细信息: AVChatStateObserver#onNetworkQuality

2. 视频数据处理回调变更:

3. 视频采集模块变更:

[3.7.0] - 2017-05-10

新增

1.SDK优化了音视频相关的统计功能,方便实时排查音视频通话过程中遇到的问题,并对相关流程进行优化,提高稳定性,建议开发者更新此版本。

[3.6.0] - 2017-04-27

新增

1. 网络通话新增一套操作接口,便于实现通话前视频预览。

2. 新增控制指令发送接口,可以通过此接口发送正忙,音视频切换等操作,同时用户也可以自定义控制指令通过此接口发送。 AVChatManager#sendControlCommand

3. 支持指定发送前视频画面裁剪比例,可以指定为 不裁剪、16:9、4:3 和 1:1 裁剪。详细参考 AVChatParametersAVChatOptionalConfigAVChatVideoCropRatio

4. 支持音视频过程中动态切换视频采集的方向,满足互动直播的横竖屏动态切换需求。 详细参考 AVChatParametersAVChatOptionalConfigAVChatVideoCaptureOrientation

变更

1. 移除互动直播动态开启和关闭接口以及相应的回调。

2. 双人通话相关接口添加 chatId 参数,需要明确操作的通话ID。

3. 当前会话有效性接口变更: AVChatManager#isCurrentChatValid => AVChatManager#getCurrentChatId

4. 多人会话离开接口添加 roomName 参数,离开会话时需要指定房间名。

5. 网络通话可选参数变更,目前参数分为两种,部分参数仅支持通话前设置,部分参数通话前和通话中都可以设置。 详细可以参考 AVChatParameters, 此类定义了网络通话所有可设置参数,包括参数名,参数值类型,参数是否可以运行时设置以及参数是否可读可写等特性。

6. 双人通话存在多通时通知逻辑变更。当有双人通话正在进行时,如果其他通话呼叫进来,SDK会通知到上层,上层需要选择挂断原有通话或者通过AVChatManager#sendControlCommand通知新呼叫通话正忙。

7. 音视频切换接口变更。目前 AVChatManager#requestSwitchToVideo, AVChatManager#requestSwitchToAudio, AVChatManager#ackSwitchToVideo 相关接口已标记为废弃,未来会移除,接口仅仅提供信令层的传输,当收到相关信令通知事件后,需要通过相应的视频操作接口来实现音视频的切换。后续如果需要实现音视频切换信令层的通知可以使用 AVChatManager#sendControlCommand 接口实现。

8. 双人通话超时监听注册变更。当不注册超时监听时,内部不提供超时机制,后续建议上层自定义实现超时机制,目前SDK内部呼出和呼入超时时间为45秒。 超时事件发生时将通知会话ID, observeTimeoutNotification(Observer<Long> observer, boolean register)

修正

1. 修复无摄像头权限时切换摄像头导致崩溃

2. 修复视频画面按比例裁剪在超低分辨率时容易导致无法绘制问题

3. 修复开启本地录制失败时返回值为成功的问题

[3.5.5] - 2017-03-29

新增

1. 网络通话新增横屏参数: AVChatOptionalConfig#videoCaptureOrientation.

2. 网络通话新增16:9裁剪参数:AVChatParameters#KEY_VIDEO_CROP_RATIO.

[3.5.0] - 2017-03-15

新增

1. 音视频通话持续呼叫:若被叫方不在线,主叫方对其持续进行呼叫,被叫方会收到消息推送。

2. 网络通话更新:

变更

1. 网络通话与本地系统来电交互处理优化,从音视频SDK移到Demo中进行处理,便于第三方上层处理系统电话和网络通话的交互:

2. 网络通话视频聊天增加预览功能:

3. 网络通话视频帧和音频帧数据处理接口变更:

4. 网络通话音视频录制接口变更:

5. 网络通话过程中的状态变化监听接口变更:

[3.4.0] - 2017-01-20

变更

1. 网络通话语音设备变更通知: AVChatStateObserver#onAudioDeviceChanged 。

[3.3.0] - 2016-12-28

新增

1. 网络通话新增伴音功能

2. 网络通话新增网络探测功能

3. 网络通话新增高清语音支持: AVChatOptionalConfig#enableAudioHighQuality

4. 网络通话新增人声检测支持: AVChatOptionalConfig#enableAudioDtx

变更

1. 网络通话移除自动增益开关: AVChatOptionalConfig#setAudioEffectAGCMode

[3.2.0] - 2016-11-30

新增

1. 添加64位支持。

变更

1. 网络通话最低支持版本为Android 4.1 (Jelly Bean)。

[3.0.0] - 2016-10-20

新增

1. 新增实时汇报正在说话用户声音强度通知 AVChatStateObserver#onReportSpeaker

2. 新增语音播放设备改变通知 AVChatStateObserver#onAudioOutputDeviceChanged

变更

1. 网络音视频通话进行时, 如果多端登录被踢掉会自动挂断网络通话。

[2.9.0] - 2016-09-19

新增

1. 网络通话视频采集数据回调接口 AVChatStateObserver#onVideoFrameFilter, 可用于视频数据的美颜等其他的自定义处理。

2. 网络通话语音采集数据回调接口 AVChatStateObserver#onAudioFrameFilter, 可用于语音数据的变声等其他的自定义处理。

[2.7.0] - 2016-08-11

新增

1. 添加 SDK 发包频控控制。

2. 网络通话新增错误码定义:AVChatResCode。

3. 网络通话AVChatStateObserver:

4. 网络通话支持通话前帧率设置。

5. 网络通话支持动态切换清晰度:AVChatParameters#KEY_VIDEO_QUALITY。

变更

1. 网络通话视频绘制变更:

2. 网络通话设备事件定义 AVChatDeviceEvent 去掉画布相关事件。

[2.6.0] - 2016-07-25

新增

1. 网络通话新增语音处理模式设置: AVChatAudioEffectMode:

2. 网络通话新增通话过程中参数设置 AVChatParameters:

3. 网络通话接口AVChatManager新增:

变更

1. 网络通话功能不再支持Android 4.0以下系统。

2. 网络通话接口变更 AVChatStateObserver:

3. 网络通话视频清晰度定义变更 AVChatVideoQuality:

4. 网络通话可选设置参数变更 AVChatOptionalConfig:

5. 网络通话接口AVChatManager变更:

[2.5.0] - 2016-07-08

变更

1. SDK 网络通话Jar包调整:nim-sdk.jar、nim-avchat.jar、nrtc-sdk.jar。

[2.4.0] - 2016-06-02

变更

1. 提高网易云通信服务进程系统优先级,降低被系统杀死的概率。

2. 适配 Android M+ 外部存储读写权限开启后,日志写入无法立即生效的问题。

3. 网络通话加入房间状态回调变更,新增服务器录制视频文件名,删除服务器文件录制路径参数:AVChatStateObserver#onJoinedChannel。

4. 网络通话来电通知不再需要注册 AVChatBroadcastReceiver 广播接收器。

[2.3.0] - 2016-05-18

新增

1. 网络通话支持多人音视频功能。

2. 网络通话新增类型定义。

3. 网络通话新增静音类接口。

4. 网络通话其它辅助接口新增。

5. 网络通话状态回调接口新增。

变更

1. 网络通话 SDK 内部不再提供响铃功能。 由于多人模式下不支持响铃, 双人通话把相关的响铃功能移至 Demo 层, 可以参考 SoundPlayer 。

2. 网络通话接口 AVChatManager 变更。

3. 网络通话时视频参数 VideoChatParam 合并到 AVChatOptionalParam。

4. 网络通话移除铃声配置参数 AVChatRingerConfig, 响铃功能参考 Demo 层 SoundPlayer。

5. 网络通话状态回调接口变更。

[2.2.0] - 2016-04-28

新增

1. 网络通话服务端录制区分音频和视频,AVChatManager#call 和 AVChatManager#accept 接口添加是否录制音频、是否录制视频的参数。

2. 网络音视频通话增加全国多节点、直连与中转智能网络路由探测机制。

3. 网络音视频通话增加双人模式下服务器录制功能。服务器录制区分音频录制和视频录制,录制格式为 MP4。

[2.1.0] - 2016-03-24

新增

1. 添加 AVChatNotifyOption,可自定义音视频的 iOS 推送通知。

[1.8.0] - 2016-01-18

新增

1. 音视频添加本地发送数据的录制接口:AVChatManager。

变更

1. 断网后立即上报状态(去掉延时上报机制),上层感知到的网络状态变更更加灵敏供开发者自由发挥。

[1.6.0] - 2015-11-02

变更

1. 音视频通话码率参数由服务器动态调整。

2. 音视频通话直连模式策略调整。

3. 修改 AVChatManager.accept 接口,回调返回值改为 Void。

[1.5.0] - 2015-09-29

优化

1. 优化了音视频断线重连机制。

2. 优化了视频在弱网络环境下的质量。

3. 优化了音视频内存使用。

4. 降低了视频流量。

[1.2.0] - 2015-06-23

变更

1. 命名变更,AVChatInfo -> AVChatData。原来的 AVChat**Info 改名为 AVChat**Event, 基类为 AVChatCommonEvent,其中指定了 AVChatEventType(音视频通话事件枚举):

2. AVChatManager 中,拒绝接听接口(reject)合并到挂断接口(hangUp)中。

3. observeTimeoutNotification 的回调结果改为 AVChatTimeOutEvent(超时事件枚举)。

4. observeHangUpNotificationd 的回调结果改为 AVChatCommonEvent,去掉了 AVChatHangUpInfo 类。

[1.1.0] - 2015-05-25

新增

1. 支持音视频网络通话功能。

2. 全面支持 arm,armv7,x86 三大CPU架构。

3. 支持的 android 系统版本由 2.2 升级到 2.3。