NERtcEngineDelegateEx Protocol Reference
Conforms to | NERtcEngineAudioSessionObserver NERtcEngineDelegate NERtcEngineLiveStreamObserver NERtcEngineVideoFrameObserver NERtcEngineVideoSEIObserver |
---|---|
Declared in | NERtcEngineDelegate.h |
– onNERtcEngineUserVideoProfileDidUpdate:maxProfile:
远端用户视频编码配置已更新回调。
- (void)onNERtcEngineUserVideoProfileDidUpdate:(uint64_t)userID maxProfile:(NERtcVideoProfileType)maxProfile
Parameters
userID |
远端用户 ID。 |
---|---|
maxProfile |
视频编码配置,详细信息请参考 NERtcVideoProfileType。 |
Discussion
远端用户视频编码配置已更新回调。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineUser:videoMuted:
远端用户暂停或恢复发送视频流回调。
- (void)onNERtcEngineUser:(uint64_t)userID videoMuted:(BOOL)muted
Parameters
userID |
用户 ID,提示是哪个用户的视频流。 |
---|---|
muted |
是否暂停发送视频流。 |
Discussion
远端用户暂停或恢复发送视频流回调。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineUser:audioMuted:
远端用户暂停或恢复发送音频流的回调。
- (void)onNERtcEngineUser:(uint64_t)userID audioMuted:(BOOL)muted
Parameters
userID |
用户 ID,提示是哪个用户的音频流。 |
---|---|
muted |
是否暂停发送音频流。 |
Discussion
远端用户暂停或恢复发送音频流的回调。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineFirstVideoDataDidReceiveWithUserID:
已接收到远端视频首帧回调。
- (void)onNERtcEngineFirstVideoDataDidReceiveWithUserID:(uint64_t)userID
Parameters
userID |
远端用户 ID,指定是哪个用户的视频流。 |
---|
Discussion
已接收到远端视频首帧回调。
第一帧远端视频显示在视图上时,触发此调用。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineFirstAudioDataDidReceiveWithUserID:
已接收到远端音频首帧回调。
- (void)onNERtcEngineFirstAudioDataDidReceiveWithUserID:(uint64_t)userID
Parameters
userID |
远端用户 ID,指定是哪个用户的音频流。 |
---|
Discussion
已接收到远端音频首帧回调。
Declared In
NERtcEngineDelegate.h
– onEngineFirstAudioFrameDecoded:
已解码远端音频首帧的回调。
- (void)onEngineFirstAudioFrameDecoded:(uint64_t)userID
Parameters
userID |
远端用户 ID,指定是哪个用户的音频流。 |
---|
Discussion
已解码远端音频首帧的回调。
Declared In
NERtcEngineDelegate.h
– onEngineFirstVideoFrameDecoded:width:height:
已显示首帧远端视频回调。
- (void)onEngineFirstVideoFrameDecoded:(uint64_t)userID width:(uint32_t)width height:(uint32_t)height
Parameters
userID |
远端用户 ID,指定是哪个用户的视频流。 |
---|---|
width |
首帧视频宽,单位为 px。 |
height |
首帧视频高,单位为 px。 |
Discussion
已显示首帧远端视频回调。
引擎收到第一帧远端视频流并解码成功时,触发此调用。 App 可在此回调中设置该用户的视频画布。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineAudioDeviceStateChangeWithDeviceID:deviceType:deviceState:
音频设备状态已改变回调。
- (void)onNERtcEngineAudioDeviceStateChangeWithDeviceID:(NSString *)deviceID deviceType:(NERtcAudioDeviceType)deviceType deviceState:(NERtcAudioDeviceState)deviceState
Parameters
deviceID |
设备 ID。 |
---|---|
deviceType |
设备类型。详细信息请参考 NERtcAudioDeviceType。 |
deviceState |
设备状态。详细信息请参考 NERtcAudioDeviceState。 |
Discussion
音频设备状态已改变回调。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineVideoDeviceStateChangeWithDeviceID:deviceType:deviceState:
视频设备变化回调。
- (void)onNERtcEngineVideoDeviceStateChangeWithDeviceID:(NSString *)deviceID deviceType:(NERtcVideoDeviceType)deviceType deviceState:(NERtcVideoDeviceState)deviceState
Parameters
deviceID |
设备 ID。 |
---|---|
deviceType |
设备类型。详细信息请参考 NERtcAudioDeviceType。 |
deviceState |
设备状态。详细信息请参考 NERtcAudioDeviceState。 |
Discussion
视频设备变化回调。
该回调提示系统视频设备状态发生改变,比如被拔出或移除。如果设备已使用外接摄像头采集,外接摄像头被拔开后,视频会中断。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineNetworkConnectionTypeChanged:
本地网络类型已改变回调。
- (void)onNERtcEngineNetworkConnectionTypeChanged:(NERtcNetworkConnectionType)newConnectionType
Parameters
newConnectionType |
当前的本地网络类型,详细信息请参考 NERtcNetworkConnectionType。 |
---|
Discussion
本地网络类型已改变回调。
本地网络连接类型发生改变时,SDK 会触发该回调,并在回调中声明当前正在使用的网络连接类型。
Declared In
NERtcEngineDelegate.h
– onAudioMixingStateChanged:errorCode:
本地用户的音乐文件播放状态改变回调。
- (void)onAudioMixingStateChanged:(NERtcAudioMixingState)state errorCode:(NERtcAudioMixingErrorCode)errorCode
Parameters
state |
音乐文件播放状态,详见 #NERtcAudioMixingState。 |
---|---|
errorCode |
错误码,详见 #NERtcAudioMixingErrorCode。 |
Discussion
本地用户的音乐文件播放状态改变回调。
调用 startAudioMixing 播放混音音乐文件后,当音乐文件的播放状态发生改变时,会触发该回调。
- 如果播放音乐文件正常结束,state 会返回相应的状态码 kNERtcAudioMixingStateFinished,error_code 返回 kNERtcAudioMixingErrorOK。
- 如果播放出错,则返回状态码 kNERtcAudioMixingStateFailed,error_code 返回相应的出错原因。
- 如果本地音乐文件不存在、文件格式不支持、无法访问在线音乐文件 URL,error_code都会返回 kNERtcAudioMixingErrorCanNotOpen。
Declared In
NERtcEngineDelegate.h
– onAudioMixingTimestampUpdate:
本地用户的音乐文件播放进度回调。
- (void)onAudioMixingTimestampUpdate:(uint64_t)timeStampMS
Parameters
timeStampMS |
音乐文件播放进度,单位为毫秒。 |
---|
Discussion
本地用户的音乐文件播放进度回调。
调用 startAudioMixingWithOption 播放混音音乐文件后,当音乐文件的播放进度改变时,会触发该回调。
Declared In
NERtcEngineDelegate.h
– onAudioEffectFinished:
本地音效文件播放已结束回调。 *
- (void)onAudioEffectFinished:(uint32_t)effectId
Parameters
effectId |
指定音效的 ID。每个音效均有唯一的 ID。 |
---|
Discussion
本地音效文件播放已结束回调。 *
Declared In
NERtcEngineDelegate.h
– onLocalAudioVolumeIndication:
提示房间内本地用户瞬时音量的回调。
- (void)onLocalAudioVolumeIndication:(int)volume
Parameters
volume |
混音后的音量,范围为 0~100。 |
---|
Discussion
提示房间内本地用户瞬时音量的回调。
该回调默认禁用。可以通过 enableAudioVolumeIndication 方法开启。
开启后,本地用户说话,SDK 会按 enableAudioVolumeIndication 方法中设置的时间间隔触发该回调。
如果本地用户将自己静音,即调用了 muteLocalAudio,SDK 不再报告该回调。
Declared In
NERtcEngineDelegate.h
– onRemoteAudioVolumeIndication:totalVolume:
提示房间内谁正在说话及说话者瞬时音量的回调。
- (void)onRemoteAudioVolumeIndication:(nullable NSArray<NERtcAudioVolumeInfo*> *)speakers totalVolume:(int)totalVolume
Parameters
speakers |
每个说话者的用户 ID 和音量信息的数组。详细信息请参考 NERtcAudioVolumeInfo。 |
---|---|
totalVolume |
混音后的总音量,范围为 0~100。 |
Discussion
提示房间内谁正在说话及说话者瞬时音量的回调。
该回调默认为关闭状态。可以通过 enableAudioVolumeIndication 方法开启。开启后,无论房间内是否有人说话,SDK 都会按 enableAudioVolumeIndication 方法中设置的时间间隔触发该回调。
在返回的数组中:
- 如果有 uid 出现在上次返回的数组中,但不在本次返回的数组中,则默认该 uid 对应的远端用户没有说话。
- 如果 volume 为 0,表示该用户没有说话。
- 如果数组为空,则表示此时远端没有人说话。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineHardwareResourceReleased:
硬件资源已释放回调。
- (void)onNERtcEngineHardwareResourceReleased:(NERtcError)result
Parameters
result |
释放结果。详细信息请参考 NERtcError。 |
---|
Discussion
硬件资源已释放回调。
如果回调结果成功,表示 SDK 已经完全释放了硬件资源。
您可以在收到回调成功后重新配置或者使用硬件资源,例如 AVAudioSession 等配置。
Declared In
NERtcEngineDelegate.h
– onNERtcCameraFocusChanged:
摄像头对焦区域已改变回调。
- (void)onNERtcCameraFocusChanged:(CGPoint)focusPoint
Parameters
focusPoint |
新的对焦区域位置。 |
---|
Discussion
摄像头对焦区域已改变回调。
该回调表示相机的对焦区域发生了改变。
该回调是由本地用户调用 setCameraFocusPosition 方法改变对焦位置触发的。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcCameraExposureChanged:
摄像头曝光区域已改变回调。
- (void)onNERtcCameraExposureChanged:(CGPoint)exposurePoint
Parameters
exposurePoint |
新的曝光区域位置。 |
---|
Discussion
摄像头曝光区域已改变回调。
该回调是由本地用户调用 setCameraExposurePosition方 法改变曝光位置触发的。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
NERtcEngineDelegate.h
– onNERtcEngineAudioHasHowling
检测到啸叫回调。
- (void)onNERtcEngineAudioHasHowling
Discussion
检测到啸叫回调。
当声源与扩音设备之间因距离过近时,可能会产生啸叫。NERTC SDK 支持啸叫检测,当检测到有啸叫信号产生的时候,自动触发该回调直至啸叫停止。App 应用层可以在收到啸叫回调时,提示用户静音麦克风,或直接静音麦克风。
Note: 啸叫检测功能一般用于语音聊天室或在线会议等纯人声环境,不推荐在包含背景音乐的娱乐场景中使用。
Declared In
NERtcEngineDelegate.h