NERTC Flutter SDK
NERTC SDK 提供完善的音视频通话开发框架,提供基于网络的视频通话和语音通话功能,还提供多人视频和音频会议功能,支持通话中音视频设备控制和实时音视频模式切换,支持视频采集数据回调以实现美颜等自定义功能。
- NERtcEngine 类包含应用程序调用的主要方法。
- NERtcDeviceManager 类包含设备调用的主要方法。
- NERtcAudioMixingManager 类包含伴音调用的主要方法。
- NERtcAudioEffectManager 类包含音效调用的主要方法。
- NERtcChannelEventCallback 类用于向应用程序发送用户状态回调通知。
- NERtcDeviceEventCallback 类用于向应用程序发送设备状态回调通知。
- NERtcAudioMixingEventCallback 类用于向应用程序发送伴音状态回调通知。
- NERtcAudioEffectEventCallback 类用于向应用程序发送音效状态回调通知。
- NERtcStatsEventCallback 接口类用于向应用程序发送媒体状态类回调通知。
获取 Flutter 端全量 API 接口信息,请查看客户端 API 文档首页(Flutter)。
房间管理
方法 | 功能描述 |
---|---|
create | 创建 NERTC 实例。 |
release | 销毁 NERTC 实例,释放资源。 |
setChannelProfile | 设置房间场景。如果需要设置房间场景,必须在调用 create 之后、调用 joinChannel 之前调用此接口。 |
setClientRole | 设置用户角色。 |
joinChannel | 加入房间。 |
leaveChannel | 离开房间。 |
getConnectionState | 主动获取网络连接状态。 |
房间事件
方法 | 功能描述 |
---|---|
onJoinChannel | 加入房间回调。 |
onLeaveChannel | 退出房间回调。 |
onUserJoined | 远端用户加入当前房间回调。 |
onUserLeave | 远端用户离开当前房间回调。 |
onReJoinChannel | 重新加入房间回调。 |
onClientRoleChange | 用户角色已切换回调。 |
onConnectionStateChanged | 网络连接状态已改变回调。 |
onConnectionTypeChanged | 本地网络类型已改变回调。 |
onDisconnect | 从房间断开的回调。 |
onReconnectingStart | 重连开始回调。 |
音频管理
方法 | 功能描述 |
---|---|
setAudioProfile | 设置音频编码配置 |
adjustRecordingSignalVolume | 调节录音音量 |
adjustPlaybackSignalVolume | 调节播放音量 |
enableLocalAudio | 开关本地音频采集 |
muteLocalAudioStream | 开关本地音频发送 |
subscribeRemoteAudio | 订阅/取消订阅指定音频流 |
subscribeAllRemoteAudio | 订阅/取消订阅所有远端音频流 |
事件 | 事件描述 |
---|---|
onAudioHasHowling | 检测到啸叫回调 |
视频管理
方法 | 功能描述 |
---|---|
enableLocalVideo | 开关本地视频 |
setLocalVideoConfig | 设置视频发送配置 |
startVideoPreview | 开启视频预览 |
stopVideoPreview | 停止视频预览 |
muteLocalVideoStream | 开关本地视频发送 |
subscribeRemoteVideo | 订阅 / 取消订阅指定远端用户的视频流 |
attachToLocalVideo | 关联本地用户视频视图 |
attachToRemoteVideo | 关联远端用户视频视图 |
视频大小流
方法 | 功能描述 |
---|---|
enableDualStreamMode | 设置是否开启视频大小流模式 |
本地媒体事件
事件 | 事件描述 |
---|---|
onFirstAudioFrameDecoded | 已解码远端音频首帧的回调 |
onFirstVideoFrameDecoded | 已解码远端视频首帧的回调 |
onFirstAudioDataReceived | 远端音频首帧回调 |
onFirstVideoDataReceived | 远端视频首帧回调 |
远端媒体事件
事件 | 事件描述 |
---|---|
onUserVideoProfileUpdate | 远端用户更改视频分辨率类型的回调 |
onUserVideoMute | 远端用户关闭视频发送的回调 |
onUserAudioMute | 远端用户关闭音频发送的回调 |
onUserAudioStart | 远端用户开启音频的回调 |
onUserAudioStop | 远端用户关闭音频的回调 |
onUserVideoStart | 远端用户开启视频的回调 |
onUserVideoStop | 远端用户关闭视频的回调 |
数据统计事件
SDK 定期向 App 报告以下统计信息,每 2 秒触发一次。
事件 | 事件描述 |
---|---|
setStatsEventCallback | 设置统计信息回调 |
clearStatsEventCallback | 清除统计信息回调 |
onRtcStats | 当前通话统计回调,每2秒触发一次 |
onNetworkQuality | 通话中每个用户的网络上下行质量报告回调 |
onLocalAudioStats | 本地音频流统计信息回调 |
onLocalVideoStats | 本地视频流统计信息回调 |
onRemoteAudioStats | 通话中远端音频流的统计信息回调 |
onRemoteVideoStats | 通话中远端视频流的统计信息回调 |
音乐文件播放及混音
方法 | 功能描述 |
---|---|
audioMixingManager | 获取伴音管理模块 |
startAudioMixing | 开始播放音乐文件 |
stopAudioMixing | 停止播放音乐文件 |
pauseAudioMixing | 暂停播放音乐文件 |
resumeAudioMixing | 恢复播放音乐文件 |
setAudioMixingPlaybackVolume | 设置音乐文件播放音量 |
setAudioMixingSendVolume | 设置音乐文件的发送音量 |
getAudioMixingPlaybackVolume | 获取音乐文件的播放音量 |
getAudioMixingSendVolume | 获取音乐文件的发送音量 |
getAudioMixingDuration | 获取音乐文件的总长度 |
setAudioMixingPosition | 设置音乐文件的播放进度 |
getAudioMixingCurrentPosition | 获取音乐文件当前播放进度 |
事件 | 事件描述 |
---|---|
setEventCallback | 设置伴音事件回调 |
clearEventCallback | 清除伴音事件回调 |
onAudioMixingStateChanged | 本地用户的音乐文件播放状态改变回调 |
onAudioMixingTimestampUpdate | 音乐文件播放进度回调 |
音效文件播放管理
方法 | 功能描述 |
---|---|
audioEffectManager | 获取音效管理模块 |
getEffectSendVolume | 获取音效文件播放音量 |
setEffectSendVolume | 设置音效文件播放音量 |
playEffect | 播放指定音效文件 |
stopEffect | 停止播放指定音效文件 |
stopAllEffects | 停止播放所有音效文件 |
pauseEffect | 暂停音效文件播放 |
pauseAllEffect | 暂停所有音效文件播放 |
resumeEffect | 恢复播放指定音效文件 |
resumeAllEffect | 恢复播放所有音效文件 |
setEffectSendVolume | 获取音效文件的发送音量 |
getEffectSendVolume | 设置音效文件的发送音量 |
事件 | 事件描述 |
---|---|
setEventCallback | 设置音效事件回调 |
clearEventCallback | 清除音效事件回调 |
onAudioEffectFinished | 音效结束回调 |
音量提示
方法 | 功能描述 |
---|---|
enableAudioVolumeIndication | 启用说话者音量提示 |
事件 | 事件描述 |
---|---|
onRemoteAudioVolumeIndication | 提示房间内谁正在说话及说话者音量的回调 |
onLocalAudioVolumeIndication | 本地用户瞬时音量的回调 |
音频播放路由
方法 | 功能描述 |
---|---|
setSpeakerphoneOn | 设置扬声器是否开启 |
isSpeakerphoneOn | 获取扬声器是否开启 |
耳返
方法 | 功能描述 |
---|---|
enableEarBack | 开启耳返功能 |
setEarBackVolume | 设置耳返音量 |
旁路推流
方法调用后,在通话中有效
方法 | 功能描述 |
---|---|
addLiveStreamTask | 添加房间推流任务 |
updateLiveStreamTask | 更新修改房间推流任务 |
removeLiveStreamTask | 删除房间推流任务 |
事件 | 事件描述 |
---|---|
onLiveStreamState | 直播推流状态回调 |
屏幕共享
方法 | 功能描述 |
---|---|
startScreenCapture | 开启屏幕共享 |
stopScreenCapture | 停止屏幕共享 |
subscribeRemoteSubStreamVideo | 订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据 |
attachToLocalSubStreamVideo | 设置本端的辅流视频回放画布 |
attachToRemoteSubStreamVideo | 设置远端的辅流视频回放画布 |
事件 | 事件描述 |
---|---|
onUserSubStreamVideoStart | 远端用户开启屏幕共享辅流通道的回调 |
onUserSubStreamVideoStop | 远端用户停止屏幕共享辅流通道的回调 |
设备管理
方法 | 功能描述 |
---|---|
deviceManager | 获取设备管理模块 |
switchCamera | 切换前置/后置摄像头 |
setCameraZoomFactor | 设置摄像头缩放比例 |
getCameraMaxZoom | 获取摄像头支持的最大视频缩放比例 |
setCameraTorchOn | 设置是否打开闪光灯 |
setCameraFocusPosition | 设置当前摄像头聚焦点位置 |
setPlayoutDeviceMute | 设置音频播放设备的状态 |
isPlayoutDeviceMute | 获取当前音频播放设备是否静音 |
setRecordDeviceMute | 设置录音设备的状态 |
isRecordDeviceMute | 获取当前音频采集设备是否静音 |
事件 | 事件描述 |
---|---|
setEventCallback | 设置设备事件回调 |
clearEventCallback | 清除设备事件回调 |
onAudioDeviceChanged | 音频播放设备发生改变 |
onAudioDeviceStateChange | 音频设备状态切换回调 |
onVideoDeviceStageChange | 视频设备状态切换回调 |
故障排查
方法 | 功能描述 |
---|---|
uploadSdkInfo | 上传SDK日志信息 |
startAudioDump | 开始记录音频 dump |
stopAudioDump | 结束记录音频 dump |
事件 | 事件描述 |
---|---|
onWarning | 发生警告回调 |
onError | 引擎发生了运行时的错误,需要用户干预 |
本篇文档内容是否对您有帮助?


此文档对你是否有帮助
×


×