KRTCSDK::KRtcCallback类 参考abstract

Public 成员函数

virtual void onWarning (RTC_SDK_WARNING warningType, const char *content)=0
 
virtual void onError (RTC_SDK_ERROR errorType, const char *content)=0
 
virtual void onRelease (int32_t result)=0
 
virtual void onLogin (int32_t result, userId id)=0
 
virtual void onLogout (int32_t result)=0
 
virtual void onJoinRoom (int32_t result)=0
 
virtual void onLeaveRoom (int32_t result)=0
 
virtual void onIncomingCall (const char *roomId, const char *roomName)
 
virtual void onCancelCall (const char *roomId, const char *roomName)
 
virtual void onReplyCall (bool answerOrHanup, const char *roomId, int32_t result)
 
virtual void onPublishStream (STREAM_TYPE type, uint8_t mediaIndex, int32_t result)
 
virtual void onSubscribeStream (userId uid, STREAM_TYPE type, uint8_t mediaIndex, int32_t result)
 
virtual void onUpdateStreamLayer (userId id, STREAM_TYPE type, uint8_t mediaIndex, uint8_t layerIndex, int32_t result)
 
virtual void onUnpublishStream (STREAM_TYPE type, uint8_t mediaIndex, int32_t result)
 
virtual void onUnsubscribeStream (userId uid, STREAM_TYPE type, uint8_t mediaIndex, int32_t result)
 
virtual void onUnpublishStreamNotify (STREAM_TYPE type, uint8_t mediaIndex)
 
virtual void onPausePublishStream (STREAM_TYPE type, uint8_t mediaIndex, bool pauseOrResume, int32_t result)
 
virtual void onPauseSubscribeStream (userId id, STREAM_TYPE type, uint8_t mediaIndex, bool pauseOrResume, int32_t result)
 
virtual void onRequestKeyFrame (userId id, STREAM_TYPE type, uint8_t mediaIndex, int32_t result)
 
virtual void onAudioLevelIndication (AudioLevelParam *userVolumes, uint32_t speakerNumber)
 
virtual void onRemoteUserJoinRoom (userId id, const char *nickName)=0
 
virtual void onRemoteUserLeaveRoom (userId id)=0
 
virtual void onRemoteUserPublishStream (userId id, StreamParam *param)=0
 
virtual void onRemoteUserUnpublishStream (userId id, STREAM_TYPE type, uint8_t mediaIndex)=0
 
virtual void onRecommendEncodingParam (STREAM_TYPE type, uint8_t mediaIndex, uint8_t layerIndex, VideoCodecParam *param)
 
virtual void onLocalStatistics (Statistics *state)
 
virtual void onLocalVideoStatistics (STREAM_TYPE type, uint8_t mediaIndex, VideoStatistics *state)
 
virtual void onLocalAudioStatistics (AudioStatistics *state)
 
virtual void onRemoteVideoStatistics (userId id, STREAM_TYPE type, uint8_t mediaIndex, VideoStatistics *state)
 
virtual void onRemoteAudioStatistics (userId id, STREAM_TYPE type, AudioStatistics *state)
 
virtual void onRemoteVideoFrame (userId id, STREAM_TYPE type, uint8_t mediaIndex, VideoFrameData *data)
 
virtual void onRemoteVideoData (userId id, STREAM_TYPE type, uint8_t mediaIndex, EncodedVideoData *data)
 
virtual void onRemoteMixedAudioFrame (AudioFrameData *data)
 
virtual void onRemoteAudioFrame (userId id, STREAM_TYPE type, AudioFrameData *data)
 
virtual void onLocalAudioFrame (AudioFrameData *data)
 
virtual void onSnapshotVideo (userId id, STREAM_TYPE type, uint8_t mediaIndex, const TRtcRawVideoData *rgb, int32_t result)
 
virtual void onAudioControlPlayoutMute (bool playoutMute)
 
virtual void onAudioControlRecordMute (bool recordMute)
 
virtual void onRemoteAudioControlPlayoutMute (userId id, bool playoutMute)
 
virtual void onRemoteAudioControlRecordMute (userId id, bool recordMute)
 

成员函数说明

◆ onWarning()

virtual void KRTCSDK::KRtcCallback::onWarning ( RTC_SDK_WARNING  warningType,
const char *  content 
)
pure virtual

警告回调

参数
warningType信息类型
content警告信息

◆ onError()

virtual void KRTCSDK::KRtcCallback::onError ( RTC_SDK_ERROR  errorType,
const char *  content 
)
pure virtual

错误回调

参数
warningType错误类型
content错误信息

◆ onRelease()

virtual void KRTCSDK::KRtcCallback::onRelease ( int32_t  result)
pure virtual

资源释放回调

参数
resultSDK_NO_ERROR:成功

◆ onLogin()

virtual void KRTCSDK::KRtcCallback::onLogin ( int32_t  result,
userId  id 
)
pure virtual

注册回调

参数
resultSDK_NO_ERROR:成功 SDK_PARAMETER_ERROR:参数错误 SDK_LOGIN_REPEATED_REGISTRATION_ERROR:重复注册 SDK_NETWORK_ERROR:网络异常 SDK_LOGIN_TOKEN_ERROR:token校验失败
id匿名登录时返回用户id

◆ onLogout()

virtual void KRTCSDK::KRtcCallback::onLogout ( int32_t  result)
pure virtual

登出回调

参数
resultSDK_NO_ERROR:成功 SDK_NETWORK_ERROR:网络异常

◆ onJoinRoom()

virtual void KRTCSDK::KRtcCallback::onJoinRoom ( int32_t  result)
pure virtual

加入房间回调

参数
resultSDK_NO_ERROR:成功 SDK_PARAMETER_ERROR:参数错误 SDK_JOINROOM_REPEATED_JOIN_ERROR:重复加入 SDK_JOINROOM_UNREGISTERED_ERROR:未注册平台 SDK_NETWORK_ERROR:网络异常

◆ onLeaveRoom()

virtual void KRTCSDK::KRtcCallback::onLeaveRoom ( int32_t  result)
pure virtual

用户离开房间

参数
result,SDK_NO_ERROR:用户主动离开房间SDK_NETWORK_ERROR:网络异常掉线 SDK_LEAVEROOM_PLEASE_OUT_ERROR:被管理员请出房间 SDK_LEAVEROOM_ROOM_DISSOLVED_ERROR:房间被解散

◆ onIncomingCall()

virtual void KRTCSDK::KRtcCallback::onIncomingCall ( const char *  roomId,
const char *  roomName 
)
inlinevirtual

收到平台呼叫

参数
roomId,房间id
roomId,房间名称
注解
只有在未加入房间时会收到平台呼叫

◆ onCancelCall()

virtual void KRTCSDK::KRtcCallback::onCancelCall ( const char *  roomId,
const char *  roomName 
)
inlinevirtual

平台取消呼叫

参数
roomId,房间id
roomId,房间名称

◆ onReplyCall()

virtual void KRTCSDK::KRtcCallback::onReplyCall ( bool  answerOrHanup,
const char *  roomId,
int32_t  result 
)
inlinevirtual

响应平台呼叫回调

参数
answerOrHanuptrue:应答 false:挂断
roomId房间id
resultSDK_NO_ERROR:应答/挂断成功 SDK_PARAMETER_ERROR:参数错误 SDK_NETWORK_ERROR:网络异常

◆ onPublishStream()

virtual void KRTCSDK::KRtcCallback::onPublishStream ( STREAM_TYPE  type,
uint8_t  mediaIndex,
int32_t  result 
)
inlinevirtual

发布流回调

参数
type码流类型
mediaIndex码流索引
resultSDK_NO_ERROR:成功 SDK_PARAMETER_ERROR:参数错误 SDK_PUBLISHSTREAM_DEVICE_OPEN_ERROR:设备开启失败 SDK_SERVER_ERROR:服务器异常 SDK_NOT_JOIN_ROOM_ERROR:未进入房间 SDK_PUBLISHSTREAM_NO_PERMISSIONS_ERROR:无推双流权限 SDK_PUBLISHSTREAM_CREATEPEERCONNECTION_ERROR:创建通道失败

◆ onSubscribeStream()

virtual void KRTCSDK::KRtcCallback::onSubscribeStream ( userId  uid,
STREAM_TYPE  type,
uint8_t  mediaIndex,
int32_t  result 
)
inlinevirtual

订阅远端用户流回调

参数
uid用户id
type码流类型
mediaIndex码流索引
resultSDK_NO_ERROR:成功 SDK_NOT_JOIN_ROOM_ERROR:未进入房间 SDK_SERVER_ERROR:服务器异常 SDK_PARAMETER_ERROR:参数错误 SDK_SUBSCRIBESTREAM_SPEAKER_ERROR:扬声器开启失败

◆ onUpdateStreamLayer()

virtual void KRTCSDK::KRtcCallback::onUpdateStreamLayer ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
uint8_t  layerIndex,
int32_t  result 
)
inlinevirtual

设置优先层回调

参数
uid用户id
type码流类型
mediaIndex码流索引
layerIndex码流层数
resultSDK_NO_ERROR:成功 SDK_SERVER_ERROR:服务器异常 SDK_PARAMETER_ERROR:参数错误 SDK_UNKNOWN_ERROR:未知错误

◆ onUnpublishStream()

virtual void KRTCSDK::KRtcCallback::onUnpublishStream ( STREAM_TYPE  type,
uint8_t  mediaIndex,
int32_t  result 
)
inlinevirtual

取消发布流回调

参数
type码流类型
mediaIndex码流索引
resultSDK_NO_ERROR:成功 SDK_UNKNOWN_ERROR:未知错误

◆ onUnsubscribeStream()

virtual void KRTCSDK::KRtcCallback::onUnsubscribeStream ( userId  uid,
STREAM_TYPE  type,
uint8_t  mediaIndex,
int32_t  result 
)
inlinevirtual

取消订阅流回调

参数
uid用户id
type码流类型
mediaIndex码流索引
resultSDK_NO_ERROR:成功 SDK_SERVER_ERROR:服务器异常 SDK_PARAMETER_ERROR:参数错误

◆ onUnpublishStreamNotify()

virtual void KRTCSDK::KRtcCallback::onUnpublishStreamNotify ( STREAM_TYPE  type,
uint8_t  mediaIndex 
)
inlinevirtual

取消发布流通知回调

注解
sdk内部主动停止正在发布的流需通知上层
参数
type码流类型
mediaIndex码流索引,音频和辅流填0即可

◆ onPausePublishStream()

virtual void KRTCSDK::KRtcCallback::onPausePublishStream ( STREAM_TYPE  type,
uint8_t  mediaIndex,
bool  pauseOrResume,
int32_t  result 
)
inlinevirtual

暂停、恢复发布回调

注解
自定义采集或编码时不支持该功能
参数
type码流类型
mediaIndex码流索引,音频和辅流填0即可
pauseOrResumetrue:暂停 false:恢复
resultSDK_NO_ERROR:成功 SDK_PARAMETER_ERROR:参数错误

◆ onPauseSubscribeStream()

virtual void KRTCSDK::KRtcCallback::onPauseSubscribeStream ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
bool  pauseOrResume,
int32_t  result 
)
inlinevirtual

暂停、恢复订阅回调

参数
id远端用户id
type码流类型
mediaIndex码流索引,音频和辅流填0即可
pauseOrResumetrue:暂停 false:恢复
resultSDK_NO_ERROR:成功 SDK_SERVER_ERROR:服务器异常 SDK_PARAMETER_ERROR:参数错误

◆ onRequestKeyFrame()

virtual void KRTCSDK::KRtcCallback::onRequestKeyFrame ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
int32_t  result 
)
inlinevirtual

请求关键帧回调

参数
id远端用户id
type码流类型
mediaIndex码流索引,音频和辅流填0即可
resultSDK_NO_ERROR:成功 SDK_PARAMETER_ERROR:参数错误 SDK_UNKNOWN_ERROR:未知错误

◆ onAudioLevelIndication()

virtual void KRTCSDK::KRtcCallback::onAudioLevelIndication ( AudioLevelParam userVolumes,
uint32_t  speakerNumber 
)
inlinevirtual

远端音频能量回调

参数
userVolumes远端用户音频能量
speakerNumberuserVolumes数组大小

◆ onRemoteUserJoinRoom()

virtual void KRTCSDK::KRtcCallback::onRemoteUserJoinRoom ( userId  id,
const char *  nickName 
)
pure virtual

远端用户加入房间

参数
id远端用户id
nickName远端用户别名

◆ onRemoteUserLeaveRoom()

virtual void KRTCSDK::KRtcCallback::onRemoteUserLeaveRoom ( userId  id)
pure virtual

远端用户离开房间

参数
id远端用户id

◆ onRemoteUserPublishStream()

virtual void KRTCSDK::KRtcCallback::onRemoteUserPublishStream ( userId  id,
StreamParam param 
)
pure virtual

远端用户发布流

参数
id远端用户id
param流信息

◆ onRemoteUserUnpublishStream()

virtual void KRTCSDK::KRtcCallback::onRemoteUserUnpublishStream ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex 
)
pure virtual

远端用户取消发布流

参数
id远端用户id
type码流类型
mediaIndex同类型码流索引

◆ onRecommendEncodingParam()

virtual void KRTCSDK::KRtcCallback::onRecommendEncodingParam ( STREAM_TYPE  type,
uint8_t  mediaIndex,
uint8_t  layerIndex,
VideoCodecParam param 
)
inlinevirtual

设置编码参数

注解
仅在用户自定义编码时才会回调
参数
type码流类型
mediaIndex同类型码流索引
layerIndexsimulcast分辨率层
param编码参数

◆ onLocalStatistics()

virtual void KRTCSDK::KRtcCallback::onLocalStatistics ( Statistics state)
inlinevirtual

本地网络统计信息回调,进入房间后2s触发一次

参数
state网络统计信息

◆ onLocalVideoStatistics()

virtual void KRTCSDK::KRtcCallback::onLocalVideoStatistics ( STREAM_TYPE  type,
uint8_t  mediaIndex,
VideoStatistics state 
)
inlinevirtual

本地视频流统计信息回调,进入房间且发布后2s触发一次

参数
type码流类型
mediaIndex同类型码流索引
state网络统计信息

◆ onLocalAudioStatistics()

virtual void KRTCSDK::KRtcCallback::onLocalAudioStatistics ( AudioStatistics state)
inlinevirtual

本地音频流统计信息回调,进入房间且发布后2s触发一次

参数
state网络统计信息

◆ onRemoteVideoStatistics()

virtual void KRTCSDK::KRtcCallback::onRemoteVideoStatistics ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
VideoStatistics state 
)
inlinevirtual

远端视频流统计信息回调,进入房间后2s触发一次回调

参数
id远端用户id
type码流类型
mediaIndex同类型码流索引
state网络统计信息

◆ onRemoteAudioStatistics()

virtual void KRTCSDK::KRtcCallback::onRemoteAudioStatistics ( userId  id,
STREAM_TYPE  type,
AudioStatistics state 
)
inlinevirtual

远端音频流统计信息回调,进入房间后2s触发一次回调

参数
id远端用户id
type码流类型(用户音频或混音器音频)
state网络统计信息

◆ onRemoteVideoFrame()

virtual void KRTCSDK::KRtcCallback::onRemoteVideoFrame ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
VideoFrameData data 
)
inlinevirtual

远端解码后视频帧回调

参数
id远端用户id
type码流类型
mediaIndex同类型码流索引
data帧数据

◆ onRemoteVideoData()

virtual void KRTCSDK::KRtcCallback::onRemoteVideoData ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
EncodedVideoData data 
)
inlinevirtual

远端解码前视频包回调

参数
id远端用户id
type码流类型
mediaIndex同类型码流索引
data解码前数据

◆ onRemoteMixedAudioFrame()

virtual void KRTCSDK::KRtcCallback::onRemoteMixedAudioFrame ( AudioFrameData data)
inlinevirtual

混音后的音频解码数据回调

参数
data音频数据

◆ onRemoteAudioFrame()

virtual void KRTCSDK::KRtcCallback::onRemoteAudioFrame ( userId  id,
STREAM_TYPE  type,
AudioFrameData data 
)
inlinevirtual

远端解码后混音前的音频数据回调

参数
id远端用户id
type码流类型(用户音频、平台混音器音频)
data音频数据

◆ onLocalAudioFrame()

virtual void KRTCSDK::KRtcCallback::onLocalAudioFrame ( AudioFrameData data)
inlinevirtual

本地采集音频数据回调(PCM格式)

参数
data音频数据

◆ onSnapshotVideo()

virtual void KRTCSDK::KRtcCallback::onSnapshotVideo ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
const TRtcRawVideoData rgb,
int32_t  result 
)
inlinevirtual

用于接收截图事件结果的上层接口,仅在未开启自定义采集的时候有效

参数
id远端用户id
type码流类型(主流,辅流,画面合成)
mediaIndex媒体通道id
rgb转换的成的rgb格式的数据,默认为RGBA8888
resultSDK_NO_ERROR:截图成功,SDK_SNAPSHOTVIDEO_OUTTIME_ERROR:截图操作超时

◆ onAudioControlPlayoutMute()

virtual void KRTCSDK::KRtcCallback::onAudioControlPlayoutMute ( bool  playoutMute)
inlinevirtual

用于接收静音事件的回调,终端或者平台控制时都会触发

参数
playoutMutetrue为静音

◆ onAudioControlRecordMute()

virtual void KRTCSDK::KRtcCallback::onAudioControlRecordMute ( bool  recordMute)
inlinevirtual

用于接收哑音事件的回调,终端或者平台控制时都会触发

参数
recordMutetrue为哑音

◆ onRemoteAudioControlPlayoutMute()

virtual void KRTCSDK::KRtcCallback::onRemoteAudioControlPlayoutMute ( userId  id,
bool  playoutMute 
)
inlinevirtual

用于通知远端终端静音事件的回调,平台控制触发

参数
id远端E164号
playoutMutetrue为静音

◆ onRemoteAudioControlRecordMute()

virtual void KRTCSDK::KRtcCallback::onRemoteAudioControlRecordMute ( userId  id,
bool  recordMute 
)
inlinevirtual

用于通知远端终端哑音事件的回调,平台控制触发

参数
id远端E164号
recordMutetrue为哑音