文档反馈
文档反馈

NERTC iOS SDK

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

获取 iOS 端全量 API 接口信息,请查看客户端 API 文档首页(iOS)

频道管理

方法 功能描述
setupEngineWithContext 初始化设置 NERtcEngine
setChannelProfile 设置频道场景
setClientRole 设置用户角色
joinChannelWithToken 加入频道
leaveChannel 离开频道
connectionState NERtcEngine 的连接状态
setParameters 复杂参数设置接口

频道事件

事件 事件描述
onNERtcEngineDidClientRoleChanged 用户角色已切换回调
onNERtcEngineRejoinChannel 重新加入频道回调
onNERtcEngineDidLeaveChannelWithResult 离开频道回调
onNERtcEngineUserDidJoinWithUserID 远端用户加入当前频道回调
onNERtcEngineUserDidLeaveWithUserID 远端用户离开当前频道回调
onNERtcEngineNetworkConnectionTypeChanged 网络连接状态变化回调
onNERtcEngineConnectionStateChangeWithState 网络连接状态已改变回调。
onNERtcEngineDidDisconnectWithReason 从频道断开的回调

音频管理

方法 功能描述
setAudioProfile 设置音频编码配置
adjustRecordingSignalVolume 调节录音音量
adjustPlaybackSignalVolume 调节播放音量
enableLocalAudio 开关本地音频采集
muteLocalAudio 开关本地音频发送
subscribeRemoteAudio 订阅/取消订阅指定音频流。
subscribeAllRemoteAudio 订阅/取消订阅所有远端音频流
事件 事件描述
onNERtcEngineAudioHasHowling 检测到啸叫回调。

视频管理

方法 功能描述
enableLocalVideo 开关本地视频
setLocalVideoConfig 设置视频发送配置
setupLocalVideoCanvas 设置本地用户视图
setupRemoteVideoCanvas 设置远端用户视图
startPreview 开启视频预览
stopPreview 停止视频预览
muteLocalVideo 开关本地视频发送
subscribeRemoteVideo 订阅 / 取消订阅指定远端用户的视频流。
setLocalRenderScaleMode 设置本地的视频渲染缩放模式
setRemoteRenderScaleMode 设置远端的视频渲染缩放模式

视频大小流

方法 功能描述
enableDualStreamMode 设置是否开启视频大小流模式。

本地媒体事件

事件 事件描述
onEngineFirstAudioFrameDecoded 已解码远端音频首帧的回调
onEngineFirstVideoFrameDecoded 已解码远端视频首帧的回调
onNERtcEngineFirstVideoDataDidReceiveWithUserID 初次收到远端用户的视频数据回调
onNERtcEngineFirstAudioDataDidReceiveWithUserID 初次收到远端用户的音频数据回调

远端媒体事件

事件 事件描述
onNERtcEngineUserVideoProfileDidUpdate 远端用户更改视频分辨率类型的回调
onNERtcEngineUser 远端用户静音视频发送的回调
onNERtcEngineUser:audioMuted 远端用户静音音频发送的回调
onNERtcEngineUserAudioDidStart 远端用户打开音频的回调
onNERtcEngineUserAudioDidStop 远端用户关闭音频的回调
onNERtcEngineUserVideoDidStartWithUserID 远端用户打开视频的回调
onNERtcEngineUserVideoDidStop 远端用户关闭视频的回调

数据统计事件

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

事件 事件描述
onRemoteAudioStats 通话中远端音频流的统计信息回调
onRtcStats 当前通话统计回调
onNetworkQuality 通话中每个用户的网络上下行质量报告回调
onLocalAudioStat 本地音频流统计信息回调
onLocalVideoStat 本地视频流统计信息回调
onRemoteVideoStats 通话中远端视频流的统计信息回调
addEngineMediaStatsObserver 添加 media 统计信息观测器
removeEngineMediaStatsObserver 删除 media 统计信息观测器
cleanupEngineMediaStatsObserver 清空 media 统计信息观测器

音乐文件播放及混音

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

音效文件播放管理

方法 功能描述
getEffectPlaybackVolumeWithId 获取音效文件播放音量
setEffectPlaybackVolumeWithId 设置音效文件播放音量
playEffectWitdId 播放指定音效文件
stopEffectWitdId 停止播放指定音效文件
stopAllEffects 停止播放所有音效文件
pauseEffectWitdId 暂停音效文件播放
pauseAllEffects 暂停所有音效文件播放
resumeEffectWitdId 恢复播放指定音效文件
resumeAllEffects 恢复播放所有音效文件
getEffectSendVolumeWithId 获取音效文件的发送音量
setEffectSendVolumeWithId 设置音效文件的发送音量

变声与混响

API API 说明
setLocalVoiceEqualizationPreset 设置 SDK 预设的美声效果。
setLocalVoiceEqualizations 设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。
setLocalVoiceReverbPreset 设置 SDK 预设的混响效果。
setLocalVoiceChangerPreset 设置 SDK 预设的人声的变声音效。

媒体增强信息

API API 说明
sendSEIMsg 通过主流通道发送媒体补充增强信息。
sendSEIMsg 发送媒体补充增强信息。

通过本接口可指定发送 SEI 时使用主流或辅流通道。

NERtcEngineVideoSEIObserver 注册 SEI 观测者。注册观测器并拉流成功后,当远端流发送SEI,本端会收到onNERtcEngineRecvSEIMsg回调。
onNERtcEngineRecvSEIMsg 收到远端流的 SEI 内容回调。

音量提示

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

音频播放路由

方法 功能描述
setLoudspeakerMode 启用/关闭扬声器播放
getLoudspeakerMode 查询扬声器启用状态

耳返

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

旁路推流

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

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

自定义音频采集与渲染

方法 功能描述
setExternalAudioSource 启用外部自定义音频数据输入功能,并设置采集参数。
pushExternalAudioFrame 将外部音频数据帧推送给内部引擎
setExternalAudioRender 设置外部音频渲染
pullExternalAudioFrame 拉取外部音频数据

自定义视频采集

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

屏幕共享

方法 功能描述
setupLocalSubStreamVideoCanvas 设置本端的辅流视频回放画布
setupRemoteSubStreamVideoCanvas 设置远端的辅流视频回放画布
startScreenCapture 开启屏幕共享,屏幕共享内容以辅流形式发送
stopScreenCapture 关闭辅流形式的屏幕共享
setLocalRenderSubStreamScaleMode 设置本端的辅流渲染缩放模式
setRemoteRenderSubStreamVideoScaleMode 设置远端的屏幕共享辅流视频渲染缩放模式
subscribeRemoteSubStreamVideo 订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据
事件 事件描述
onNERtcEngineUserSubStreamDidStartWithUserID 远端用户开启屏幕共享辅流通道的回调
onNERtcEngineUserSubStreamDidStop 远端用户停止屏幕共享辅流通道的回调

原始音频数据

方法 功能描述
setRecordingAudioFrameParameters 设置录制的声音格式
setPlaybackAudioFrameParameters 设置播放的声音格式
setAudioFrameObserver 设置音频数据帧观测器
setMixedAudioFrameParameters 设置采集和播放后的混合后的采样率。需要在加入房间之前调用该接口
事件 事件描述
onNERtcEngineAudioFrameDidRecord 音频采集帧回调
onNERtcEngineAudioFrameWillPlayback 音频播放帧回调
onNERtcEngineMixedAudioFrame 音频采集与播放混合后数据帧回调
onNERtcEnginePlaybackAudioFrameBeforeMixingWithUserID 某一远端用户的原始音频帧回调

原始视频数据

事件 事件描述
onNERtcEngineVideoFrameCaptured 本地视频数据采集回调

设备管理

方法 功能描述
switchCamera 切换前置/后置摄像头
isCameraTorchSupported 检测设备是否支持闪光灯常开
setCameraZoomFactor 设置摄像头缩放比例
setCameraFocusPosition 设置当前摄像头聚焦点位置
setCameraTorchOn 设置是否打开闪光灯
isCameraTorchOn 查询当前摄像头是否打开手电筒
maxCameraZoomScale 当前摄像头支持的最大缩放比例
isCameraZoomSupported 检测设备是否支持摄像头缩放功能
isCameraFocusSupported 检测设备是否支持手动对焦功能
isCameraExposurePositionSupported 检测设备是否支持手动曝光功能
setCameraExposurePosition 设置手动曝光位置
setPlayoutDeviceMute 设置音频播放设备的状态
getPlayoutDeviceMute 获取音频播放设备的状态
setRecordDeviceMute 设置录音设备的状态
getRecordDeviceMute 获取录音设备的状态
事件 事件描述
onNERtcEngineAudioDeviceStateChangeWithDeviceID 音频设备状态切换回调
onNERtcEngineVideoDeviceStateChangeWithDeviceID 视频设备状态切换回调
onNERtcEngineHardwareResourceReleased 硬件资源已经释放的回调
onNERtcCameraFocusChanged 摄像头对焦区域已改变回调
onNERtcCameraExposureChanged 摄像头曝光区域已改变回调

故障排查

方法 功能描述
uploadSdkInfo 上传SDK日志信息
startAudioDump 开始记录音频 dump
stopAudioDump 结束记录音频 dump
事件 事件描述
onNERtcEngineDidError engine发生了运行时的错误,需要用户干预
×

反馈成功

非常感谢您的反馈,我们会继续努力做得更好。