本次版本更新以音频的优化为主,主要体现在音频音质和音频通话的弱网表现。
对于音质,我们综合各种用户使用场景,归纳出了三种模式:基础通话模式、高清语音模式和高清音乐模式,三种模式分别有其不同的适应场景(更详细的内容请参照各端开发文档的“分场景模式说明”):
基础通话模式适用于通话过程中没有音乐的场景,音频采样率16KHz,音质完全满足日常通话要求,流量消耗较低;
高清语音模式适用于对音质要求较高且通话过程中可能出现音乐的场景,在该模式下,如果只有音视频房间内只有一个人,比如互动直播的单向直播场景(互动直播在没有连麦者的时候),此时某些人声预处理算法会关闭(比如回音消除),以此保证音乐的音质(一些人声预处理算法会对音乐音质产生很大影响),当音视频房间内有多人时,为了保证人声通话效果,相关人声预处理算法会重新打开,但此时的采样率仍然是48KHz,音质会略优于基础通话模式,但流量消耗相较于基础通话模式较高;
高清音乐模式是完全针对音乐场景设计,该模式下采样率48KHz,人声的预处理算法一直处于关闭状态保证音乐效果,此时不管音视频房间里有多少人,音乐的音质都会很好,带来的问题是如果参与音频互动的人不戴耳机可能会有回音的问题。
另外,此次还优化了弱网下的卡顿率,在网络较差的时候音频仍能比较流畅,在丢包达到20%时,仍能正常音频通话,最高可抗30%网络丢包。
●●●
本次版本的主要功能
【能力】
1. 【优化】音质
2. 【优化】弱网卡顿
3. 【新增】互动直播连麦者布局自定义
4. 【新增】摄像头和视频前处理相关功能:自动对焦模式、焦距调节,闪关灯,水印,动态水印,镜像,分辨率,美颜滤镜
【DEMO】
1. 【新增】互动直播demo中新增摄像头和视频前处理相关的功能展示
●●●
各端详细内容如下
- ios -
【SDK】
1. 【优化】优化了音乐效果
2. 【优化】优化了弱网环境下的声音效果
3. 【新增】新增场景参数 scene, 可以在高清语音开启时设置高清音乐场景 NRTCChannelSceneHighQualityMusic
4. 【新增】新增视频清晰度 540P
5. 【新增】新增互动直播视频画面混屏自定义布局配置 bypassStreamingVideoMixCustomLayoutConfig, 可以在视频混频模式 bypassStreamingVideoMixMode 为 NIMNetCallVideoMixModeCustomLayout 时设置该自定义布局配置
6. 【新增】新增互动直播状态回调 onBypassStreamingStatus:
7. 【新增】新增摄像头设置,支持
1. 改变摄像头焦距功能
2. 手动对焦模式,可在手动对焦与自动对焦模式中进行切换
3. 切换视频清晰度回调接口
4. 切换视频采集方向回调接口
5. 开启闪光灯
8. 【新增】新增视频前处理,支持
1. 美颜滤镜,支持自然,粉嫩,怀旧,黑白四款
2. 设置磨皮强度,对比度强度
3. 设置视频预览镜像及编码镜像
4. 添加水印,支持静态水印及动态水印
9. 【优化】本地视频预览层画面回调从onLocalPreviewReady: 变更为onLocalDisplayviewReady: 参数类型从CALayer 变为 UIView
10. 【优化】获取本地视频预览层从localPreviewLayer 变更为getDisplayView: 返回值类型从CALayer 变为 UIView
11. 【优化】前后摄像头切换回调从onCameraSwitchedTo: 变更为onCameraTypeSwitchCompleted:
12. 【优化】视频裁剪参数 videoCrop 从 NIMNetCallOption 移到了 NIMNetCallVideoCaptureParam
【DEMO】
1. 【优化】更新即时通讯、互动直播和在线教育的SDK到最新版本
2. 【新增】互动直播新增摄像头和视频前处理相关功能的展示
- Android -
【SDK】
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
10. 【优化】网络质量通知新增当前网络的详细信息: AVChatStateObserver#onNetworkQuality
11. 【优化】视频数据处理回调变更:
1. 数据回调变更,添加是否需要外部输入镜像后数据的参数。AVChatStateObserver#onVideoFrameFilter
2. 回调数据类变化,支持镜像数据传输。 AVChatVideoFrame#dataMirror, AVChatVideoFrame#dualInput
3. 支持外部指定回调数据格式,目前支持NV21和I420。AVChatParameters#KEY_VIDEO_FRAME_FILTER_FORMAT
12. 【新增】视频采集模块变更:
1. 新增独立的视频采集模块: 新增独立视频采集模块,支持手动对焦, 焦距缩放,闪光灯等功能。AVChatCameraCapturer
2. 视频通话时需要单独设置采集模块到SDK内部。AVChatManager#setupVideoCapturer
3. 摄像头切换和多摄像头判断移到独立的采集模块。AVChatCameraCapturer#switchCamera,AVChatCameraCapturer#hasMultipleCameras
【DEMO】
1. 【优化】更新即时通讯、互动直播的SDK到最新版本
2. 【新增】互动直播新增摄像头和视频前处理相关功能的展示
- pc -
【SDK】
1. 【优化】SDK优化了音视频相关的音频前处理功能,追加一个nrtc_audio_process.dll模块,并优化了音频编码
2. 【新增】视频通话的发送分辨率等级添加一个960*540的分辨率
3. 【新增】音视频数据监听 nim\_vchat\_set\_audio\_data\_cb\_ex 接口添加一个伴音混音数据监听
4. 【新增】音视频状态监听回调中 nim\_vchat\_cb\_func 添加一个回调类型kNIMVideoChatSessionTypeLiveState 通知直播推流的服务器状态
5. 【新增】添加互动直播时主播可以选择自定义布局,多人join的时候主播追加一个参数kNIMVChatCustomLayout ,在NIMVChatVideoSplitMode设置为kNIMVChatSplitCustomLayout时生效
【DEMO】
1. 【优化】duilib RichEdit控件消息处理机制性能优化
2. 【优化】duilib 渲染层独立为接口,方便支持多渲染引擎
3. 【优化】duilib 优化异形窗体的alpha修复功能
戳【阅读原文】解锁网易通信与视频最新版!
——【特别推荐】——