agora::rtc::ILocalUserObserver类 参考

  • C++

更新时间不可用

详细描述

ILocalUserObserver 类。

成员枚举类型说明

USER_MEDIA_INFO

用户媒体信息。

枚举值

USER_MEDIA_INFO_MUTE_AUDIO

0: 用户已经停止发布音频流。

USER_MEDIA_INFO_MUTE_VIDEO

1: 用户已经停止发布视频流。

USER_MEDIA_INFO_ENABLE_VIDEO

4: 用户已开启视频功能。
表格内容超出当前宽度,可横向滚动查看更多列。

REMOTE_USER_STATE

远端用户状态信息。

枚举值

PEER_STATE_MUTE_AUDIO

1:远端用户已经停止发布音频。

PEER_STATE_MUTE_VIDEO

2:远端用户已经停止发布视频。

PEER_STATE_ENABLE_VIDEO

3:远端用户已经开启视频。

PEER_STATE_ENABLE_LOCAL_VIDEO

4:远端用户已经开启视频采集。
表格内容超出当前宽度,可横向滚动查看更多列。

构造及析构函数说明

~ILocalUserObserver()

inlinevirtual
virtual agora::rtc::ILocalUserObserver::~ILocalUserObserver()

成员函数说明

onAudioTrackPublishSuccess()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onAudioTrackPublishSuccess(agora_refptr< ILocalAudioTrack > audioTrack)

在第一个本地音频包发送时触发,表明本地音频轨道已成功发布。

参数
参数名描述
audioTrack
表格内容超出当前宽度,可横向滚动查看更多列。

onLocalAudioTrackStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onLocalAudioTrackStateChanged(agora_refptr< rtc::ILocalAudioTrack > audioTrack, LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR errorCode)

在本地音频轨道状态变化时触发。

参数
参数名描述
audioTrack
state

音频轨道的状态:LOCAL_AUDIO_STREAM_STATE。

errorCode

错误信息: LOCAL_AUDIO_STREAM_ERROR。

表格内容超出当前宽度,可横向滚动查看更多列。

onLocalAudioTrackStatistics()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onLocalAudioTrackStatistics(const LocalAudioStats & stats)

报告本地音频轨道状态。

参数
参数名描述
stats

本地音频轨道状态:LocalAudioStats。

表格内容超出当前宽度,可横向滚动查看更多列。

onRemoteAudioTrackStatistics()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onRemoteAudioTrackStatistics(agora_refptr< rtc::IRemoteAudioTrack > audioTrack, const RemoteAudioTrackStats & stats)

报告远端音频轨道状态。

参数
参数名描述
audioTrack

远端音频轨道:IRemoteAudioTrack。

stats

远端音频轨道统计信息:RemoteAudioTrackStats。

表格内容超出当前宽度,可横向滚动查看更多列。

onUserAudioTrackSubscribed()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onUserAudioTrackSubscribed(user_id_t userId, agora_refptr< rtc::IRemoteAudioTrack > audioTrack)

成功订阅远端用户发送的音频流时触发。

参数
参数名描述
userId

发送音频帧的远端用户 ID。

audioTrack

远端音频轨道:IRemoteAudioTrack。

表格内容超出当前宽度,可横向滚动查看更多列。

onUserAudioTrackStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onUserAudioTrackStateChanged(user_id_t userId, agora_refptr< rtc::IRemoteAudioTrack > audioTrack, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)

在远端音频轨道状态变化时触发。

参数
参数名描述
userId

远端用户 ID。

audioTrack

远端音频轨道:IRemoteAudioTrack。

state

音频轨道的当前状态:REMOTE_AUDIO_STATE。

reason

状态改变原因:REMOTE_AUDIO_STATE_REASON。

elapsed

远端用户连接频道之后经过的时间(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onVideoTrackPublishSuccess()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onVideoTrackPublishSuccess(agora_refptr< ILocalVideoTrack > videoTrack)

在第一个本地视频包发送时触发,表明本地音视频轨道已成功发布。

参数
参数名描述
videoTrack

本地视频轨道: ILocalVideoTrack。

表格内容超出当前宽度,可横向滚动查看更多列。

onLocalVideoTrackStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onLocalVideoTrackStateChanged(agora_refptr< rtc::ILocalVideoTrack > videoTrack, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR errorCode)

本地视频轨道状态改变时触发。

注解

如果该回调返回错误码,声网建议你通过 setEnabled 方法关闭轨道再重新开启。

参数
参数名描述
videoTrack

本地视频轨道:ILocalVideoTrack。

state

本地视频轨道状态:LOCAL_VIDEO_STREAM_STATE。

errorCode

错误信息:LOCAL_VIDEO_STREAM_ERROR。

表格内容超出当前宽度,可横向滚动查看更多列。

onLocalVideoTrackStatistics()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onLocalVideoTrackStatistics(agora_refptr< rtc::ILocalVideoTrack > videoTrack, const LocalVideoTrackStats & stats)

报告本地视频轨道的统计信息。

参数
参数名描述
videoTrack

本地视频轨道。

stats

本地视频轨道的统计信息:LocalVideoTrackStats。

表格内容超出当前宽度,可横向滚动查看更多列。

onUserVideoTrackSubscribed()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onUserVideoTrackSubscribed(user_id_t userId, VideoTrackInfo trackInfo, agora_refptr< rtc::IRemoteVideoTrack > videoTrack)

成功订阅远端用户发送的视频流时触发。

参数
参数名描述
userId

发送视频帧的远端用户 ID。

trackInfo

视频轨道信息。

videoTrack

远端视频轨道。

表格内容超出当前宽度,可横向滚动查看更多列。

onUserVideoTrackStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onUserVideoTrackStateChanged(user_id_t userId, agora_refptr< rtc::IRemoteVideoTrack > videoTrack, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)

在远端视频轨道状态变更时触发。

参数
参数名描述
userId

远端用户 ID。

videoTrack

远端视频轨道。

state

当前视频帧状态:REMOTE_VIDEO_STATE。

reason

状态改变原因:REMOTE_VIDEO_STATE_REASON。

elapsed

远端用户连接频道之后经过的时间(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onFirstRemoteVideoFrameRendered()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onFirstRemoteVideoFrameRendered(user_id_t userId, int width, int height, int elapsed)

在第一个远端发送的视频帧渲染时触发。

参数
参数名描述
userId

远端用户 ID。

width

视频帧宽度(像素)。

height

视频帧高度(像素)。

elapsed

远端用户连接频道之后经过的时间(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onRemoteVideoTrackStatistics()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onRemoteVideoTrackStatistics(agora_refptr< rtc::IRemoteVideoTrack > videoTrack, const RemoteVideoTrackStats & stats)

报告远端视频轨道的统计信息。

参数
参数名描述
videoTrack

远端视频轨道:IRemoteVideoTrack 。

stats

远端视频轨道统计信息:RemoteVideoTrackStats 。

表格内容超出当前宽度,可横向滚动查看更多列。

onAudioSubscribeStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onAudioSubscribeStateChanged(const char * channel, user_id_t userId, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)

对远端用户音频订阅状态变更时触发。

参数
参数名描述
channel

用户所在频道的频道名。

userId

订阅的远端用户的 ID。

oldState

之前的订阅状态: STREAM_SUBSCRIBE_STATE 。

newState

新的订阅状态: STREAM_SUBSCRIBE_STATE 。

elapseSinceLastState

变更为新状态之后的时长(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onVideoSubscribeStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onVideoSubscribeStateChanged(const char * channel, user_id_t userId, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)

对远端用户视频订阅状态变更时触发。

参数
参数名描述
channel

用户所在频道的频道名。

userId

订阅的远端用户的 ID。

oldState

之前的订阅状态: STREAM_SUBSCRIBE_STATE 。

newState

新的订阅状态: STREAM_SUBSCRIBE_STATE 。

elapseSinceLastState

变更为新状态之后的时长(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onAudioPublishStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onAudioPublishStateChanged(const char * channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)

音频发布状态变更后触发。

参数
参数名描述
channel

用户所在频道的频道名。

oldState

之前的订阅状态: STREAM_SUBSCRIBE_STATE 。

newState

新的订阅状态: STREAM_SUBSCRIBE_STATE 。

elapseSinceLastState

变更为新状态之后的时长(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onVideoPublishStateChanged()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onVideoPublishStateChanged(const char * channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)

视频发布状态变更后触发。

参数
参数名描述
channel

用户所在频道的频道名。

oldState

之前的订阅状态: STREAM_SUBSCRIBE_STATE 。

newState

新的订阅状态: STREAM_SUBSCRIBE_STATE 。

elapseSinceLastState

变更为新状态之后的时长(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onFirstRemoteAudioFrame()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onFirstRemoteAudioFrame(user_id_t userId, int elapsed)

接收到远端用户发送的第一个音频帧时触发。

参数
参数名描述
userId

远端用户的 ID。

elapsed

远端用户连接频道之后经过的时间(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onFirstRemoteAudioDecoded()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onFirstRemoteAudioDecoded(user_id_t userId, int elapsed)

在 SDK 解码第一个收到的远端音频帧时触发。

参数
参数名描述
userId

发送音频帧的用户 user ID。

elapsed

远端用户连接频道之后经过的时间(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onFirstRemoteVideoDecoded()

purevirtual
virtual void agora::rtc::ILocalUserObserver::onFirstRemoteVideoDecoded(user_id_t userId, int width, int height, int elapsed)

在 SDK 解码第一个视频帧时触发。

参数
参数名描述
userId

发送视频帧的用户 user ID。

width

视频帧的宽度(像素)。

height

视频帧的高度(像素)。

elapsed

远端用户连接频道之后经过的时间(毫秒)。

表格内容超出当前宽度,可横向滚动查看更多列。

onUserInfoUpdated()

inlinevirtual
virtual void agora::rtc::ILocalUserObserver::onUserInfoUpdated(user_id_t userId, USER_MEDIA_INFO msg, bool val)

用户媒体信息更新时触发。

参数
参数名描述
userId

用户 ID。

msg

用户媒体信息。详见 USER_MEDIA_INFO 。

val

用户是否停止发流。

表格内容超出当前宽度,可横向滚动查看更多列。

onIntraRequestReceived()

inlinevirtual
virtual void agora::rtc::ILocalUserObserver::onIntraRequestReceived()

本地用户收到来自远端用户的关键帧请求时触发。

该回调提醒本地用户编码关键帧。

onStreamMessage()

inlinevirtual
virtual void agora::rtc::ILocalUserObserver::onStreamMessage(user_id_t userId, int streamId, const char * data, size_t length)

接收到数据流消息的回调。

该回调表示本地用户收到了远端用户调用 sendStreamMessage 方法发送的流消息。

参数
参数名描述
userId

发送消息的用户 ID。

streamId

接收到的消息的 Stream ID。

data

接收到的数据。

length

数据长度,单位为字节。

表格内容超出当前宽度,可横向滚动查看更多列。

onUserStateChanged()

inlinevirtual
virtual void agora::rtc::ILocalUserObserver::onUserStateChanged(user_id_t userId, uint32_t state)

远端用户状态更新时触发。

参数
参数名描述
userId

远端用户 ID。

state

远端用户状态: REMOTE_USER_STATE 。

表格内容超出当前宽度,可横向滚动查看更多列。

这个页面有帮助吗?