ZegoPlayRecorder
|
Classes | |
struct | ZegoStreamInfo |
struct | ZegoRecordStatus |
struct | ZegoRecordSingleStreamConfig |
struct | ZegoWaterMarkConfig |
struct | ZegoStreamConfig |
struct | ZegoTimestampConfig |
struct | ZegoImageWaterMarkConfig |
struct | AudioFrame |
struct | ZegoMixStreamRecordConfig |
class | IExternalVideoDataSource |
class | IExternalMediaDataSource |
class | ICallback |
class | IMediaSideCallback |
Functions | |
ZEGO_API const char * | GetSDKVersion () |
ZEGO_API bool | SetLogDirAndSize (const char *pszLogDir, unsigned long long lLogFileSize=5 *1024 *1024) |
ZEGO_API void | UploadLog () |
ZEGO_API void | SetUseTestEnv (bool bTestEnv) |
ZEGO_API void | SetConfig (const char *config) |
ZEGO_API bool | InitSDK (unsigned int uiAppID, unsigned char *pBufAppSignature, int nSignatureSize) |
ZEGO_API bool | InitSDK (unsigned int uiAppID) |
ZEGO_API bool | UnInitSDK () |
ZEGO_API bool | SetCallback (ICallback *pCB) |
ZEGO_API bool | LoginRoom (const char *pszRoomID) |
ZEGO_API bool | SetUser (const char *pszUserID, const char *pszUserName) |
ZEGO_API void | SetCustomToken (const char *thirdPartyToken) |
ZEGO_API bool | LogoutRoom () |
ZEGO_API int | GetMaxRecordCount () |
ZEGO_API void | SetMuxerOutType (MuxerOutType type) |
ZEGO_API void | SetMuxerCacheSize (int size) |
ZEGO_API void | EnableSingleAndMixRecordMode (bool enable) |
ZEGO_API void | EnableExternalRender (bool bEnable) |
ZEGO_API bool | SetFontFile (const char *pszPathAndName) |
ZEGO_API void | EnableExternalAudioData (bool bEnable, int sampleRate, int channels) |
ZEGO_API bool | StartRecordSingleStream (const char *pszStreamID, const char *pszPathAndName, MuxerStreamType nMuxerStreamType=MuxerStreamTypeBoth, int nFragmentSeconds=2, ZegoRecordSingleStreamConfig *config=nullptr) |
ZEGO_API bool | StopRecordSingleStream (const char *pszStreamID) |
ZEGO_API bool | StartRecordMixStream (ZegoMixStreamRecordConfig *pConfig) |
ZEGO_API bool | UpdateInputStreamConfig (ZegoStreamConfig *pInputStream, int nInputStreamCount) |
ZEGO_API bool | UpdateImageWaterMarkConfig (ZegoImageWaterMarkConfig *pConfig) |
ZEGO_API bool | StopRecordMixStream () |
ZEGO_API bool | PauseRecordMixStream () |
ZEGO_API bool | ResumeRecordMixStream () |
ZEGO_API bool | GetRecordStatus (const char *streamID, ZegoRecordStatus &status) |
ZEGO_API unsigned int | GetRecordLastMediaSideTime (const char *streamID) |
ZEGO_API bool | SetMediaSideCallback (IMediaSideCallback *pCB) |
ZEGO_API bool | TakeStreamSnapshot (const char *pszStreamID, const char *pszPathAndName) |
录制结束状态码
ZEGO_API void ZEGO::LIVEROOM::EnableExternalAudioData | ( | bool | bEnable, |
int | sampleRate, | ||
int | channels | ||
) |
设置是否开启拉流音频数据回调
bEnable | true 开启, false 关闭。 |
sampleRate | 数据采样率,取值 0, 16000, 32000, 44100, 48000,0表示使用原数据采样率,不做采样转换 |
channels | 数据通道数,取值0,1,2,0表示使用原数据通道数 只有混流录制才有效,SDK 通过OnAudioDataCallback回调抛出每路单流音频PCM数据 |
ZEGO_API void ZEGO::LIVEROOM::EnableExternalRender | ( | bool | bEnable | ) |
设置是否启用外部渲染
bEnable | 是否外部渲染,true 是,false 不是。默认 false 必须在初始化 SDK 前调用。只有混流录制才有效,SDK 通过OnVideoDataCallback回调抛出每路单流解码帧数据,格式为 I420 |
ZEGO_API void ZEGO::LIVEROOM::EnableSingleAndMixRecordMode | ( | bool | enable | ) |
设置是否启用单流混流同时录制模式,启用该模式比较消耗系统资源,只有单流录制或者只有混流录制场景无需开启,开始或结束混流录制也会结束所有的单流录制,所以该模式下只能先启动混流录制,然后启动单流录制,混流录制会混入所有单流录制正在录制的流
enable | true,启用;false,不启用,默认为false,即只能选择单流录制或者混流录制 录制之前设置有效 |
ZEGO_API int ZEGO::LIVEROOM::GetMaxRecordCount | ( | ) |
获取 SDK 支持的最大同时录制流数
ZEGO_API unsigned int ZEGO::LIVEROOM::GetRecordLastMediaSideTime | ( | const char * | streamID | ) |
获取收到的最近一次Media Side Info数据包距离录制的第一个数据包的时间间隔
streamID | 流ID |
ZEGO_API bool ZEGO::LIVEROOM::GetRecordStatus | ( | const char * | streamID, |
ZegoRecordStatus & | status | ||
) |
获取当前录制状态
streamID | 流ID |
status | 当前录制状态 |
ZEGO_API const char* ZEGO::LIVEROOM::GetSDKVersion | ( | ) |
获取SDK版本
ZEGO_API bool ZEGO::LIVEROOM::InitSDK | ( | unsigned int | uiAppID, |
unsigned char * | pBufAppSignature, | ||
int | nSignatureSize | ||
) |
初始化 SDK
uiAppID | Zego 派发的数字 ID, 各个开发者的唯一标识 |
pBufAppSignature | Zego 派发的签名, 用来校验对应 appID 的合法性 |
nSignatureSize | 签名长度(字节) |
ZEGO_API bool ZEGO::LIVEROOM::InitSDK | ( | unsigned int | uiAppID | ) |
初始化 SDK
uiAppID | Zego 派发的数字 ID, 各个开发者的唯一标识 |
ZEGO_API bool ZEGO::LIVEROOM::LoginRoom | ( | const char * | pszRoomID | ) |
登录房间
pszRoomID | 房间 ID |
ZEGO_API bool ZEGO::LIVEROOM::LogoutRoom | ( | ) |
退出房间
ZEGO_API bool ZEGO::LIVEROOM::PauseRecordMixStream | ( | ) |
暂停混流录制
ZEGO_API bool ZEGO::LIVEROOM::ResumeRecordMixStream | ( | ) |
恢复混流录制
ZEGO_API bool ZEGO::LIVEROOM::SetCallback | ( | ICallback * | pCB | ) |
设置回调
pCB | 回调对象指针 |
ZEGO_API void ZEGO::LIVEROOM::SetConfig | ( | const char * | config | ) |
设置配置信息
config | config 配置信息 |
ZEGO_API void ZEGO::LIVEROOM::SetCustomToken | ( | const char * | thirdPartyToken | ) |
设置自定义token信息
thirdPartyToken | 第三方传入的token 使用此函数验证登录时用户的合法性,登录房间前调用,token的生成规则请联系即构。若不需要验证用户合法性,不需要调用此函数 在登录房间前调用有效,退出房间后失效 |
ZEGO_API bool ZEGO::LIVEROOM::SetFontFile | ( | const char * | pszPathAndName | ) |
设置字体文件路径
pszPathAndName | 字体文件路径 pszPathAndName为文件全路径(包括文件名), 录制之前设置有效,用于混流录制时添加水印,不需要添加水印则无需设置 |
ZEGO_API bool ZEGO::LIVEROOM::SetLogDirAndSize | ( | const char * | pszLogDir, |
unsigned long long | lLogFileSize = 5 *1024 *1024 |
||
) |
设置SDK log路径和单个log文件大小
pszLogDir | log路径 |
lLogFileSize | 单个log文件大小 |
ZEGO_API bool ZEGO::LIVEROOM::SetMediaSideCallback | ( | IMediaSideCallback * | pCB | ) |
设置媒体次要信息回调
pCB | 回调对象指针 |
ZEGO_API void ZEGO::LIVEROOM::SetMuxerCacheSize | ( | int | size | ) |
设置文件落地前的缓存大小(64KB~1MB),以字节为单位
size | 缓存大小 InitSDK之前设置有效,default: 1048576(即1M, 1024*1024) |
ZEGO_API void ZEGO::LIVEROOM::SetMuxerOutType | ( | MuxerOutType | type | ) |
设置录制数据输出方式
type | 设置录制数据处理方式,默认为MuxerOutTypeOnlyWriteFile,即只写文件 录制之前设置有效 |
ZEGO_API bool ZEGO::LIVEROOM::SetUser | ( | const char * | pszUserID, |
const char * | pszUserName | ||
) |
设置用户信息
pszUserID | 用户唯一 ID |
pszUserName | 用户名字 |
ZEGO_API void ZEGO::LIVEROOM::SetUseTestEnv | ( | bool | bTestEnv | ) |
ZEGO_API bool ZEGO::LIVEROOM::StartRecordMixStream | ( | ZegoMixStreamRecordConfig * | pConfig | ) |
开始混流录制
config | 混流录制配置 |
ZEGO_API bool ZEGO::LIVEROOM::StartRecordSingleStream | ( | const char * | pszStreamID, |
const char * | pszPathAndName, | ||
MuxerStreamType | nMuxerStreamType = MuxerStreamTypeBoth , |
||
int | nFragmentSeconds = 2 , |
||
ZegoRecordSingleStreamConfig * | config = nullptr |
||
) |
开始单流录制
pszStreamID | 流 ID |
pszPathAndName | 录制文件全路径(包括文件名),且必须以.mp3/.mp4/.flv/.m3u8结尾 |
nMuxerStreamType | 录制流类型 |
nFragmentSeconds | 录制文件分片间隔; m3u8格式取值范围(2~60s),其他格式取值范围(0~10s),0表示不分片,大于0表示分片,默认为2s |
config | 录制单流文件高级配置 |
ZEGO_API bool ZEGO::LIVEROOM::StopRecordMixStream | ( | ) |
停止混流录制
ZEGO_API bool ZEGO::LIVEROOM::StopRecordSingleStream | ( | const char * | pszStreamID | ) |
停止单流录制
pszStreamID | 流 ID |
ZEGO_API bool ZEGO::LIVEROOM::TakeStreamSnapshot | ( | const char * | pszStreamID, |
const char * | pszPathAndName | ||
) |
单流录制模式下,对指定流截图
pszStreamID | 流ID |
pszPathAndName | 截图文件保存路径 |
ZEGO_API bool ZEGO::LIVEROOM::UnInitSDK | ( | ) |
反初始化 SDK
ZEGO_API bool ZEGO::LIVEROOM::UpdateImageWaterMarkConfig | ( | ZegoImageWaterMarkConfig * | pConfig | ) |
更新图片水印配置
pConfig | 新的图片水印配置。pConfig 为 NULL 时,将删除之前设置的图片水印 |
ZEGO_API bool ZEGO::LIVEROOM::UpdateInputStreamConfig | ( | ZegoStreamConfig * | pInputStream, |
int | nInputStreamCount | ||
) |
更新混流录制输入流配置
pInputStream | 输入流数组 |
nInputStreamCount | 输入流个数 |
ZEGO_API void ZEGO::LIVEROOM::UploadLog | ( | ) |
上传log文件到Zego后台