ZegoPlayRecorder
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
Public Member Functions | List of all members
ZEGO::LIVEROOM::ICallback Class Referenceabstract

#include <LiveRoom.h>

Public Member Functions

virtual void OnInitSDK (int errorCode)
 
virtual void OnLoginRoom (int errorCode, const char *pszRoomID)=0
 
virtual void OnLogoutRoom (int errorCode, const char *pszRoomID)
 
virtual void OnDisconnect (int errorCode, const char *pszRoomID)=0
 
virtual void OnStreamUpdate (ZegoStreamUpdateType type, ZegoStreamInfo *pStreamInfo, unsigned int streamCount, const char *pszRoomID)=0
 
virtual void OnPlayQualityUpdate (const char *pszStreamID, int quality, double videoFPS, double videoKBPS)
 
virtual void OnPlayQualityUpdate (const char *pszStreamID, int quality, double videoFPS, double videoKBPS, double audioKBPS)
 
virtual void OnStreamRecordBegin (const char *pszStreamID, const char *pszPathAndName)=0
 
virtual void OnStreamRecordEnd (const char *pszStreamID, const char *pszPathAndName, RecordEndReason reason)=0
 
virtual void OnStreamRecordVideoSizeChanged (const char *pszStreamID, int width, int height)
 
virtual void OnStreamRecordRemoteMicOperation (const char *pszStreamID, int operation, int reason)
 
virtual void OnStreamRecordEvent (const char *pszStreamID, RecordEvent event)
 
virtual void OnStreamRecordData (const char *pszStreamID, const char *data, int len)
 
virtual void OnSeek (const char *pszStreamID, long long offset, int whence)
 
virtual void OnVideoDataCallback (const unsigned char **pData, int *dataLen, const char *pszStreamID, int width, int height, int strides[4], VideoPixelFormat pixel_format)
 
virtual void OnAudioDataCallback (const char *pszStreamID, const AudioFrame &frame)
 
virtual void OnMixStreamRecordUpdate (const char **ppszStreamID, int nStreamCount)=0
 
virtual void OnRecordFilePath (const char *pszStreamID, const char *filePath, MuxerStreamType muxerType, unsigned int startTimeStamp, unsigned int stopTimeStamp)
 
virtual void OnExternalVideoDataSource (const char *pszStreamID, IExternalVideoDataSource *source)
 
virtual void OnExternalMediaDataSource (const char *pszStreamID, IExternalMediaDataSource *source)
 
virtual void OnStreamSnapshotFilePath (int nErrorCode, const char *pszStreamID, const char *pszFilePath)
 
virtual ~ICallback ()
 

Detailed Description

事件回调

Constructor & Destructor Documentation

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

Member Function Documentation

virtual void ZEGO::LIVEROOM::ICallback::OnAudioDataCallback ( const char *  pszStreamID,
const AudioFrame frame 
)
inlinevirtual

音频数据回调,回调抛出每路单流音频解码数据,不要在回调函数中做耗时的操作

Parameters
pszStreamID流 ID
frame音频数据
virtual void ZEGO::LIVEROOM::ICallback::OnDisconnect ( int  errorCode,
const char *  pszRoomID 
)
pure virtual

与 server 断开通知

Parameters
errorCode错误码,0 表示无错误
pszRoomID房间 ID
Attention
建议开发者在此通知中进行重新登录、提示等其他恢复逻辑 与 server 断开连接后,SDK 会进行重试,重试失败抛出此错误。请注意,此时 SDK 与服务器的所有连接均会断开
virtual void ZEGO::LIVEROOM::ICallback::OnExternalMediaDataSource ( const char *  pszStreamID,
IExternalMediaDataSource source 
)
inlinevirtual

外部采集媒体输入源对象更新

Parameters
pszStreamID外部采集输入流ID
source对象指针
virtual void ZEGO::LIVEROOM::ICallback::OnExternalVideoDataSource ( const char *  pszStreamID,
IExternalVideoDataSource source 
)
inlinevirtual

外部采集输入源对象更新

Parameters
pszStreamID外部采集输入流ID
source对象指针
virtual void ZEGO::LIVEROOM::ICallback::OnInitSDK ( int  errorCode)
inlinevirtual

InitSDK回调

Parameters
errorCode错误码,0 表示无错误
virtual void ZEGO::LIVEROOM::ICallback::OnLoginRoom ( int  errorCode,
const char *  pszRoomID 
)
pure virtual

登录房间成功回调

Parameters
errorCode错误码,0 表示无错误
pszRoomID房间 ID
virtual void ZEGO::LIVEROOM::ICallback::OnLogoutRoom ( int  errorCode,
const char *  pszRoomID 
)
inlinevirtual

退出房间回调

Parameters
errorCode错误码,0 表示无错误
pszRoomID房间 ID
virtual void ZEGO::LIVEROOM::ICallback::OnMixStreamRecordUpdate ( const char **  ppszStreamID,
int  nStreamCount 
)
pure virtual

混流录制信息更新回调

Parameters
ppszStreamID流 ID, 正在录制流数组
nStreamCount正在录制流数组大小 这个回调表示哪些流参与混流录制,只包括成功拉到数据的流,SDK内容会重试拉失败的流,拉流状态变化时会回调
virtual void ZEGO::LIVEROOM::ICallback::OnPlayQualityUpdate ( const char *  pszStreamID,
int  quality,
double  videoFPS,
double  videoKBPS 
)
inlinevirtual

播放流质量更新通知

Note
  1. 会多次收到此回调通知;
  2. 默认回调频率为 3000ms 一次
Parameters
pszStreamID流 ID
quality0~3 分别对应优、良、中、差
videoFPS帧率
videoKBPS码率
virtual void ZEGO::LIVEROOM::ICallback::OnPlayQualityUpdate ( const char *  pszStreamID,
int  quality,
double  videoFPS,
double  videoKBPS,
double  audioKBPS 
)
inlinevirtual

播放流质量更新通知

Note
  1. 会多次收到此回调通知;
  2. 默认回调频率为 3000ms 一次
Parameters
pszStreamID流 ID
quality0~3 分别对应优、良、中、差
videoFPS视频帧率
videoKBPS视频码率
audioKBPS音频码率
virtual void ZEGO::LIVEROOM::ICallback::OnRecordFilePath ( const char *  pszStreamID,
const char *  filePath,
MuxerStreamType  muxerType,
unsigned int  startTimeStamp,
unsigned int  stopTimeStamp 
)
inlinevirtual

录制文件名回调

Parameters
pszStreamID流 ID, NULL表示混流录制文件回调
filePath录制文件路径
muxerType录制流类型
startTimeStamp分片文件录制开始时间,单位毫秒
stopTimeStamp分片文件录制结束时间,单位毫秒 设置音频视频文件分开录制或者录制文件格式为m3u8时才会有此回调 startTimeStamp和stopTimeStamp参数只有在录制文件为m3u8时才有效
virtual void ZEGO::LIVEROOM::ICallback::OnSeek ( const char *  pszStreamID,
long long  offset,
int  whence 
)
inlinevirtual

录制seek回调

Parameters
pszStreamID流 ID, NULL表示混流录制回调
offset偏移大小
whence偏移位置,SEEK_SET/SEEK_CUR/SEEK_END
Attention
调用SetMuxerOutType且参数为MuxerOutTypeOnlyCallback时才有该回调,收到该回调需要调用fseek或者seek再继续写OnStreamRecordData回调的数据
virtual void ZEGO::LIVEROOM::ICallback::OnStreamRecordBegin ( const char *  pszStreamID,
const char *  pszPathAndName 
)
pure virtual

录制开始回调

Parameters
pszStreamID流 ID, NULL表示混流录制回调
pszPathAndName录制文件路径
virtual void ZEGO::LIVEROOM::ICallback::OnStreamRecordData ( const char *  pszStreamID,
const char *  data,
int  len 
)
inlinevirtual

录制数据回调

Parameters
pszStreamID流 ID, NULL表示混流录制回调
data录制数据
len录制数据长度
Attention
调用SetMuxerOutType且参数为MuxerOutTypeOnlyCallback时才有该回调
virtual void ZEGO::LIVEROOM::ICallback::OnStreamRecordEnd ( const char *  pszStreamID,
const char *  pszPathAndName,
RecordEndReason  reason 
)
pure virtual

录制结束回调

Parameters
pszStreamID流 ID, NULL表示混流录制回调
pszPathAndName录制文件路径
reason录制结束原因
virtual void ZEGO::LIVEROOM::ICallback::OnStreamRecordEvent ( const char *  pszStreamID,
RecordEvent  event 
)
inlinevirtual

录制事件回调

Parameters
pszStreamID流 ID, NULL表示混流录制回调
event录制过程发生的事件
virtual void ZEGO::LIVEROOM::ICallback::OnStreamRecordRemoteMicOperation ( const char *  pszStreamID,
int  operation,
int  reason 
)
inlinevirtual

远端麦克风状态变更回调

Parameters
pszStreamID流 ID
operation麦克风状态,0:开启,1:关闭
reasion状态变更原因
virtual void ZEGO::LIVEROOM::ICallback::OnStreamRecordVideoSizeChanged ( const char *  pszStreamID,
int  width,
int  height 
)
inlinevirtual

视频分辨率回调

Parameters
pszStreamID流 ID
width视频宽度
height视频高度
Attention
视频分辨率发生变化时也会触发该回调
virtual void ZEGO::LIVEROOM::ICallback::OnStreamSnapshotFilePath ( int  nErrorCode,
const char *  pszStreamID,
const char *  pszFilePath 
)
inlinevirtual

截图文件名回调

Parameters
nErrorCode错误码,0 表示无错误;1 表示创建截图文件失败;2 表示要截图的流停止了
pszStreamID流 ID
pszFilePath截图文件保存路径
virtual void ZEGO::LIVEROOM::ICallback::OnStreamUpdate ( ZegoStreamUpdateType  type,
ZegoStreamInfo pStreamInfo,
unsigned int  streamCount,
const char *  pszRoomID 
)
pure virtual

流信息更新

Parameters
type更新类型
pStreamInfo直播流数组
streamCount直播流个数
pszRoomID房间 ID
Attention
登录房间后如果已存在流会收到流增加通知,之后房间内增加流、删除流,均会触发此更新
virtual void ZEGO::LIVEROOM::ICallback::OnVideoDataCallback ( const unsigned char **  pData,
int *  dataLen,
const char *  pszStreamID,
int  width,
int  height,
int  strides[4],
VideoPixelFormat  pixel_format 
)
inlinevirtual

视频帧数据回调,回调抛出每路单流解码帧数据,不要在回调函数中做耗时的操作

Parameters
pData视频数据起始地址
dataLen视频数据长度
pszStreamID流 ID
width视频宽度
height视频高度
strides每个平面一行字节数
pixel_format视频帧数据格式
Attention
混流录制时调用EnableExternalRender且参数为true时或者单流录制时调用 EnableStreamVideoDataCallback 且 bEnable 为 true 才有该回调

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