ZegoLiveRoom
Public Member Functions | List of all members
ZEGO::LIVEROOM::ILivePlayerCallback Class Referenceabstract

#include <LiveRoomCallback-Player.h>

Public Member Functions

virtual void OnPlayStateUpdate (int stateCode, const char *pszStreamID)=0
 
virtual void OnPlayQualityUpdate (const char *pszStreamID, int quality, double videoFPS, double videoKBS)
 
virtual void OnPlayQualityUpdate (const char *pszStreamID, ZegoPlayQuality playQuality)
 
virtual void OnJoinLiveResponse (int result, const char *pszFromUserId, const char *pszFromUserName, int seq)
 
virtual void OnRecvEndJoinLiveCommand (const char *pszFromUserId, const char *pszFromUserName, const char *pszRoomID)
 
virtual void OnInviteJoinLiveRequest (int seq, const char *pszFromUserId, const char *pszFromUserName, const char *pszRoomID)
 
virtual void OnVideoSizeChanged (const char *pStreamID, int nWidth, int nHeight)
 
virtual void OnRemoteCameraStatusUpdate (const char *pStreamID, int nStatus, int nReason)
 
virtual void OnRemoteMicStatusUpdate (const char *pStreamID, int nStatus, int nReason)
 
virtual void OnRemoteSpeakerStatusUpdate (const char *streamID, int status, int reason)
 
virtual void OnRecvRemoteAudioFirstFrame (const char *pStreamID)
 
virtual void OnRecvRemoteVideoFirstFrame (const char *pStreamID)
 
virtual void OnRenderRemoteVideoFirstFrame (const char *pStreamID)
 
virtual void OnRenderRemoteCameraVideoFirstFrame (const char *pStreamID)
 
virtual void OnSnapshot (void *pImage, const char *pszStreamID)
 
virtual void OnVideoDecoderError (AV::ZegoVideoCodecAvc codecID, int errorCode, const char *pszStreamID)
 
virtual void OnPlayStatsUpdate (AV::ZegoPlayStats stats)
 
virtual void OnPlayVideoSuperResolutionUpdate (const char *streamID, int state, int errorCode)
 
virtual ~ILivePlayerCallback ()
 

Constructor & Destructor Documentation

◆ ~ILivePlayerCallback()

virtual ZEGO::LIVEROOM::ILivePlayerCallback::~ILivePlayerCallback ( )
inlinevirtual

Member Function Documentation

◆ OnInviteJoinLiveRequest()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnInviteJoinLiveRequest ( int  seq,
const char *  pszFromUserId,
const char *  pszFromUserName,
const char *  pszRoomID 
)
inlinevirtual

收到来自房间内主播的连麦邀请

Note
  1. 一般来说观众用户收到此通知后,主动调用开始推流与主播进行连麦。
Parameters
seq连麦邀请序列号,标识当次连麦请求
pszFromUserId来源用户 Id
pszFromUserName来源用户名
pszRoomID房间 ID

◆ OnJoinLiveResponse()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnJoinLiveResponse ( int  result,
const char *  pszFromUserId,
const char *  pszFromUserName,
int  seq 
)
inlinevirtual

收到请求连麦的响应结果

Note
  1. 一般来说收到主播同意连麦后(result 为 0),主动调用开始推流与主播进行连麦。
Parameters
result结果, 0 为同意连麦
pszFromUserId来源用户 Id
pszFromUserName来源用户名
seq请求 seq

◆ OnPlayQualityUpdate() [1/2]

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnPlayQualityUpdate ( const char *  pszStreamID,
int  quality,
double  videoFPS,
double  videoKBS 
)
inlinevirtual

播放流质量更新通知

Note
  1. 拉流成功后会多次收到此回调通知;
  2. 默认回调频率为 3000ms 一次,通过 SetPlayQualityMonitorCycle 可自定义回调频率。
Parameters
pszStreamID观看流 ID
quality0~3 分别对应优、良、中、差
videoFPS帧率
videoKBS码率

◆ OnPlayQualityUpdate() [2/2]

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnPlayQualityUpdate ( const char *  pszStreamID,
ZegoPlayQuality  playQuality 
)
inlinevirtual

播放流质量更新通知

Note
  1. 拉流成功后会多次收到此回调通知;
  2. 默认回调频率为 3000ms 一次,通过 SetPlayQualityMonitorCycle 可自定义回调频率。
Parameters
pszStreamID观看流 ID
playQualityZegoPlayQuality 对象,内部包含了各项质量数据

◆ OnPlayStateUpdate()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnPlayStateUpdate ( int  stateCode,
const char *  pszStreamID 
)
pure virtual

播放流状态更新通知

Note
  1. 调用拉流接口 StartPlayingStream 或 StartPlayingStream2 后会收到此回调通知。
Parameters
stateCode状态码,0 为无错误。更多错误码请参考 zego-api-error.h 下的错误码定义
pszStreamID播放流 ID

◆ OnPlayStatsUpdate()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnPlayStatsUpdate ( AV::ZegoPlayStats  stats)
inlinevirtual

拉的所有rtc和l3流的统计数据更新回调

Parameters
statsZegoPlayStats 对象,内部包含了各项统计数据

◆ OnPlayVideoSuperResolutionUpdate()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnPlayVideoSuperResolutionUpdate ( const char *  streamID,
int  state,
int  errorCode 
)
inlinevirtual

拉流视频超分辨率开启状态变化

Note
支持版本:6.16.0 及以上。
通知时机:当 [EnableVideoSuperResolution] 开启视频超分后,拉流视频渲染时根据实际情况通知开发者是否开启超分。当发生内部错误,比如性能不足、分辨率超过限制等,会立即抛出回调。
Parameters
streamID流 ID
state超分状态,0 关闭, 1 开启

◆ OnRecvEndJoinLiveCommand()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRecvEndJoinLiveCommand ( const char *  pszFromUserId,
const char *  pszFromUserName,
const char *  pszRoomID 
)
inlinevirtual

收到主播要求结束连麦的指令

Note
  1. 一般来说连麦用户收到此通知后,主动调用停止推流结束连麦。
Parameters
pszFromUserId来源用户 Id
pszFromUserName来源用户名
pszRoomID房间 ID

◆ OnRecvRemoteAudioFirstFrame()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRecvRemoteAudioFirstFrame ( const char *  pStreamID)
inlinevirtual

接收到远端音频的首帧通知

Attention
  1. 当远端音频的首帧到达后,会收到该 API 回调通知。
Parameters
pStreamID流 ID

◆ OnRecvRemoteVideoFirstFrame()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRecvRemoteVideoFirstFrame ( const char *  pStreamID)
inlinevirtual

接收到远端视频的首帧通知

Attention
  1. 当远端视频频的首帧到达后,会收到该 API 回调通知。
Note
  1. 从调用开始拉流接口到显示第一帧数据的过程中可能存在一个短暂的时间差(具体时长取决于当前的网络状态),推荐在进入直播页面时加载一张预览图以提升用户体验,然后在收到本回调后去掉预览图。
Parameters
pStreamID流 ID

◆ OnRemoteCameraStatusUpdate()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRemoteCameraStatusUpdate ( const char *  pStreamID,
int  nStatus,
int  nReason 
)
inlinevirtual

远端摄像头状态通知

Attention
  1. 仅拉 UDP 流有效;
  2. 当房间内其他流的摄像头状态发生改变,如其他用户调用了 EnableCamera (true/false) 后,会收到该 API 回调通知。
Parameters
pStreamID流 ID
nStatus,参考zego-api-defines.h 中 DeviceStatus 的定义
nReason,参考zego-api-defines.h 中 ZegoDeviceErrorReason 的定义

◆ OnRemoteMicStatusUpdate()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRemoteMicStatusUpdate ( const char *  pStreamID,
int  nStatus,
int  nReason 
)
inlinevirtual

远端麦克风状态通知

Attention
  1. 仅拉 UDP 流有效;
  2. 当房间内其他流的麦克风状态发生改变,如其他用户调用了 EnableMic (true/false) 后,会收到该 API 回调通知。
Parameters
pStreamID流 ID
nStatus,参考zego-api-defines.h 中 DeviceStatus 的定义
nReason,参考zego-api-defines.h 中 ZegoDeviceErrorReason 的定义

◆ OnRemoteSpeakerStatusUpdate()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRemoteSpeakerStatusUpdate ( const char *  streamID,
int  status,
int  reason 
)
inlinevirtual

远端扬声器状态通知

Attention
  1. 仅拉 UDP 流有效;
  2. 当 status 为 Device_Closed 时,reason 表示原因,可能的取值有:ZEGO_DEVICE_ERROR_REASON_GENERIC,ZEGO_DEVICE_ERROR_REASON_DISABLED,ZEGO_DEVICE_ERROR_REASON_MUTE,ZEGO_DEVICE_ERROR_REASON_INTERRUPTION
Parameters
streamID流 ID
status,参考zego-api-defines.h 中 DeviceStatus 的定义
reason,参考zego-api-defines.h 中 ZegoDeviceErrorReason 的定义

◆ OnRenderRemoteCameraVideoFirstFrame()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRenderRemoteCameraVideoFirstFrame ( const char *  pStreamID)
inlinevirtual

远端摄像头视频渲染首帧通知

Attention
  1. 当开始要渲染远端摄像头的视频首帧时,会收到该 API 回调通知。
  2. 每次打开远端摄像头后,当开始渲染远端摄像头视频首帧时,会收到该 API 回调通知。
  3. 仅适用于 RTC 推拉流场景。
Parameters
pStreamID渲染视频的流 ID

◆ OnRenderRemoteVideoFirstFrame()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnRenderRemoteVideoFirstFrame ( const char *  pStreamID)
inlinevirtual

远端视频渲染首帧通知

Attention
  1. 当开始要渲染远端的视频首帧时,会收到该 API 回调通知。
Parameters
pStreamID渲染视频的流 ID

◆ OnSnapshot()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnSnapshot ( void *  pImage,
const char *  pszStreamID 
)
inlinevirtual

对观看视频流截屏的截屏结果

Note
  1. 当用户调用 TakeSnapshot 后,会收到该 API 回调通知。
Parameters
pImage截屏图片,Windows平台下类型为HBITMAP,Mac平台下类型为CGImageRef
pszStreamID流 ID

◆ OnVideoDecoderError()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnVideoDecoderError ( AV::ZegoVideoCodecAvc  codecID,
int  errorCode,
const char *  pszStreamID 
)
inlinevirtual

视频解码器错误通知

Parameters
codecID编解码器
errorCode错误码, 详见 zego-api-defines.h 中的 ZegoCodecError 定义
pszStreamID流 ID

◆ OnVideoSizeChanged()

virtual void ZEGO::LIVEROOM::ILivePlayerCallback::OnVideoSizeChanged ( const char *  pStreamID,
int  nWidth,
int  nHeight 
)
inlinevirtual

视频尺寸变更通知

Attention
  1. 调用 StartPlayingStream 或 StartPlayingStream2 之后,在 SDK 获取到第一帧数据时,会收到该 API 回调通知;
  2. 直播过程中,视频宽高发生变化,会收到该 API 回调通知。
Note
  1. 从调用开始拉流接口到显示第一帧数据的过程中可能存在一个短暂的时间差(具体时长取决于当前的网络状态),推荐在进入直播页面时加载一张预览图以提升用户体验,然后在收到本回调后去掉预览图。
Parameters
pStreamID发生视频尺寸变更的流 ID
nWidth视频宽度
nHeight视频高度

The documentation for this class was generated from the following file: