NERTC Android SDK

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

频道管理

方法 功能描述
getInstance 获取NERtc实例
init 创建NERtc实例
release 销毁NERtc实例,释放资源
setChannelProfile 设置频道场景,必须在init 之前调用有效
joinChannel 加入频道
leaveChannel 离开频道
setParameters 复杂参数设置接口

频道事件

事件 事件描述
onReJoinChannel 重新加入频道回调
onJoinChannel 加入频道回调
onLeaveChannel 退出频道回调
onUserJoined 远端用户加入当前频道回调
onUserLeave 远端用户离开当前频道回调
onConnectionTypeChanged 网络连接状态变化回调
onDisconnect 从频道断开的回调

音频管理

方法 功能描述
setAudioProfile 设置音频编码配置
adjustRecordingSignalVolume 调节录音音量
adjustPlaybackSignalVolume 调节播放音量
enableLocalAudio 开关本地音频采集
muteLocalAudioStream 开关本地音频发送
subscribeRemoteAudioStream 订阅/取消订阅指定音频流。
subscribeAllRemoteAudioStreams 订阅/取消订阅所有远端音频流

视频管理

方法 功能描述
enableLocalVideo 开关本地视频
setLocalVideoConfig 设置视频发送配置
setupLocalVideoCanvas 设置本地用户视图
setupRemoteVideoCanvas 设置远端用户视图
startVideoPreview 开启视频预览
stopVideoPreview 停止视频预览
muteLocalVideoStream 开关本地视频发送
subscribeRemoteVideoStream 订阅 / 取消订阅指定远端用户的视频流。
setScalingType 设置显示模式
postOnGLThread 将操作设置到具有GLContext的线程中,如销毁第三方滤镜资源

本地媒体事件

事件 事件描述
onFirstAudioFrameDecoded 已解码远端音频首帧的回调
onFirstVideoFrameDecoded 已解码远端视频首帧的回调
onFirstVideoDataReceived 远端视频首帧回调
onFirstAudioDataReceived 远端音频首帧回调

远端媒体事件

事件 事件描述
onUserVideoProfileUpdate 远端用户更改视频分辨率类型的回调
onUserVideoMute 远端用户关闭视频发送的回调
onUserAudioMute 远端用户关闭音频发送的回调
onUserAudioStart 远端用户开启音频的回调
onUserAudioStop 远端用户关闭音频的回调
onUserVideoStart 远端用户开启视频的回调
onUserVideoStop 远端用户关闭视频的回调

数据统计事件

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

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

音乐文件播放及混音

方法 功能描述
startAudioMixing 开始播放音乐文件
stopAudioMixing 停止播放音乐文件
pauseAudioMixing 暂停播放音乐文件
resumeAudioMixing 恢复播放音乐文件
setAudioMixingPlaybackVolume 设置音乐文件播放音量
setAudioMixingSendVolume 设置音乐文件的发送音量
getAudioMixingPlaybackVolume 获取音乐文件的播放音量
getAudioMixingSendVolume 获取音乐文件的发送音量
getAudioMixingDuration 获取音乐文件的总长度
setAudioMixingPosition 设置音乐文件的播放进度
getAudioMixingCurrentPosition 获取音乐文件当前播放进度
事件 事件描述
onAudioMixingStateChanged 本地用户的音乐文件播放状态改变回调
onAudioMixingTimestampUpdate 音乐文件播放进度回调

音效文件播放管理

方法 功能描述
getEffectPlaybackVolume 获取音效文件播放音量
setEffectPlaybackVolume 设置音效文件播放音量
playEffect 播放指定音效文件
stopEffect 停止播放指定音效文件
stopAllEffects 停止播放所有音效文件
pauseEffect 暂停音效文件播放
pauseAllEffects 暂停所有音效文件播放
resumeEffect 恢复播放指定音效文件
resumeAllEffects 恢复播放所有音效文件
getEffectSendVolume 获取音效文件的发送音量
setEffectSendVolume 设置音效文件的发送音量
事件 事件描述
onAudioEffectFinished 音效结束回调

音量提示

方法 功能描述
enableAudioVolumeIndication 启用说话者音量提示
事件 事件描述
onRemoteAudioVolumeIndication 提示频道内谁正在说话及说话者音量的回调
onLocalAudioVolumeIndication 本地用户瞬时音量的回调

音频播放路由

方法 功能描述
setSpeakerphoneOn 设置扬声器是否开启
isSpeakerphoneOn 获取扬声器是否开启

耳返

方法 功能描述
enableEarback 开启耳返功能
setEarbackVolume 设置耳返音量

旁路推流

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

方法 功能描述
addLiveStreamTask 添加房间推流任务
updateLiveStreamTask 更新修改房间推流任务
removeLiveStreamTask 删除房间推流任务
事件 事件描述
onLiveStreamState 直播推流状态回调

视频自采集

方法 功能描述
setExternalVideoSource 配置外部视频源
pushExternalVideoFrame 推送外部视频帧

屏幕共享

方法 功能描述
startScreenCapture 开启屏幕共享
stopScreenCapture 停止屏幕共享

原始音视频数据

方法 功能描述
setRecordingAudioFrameParameters 设置录制的声音格式
setPlaybackAudioFrameParameters 设置录制的声音格式
setAudioFrameObserver 设置音频数据帧观测器
setVideoCallback 设置视频采集数据回调,用于美颜等操作
事件 事件描述
onVideoCallback 本地视频数据采集回调
onRecordFrame 音频采集PCM回调
onPlaybackFrame 音频播放PCM回调

设备管理

方法 功能描述
checkPermission 设备权限检查,比如麦克风、摄像头权限
switchCamera 切换前置/后置摄像头
setCameraZoomFactor 设置摄像头缩放比例
getCameraCurrentZoom 获取当前缩放比例
getCameraMaxZoom 获取摄像头支持的最大视频缩放比例
setCameraFocusPosition 设置当前摄像头聚焦点位置
setCameraTorchOn 设置是否打开闪光灯
setPlayoutDeviceMute 设置音频播放设备的状态
isPlayoutDeviceMute 获取当前音频播放设备是否静音
setRecordDeviceMute 设置录音设备的状态
isRecordDeviceMute 获取当前音频采集设备是否静音
version NERtc SDK版本号
事件 事件描述
onAudioDeviceChanged 音频播放设备发生改变
onAudioDeviceStateChange 音频设备状态切换回调
onVideoDeviceStageChange 视频设备状态切换回调

故障排查

方法 功能描述
uploadSdkInfo 上传SDK日志信息
startAudioDump 开始记录音频 dump
stopAudioDump 结束记录音频 dump
事件 事件描述
onWarning 发生警告回调
onError 引擎发生了运行时的错误,需要用户干预