Flutter API 参考

更新时间: 2024/03/11 13:26:14

NERTC SDK 提供完善的音视频通话开发框架,提供基于网络的视频通话和语音通话功能,还提供多人视频和音频会议功能,支持通话中音视频设备控制和实时音视频模式切换,支持视频采集数据回调以实现美颜等自定义功能。

房间管理

方法 功能描述 起始版本
create 创建 NERTC 实例。 V3.9.0
release 销毁 NERTC 实例,释放资源。 V3.9.0
setChannelProfile 设置房间场景。如果需要设置房间场景,必须在调用 create 之后、调用 joinChannel 之前调用此接口。 V3.9.0
setClientRole 设置用户角色。 V3.9.0
joinChannel 加入房间。 V3.9.0
leaveChannel 离开房间。 V3.9.0
getConnectionState 主动获取网络连接状态。 V3.9.0
switchChannel 快速切换音视频房间。 V4.6.52
setParameters 设置音视频通话的相关参数。 此接口提供技术预览或特别定制功能。 V4.6.52
getConnectionState 获取连接状态。 V4.6.52
updatePermissionKey 更新权限密钥。 V4.6.52

房间事件

方法 功能描述 起始版本
onJoinChannel 加入房间回调。 V3.9.0
onLeaveChannel 退出房间回调。 V3.9.0
onUserJoined 远端用户加入当前房间回调。 V3.9.0
onUserLeave 远端用户离开当前房间回调。 V3.9.0
onReJoinChannel 重新加入房间回调。 V3.9.0
onClientRoleChange 用户角色已切换回调。 V3.9.0
onConnectionStateChanged 网络连接状态已改变回调。 V3.9.0
onConnectionTypeChanged 本地网络类型已改变回调。 V3.9.0
onDisconnect 从房间断开的回调。 V3.9.0
onReconnectingStart 重连开始回调。 V3.9.0

音频管理

方法 功能描述 起始版本
setAudioProfile 设置音频编码配置 V3.9.0
adjustRecordingSignalVolume 调节录音音量 V3.9.0
adjustPlaybackSignalVolume 调节播放音量 V3.9.0
adjustUserPlaybackSignalVolume 调节本地播放的指定远端用户的信号音量。 V4.6.52
enableLocalAudio 开关本地音频采集 V3.9.0
muteLocalAudioStream 开关本地音频发送 V3.9.0
subscribeRemoteAudio 订阅/取消订阅指定音频流 V3.9.0
subscribeAllRemoteAudio 订阅/取消订阅所有远端音频流 V3.9.0
setRemoteHighPriorityAudioStream 设置远端用户音频流的高优先级 V4.6.52
enableLoopbackRecording 开启或关闭音频共享 V4.6.52
adjustLoopBackRecordingSignalVolume 调整共享音频音量 V4.6.52
enableLocalSubStreamAudio 开启或关闭音频辅流 V4.6.52
subscribeRemoteSubStreamAudio 取消或恢复订阅指定远端用户的音频主流 V4.6.52
muteLocalSubStreamAudio 静音或解除静音本地上行的音频辅流 V4.6.52
setAudioSubscribeOnlyBy 设置自己的音频只能被房间内指定的人订阅 V4.6.52
enableMediaPub 开启或关闭本地媒体流(主流)的发送 V4.6.52

事件 事件描述 起始版本
onAudioHasHowling 检测到啸叫回调 V3.9.0

视频管理

方法 功能描述 起始版本
enableLocalVideo 开关本地视频 V3.9.0
setLocalVideoConfig 设置视频发送配置 V3.9.0
startVideoPreview 开启视频预览 V3.9.0
stopVideoPreview 停止视频预览 V3.9.0
muteLocalVideoStream 开关本地视频发送 V3.9.0
subscribeRemoteVideo 订阅 / 取消订阅指定远端用户的视频流 V3.9.0
attachToLocalVideo 关联本地用户视频视图 V3.9.0
attachToRemoteVideo 关联远端用户视频视图 V3.9.0
setCameraCaptureConfig 设置本地摄像头的采集偏好等配置 V4.6.52
enableSuperResolution 启用或停止 AI 超分 V4.6.52
attachToRemoteSubStreamVideo 添加为远端用户辅流视频画布 V4.6.52
attachToLocalSubStreamVideo 添加为本地用户辅流视频画布 V4.6.52
enableVirtualBackground 开启/关闭虚拟背景 V4.6.52
enableVideoCorrection 是否启用视频图像畸变矫正 V4.6.52
setVideoCorrectionConfig 设置视频图像矫正参数 V4.6.52
setMirror 设置画面是否镜像 V4.6.52
setExternalVideoSource 开启外部视频源数据输入 V5.4.7
pushExternalVideoFrame 推送外部视频数据帧 V5.4.7

本地媒体事件

事件 事件描述 起始版本
onFirstAudioFrameDecoded 已解码远端音频首帧的回调 V3.9.0
onFirstVideoFrameDecoded 已解码远端视频首帧的回调 V3.9.0
onFirstAudioDataReceived 远端音频首帧回调 V3.9.0
onFirstVideoDataReceived 远端视频首帧回调 V3.9.0
onMediaRightChange 服务端禁言音视频权限变化回调 V4.6.52
onVirtualBackgroundSourceEnabled 通知虚拟背景是否成功开启的回调 V4.6.52

远端媒体事件

事件 事件描述 起始版本
onUserVideoProfileUpdate 远端用户更改视频分辨率类型的回调 V3.9.0
onUserVideoMute 远端用户关闭视频发送的回调 V3.9.0
onUserAudioMute 远端用户关闭音频发送的回调 V3.9.0
onUserAudioStart 远端用户开启音频的回调 V3.9.0
onUserAudioStop 远端用户关闭音频的回调 V3.9.0
onUserVideoStart 远端用户开启视频的回调 V3.9.0
onUserVideoStop 远端用户关闭视频的回调 V3.9.0
onUserSubStreamAudioMute 远端用户暂停或恢复发送音频辅流的回调 V4.6.52
onUserSubStreamAudioStart 远端用户开启音频辅流回调 V4.6.52
onUserSubStreamAudioStop 远端用户停用音频辅流回调 V4.6.52

数据统计事件

SDK 定期向 App 报告以下统计信息,每 2 秒触发一次。

事件 事件描述 起始版本
setStatsEventCallback 设置统计信息回调 V3.9.0
clearStatsEventCallback 清除统计信息回调 V3.9.0
onRtcStats 当前通话统计回调,每2秒触发一次 V3.9.0
onNetworkQuality 通话中每个用户的网络上下行质量报告回调 V3.9.0
onLocalAudioStats 本地音频流统计信息回调 V3.9.0
onLocalVideoStats 本地视频流统计信息回调 V3.9.0
onRemoteAudioStats 通话中远端音频流的统计信息回调 V3.9.0
onRemoteVideoStats 通话中远端视频流的统计信息回调 V3.9.0

视频大小流

方法 功能描述 起始版本
enableDualStreamMode 设置是否开启视频大小流模式 V3.9.0
setLocalPublishFallbackOption 设置弱网条件下发布的音视频流回退选项 V4.6.52
setRemoteSubscribeFallbackOption 设置弱网条件下订阅的音视频流回退选项。 V4.6.52

事件 事件描述 起始版本
onLocalPublishFallbackToAudioOnly 本地发布流已回退为音频流、或已恢复为音视频流回调。 V4.6.52
onRemoteSubscribeFallbackToAudioOnly 订阅的远端流已回退为音频流、或已恢复为音视频流回调。 V4.6.52

通话前网络测试

方法 功能 起始版本
startLastmileProbeTest 开始通话前网络质量探测。 V4.6.52
stopLastmileProbeTest 停止通话前网络质量探测。 V4.6.52

事件 描述 起始版本
onLastmileQuality 报告本地用户的网络质量。 V4.6.52
onLastmileProbeResult 报告通话前网络上下行 last mile 质量。 V4.6.52

音乐文件播放管理

方法 功能描述 起始版本
audioMixingManager 获取伴音管理模块 V3.9.0
startAudioMixing 开始播放音乐文件 V3.9.0
stopAudioMixing 停止播放音乐文件 V3.9.0
pauseAudioMixing 暂停播放音乐文件 V3.9.0
resumeAudioMixing 恢复播放音乐文件 V3.9.0
setAudioMixingPlaybackVolume 设置音乐文件播放音量 V3.9.0
setAudioMixingSendVolume 设置音乐文件的发送音量 V3.9.0
getAudioMixingPlaybackVolume 获取音乐文件的播放音量 V3.9.0
getAudioMixingSendVolume 获取音乐文件的发送音量 V3.9.0
getAudioMixingDuration 获取音乐文件的总长度 V3.9.0
setAudioMixingPosition 设置音乐文件的播放进度 V3.9.0
getAudioMixingCurrentPosition 获取音乐文件当前播放进度 V3.9.0

事件 事件描述 起始版本
setEventCallback 设置伴音事件回调 V3.9.0
clearEventCallback 清除伴音事件回调 V3.9.0
onAudioMixingStateChanged 本地用户的音乐文件播放状态改变回调 V3.9.0
onAudioMixingTimestampUpdate 音乐文件播放进度回调 V3.9.0

音效文件播放管理

方法 功能描述 起始版本
audioEffectManager 获取音效管理模块 V3.9.0
getEffectSendVolume 获取音效文件播放音量 V3.9.0
setEffectSendVolume 设置音效文件播放音量 V3.9.0
playEffect 播放指定音效文件 V3.9.0
stopEffect 停止播放指定音效文件 V3.9.0
stopAllEffects 停止播放所有音效文件 V3.9.0
pauseEffect 暂停音效文件播放 V3.9.0
pauseAllEffect 暂停所有音效文件播放 V3.9.0
resumeEffect 恢复播放指定音效文件 V3.9.0
resumeAllEffect 恢复播放所有音效文件 V3.9.0
setEffectSendVolume 设置音效文件的发送音量 V3.9.0
getEffectSendVolume 获取音效文件的发送音量 V3.9.0

事件 事件描述 起始版本
setEventCallback 设置音效事件回调 V3.9.0
clearEventCallback 清除音效事件回调 V3.9.0
onAudioEffectFinished 音效结束回调 V3.9.0

变声与混响

方法 功能 起始版本
setAudioEffectPreset 设置 SDK 预设的人声的变声音效。 V4.6.52
setVoiceBeautifierPreset 设置 SDK 预设的美声效果。 V4.6.52
setLocalVoiceEqualization 设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。 V4.6.52
setLocalVoicePitch 设置本地语音音调。 V4.6.52
setLocalVoiceReverbParam 开启本地语音混响效果。 V4.6.52

音量提示

方法 功能描述 起始版本
enableAudioVolumeIndication 启用说话者音量提示 V3.9.0

事件 事件描述 起始版本
onRemoteAudioVolumeIndication 提示房间内谁正在说话及说话者音量的回调 V3.9.0
onLocalAudioVolumeIndication 本地用户瞬时音量的回调 V3.9.0

音频播放路由

方法 功能描述 起始版本
setSpeakerphoneOn 设置扬声器是否开启 V3.9.0
isSpeakerphoneOn 获取扬声器是否开启 V3.9.0

耳返

方法 功能描述 起始版本
enableEarBack 开启耳返功能 V3.9.0
setEarBackVolume 设置耳返音量 V3.9.0

媒体增强信息SEI

方法 功能 起始版本
sendSEIMsg 通过主流通道发送媒体补充增强信息。 V4.6.52

事件 描述 起始版本
onRecvSEIMsg 收到远端流的 SEI 内容回调。 V4.6.52

旁路推流

方法调用后,在通话中有效

方法 功能描述 起始版本
addLiveStreamTask 添加房间推流任务 V3.9.0
updateLiveStreamTask 更新修改房间推流任务 V3.9.0
removeLiveStreamTask 删除房间推流任务 V3.9.0

事件 事件描述 起始版本
onLiveStreamState 直播推流状态回调 V3.9.0

跨房间媒体流转发

方法 功能 起始版本
startChannelMediaRelay 开始跨房间媒体流转发。 V4.6.52
updateChannelMediaRelay 更新媒体流转发的目标房间。 V4.6.52
stopChannelMediaRelay 停止跨房间媒体流转发。 V4.6.52

事件 描述 起始版本
onMediaRelayStatesChange 跨房间媒体流转发状态发生改变回调。 V4.6.52
onMediaRelayReceiveEvent 媒体流相关转发事件回调。 V4.6.52

屏幕共享

方法 功能描述 起始版本
startScreenCapture 开启屏幕共享 V3.9.0
stopScreenCapture 停止屏幕共享 V3.9.0
subscribeRemoteSubStreamVideo 订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据 V3.9.0
attachToLocalSubStreamVideo 设置本端的辅流视频回放画布 V3.9.0
attachToRemoteSubStreamVideo 设置远端的辅流视频回放画布 V3.9.0

事件 事件描述 起始版本
onUserSubStreamVideoStart 远端用户开启屏幕共享辅流通道的回调 V3.9.0
onUserSubStreamVideoStop 远端用户停止屏幕共享辅流通道的回调 V3.9.0

美颜

方法 功能 起始版本
startBeauty 开启美颜功能模块 V4.6.52
stopBeauty 结束美颜功能模块 V4.6.52
enableBeauty 暂停或恢复美颜效果 V4.6.52
setBeautyEffect 设置美颜效果 V4.6.52
addBeautyFilter 添加滤镜效果 V4.6.52
removeBeautyFilter 移除滤镜 V4.6.52
setBeautyFilterLevel 设置滤镜强度 V4.6.52

自定义音视频采集与渲染

方法 功能 起始版本
setStreamAlignmentProperty 对齐本地系统与服务端的时间 V4.6.52
getNtpTimeOffset 获取本地系统时间与服务端时间差值 V4.6.52
setExternalVideoSource 开启外部视频源数据输入 V5.4.7
pushExternalVideoFrame 推送外部视频数据帧 V5.4.7

截图

方法 功能 起始版本
takeLocalSnapshot 本地视频画面截图。 V4.6.52
takeRemoteSnapshot 远端视频画面截图。 V4.6.52

事件 事件描述 起始版本
onTakeSnapshotResult 截图结果回调 V4.6.52

水印

方法 功能 起始版本
setLocalVideoWatermarkConfigs 添加本地视频水印 V4.6.52

事件 事件描述 起始版本
onLocalVideoWatermarkState 水印结果回调 V4.6.52

加密

方法 功能 起始版本
enableEncryption 开启或关闭媒体流加密 V4.6.52

客户端音频录制

方法 功能 起始版本
startAudioRecording 开始客户端录音。 V4.6.52
startAudioRecordingWithConfig 开始客户端录音。 V4.6.52
stopAudioRecording 停止客户端录音。 V4.6.52

事件 事件描述 起始版本
onAudioRecording 音频录制状态回调 V4.6.52

云代理

方法 功能 起始版本
setCloudProxy 开启并设置云代理服务 V4.6.52

设备管理

方法 功能描述 起始版本
deviceManager 获取设备管理模块 V3.9.0
switchCamera 切换前置/后置摄像头 V3.9.0
switchCameraWithPosition 指定前置/后置摄像头 V4.6.52
setCameraZoomFactor 设置摄像头缩放比例 V3.9.0
getCameraMaxZoom 获取摄像头支持的最大视频缩放比例 V3.9.0
setCameraTorchOn 设置是否打开闪光灯 V3.9.0
setCameraFocusPosition 设置当前摄像头聚焦点位置 V3.9.0
setPlayoutDeviceMute 设置音频播放设备的状态 V3.9.0
isPlayoutDeviceMute 获取当前音频播放设备是否静音 V3.9.0
setRecordDeviceMute 设置录音设备的状态 V3.9.0
isRecordDeviceMute 获取当前音频采集设备是否静音 V3.9.0
getCurrentCamera 查看当前摄像头配置 V4.6.52
isCameraZoomSupported 检测设备当前使用的摄像头是否支持缩放功能 V4.6.52
getCameraCurrentZoom 获取当前缩放比例 V4.6.52
isCameraTorchSupported 检测设备是否支持闪光灯常亮 V4.6.52
isCameraFocusSupported 检测设备是否支持手动对焦功能 V4.6.52
isCameraExposurePositionSupported 检测设备是否支持手动曝光功能 V4.6.52
setCameraExposurePosition 设置摄像头的手动曝光位置 V4.6.52

事件 事件描述 起始版本
setEventCallback 设置设备事件回调 V3.9.0
clearEventCallback 清除设备事件回调 V3.9.0
onAudioDeviceChanged 音频播放设备发生改变 V3.9.0
onAudioDeviceStateChange 音频设备状态切换回调 V3.9.0
onVideoDeviceStageChange 视频设备状态切换回调 V3.9.0

故障排查

方法 功能描述 起始版本
uploadSdkInfo 上传SDK日志信息 V3.9.0
startAudioDump 开始记录音频 dump V3.9.0
stopAudioDump 结束记录音频 dump V3.9.0

事件 事件描述 起始版本
onWarning 发生警告回调 V3.9.0
onError 引擎发生了运行时的错误,需要用户干预 V3.9.0
此文档是否对你有帮助?
有帮助
去反馈
  • 房间管理
  • 房间事件
  • 音频管理
  • 视频管理
  • 本地媒体事件
  • 远端媒体事件
  • 数据统计事件
  • 视频大小流
  • 通话前网络测试
  • 音乐文件播放管理
  • 音效文件播放管理
  • 变声与混响
  • 音量提示
  • 音频播放路由
  • 耳返
  • 媒体增强信息SEI
  • 旁路推流
  • 跨房间媒体流转发
  • 屏幕共享
  • 美颜
  • 自定义音视频采集与渲染
  • 截图
  • 水印
  • 加密
  • 客户端音频录制
  • 云代理
  • 设备管理
  • 故障排查