提交工单
咨询集成、功能及报价等问题
登录房间成功后,有两种发布直播的方式:
本文主要讲述自动发布直播的实现过程。
参考文档:快速开始-初始化
调用如下 API 设置发布回调对象指针。设置回调对象指针失败,会导致 App 收不到相关回调。
AudioRoom-Publisher.h
/**
设置直播主播相关信息通知的回调
@param pCB 回调对象指针
@return true 成功,false 失败
*/
bool SetAudioLivePublisherCallback(IAudioLivePublisherCallback *pCB);
调用如下 API 登录房间。在自动发布直播的模式下,登录房间后,SDK 会自动触发推流,无需用户手动推流
AudioRoom.h
/**
登录房间
@param pszRoomID 房间 ID,App 需保证其唯一性,长度不可超过 255 byte
@return true:登录成功,false:登录失败
@attention 登录房间后,等待 IAudioRoomCallback::OnLoginRoom 回调
*/
bool LoginRoom(const char* pszRoomID);
AudioRoomCallback.h
/**
登录房间成功回调
@param errorCode 错误码,0 表示无错误
@param pszRoomID 房间 ID
*/
virtual void OnLoginRoom(int errorCode, const char *pszRoomID) = 0;
登录失败请查看 登录房间错误码 请注意,参数 pszRoomID,是由 App 业务端定义、实现并传入的。开发者在定义 pszRoomID 时需要确保在同一时刻是唯一的。
自动发布开始后,开发者可在如下通知中处理发布状态和流信息
AudioRoomCallback-Publisher.h
/**
推流状态更新
@param stateCode 状态码
@param pszStreamID 流 ID
@param oStreamInfo 推流信息
*/
virtual void OnPublishStateUpdate(int stateCode, const char *pszStreamID, const ZegoPublishingStreamInfo& oStreamInfo) = 0;
推流失败请查看 推流错误码
调用如下 API 退出房间。在自动发布直播的模式下,退出房间后,会停止所有的推流,无需用户手动停止推流
AudioRoom.h
/**
退出房间
@return 成功,false 失败
@attention 退出登录后,等待 IAudioRoomCallback::OnLogoutRoom 回调
@note 退出房间会停止所有的推拉流
*/
bool LogoutRoom();
AudioRoomCallback.h
/**
退出房间回调
@param errorCode 错误码,0 表示无错误
@param pszRoomID 房间 ID
*/
virtual void OnLogoutRoom(int errorCode, const char *pszRoomID) {}
自动推流的 API 调用时序图如下所示,请开发者参考。
联系我们
文档反馈