ZegoLiveRoom
Classes | Enumerations | Functions | Variables
ZEGO::LIVEROOM Namespace Reference

Classes

class  IAVEngineCallback
 
class  IIMCallback
 
class  ILivePlayerCallback
 
class  ILivePublisherCallback
 
class  IMultiRoomCallback
 
class  IRoomCallback
 
class  IRoomExtraInfoCallback
 
struct  ZegoPlayQuality
 
struct  ZegoPublishQuality
 

Enumerations

enum  ZegoVideoViewMode { ZegoVideoViewModeScaleAspectFit = 0, ZegoVideoViewModeScaleAspectFill = 1, ZegoVideoViewModeScaleToFill = 2 }
 
enum  ZegoMixSysPlayoutPropertyMask { MIX_PROP_NONE = 0, MIX_PROP_ENABLE_AGC_FOR_SYS_PLAYOUT = 1 }
 

Functions

ZEGO_API bool SetIMCallback (IIMCallback *pCB)
 
ZEGO_API int SendRoomMessageEx (ROOM::ZegoMessageType type, ROOM::ZegoMessageCategory category, const char *messageContent)
 
ZEGO_API bool GetRoomMessage (ROOM::ZegoMessagePriority priority, bool ascendOrder, unsigned long long messageId, int messageCount)
 
ZEGO_API int SendBigRoomMessage (ROOM::ZegoMessageType type, ROOM::ZegoMessageCategory category, const char *messageContent)
 
ZEGO_API int GetMaxPlayChannelCount ()
 
ZEGO_API bool SetLivePlayerCallback (ILivePlayerCallback *pCB)
 
ZEGO_API void UpdatePlayDecryptKey (const char *pszStreamID, const unsigned char *pKey, int nkeyLen)
 
ZEGO_API bool StartPlayingStream (const char *pszStreamID, void *pView, const char *pszParams=0)
 
ZEGO_API bool StartPlayingStream2 (const char *pszStreamID, void *pView, ZegoStreamExtraPlayInfo *info=nullptr)
 
ZEGO_API bool UpdatePlayView (void *pView, const char *pszStreamID)
 
ZEGO_API bool StopPlayingStream (const char *pszStreamID)
 
ZEGO_API int RequestJoinLive ()
 
ZEGO_API bool RespondInviteJoinLiveReq (int seq, int rspResult)
 
ZEGO_API bool RequireHardwareDecoder (bool enable)
 
ZEGO_API int GetAudioRouteType ()
 
ZEGO_API bool EnableSpeaker (bool bEnable)
 
ZEGO_API bool SetBuiltInSpeakerOn (bool bOn)
 
ZEGO_API bool SetPlayVolume (int volume, const char *pszStreamID=0)
 
ZEGO_API float GetSoundLevel (const char *pszStreamID)
 
ZEGO_API bool SetViewMode (ZegoVideoViewMode mode, const char *pszStreamID)
 
ZEGO_API bool SetViewBackgroundColor (int color, const char *pszStreamID)
 
ZEGO_API bool TakeSnapshot (const char *pszStreamID)
 
ZEGO_API int ActivateAudioPlayStream (const char *pszStreamID, bool bActive)
 
ZEGO_API int ActivateAllAudioPlayStream (bool bActive)
 
ZEGO_API int ActivateVideoPlayStream (const char *pszStreamID, bool bActive, AV::VideoStreamLayer videoLayer=AV::VideoStreamLayer_Auto)
 
ZEGO_API int ActivateAllVideoPlayStream (bool bActive)
 
ZEGO_API bool SetViewRotation (int nRotation, const char *pszStreamID)
 
ZEGO_API bool EnableViewMirror (bool bEnable, const char *pszStreamID)
 
ZEGO_API bool SetPlayQualityMonitorCycle (unsigned int timeInMS)
 
ZEGO_API void SetAudioPostpCallback (AVE::OnPostpCallback callback, const AVE::ExtPostpSet &config)
 
ZEGO_API void EnableAudioPostp (bool enable, const char *streamID)
 
ZEGO_API bool EnableSelectedAudioRecord (unsigned int uMask, int nSampleRate=44100, int nChannels=1)
 
ZEGO_API bool SetAudioRecordCallback (AV::IZegoAudioRecordCallback *pCB)
 
ZEGO_API bool SetPlayStreamFocus (const char *streamID)
 
ZEGO_API bool SetRecvBufferLevelLimit (int minBufferLevel, int maxBufferLevel, const char *streamID)
 
ZEGO_API bool SetAudioMixMode (AV::ZegoAudioMixMode mixMode, const char **pszStreamIDList, int num)
 
ZEGO_API bool EnablePlayVirtualStereo (bool enable, int angle, const char *streamID)
 
ZEGO_API int GetMaxPublishChannelCount ()
 
ZEGO_API bool SetLivePublisherCallback (ILivePublisherCallback *pCB)
 
ZEGO_API bool SetPreviewView (void *pView, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool StartPreview (AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool StopPreview (AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetPublishStreamExtraInfo (const char *pszStreamExtraInfo, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetCustomPublishTarget (const char *pszCustomPublishTarget, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API int AddPublishTarget (const char *strTarget, const char *pszStreamID)
 
ZEGO_API int DeletePublishTarget (const char *strTarget, const char *pszStreamID)
 
ZEGO_API void SetCDNPublishTarget (const char *pszCDNPublishTarget, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetPublishEncryptKey (const unsigned char *pKey, int nkeyLen, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoSource (AV::ZegoVideoSourceType srcType, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_AUX)
 
ZEGO_API bool StartPublishing (const char *pszTitle, const char *pszStreamID, int flag, const char *pszParams=0)
 
ZEGO_API bool StartPublishing2 (const char *pszTitle, const char *pszStreamID, int flag, const char *pszParams=0, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API int MuteVideoPublish (bool mute, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API int MuteAudioPublish (bool mute, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool StopPublishing (int flag=0, const char *pszMsg=0, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool RespondJoinLiveReq (int seq, int rspResult)
 
ZEGO_API int InviteJoinLive (const char *pszUserID)
 
ZEGO_API int EndJoinLive (const char *pszUserID)
 
ZEGO_API bool RequireHardwareEncoder (bool bRequired)
 
ZEGO_API bool SetVideoBitrate (int nBitrate, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoFPS (int nFps, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoEncodeResolution (int nWidth, int nHeight, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoCaptureResolution (int nWidth, int nHeight, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoKeyFrameInterval (int nIntervalSecond, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool EnableBeautifying (int nFeature, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetPolishStep (float step, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetPolishFactor (float factor, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetWhitenFactor (float factor, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetSharpenFactor (float factor, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetFilter (int nIndex, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetPreviewViewMode (ZegoVideoViewMode mode, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool EnablePreviewMirror (bool bEnable, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoMirrorMode (AV::ZegoVideoMirrorMode mode, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetPreviewViewBackgroundColor (int color, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetPreviewRotation (int nRotation, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetCaptureFrameRotation (int nRotation, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool EnableMic (bool bEnable)
 
ZEGO_API bool SetAudioBitrate (int bitrate)
 
ZEGO_API void SetAudioDeviceMode (AV::ZegoAVAPIAudioDeviceMode mode)
 
ZEGO_API bool EnableAGC (bool bEnable)
 
ZEGO_API bool EnableAEC (bool bEnable)
 
ZEGO_API void SetAECMode (AV::ZegoAECMode mode)
 
ZEGO_API bool EnableCamera (bool bEnable, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool TakeSnapshotPreview (AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool EnableLoopback (bool bEnable)
 
ZEGO_API void SetLoopbackVolume (int volume)
 
ZEGO_API void SetCaptureVolume (int volume)
 
ZEGO_API float GetCaptureSoundLevel ()
 
ZEGO_API void SetWaterMarkImagePath (const char *filePath, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetPublishWaterMarkRect (int left, int top, int right, int bottom, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetPreviewWaterMarkRect (int left, int top, int right, int bottom, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetVideoCodecId (AV::ZegoVideoCodecAvc codecId, AV::PublishChannelIndex nChannel=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetAudioPrepCallback (AVE::OnPrepCallback callback, const AVE::ExtPrepSet &config)
 
ZEGO_API void SetVideoEncoderRateControlConfig (AV::ZegoVideoEncoderRateControlStrategy strategy, int encoderCRF, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void EnableCheckPoc (bool bEnable)
 
ZEGO_API void SetCapturePipelineScaleMode (AV::ZegoCapturePipelineScaleMode mode)
 
ZEGO_API void SetLatencyMode (AV::ZegoAVAPILatencyMode mode)
 
ZEGO_API void SetLatencyModeByChannel (AV::ZegoAVAPILatencyMode mode, AV::PublishChannelIndex idx)
 
ZEGO_API void SetAudioChannelCount (int count)
 
ZEGO_API void SetAudioChannelCountByChannel (int count, AV::PublishChannelIndex idx)
 
ZEGO_API void EnableDTX (bool bEnable)
 
ZEGO_API void EnableVAD (bool bEnable)
 
ZEGO_API void EnableTrafficControl (int properties, bool bEnable, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetMinVideoBitrateForTrafficControl (int nBitrate, AV::ZegoTrafficControlMinVideoBitrateMode mode=AV::ZEGO_TRAFFIC_CONTROL_MIN_VIDEO_BITRATE_NO_VIDEO, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetTrafficControlFocusOn (enum AV::ZegoTrafficControlFocusOn focusOn, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool EnableNoiseSuppress (bool bEnable)
 
ZEGO_API bool SetNoiseSuppressMode (AV::ZegoANSMode mode)
 
ZEGO_API bool EnableTransientNoiseSuppress (bool bEnable)
 
ZEGO_API bool SetPublishQualityMonitorCycle (unsigned int timeInMS)
 
ZEGO_API bool SetAudioEqualizerGain (int bandIndex, float bandGain)
 
ZEGO_API void EnableScreenCaptureEncodeOptimization (bool enable, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void SetChannelExtraParam (const char *param_config, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void * GetChannelExtraParam (AV::ChannelExtraParamKey key, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API AV::ZegoCodecCapabilityInfoGetVideoCodecCapabilityList (int &len)
 
ZEGO_API void FreeVideoCodecCapabilityList (AV::ZegoCodecCapabilityInfo *parrCodecCapability)
 
ZEGO_API void SetAudioCaptureShiftOnMix (int shiftMS)
 
ZEGO_API void SetVideoEncodeMode (AV::ZegoVideoEncodeMode mode, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API bool SetRoomExtraInfoCallback (IRoomExtraInfoCallback *pCB)
 
ZEGO_API int SetRoomExtraInfo (const char *pszKey, const char *pszValue)
 
ZEGO_API const char * GetSDKVersion ()
 
ZEGO_API const char * GetSDKVersion2 ()
 
ZEGO_API void SetLogHook (void(*log_hook)(const char *message))
 
ZEGO_API bool SetLogDirAndSize (const char *pszLogDir, unsigned long long lLogFileSize=ZEGO_DEFAULT_LOG_SIZE, const char *pszSubFolder=nullptr)
 
ZEGO_API void UploadLog ()
 
ZEGO_API void SetVerbose (bool bVerbose)
 
ZEGO_API void SetUseTestEnv (bool bTestEnv)
 
ZEGO_API bool SetBusinessType (int nType)
 
ZEGO_API bool SetUser (const char *pszUserID, const char *pszUserName)
 
ZEGO_API const char * GetUserID ()
 
ZEGO_API void SetRunLoopObserveCallback (void(*OnRunLoopObserveCallback)(unsigned int taskId, AV::ZegoTaskType type, int taskDispatchTime, int taskRunTime, int taskTotalTime))
 
ZEGO_API bool InitPlatform (void *jvm=0, void *ctx=0, void *clsLoader=0)
 
ZEGO_API bool InitSDK (unsigned int uiAppID, unsigned char *pBufAppSignature, int nSignatureSize)
 
ZEGO_API bool UnInitSDK ()
 
ZEGO_API bool SetRoomCallback (IRoomCallback *pCB)
 
ZEGO_API void SetRoomConfig (bool audienceCreateRoom, bool userStateUpdate)
 
ZEGO_API void SetCustomToken (const char *thirdPartyToken)
 
ZEGO_API void SetRoomMaxUserCount (unsigned int maxCount)
 
ZEGO_API bool LoginRoom (const char *pszRoomID, int role, const char *pszRoomName="")
 
ZEGO_API bool LogoutRoom ()
 
ZEGO_API bool SwitchRoom (const char *pszRoomID, int role, const char *pszRoomName="")
 
ZEGO_API int SendCustomCommand (ROOM::ZegoUser *memberList, unsigned int memberCount, const char *content)
 
ZEGO_API void SetLiveEventCallback (AV::IZegoLiveEventCallback *pCB)
 
ZEGO_API void SetDeviceStateCallback (AV::IZegoDeviceStateCallback *pCB)
 
ZEGO_API void SetNetTypeCallback (AV::IZegoNetTypeCallback *pCB)
 
ZEGO_API AV::DeviceInfoGetAudioDeviceList (AV::AudioDeviceType deviceType, int &device_count)
 
ZEGO_API bool SetAudioDevice (AV::AudioDeviceType deviceType, const char *pszDeviceID)
 
ZEGO_API AV::DeviceVideoCapabilityInfoGetVideoDevCapabilityList (const char *pszVideoDeviceID, int &nVideoCapabilityInfoCount)
 
ZEGO_API void FreeVideoDevCapabilityList (AV::DeviceVideoCapabilityInfo *parrVideoCapability)
 
ZEGO_API AV::DeviceInfoGetVideoDeviceList (int &device_count)
 
ZEGO_API void FreeDeviceList (AV::DeviceInfo *parrDeviceList)
 
ZEGO_API bool SetVideoDevice (const char *pszDeviceID, AV::PublishChannelIndex idx=AV::PUBLISH_CHN_MAIN)
 
ZEGO_API void EnableMixSystemPlayout (bool bEnable)
 
ZEGO_API void MixSysPlayoutWithProperty (bool bEnable, ZegoMixSysPlayoutPropertyMask properties=MIX_PROP_NONE)
 
ZEGO_API bool SetSystemPlayoutVolumeBeforeMixing (int volume)
 
ZEGO_API int GetMicDeviceVolume (const char *deviceId)
 
ZEGO_API void SetMicDeviceVolume (const char *deviceId, int volume)
 
ZEGO_API bool GetMicDeviceMute (const char *deviceId)
 
ZEGO_API void SetMicDeviceMute (const char *deviceId, bool mute)
 
ZEGO_API int GetSpeakerDeviceVolume (const char *deviceId)
 
ZEGO_API void SetSpeakerDeviceVolume (const char *deviceId, int volume)
 
ZEGO_API int GetSpeakerSimpleVolume (const char *deviceId)
 
ZEGO_API void SetSpeakerSimpleVolume (const char *deviceId, int volume)
 
ZEGO_API bool GetSpeakerDeviceMute (const char *deviceId)
 
ZEGO_API void SetSpeakerDeviceMute (const char *deviceId, bool mute)
 
ZEGO_API bool GetSpeakerSimpleMute (const char *deviceId)
 
ZEGO_API void SetSpeakerSimpleMute (const char *deviceId, bool mute)
 
ZEGO_API void GetDefaultVideoDeviceId (char *deviceId, unsigned int *deviceIdLength)
 
ZEGO_API void GetDefaultAudioDeviceId (AV::AudioDeviceType deviceType, char *deviceId, unsigned int *deviceIdLength)
 
ZEGO_API bool SetAudioVolumeNotify (AV::AudioDeviceType deviceType, const char *deviceId)
 
ZEGO_API bool StopAudioVolumeNotify (AV::AudioDeviceType deviceType, const char *deviceId)
 
ZEGO_API bool SetAVEngineCallback (IAVEngineCallback *pCB)
 
ZEGO_API void SetConfig (const char *config)
 
ZEGO_API bool EnableMicDevice (bool enable)
 
ZEGO_API bool SetMultiRoomCallback (IMultiRoomCallback *pCB)
 
ZEGO_API bool SetMultiRoomConfig (bool audienceCreateRoom, bool userStateUpdate)
 
ZEGO_API void SetMultiRoomCustomToken (const char *thirdPartyToken)
 
ZEGO_API void SetMultiRoomMaxUserCount (unsigned int maxCount)
 
ZEGO_API bool LoginMultiRoom (const char *pszRoomID, int role, const char *pszRoomName)
 
ZEGO_API bool LogoutMultiRoom ()
 
ZEGO_API int SendMultiRoomMessage (ROOM::ZegoMessageType type, ROOM::ZegoMessageCategory category, const char *messageContent)
 
ZEGO_API int SendMultiRoomCustomCommand (ROOM::ZegoUser *memberList, unsigned int memberCount, const char *content)
 
ZEGO_API int RelayMultiRoom (ROOM::ZegoRelayType relayType, const char *pszRelayData)
 
ZEGO_API int SetMultiRoomExtraInfo (const char *pszKey, const char *pszValue)
 
ZEGO_API int SendMultiBigRoomMessage (ROOM::ZegoMessageType type, ROOM::ZegoMessageCategory category, const char *messageContent)
 

Variables

ZEGO_API const char * kZegoVideoDataMainPublishingStream
 
ZEGO_API const char * kZegoVideoDataAuxPublishingStream
 
const int kInvalidSeq = -1
 

Enumeration Type Documentation

◆ ZegoMixSysPlayoutPropertyMask

Enumerator
MIX_PROP_NONE 
MIX_PROP_ENABLE_AGC_FOR_SYS_PLAYOUT 

◆ ZegoVideoViewMode

本地预览视频视图的模式

Enumerator
ZegoVideoViewModeScaleAspectFit 

等比缩放,可能有黑边,SDK 默认值

ZegoVideoViewModeScaleAspectFill 

等比缩放填充整View,可能有部分被裁减

ZegoVideoViewModeScaleToFill 

填充整个View

Function Documentation

◆ ActivateAllAudioPlayStream()

ZEGO_API int ZEGO::LIVEROOM::ActivateAllAudioPlayStream ( bool  bActive)

拉流是否接收音频数据

Attention
  1. 可以在InitSDK之后设置,支持拉流时设置
  2. 本地用户会取消或恢复接收所有远端用户的音频流,包括在调用该方法后新加入房间的用户的音频流
  3. 必需此接口和ActivateAudioPlayStream接口均未禁止音频数据,才会接收音频数据
  4. 此接口不影响ActivateAudioPlayStream接口的生命周期
Parameters
bActivetrue 接收,false 不接收
Returns
0 成功,否则失败

◆ ActivateAllVideoPlayStream()

ZEGO_API int ZEGO::LIVEROOM::ActivateAllVideoPlayStream ( bool  bActive)

拉流是否接收视频数据

Attention
  1. 可以在InitSDK之后设置,支持拉流时设置
  2. 本地用户会取消或恢复接收所有远端用户的视频流,包括在调用该方法后新加入房间的用户的视频流
  3. 必需此接口和ActivateVideoPlayStream接口均未禁止视频数据,才会接收视频数据
  4. 此接口不影响ActivateVideoPlayStream接口的生命周期
Parameters
bActivetrue 接收,false 不接收
Returns
0 成功,否则失败

◆ ActivateAudioPlayStream()

ZEGO_API int ZEGO::LIVEROOM::ActivateAudioPlayStream ( const char *  pszStreamID,
bool  bActive 
)

拉流是否接收音频数据

Attention
  1. 可以在拉流 StartPlayingStream 或 StartPlayingStream2 之前或之后设置, 每次拉流都需要重新设置
Parameters
pszStreamID播放流 ID
bActivetrue 接收,false 不接收
Returns
0 成功,否则失败

◆ ActivateVideoPlayStream()

ZEGO_API int ZEGO::LIVEROOM::ActivateVideoPlayStream ( const char *  pszStreamID,
bool  bActive,
AV::VideoStreamLayer  videoLayer = AV::VideoStreamLayer_Auto 
)

拉流是否接收视频数据

Attention
  1. 可以在拉流 StartPlayingStream 或 StartPlayingStream2 之前或之后设置, 每次拉流都需要重新设置
Note
  1. 当推流方开启了分层编码后,拉流方可以通过该 API 在适当时机选择拉取大分辨率图层或小分辨率图层。
Parameters
pszStreamID播放流 ID
bActivetrue 接收,false 不接收
videoLayer视频分层类型,请参考 AV::VideoStreamLayer
Returns
0 成功,否则失败

◆ AddPublishTarget()

ZEGO_API int ZEGO::LIVEROOM::AddPublishTarget ( const char *  strTarget,
const char *  pszStreamID 
)

添加转推地址

Parameters
strTarget转推地址(支持rtmp/avertp)
pszStreamID推流ID
Attention
在InitSDK之后调用

◆ DeletePublishTarget()

ZEGO_API int ZEGO::LIVEROOM::DeletePublishTarget ( const char *  strTarget,
const char *  pszStreamID 
)

删除转推地址

Parameters
strTarget转推地址(支持rtmp/avertp)
pszStreamID推流ID
Attention
在InitSDK之后调用

◆ EnableAEC()

ZEGO_API bool ZEGO::LIVEROOM::EnableAEC ( bool  bEnable)

回声消除开关

Parameters
bEnabletrue 开启,false 关闭
Returns
true 成功,false 失败 @discussion 建议在推流前调用设置

◆ EnableAGC()

ZEGO_API bool ZEGO::LIVEROOM::EnableAGC ( bool  bEnable)

音频采集自动增益开关。windows默认开启;android/ios默认关闭;mac默认音频设备模式为ZEGO_AUDIO_DEVICE_MODE_COMMUNICATION或ZEGO_AUDIO_DEVICE_MODE_COMMUNICATION2时开启,否则关闭

Parameters
bEnabletrue 开启,false 关闭
Returns
true 成功,false 失败 @discussion 建议在推流前调用设置

◆ EnableAudioPostp()

ZEGO_API void ZEGO::LIVEROOM::EnableAudioPostp ( bool  enable,
const char *  streamID 
)

开启/关闭音频后处理特性

Parameters
enabletrue: 开启拉流音频后处理特性;false: 关闭拉流音频后处理特性
streamID流 ID, 当 streamID 为空串时,表明需要混音后的音频数据
Attention
streamID不为空串时,必须在拉流后调用,本次拉流有效
当拉流音频后处理特性开启时,待渲染音频数据通过 SetAudioPostpCallback 设置的回调函数指针返回

◆ EnableBeautifying()

ZEGO_API bool ZEGO::LIVEROOM::EnableBeautifying ( int  nFeature,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

主播开启美颜功能

Parameters
nFeature美颜特性。默认无美颜
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置

◆ EnableCamera()

ZEGO_API bool ZEGO::LIVEROOM::EnableCamera ( bool  bEnable,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

开启摄像头

Parameters
bEnabletrue 开启,false 关闭。默认 true
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ EnableCheckPoc()

ZEGO_API void ZEGO::LIVEROOM::EnableCheckPoc ( bool  bEnable)

帧顺序检测开关

Parameters
bEnalbetrue 检测帧顺序,不支持B帧; false 不检测帧顺序,支持B帧,可能出现短暂花屏

◆ EnableDTX()

ZEGO_API void ZEGO::LIVEROOM::EnableDTX ( bool  bEnable)

是否开启离散音频包发送

Parameters
bEnabletrue 开启,推流中检测为静音的数据包不发送;false 关闭,推流中的静音数据包照常发送。默认是 false。
Attention
推流前调用有效。以 RTC 方式推流,此接口才会生效。
SDK 默认关闭该特性。
Note
可以和 EnableVAD 配合使用。
开启离散音频包发送可以在关闭麦克风或者静音的状态下,停止音频包的发送,节省用户流量。
如果为音频单流(非混流)转推 CDN,开启此选项将导致 CDN 在设定时间内未收到数据包认为流关闭而断开连接,所以此种情况不建议开启。

◆ EnableLoopback()

ZEGO_API bool ZEGO::LIVEROOM::EnableLoopback ( bool  bEnable)

开启采集监听

Parameters
bEnabletrue 打开,false 关闭。默认 false
Returns
true 成功,false 失败 @discussion 推流时可调用本 API 进行参数配置。连接耳麦时设置才实际生效。开启采集监听,主播方讲话后,会听到自己的声音。

◆ EnableMic()

ZEGO_API bool ZEGO::LIVEROOM::EnableMic ( bool  bEnable)

开启麦克风

Parameters
bEnabletrue 打开,false 关闭。默认 true
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置

◆ EnableMicDevice()

ZEGO_API bool ZEGO::LIVEROOM::EnableMicDevice ( bool  enable)

设置是否允许SDK使用麦克风设备

Parameters
enabletrue 表示允许使用麦克风,false 表示禁止使用麦克风,此时如果SDK在占用麦克风则会立即释放。
Returns
bool true 调用成功,false 调用失败。 @discussion 调用时机为引擎创建后的任意时刻。
Note
接口由于涉及对设备的操作,极为耗时,不建议随便调用,只在真正需要让出麦克风给其他应用的时候才调用。

◆ EnableMixSystemPlayout()

ZEGO_API void ZEGO::LIVEROOM::EnableMixSystemPlayout ( bool  bEnable)

系统声卡声音采集开关

Parameters
bEnabletrue 打开,false 失败

◆ EnableNoiseSuppress()

ZEGO_API bool ZEGO::LIVEROOM::EnableNoiseSuppress ( bool  bEnable)

音频采集噪声抑制开关

Parameters
bEnalbetrue 开启,false 关闭
Returns
true 调用成功,false 调用失败

◆ EnablePlayVirtualStereo()

ZEGO_API bool ZEGO::LIVEROOM::EnablePlayVirtualStereo ( bool  enable,
int  angle,
const char *  streamID 
)

设置拉的流的虚拟立体声源相对于本端的角度,可以实现空间音频效果

Parameters
enabletrue 开启,false 关闭,默认关闭
angle虚拟立体声中声源的角度,范围为0~360,90为正前方,0对应正右方
streamID流 ID
Returns
0 成功,否则失败
Note
调用时机为拉流前或者拉流中, 每次拉流都需要重新设置

◆ EnablePreviewMirror()

ZEGO_API bool ZEGO::LIVEROOM::EnablePreviewMirror ( bool  bEnable,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

是否启用预览镜像

Parameters
bEnabletrue 启用,false 不启用。默认 true
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Note
默认启用预览镜像

◆ EnableScreenCaptureEncodeOptimization()

ZEGO_API void ZEGO::LIVEROOM::EnableScreenCaptureEncodeOptimization ( bool  enable,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

开启屏幕分享编码优化

Parameters
enable是否开启。true:开启,false:关闭。默认是关闭的。
idx推流通道
Attention
前置条件:仅在软件编码的情况下使用 OpenH264 编码时有效。在默认情况下 SDK 就是使用 OpenH264 编码器。
调用 RequireHardwareAccelerated 或者 RequireHardwareEncoder开启硬件编码后,本接口失效。
调用 SetVideoCodecId 设置非默认选项时,本接口失效。
Note
初始化 SDK 之后,推流之前设置有效,当次推流结束后失效。
推荐使用场景:在屏幕共享推流时,SDK 会优化编码,使得清晰度会好很多,视频码率比较稳定,还支持分层编码。

◆ EnableSelectedAudioRecord()

ZEGO_API bool ZEGO::LIVEROOM::EnableSelectedAudioRecord ( unsigned int  uMask,
int  nSampleRate = 44100,
int  nChannels = 1 
)

音频录制回调开关

Attention
  1. 在启动推流或者启动本地录制(MediaRecorder)的时候,才能开启音频录制。
Parameters
uMask启用音频源选择,参考 AV::ZegoAVAPIAudioRecordMask
nSampleRate采样率 8000, 16000, 22050, 24000, 32000, 44100, 48000
nChannels声道数 1(单声道) 或 2(双声道)
Returns
true 成功,false 失败

◆ EnableSpeaker()

ZEGO_API bool ZEGO::LIVEROOM::EnableSpeaker ( bool  bEnable)

(声音输出)扬声器开关

Note
  1. 设置为关闭后,默认扬声器和耳机均无声音输出。
Parameters
bEnabletrue 开启,false 关闭。默认 true
Returns
true 成功,false 失败

◆ EnableTrafficControl()

ZEGO_API void ZEGO::LIVEROOM::EnableTrafficControl ( int  properties,
bool  bEnable,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

是否开启流量控制

Parameters
properites流量控制属性 (帧率,分辨率),参考 ZegoTrafficControlProperty 定义。默认 ZEGO_TRAFFIC_CONTROL_ADAPTIVE_FPS
bEnabletrue 开启,false 关闭。默认开启。
idx推流通道,参考 AV::PublishChannelIndex 定义。默认 AV::PUBLISH_CHN_MAIN。
Note
bEnable 设置为 false 时,properties 参数无效。
在初始化 SDK 之后,推流之前调用,如果每次推流前不重新设置,将继续使用上次的配置,在反初始化 SDK 之后失效。
只适用于 UDP 推流。
默认开启主通道, 关闭其他通道。

◆ EnableTransientNoiseSuppress()

ZEGO_API bool ZEGO::LIVEROOM::EnableTransientNoiseSuppress ( bool  bEnable)

音频采集的瞬态噪声抑制开关(消除键盘、敲桌子等瞬态噪声)

Parameters
bEnabletrue 开启,false 关闭
Returns
true 调用成功,false 调用失败

◆ EnableVAD()

ZEGO_API void ZEGO::LIVEROOM::EnableVAD ( bool  bEnable)

是否开启语音活动检测

Parameters
bEnabletrue 开启;false 关闭,默认关闭
Attention
确保在推流前调用,只有纯 UDP 方案才可以调用此接口

◆ EnableViewMirror()

ZEGO_API bool ZEGO::LIVEROOM::EnableViewMirror ( bool  bEnable,
const char *  pszStreamID 
)

是否启用播放镜像

Parameters
bEnabletrue 启用,false 不启用。默认 true
pszStreamID播放流 ID
Returns
true 成功,false 失败
Note
必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效,每次拉流都需要重新设置
默认启用播放镜像

◆ EndJoinLive()

ZEGO_API int ZEGO::LIVEROOM::EndJoinLive ( const char *  pszUserID)

结束连麦

Parameters
pszUserID指定结束连麦的用户 ID
Returns
请求seq,正值为有效,等待 ILivePublisherCallback::OnEndJoinLive 回调

◆ FreeDeviceList()

ZEGO_API void ZEGO::LIVEROOM::FreeDeviceList ( AV::DeviceInfo parrDeviceList)

释放设备列表

Parameters
parrDeviceList设备列表

◆ FreeVideoCodecCapabilityList()

ZEGO_API void ZEGO::LIVEROOM::FreeVideoCodecCapabilityList ( AV::ZegoCodecCapabilityInfo parrCodecCapability)

释放设备编码格式的能力列表

Parameters
parrCodecCapability设备编码格式的能力列表

◆ FreeVideoDevCapabilityList()

ZEGO_API void ZEGO::LIVEROOM::FreeVideoDevCapabilityList ( AV::DeviceVideoCapabilityInfo parrVideoCapability)

释放视频设备的分辨率列表

Parameters
parrVideoCapability视频设备的分辨率列表

◆ GetAudioDeviceList()

ZEGO_API AV::DeviceInfo* ZEGO::LIVEROOM::GetAudioDeviceList ( AV::AudioDeviceType  deviceType,
int &  device_count 
)

获取音频设备列表

Parameters
deviceType设备类型
device_count设备数量
Returns
音频设备列表

◆ GetAudioRouteType()

ZEGO_API int ZEGO::LIVEROOM::GetAudioRouteType ( )

获取当前的 audio route type

Returns
audio route type

◆ GetCaptureSoundLevel()

ZEGO_API float ZEGO::LIVEROOM::GetCaptureSoundLevel ( )

获取当前采集的音量

Returns
当前采集音量大小

◆ GetChannelExtraParam()

ZEGO_API void* ZEGO::LIVEROOM::GetChannelExtraParam ( AV::ChannelExtraParamKey  key,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

获取推流通道扩展参数

Parameters
key需要获取的参数类型,目前仅支持 AVCaptureDevice
idx推流通道索引,默认主通道
Attention
初始化 SDK 之后调用
目前仅支持 Mac/iOS 平台

◆ GetDefaultAudioDeviceId()

ZEGO_API void ZEGO::LIVEROOM::GetDefaultAudioDeviceId ( AV::AudioDeviceType  deviceType,
char *  deviceId,
unsigned int *  deviceIdLength 
)

获取默认的音频设备

Parameters
deviceType音频类型
deviceId设备 Id
deviceIdLengthdeviceId 字符串分配的长度
Note
如果传入的字符串 buffer 长度小于默认 deviceId 的长度,则 deviceIdLength 返回实际需要的字符串长度

◆ GetDefaultVideoDeviceId()

ZEGO_API void ZEGO::LIVEROOM::GetDefaultVideoDeviceId ( char *  deviceId,
unsigned int *  deviceIdLength 
)

获取默认的视频设备

Parameters
deviceId设备 Id
deviceIdLengthdeviceId 字符串分配的长度
Note
如果传入的字符串 buffer 长度小于默认 deviceId 的长度,则 deviceIdLength 返回实际需要的字符串长度

◆ GetMaxPlayChannelCount()

ZEGO_API int ZEGO::LIVEROOM::GetMaxPlayChannelCount ( )

获取 SDK 支持的最大同时播放流数

Returns
最大支持播放流数

◆ GetMaxPublishChannelCount()

ZEGO_API int ZEGO::LIVEROOM::GetMaxPublishChannelCount ( )

获取 SDK 支持的最大同时支持的推流路数

Returns
最大支持推流路数

◆ GetMicDeviceMute()

ZEGO_API bool ZEGO::LIVEROOM::GetMicDeviceMute ( const char *  deviceId)

获取麦克风是否静音

Parameters
deviceId麦克风 deviceId
Returns
true 静音,false 不静音

◆ GetMicDeviceVolume()

ZEGO_API int ZEGO::LIVEROOM::GetMicDeviceVolume ( const char *  deviceId)

获取麦克风音量

Parameters
deviceId麦克风 deviceId
Returns
-1: 获取失败,0~100 麦克风音量
Note
切换麦克风后需要重新获取麦克风音量

◆ GetRoomMessage()

ZEGO_API bool ZEGO::LIVEROOM::GetRoomMessage ( ROOM::ZegoMessagePriority  priority,
bool  ascendOrder,
unsigned long long  messageId,
int  messageCount 
)

获取聊天室历史消息

Parameters
priority消息优先级
ascendOrder历史消息新旧顺序
messageId消息ID
messageCount历史消息条数
Returns
操作是否成功

◆ GetSDKVersion()

ZEGO_API const char* ZEGO::LIVEROOM::GetSDKVersion ( )

获取SDK版本号

Returns
版本号

◆ GetSDKVersion2()

ZEGO_API const char* ZEGO::LIVEROOM::GetSDKVersion2 ( )

获取SDK版本号2

Returns
版本号2

◆ GetSoundLevel()

ZEGO_API float ZEGO::LIVEROOM::GetSoundLevel ( const char *  pszStreamID)

获取当前播放视频的实时音量

Attention
  1. 必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效。
Note
1.播放直播时通过此 API 获取当前音量。
Parameters
pszStreamID播放流 ID
Returns
视频的实时音量值

◆ GetSpeakerDeviceMute()

ZEGO_API bool ZEGO::LIVEROOM::GetSpeakerDeviceMute ( const char *  deviceId)

获取扬声器是否静音

Parameters
deviceId扬声器 deviceId
Returns
true 静音,false 不静音

◆ GetSpeakerDeviceVolume()

ZEGO_API int ZEGO::LIVEROOM::GetSpeakerDeviceVolume ( const char *  deviceId)

获取扬声器音量

Parameters
deviceId扬声器 deviceId
Returns
-1: 获取失败,0~100 扬声器音量
Note
切换扬声器后需要重新获取音量

◆ GetSpeakerSimpleMute()

ZEGO_API bool ZEGO::LIVEROOM::GetSpeakerSimpleMute ( const char *  deviceId)

获取 App 中扬声器是否静音

Parameters
deviceId扬声器 deviceId
Returns
true 静音,false 不静音

◆ GetSpeakerSimpleVolume()

ZEGO_API int ZEGO::LIVEROOM::GetSpeakerSimpleVolume ( const char *  deviceId)

获取 App 中扬声器音量

Parameters
deviceId扬声器 deviceId
Returns
-1: 获取失败,0~100 扬声器音量

◆ GetUserID()

ZEGO_API const char* ZEGO::LIVEROOM::GetUserID ( )

获取用户信息

Returns
UserID

◆ GetVideoCodecCapabilityList()

ZEGO_API AV::ZegoCodecCapabilityInfo* ZEGO::LIVEROOM::GetVideoCodecCapabilityList ( int &  len)

获取设备编码格式的能力,外部拿到信息 建议立即调用FreeVideoCodecCapabilityList 销毁SDK申请的内存。

Parameters
len设备支持编码格式个数
Returns
设备编码格式的能力列表
Attention
初始化 SDK 之后调用
建议在回调初始化 SDK 成功之后调用该接口

◆ GetVideoDevCapabilityList()

ZEGO_API AV::DeviceVideoCapabilityInfo* ZEGO::LIVEROOM::GetVideoDevCapabilityList ( const char *  pszVideoDeviceID,
int &  nVideoCapabilityInfoCount 
)

获取视频设备的分辨率列表,获取完成后,外部拿到信息 建议立即调用FreeVideoDevCapabilityList 销毁SDK申请的内存。 mac 平台需在initsdk 回调后调用

Parameters
pszVideoDeviceID视频设备 ID
nVideoCapabilityInfoCount支持分辨率列表个数
Returns
true 视频设备支持分辨率列表

◆ GetVideoDeviceList()

ZEGO_API AV::DeviceInfo* ZEGO::LIVEROOM::GetVideoDeviceList ( int &  device_count)

获取视频设备列表

Parameters
device_count设备数量
Returns
视频设备列表

◆ InitPlatform()

ZEGO_API bool ZEGO::LIVEROOM::InitPlatform ( void *  jvm = 0,
void *  ctx = 0,
void *  clsLoader = 0 
)

初始化引擎

Parameters
jvmjvm 仅用于 Android
ctxctx 仅用于 Android
clsLoader仅用于 Android
Returns
true 成功,false 失败

◆ InitSDK()

ZEGO_API bool ZEGO::LIVEROOM::InitSDK ( unsigned int  uiAppID,
unsigned char *  pBufAppSignature,
int  nSignatureSize 
)

初始化 SDK

Parameters
uiAppIDZego 派发的数字 ID, 各个开发者的唯一标识
pBufAppSignatureZego 派发的签名, 用来校验对应 appID 的合法性
nSignatureSize签名长度(字节)
Returns
true 成功,false 失败
Note
初始化 SDK 失败可能导致 SDK 功能异常

◆ InviteJoinLive()

ZEGO_API int ZEGO::LIVEROOM::InviteJoinLive ( const char *  pszUserID)

邀请连麦

Parameters
pszUserID准备邀请的用户 ID
Returns
请求 seq,正值为成功,其他为失败
Attention
邀请成功后,等待 ILivePublisherCallback::OnInviteJoinLiveResponse 回调
Note
被邀请的用户会收到 OnInviteJoinLiveRequest 回调

◆ LoginMultiRoom()

ZEGO_API bool ZEGO::LIVEROOM::LoginMultiRoom ( const char *  pszRoomID,
int  role,
const char *  pszRoomName 
)

登录第二套房间接口

Returns
true 成功,false失败,参照对应错误码
Attention
登录成功后,等待 IMultiRoomCallback::OnLoginMultiRoom 回调

◆ LoginRoom()

ZEGO_API bool ZEGO::LIVEROOM::LoginRoom ( const char *  pszRoomID,
int  role,
const char *  pszRoomName = "" 
)

登录房间

Parameters
pszRoomID房间 ID
role成员角色, 参见 ZegoRoomRole
pszRoomName房间名称
Returns
true 成功,false 失败

◆ LogoutMultiRoom()

ZEGO_API bool ZEGO::LIVEROOM::LogoutMultiRoom ( )

退出第二套房间

Returns
true 成功,false 失败,参照对应错误码
Attention
退出成功后,等待 IMultiRoomCallback::OnLogoutRoom 回调

◆ LogoutRoom()

ZEGO_API bool ZEGO::LIVEROOM::LogoutRoom ( )

退出房间

Returns
成功,false 失败
Attention
退出登录后,等待 IRoomCallback::OnLogoutRoom 回调
Note
退出房间会停止所有的推拉流

◆ MixSysPlayoutWithProperty()

ZEGO_API void ZEGO::LIVEROOM::MixSysPlayoutWithProperty ( bool  bEnable,
ZegoMixSysPlayoutPropertyMask  properties = MIX_PROP_NONE 
)

采集系统声卡的声音

Parameters
bEnabletrue 打开,false 关闭
properties详情见 ZegoMixSysPlayoutPropertyMask

◆ MuteAudioPublish()

ZEGO_API int ZEGO::LIVEROOM::MuteAudioPublish ( bool  mute,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

推流时是否发送音频数据。

Parameters
mutetrue 不发送,false 发送
idx推流通道索引. 默认为主Channel
Returns
0 代表设置成功成功,否则设置失败
Attention
可以通过 OnAudioRecordCallback 回调获取本地音频数据

◆ MuteVideoPublish()

ZEGO_API int ZEGO::LIVEROOM::MuteVideoPublish ( bool  mute,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

推流时是否发送视频数据。

Parameters
mutetrue 不发送(仅预览),false 发送
idx推流通道索引. 默认为主Channel
Returns
0 代表设置成功成功,否则设置失败
Attention
拉流端通过 OnRemoteCameraStatusUpdate 回调监听此状态是否改变;
仅拉 UDP 流时,才能接收到状态变更通知;

◆ RelayMultiRoom()

ZEGO_API int ZEGO::LIVEROOM::RelayMultiRoom ( ROOM::ZegoRelayType  relayType,
const char *  pszRelayData 
)

转发接口

Parameters
relayType转发类型
pszRelayData转发内容
Returns
发送序号 seq

◆ RequestJoinLive()

ZEGO_API int ZEGO::LIVEROOM::RequestJoinLive ( )

向房间内的主播申请连麦

Note
  1. 调用成功后,房间内的主播会收到 ILivePublisherCallback::OnJoinLiveRequest 回调。
Returns
请求 seq,正值为有效,等待 ILivePlayerCallback::OnJoinLiveResponse 回调,回调带回的 seq 与此函数返回值一致

◆ RequireHardwareDecoder()

ZEGO_API bool ZEGO::LIVEROOM::RequireHardwareDecoder ( bool  enable)

为指定拉流通道开启/关闭硬件解码。

Attention
必须在调用拉流接口 StartPlayingStream 或 StartPlayingStream2 前设置; 在反初始化 SDK 前,设置的值一直有效。
Parameters
enabletrue 打开,false 关闭。默认 false
Returns
true 成功,false 失败
Note
打开硬编硬解开关需后台可控,避免碰到版本升级或者硬件升级时出现硬编硬解失败的问题;
可通过此 API 分别设置全局硬解码特性;

◆ RequireHardwareEncoder()

ZEGO_API bool ZEGO::LIVEROOM::RequireHardwareEncoder ( bool  bRequired)

开启/关闭推流硬件编码。

Attention
必须在推流前设置; 在反初始化 SDK 前,设置的值一直有效。
Parameters
bRequiredtrue 开启,false 关闭。默认 false
Returns
true 成功,false 失败
Note
打开硬编硬解开关需后台可控,避免碰到版本升级或者硬件升级时出现硬编硬解失败的问题;

◆ RespondInviteJoinLiveReq()

ZEGO_API bool ZEGO::LIVEROOM::RespondInviteJoinLiveReq ( int  seq,
int  rspResult 
)

回应房间内主播的连麦邀请

Note
  1. 一般在 ILivePlayerCallback::OnInviteJoinLiveRequest 中收到邀请后,调用此 API 回应
Parameters
seq回应的邀请 seq
rspResult回应,0 表示同意
Returns
true 成功,false 失败

◆ RespondJoinLiveReq()

ZEGO_API bool ZEGO::LIVEROOM::RespondJoinLiveReq ( int  seq,
int  rspResult 
)

回应连麦申请

Parameters
seq收到的连麦申请 seq (通过 ILivePublisherCallback::OnJoinLiveRequest 收到申请)
rspResult回应,0 表示同意
Returns
true 成功,false 失败
Note
申请者会收到 OnJoinLiveResponse 回调

◆ SendBigRoomMessage()

ZEGO_API int ZEGO::LIVEROOM::SendBigRoomMessage ( ROOM::ZegoMessageType  type,
ROOM::ZegoMessageCategory  category,
const char *  messageContent 
)

发送不可靠信道消息,主要用于大并发的场景,发送一些非必须到达的消息

Parameters
type消息类型
category消息分类
messageContent消息内容, 小于 1024 字节
Returns
消息 seq

◆ SendCustomCommand()

ZEGO_API int ZEGO::LIVEROOM::SendCustomCommand ( ROOM::ZegoUser memberList,
unsigned int  memberCount,
const char *  content 
)

发送自定义信令

Parameters
memberList信令发送成员列表
memberCount成员个数
content信令内容
Returns
消息 seq

◆ SendMultiBigRoomMessage()

ZEGO_API int ZEGO::LIVEROOM::SendMultiBigRoomMessage ( ROOM::ZegoMessageType  type,
ROOM::ZegoMessageCategory  category,
const char *  messageContent 
)

发送不可靠信道消息,主要用于大并发的场景,发送一些非必须到达的消息

Parameters
type消息类型
category消息分类
messageContent消息内容, 不超过 512 字节
Returns
消息 seq

◆ SendMultiRoomCustomCommand()

ZEGO_API int ZEGO::LIVEROOM::SendMultiRoomCustomCommand ( ROOM::ZegoUser memberList,
unsigned int  memberCount,
const char *  content 
)

发送房间自定义信令

Parameters
memberList信令发送成员列表
memberCount成员个数
content信令内容
Returns
消息 seq

◆ SendMultiRoomMessage()

ZEGO_API int ZEGO::LIVEROOM::SendMultiRoomMessage ( ROOM::ZegoMessageType  type,
ROOM::ZegoMessageCategory  category,
const char *  messageContent 
)

发送房间消息

Parameters
type消息类型
category消息分类
messageContent消息内容, 不超过 512 字节
Returns
消息 seq

◆ SendRoomMessageEx()

ZEGO_API int ZEGO::LIVEROOM::SendRoomMessageEx ( ROOM::ZegoMessageType  type,
ROOM::ZegoMessageCategory  category,
const char *  messageContent 
)

发送聊天室消息

Parameters
type消息类型
category消息分类
messageContent消息内容, 小于1024 字节
Returns
消息 seq

◆ SetAECMode()

ZEGO_API void ZEGO::LIVEROOM::SetAECMode ( AV::ZegoAECMode  mode)

设置回声消除模式

Parameters
mode回声消除模式 @discussion 建议在推流前调用设置

◆ SetAudioBitrate()

ZEGO_API bool ZEGO::LIVEROOM::SetAudioBitrate ( int  bitrate)

设置音频码率

Parameters
bitrate码率
Returns
true 成功,false 失败

◆ SetAudioCaptureShiftOnMix()

ZEGO_API void ZEGO::LIVEROOM::SetAudioCaptureShiftOnMix ( int  shiftMS)

设置麦克风采集声音在混音过程中的偏移

Parameters
shiftMS偏移值,当 shiftMS 小于 0 时,混音时会延迟播放音;当 shiftMS 大于 0 时,混音时会延迟采集音。有效值范围[-500, 500],单位毫秒,默认值 0
Attention
初始化 SDK 之后调用有效,推流前、推流过程中调用都有效
只适用于 ktv 场景,偏移麦克风采集的人声,匹配播放器的伴奏声音
当推流主通道采用音频内部采集时,对主通道推流,主通道本地录制有效

◆ SetAudioChannelCount()

ZEGO_API void ZEGO::LIVEROOM::SetAudioChannelCount ( int  count)

设置所有推流通道的推流音频声道数

Parameters
count声道数,1 或 2,默认为 1(单声道)
Attention
必须在推流前设置
Note
SetLatencyMode 设置为 ZEGO_LATENCY_MODE_NORMAL, ZEGO_LATENCY_MODE_NORMAL2, ZEGO_LATENCY_MODE_LOW3 才能设置双声道
在移动端双声道通常需要配合音频前处理才能体现效果。

◆ SetAudioChannelCountByChannel()

ZEGO_API void ZEGO::LIVEROOM::SetAudioChannelCountByChannel ( int  count,
AV::PublishChannelIndex  idx 
)

设置指定推流通道的推流音频声道数

Parameters
count声道数,1 或 2,默认为 1(单声道)
idx推流 channel Index. 详见 AV::PublishChannelIndex
Attention
必须在推流前设置
Note
SetLatencyMode 设置为 ZEGO_LATENCY_MODE_NORMAL, ZEGO_LATENCY_MODE_NORMAL2, ZEGO_LATENCY_MODE_LOW3 才能设置双声道
在移动端双声道通常需要配合音频前处理才能体现效果。

◆ SetAudioDevice()

ZEGO_API bool ZEGO::LIVEROOM::SetAudioDevice ( AV::AudioDeviceType  deviceType,
const char *  pszDeviceID 
)

设置选用音频设备

Parameters
deviceType设备类型
pszDeviceID设备 ID
Returns
true 成功,false 失败

◆ SetAudioDeviceMode()

ZEGO_API void ZEGO::LIVEROOM::SetAudioDeviceMode ( AV::ZegoAVAPIAudioDeviceMode  mode)

设置音频设备模式

Parameters
mode模式, 默认 ZEGO_AUDIO_DEVICE_MODE_AUTO
Attention
在推流预览前调用有效

◆ SetAudioEqualizerGain()

ZEGO_API bool ZEGO::LIVEROOM::SetAudioEqualizerGain ( int  bandIndex,
float  bandGain 
)

音效均衡器

Parameters
bandIndex取值范围[0, 9]。分别对应10个频带,其中心频率分别是[31, 62, 125, 250, 500, 1K, 2K, 4K, 8K, 16K]Hz
bandGain取值范围[-15, 15]。默认值是0,如果所有频带的增益值全部为0,则会关闭EQ功能
Returns
true 调用成功,false 调用失败
Attention
在InitSDK之后调用有效。使用此接口前请与即构技术支持联系确认是否支持此功能
Deprecated:
请使用 AUDIOPROCESSING::SetAudioEqualizerGain(int, float)

◆ SetAudioMixMode()

ZEGO_API bool ZEGO::LIVEROOM::SetAudioMixMode ( AV::ZegoAudioMixMode  mixMode,
const char **  pszStreamIDList,
int  num 
)

设置多路混音时突出的拉流ID,当有多路流同时发声,将突出pszStreamIDList中的流

Parameters
mixModeZEGO_AUDIO_MIX_MODE_RAW时关闭该功能,ZEGO_AUDIO_MIX_MODE_FOCUSED时开启
pszStreamIDList需要突出的拉流ID
num需要突出的拉流ID的数量[0, 4]
Returns
true: 设置成功, false 设置失败
Attention
任意时刻调用有效,退出房间重置状态
当mixMode为ZEGO_AUDIO_MIX_MODE_FOCUSED 且 num为0时,自动挑选突出最多4路流
当mixMode为ZEGO_AUDIO_MIX_MODE_FOCUSED 且 所有设置的流都没在拉时,自动挑选突出最多4路流

◆ SetAudioPostpCallback()

ZEGO_API void ZEGO::LIVEROOM::SetAudioPostpCallback ( AVE::OnPostpCallback  callback,
const AVE::ExtPostpSet config 
)

设置音频后处理函数

Parameters
callback音频后处理函数指针
config预处理的采样率等参数设置
Attention
必须在 InitSDK 后且在拉流前调用
仅在使用 EnableAudioPostp 开启了音频后处理特性后才会回调
请确保在当前线程完成,且不要做耗时操作

◆ SetAudioPrepCallback()

ZEGO_API void ZEGO::LIVEROOM::SetAudioPrepCallback ( AVE::OnPrepCallback  callback,
const AVE::ExtPrepSet config 
)

设置音频前处理函数, 并开启/关闭音频前处理特性

Parameters
callback音频前处理函数指针
config预处理的采样率等参数设置
Attention
必须在 InitSDK 后且在推流前调用

◆ SetAudioRecordCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetAudioRecordCallback ( AV::IZegoAudioRecordCallback pCB)

设置音频录制回调,以获取录制的音频数据

Parameters
pCB实现了 AV::IZegoAudioRecordCallback 回调的对象指针,以获取录制的音频数据
Returns
true 成功,false 失败

◆ SetAudioVolumeNotify()

ZEGO_API bool ZEGO::LIVEROOM::SetAudioVolumeNotify ( AV::AudioDeviceType  deviceType,
const char *  deviceId 
)

监听设备的音量变化

Parameters
deviceType音频类型
deviceId设备 Id
Returns
true 成功,false 失败
Note
设置后如果有音量变化(包括 app 音量)通过 IZegoDeviceStateCallback::OnAudioVolumeChanged 回调

◆ SetAVEngineCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetAVEngineCallback ( IAVEngineCallback pCB)

设置“音视频引擎状态通知”的回调

Parameters
pCB回调对象指针
Returns
true 成功,false 失败

◆ SetBuiltInSpeakerOn()

ZEGO_API bool ZEGO::LIVEROOM::SetBuiltInSpeakerOn ( bool  bOn)

默认扬声器开关

Attention
  1. 在拉流 StartPlayingStream 或 StartPlayingStream2 之前设置,且当前的 SetAudioDeviceMode 设置为 ZEGO_AUDIO_DEVICE_MODE_COMMUNICATION 时有效。
Note
  1. 设置为关闭后,扬声器无声音,耳机仍有声音输出。
Parameters
bOntrue 打开,false 关闭。默认 true
Returns
true 成功,false 失败

◆ SetBusinessType()

ZEGO_API bool ZEGO::LIVEROOM::SetBusinessType ( int  nType)

设置业务类型

Parameters
nType业务类型,取值 0(直播类型)或 2(实时音视频类型)。默认为 0
Returns
true 成功,false 失败
Attention
确保在创建接口对象前调用

◆ SetCaptureFrameRotation()

ZEGO_API bool ZEGO::LIVEROOM::SetCaptureFrameRotation ( int  nRotation,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频采集旋转角度

Parameters
nRotation逆时针旋转角度(0/90/180/270)。默认 0
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
在InitSDK之后调用有效,uninitSDK前有效。支持在推流时调用。

◆ SetCapturePipelineScaleMode()

ZEGO_API void ZEGO::LIVEROOM::SetCapturePipelineScaleMode ( AV::ZegoCapturePipelineScaleMode  mode)

设置视频采集缩放时机

Parameters
mode视频采集缩放时机,请参考 AV::ZegoCapturePipelineScaleMode 定义。默认为 ZegoCapturePipelinePreScale @discussion 初始化 SDK 后,StartPreview, StartPublish 前调用。摄像头启动之后设置不会立即生效,而是在下次摄像头启动时生效。

◆ SetCaptureVolume()

ZEGO_API void ZEGO::LIVEROOM::SetCaptureVolume ( int  volume)

设置采集音量

Parameters
volume音量大小,取值范围 [0, 200], 默认 100
Attention
SDK初始化成功后调用

◆ SetCDNPublishTarget()

ZEGO_API void ZEGO::LIVEROOM::SetCDNPublishTarget ( const char *  pszCDNPublishTarget,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

单主播模式下,自定义直推CDN的地址

Parameters
pszCDNPublishTarget目的 rtmp 推流地址
idx推流 channel Index. 默认为主Channel

◆ SetChannelExtraParam()

ZEGO_API void ZEGO::LIVEROOM::SetChannelExtraParam ( const char *  param_config,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

给推流通道设置扩展参数,一般不建议修改

Parameters
param_config参数配置信息
idx推流通道索引,默认主通道
Attention
配置项写法,例如 "zego_channel_param_key_video_x264_config_tune=animation", 等号后面值的类型要看下面每一项的定义
"zego_channel_param_key_video_x264_config_tune", string value: animation, 设置编码的 tune 值,目前只支持 animation,仅使用 X264 编码时有效
初始化 SDK 之后推流前设置才生效,推流过程中设置无效

◆ SetConfig()

ZEGO_API void ZEGO::LIVEROOM::SetConfig ( const char *  config)

设置配置信息

Parameters
configconfig 配置信息
Attention
具体配置信息请咨询技术支持
配置项的写法,例如 "keep_audio_session_active=true", 等号后面值的类型要看下面每一项的定义
"prefer_play_ultra_source", int value, 确保在 InitSDK 前调用,但开启拉流加速(config为“prefer_play_ultra_source=1”)可在 InitSDK 之后,拉流之前调用
"keep_audio_session_active", bool value, default: false, must be setting before engine started. if set true, app need to set the session inactive yourself. just be available for iOS
"enforce_audio_loopback_in_sync", bool value, default: false. enforce audio loopback in synchronous method for iOS
"audio_session_mix_with_others", bool value, default: true. set AVAudioSessionCategoryOptionMixWithOthers for iOS
"camera_orientation_mode", string value: auto/hardcode/0/90/180/270. for Android, Windows
"camera_check_position", bool value, default: false. for Android
"lower_audio_cap_sample_rate", bool value, default: false. enforce to use lower audio capture sample. for Android
"alsa_capture_device_name" string value: plughw:[card_id],[device_id], eg: plughw:1,0, default is plug:default. view the device list with arecord. for Linux
"alsa_playback_device_name" string value: plughw:[card_id],[device_id], eg: plughw:1,0, default is plug:default. view the device list with aplay. for Linux
"room_retry_time", uint32 value, default:300S 设置房间异常后自动恢复最大重试时间,SDK尽最大努力恢复,单位为S,SDK默认为300s,设置为0时不重试
"av_retry_time", uint32 value, default:300S 设置推拉流异常后自动恢复最大重试时间,SDK尽最大努力恢复,单位为S,SDK默认为300s,设置为0时不重试
"device_mgr_mode=1" 设备管理模式 1:手动模式 2:半自动模式 3:全自动模式 默认选项 1
"play_clear_last_frame", bool value, default false. 停止拉流时,是否清除最后一帧内容
"preview_clear_last_frame", bool value, default false. 停止预览时,是否清除最后一帧内容
"vcap_external_handle_rotation", bool value, default true, 表示在推流端处理旋转;设置为 vcap_external_handle_rotation=false 时,会把旋转值传到拉流端(仅为 UDP 时有效)。这个配置目前只对外部采集的内存模式和 CVPixelBuffer 模式生效
"room_user_update_optimize", bool value, default:false 是否开启SDK 用户回调优化,登录房间之前设置,之后一直生效。设置room_user_update_optimize=true 时,后续SDK回调OnUserUpdate 将只会在首次登陆成功,房间内有用户时回调全量,后续都增量回调,SDK内部将会维护房间列表数据,外部不需再存储做比对逻辑.
"audio_jitter_break_threshold_ms", uint32 value, default:200ms 定义音频卡顿时长,当音频卡顿时长超过该值时,认为存在卡顿,单位为ms,SDK默认为200ms,取值范围[10,2000]
"video_jitter_break_threshold_ms", uint32 value, default:500ms 定义视频卡顿时长,当视频卡顿时长超过该值时,认为存在卡顿,单位为ms,SDK默认为500ms,取值范围[500,2000]
"transform_http_to_https_on_init", bool value, default false,控制是否在initSDK时使用https替代http
"enable_audio_device_greylist", bool value, default false, 控制是否开启音频输出设备灰名单(当开启时,灰名单列表中的音频输出设备会被过滤掉,但若不存在灰名单之外的设备时,不做过滤)

◆ SetCustomPublishTarget()

ZEGO_API void ZEGO::LIVEROOM::SetCustomPublishTarget ( const char *  pszCustomPublishTarget,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

自定义转推目的地

Parameters
pszCustomPublishTarget目的 rmtp 推流地址
idx推流 channel Index. 默认为主Channel

◆ SetCustomToken()

ZEGO_API void ZEGO::LIVEROOM::SetCustomToken ( const char *  thirdPartyToken)

设置自定义token信息

Parameters
thirdPartyToken第三方传入的token @discussion 使用此函数验证登录及推流时用户的合法性,登录房间前调用,token的生成规则请联系即构。若不需要验证用户合法性,不需要调用此函数 @discussion 在登录房间前调用有效,支持登录后重置,退出房间后失效

◆ SetDeviceStateCallback()

ZEGO_API void ZEGO::LIVEROOM::SetDeviceStateCallback ( AV::IZegoDeviceStateCallback pCB)

设置音频视频设备变化的回调

Parameters
pCB回调对象指针

◆ SetFilter()

ZEGO_API bool ZEGO::LIVEROOM::SetFilter ( int  nIndex,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置滤镜

Parameters
nIndex滤镜索引。默认不使用滤镜
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置

◆ SetIMCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetIMCallback ( IIMCallback pCB)

设置 IM 信息通知的回调对象

Parameters
pCB回调对象指针
Returns
true 成功,false 失败

◆ SetLatencyMode()

ZEGO_API void ZEGO::LIVEROOM::SetLatencyMode ( AV::ZegoAVAPILatencyMode  mode)

设置所有推流通道的延迟模式

Parameters
mode延迟模式,默认 ZEGO_LATENCY_MODE_NORMAL
Attention
确保在推流前调用

◆ SetLatencyModeByChannel()

ZEGO_API void ZEGO::LIVEROOM::SetLatencyModeByChannel ( AV::ZegoAVAPILatencyMode  mode,
AV::PublishChannelIndex  idx 
)

设置指定推流通道的延迟模式

Parameters
mode延迟模式,默认 ZEGO_LATENCY_MODE_NORMAL
idx推流 channel Index. 详见 AV::PublishChannelIndex
Attention
确保在推流前调用

◆ SetLiveEventCallback()

ZEGO_API void ZEGO::LIVEROOM::SetLiveEventCallback ( AV::IZegoLiveEventCallback pCB)

设置直播事件回调

Parameters
pCB回调对象指针

◆ SetLivePlayerCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetLivePlayerCallback ( ILivePlayerCallback pCB)

设置直播观众相关信息通知的回调,以接收拉流事件回调

Attention
  1. 在调用初始化 SDK 接口之后、拉流接口 StartPlayingStream 或 StartPlayingStream2 之前设置。
Parameters
pCB实现了 ILivePlayerCallback 回调的对象指针,以接收拉流事件
Returns
true 成功,false 失败

◆ SetLivePublisherCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetLivePublisherCallback ( ILivePublisherCallback pCB)

设置直播主播相关信息通知的回调

Parameters
pCB回调对象指针
Returns
true 成功,false 失败

◆ SetLogDirAndSize()

ZEGO_API bool ZEGO::LIVEROOM::SetLogDirAndSize ( const char *  pszLogDir,
unsigned long long  lLogFileSize = ZEGO_DEFAULT_LOG_SIZE,
const char *  pszSubFolder = nullptr 
)

设置日志路径和大小

Parameters
pszLogDir日志路径
lLogFileSize单个日志文件大小, 有效范围[1*1024 * 1024, 100*1024*1024], 默认 5*1024*1024 字节。当设置为 0 时,不写日志(不推荐,当 SDK 出问题时无法定位原因)
pszSubFolder日志子目录,如果指定了子目录,则日志文件会存放在此子目录下
Returns
true 成功;flase 失败.
Attention
SDK 默认单个日志文件大小为 5M

◆ SetLogHook()

ZEGO_API void ZEGO::LIVEROOM::SetLogHook ( void(*)(const char *message)  log_hook)

日志hook 的回调函数

Parameters
logHook日志的回调函数 建议外部static 函数,
Attention
1、回调信息为加密信息(需要zego解密工具解密) 2、设置此日志回调之后sdk 将不会在写日志文件 3、调用时机,应该最早时机调用此接口 InitSDK之前

◆ SetLoopbackVolume()

ZEGO_API void ZEGO::LIVEROOM::SetLoopbackVolume ( int  volume)

设置监听音量

Parameters
volume音量大小,取值范围 [0, 200], 默认 100
Attention
推流时可调用本 API 进行参数配置

◆ SetMicDeviceMute()

ZEGO_API void ZEGO::LIVEROOM::SetMicDeviceMute ( const char *  deviceId,
bool  mute 
)

设置麦克风静音

Parameters
deviceId麦克风 deviceId
mutetrue 静音,false 不静音

◆ SetMicDeviceVolume()

ZEGO_API void ZEGO::LIVEROOM::SetMicDeviceVolume ( const char *  deviceId,
int  volume 
)

设置麦克风音量

Parameters
deviceId麦克风 deviceId
volume音量,取值(0,100)

◆ SetMinVideoBitrateForTrafficControl()

ZEGO_API void ZEGO::LIVEROOM::SetMinVideoBitrateForTrafficControl ( int  nBitrate,
AV::ZegoTrafficControlMinVideoBitrateMode  mode = AV::ZEGO_TRAFFIC_CONTROL_MIN_VIDEO_BITRATE_NO_VIDEO,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置推流视频码率达不到最小阈值时的控制策略

Parameters
nBitrate视频码率最小阈值,单位为bps。
mode低于视频码率最小阈值时的视频发送模式。当网络情况较差,无法发送该最小码率的数据时,如果选择 ZEGO_TRAFFIC_CONTROL_MIN_VIDEO_BITRATE_NO_VIDEO 模式,视频会被暂停,而不是以低于该码率继续发送。如果选择 ZEGO_TRAFFIC_CONTROL_MIN_VIDEO_BITRATE_ULTRA_LOW_FPS 模式,视频会以超低帧率发送。
idx推流通道,参考 AV::PublishChannelIndex 定义。默认 AV::PUBLISH_CHN_MAIN。
Note
在初始化 SDK 之后调用有效,在反初始化 SDK 之后失效。
调用 EnableTrafficControl 接口启动该通道流量控制后,调用该接口才生效。
初始化 SDK 后默认情况下没有设置视频码率最小值,即尽可能的保持视频流畅。
如果需要取消该设置值的限制可以设置为 0。

◆ SetMultiRoomCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetMultiRoomCallback ( IMultiRoomCallback pCB)

设置第二套房间接口回调

Parameters
pCB回调对象指针
Returns
true 成功,false 失败
Note
未设置回调对象,或对象设置错误,可能导致无法正常收到相关回调

◆ SetMultiRoomConfig()

ZEGO_API bool ZEGO::LIVEROOM::SetMultiRoomConfig ( bool  audienceCreateRoom,
bool  userStateUpdate 
)

设置第二套房间配置信息

Parameters
userStateUpdate用户状态(用户进入、退出房间)是否广播。true 广播,false 不广播。默认 false @discussion 在登录房间前调用有效,退出房间后失效 userStateUpdate为房间属性而非用户属性,设置的是该房间内是否会进行用户状态的广播。如果需要在房间内用户状态改变时,其他用户能收到通知,请为所有用户设置为true;反之,设置为false。设置为true后,方可从OnUserUpdate回调收到用户状态变更通知

◆ SetMultiRoomCustomToken()

ZEGO_API void ZEGO::LIVEROOM::SetMultiRoomCustomToken ( const char *  thirdPartyToken)

设置自定义token信息

Parameters
thirdPartyToken第三方传入的token @discussion 使用此函数验证登录时用户的合法性,登录房间前调用,token的生成规则请联系即构。若不需要验证用户合法性,不需要调用此函数 @discussion 在登录房间前调用有效,退出房间后失效

◆ SetMultiRoomExtraInfo()

ZEGO_API int ZEGO::LIVEROOM::SetMultiRoomExtraInfo ( const char *  pszKey,
const char *  pszValue 
)

更新房间属性

Parameters
pszKey房间额外信息key值,不能超过 10字节, 不允许为空字符串, 一个房间内只允许1个消息类型
pszValue房间属性内容,不能超过 100 字节, 允许为空字符串
Returns
发送序号 seq

◆ SetMultiRoomMaxUserCount()

ZEGO_API void ZEGO::LIVEROOM::SetMultiRoomMaxUserCount ( unsigned int  maxCount)

设置房间最大在线人数

Parameters
maxCount最大人数 @discussion 在登录房间前调用有效,退出房间后失效

◆ SetNetTypeCallback()

ZEGO_API void ZEGO::LIVEROOM::SetNetTypeCallback ( AV::IZegoNetTypeCallback pCB)

设置网络类型回调

Parameters
pCB回调对象指针

◆ SetNoiseSuppressMode()

ZEGO_API bool ZEGO::LIVEROOM::SetNoiseSuppressMode ( AV::ZegoANSMode  mode)

设置音频采集降噪等级

Parameters
mode降噪等级,详见 ZegoANSMode 定义
Returns
true 成功,false 失败
Note
仅在 EnableNoiseSuppress 为 true 时有效, 默认为 MEDIUM

◆ SetPlayQualityMonitorCycle()

ZEGO_API bool ZEGO::LIVEROOM::SetPlayQualityMonitorCycle ( unsigned int  timeInMS)

设置拉流质量监控周期

Note
  1. 设置该 API 后,ILivePlayerCallback::OnPlayQualityUpdate 将会按照设置值的频率回调。
Parameters
timeInMS时间周期,单位为毫秒,取值范围为(500, 60000)。默认为 3000
Returns
true 成功,false 失败

◆ SetPlayStreamFocus()

ZEGO_API bool ZEGO::LIVEROOM::SetPlayStreamFocus ( const char *  streamID)

设置拉流优先级的权重,被置为 focus 的流,优先保证其质量。

Parameters
streamID流 ID,当为 null 时,恢复所有流的权重
Returns
true: 设置成功, false 设置失败
Attention
默认所有流的权重相同。
在本地网络不好的时候,保证focus流的同时,可能造成其他的卡顿更多。
设置高优先级的流需要在开始拉流后设置,流停止之后自动恢复所有流的权重。

◆ SetPlayVolume()

ZEGO_API bool ZEGO::LIVEROOM::SetPlayVolume ( int  volume,
const char *  pszStreamID = 0 
)

设置拉流的播放音量

Attention
  1. 必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效,每次拉流都需要重新设置。
Note
  1. 播放直播过程中可通过此 API 调整播放音量。
Parameters
volume音量大小, 取值范围[0, 200], 默认 100
pszStreamID需要设置播放音量的流 ID , 传入 nullptr 表示统一设置所有拉流的播放音量
Returns
true 成功,false 失败

◆ SetPolishFactor()

ZEGO_API bool ZEGO::LIVEROOM::SetPolishFactor ( float  factor,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置美颜采样颜色阈值

Parameters
factor采样颜色阈值,取值范围[0,16]。默认 4.0
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置。设置时需确保对应美颜特性开启

◆ SetPolishStep()

ZEGO_API bool ZEGO::LIVEROOM::SetPolishStep ( float  step,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置美颜磨皮的采样步长

Parameters
step采样步长,取值范围[1,16]。默认 4.0
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置。设置时需确保对应美颜特性开启

◆ SetPreviewRotation()

ZEGO_API bool ZEGO::LIVEROOM::SetPreviewRotation ( int  nRotation,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置预览渲染朝向

Parameters
nRotation旋转角度(0/90/180/270)。默认 0
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置

◆ SetPreviewView()

ZEGO_API bool ZEGO::LIVEROOM::SetPreviewView ( void *  pView,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置本地预览视图

Parameters
pView用于渲染本地预览视频的视图
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SetPreviewViewBackgroundColor()

ZEGO_API bool ZEGO::LIVEROOM::SetPreviewViewBackgroundColor ( int  color,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置预览视频控件的背景颜色

Parameters
color颜色,取值为0x00RRGGBB
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SetPreviewViewMode()

ZEGO_API bool ZEGO::LIVEROOM::SetPreviewViewMode ( ZegoVideoViewMode  mode,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置本地预览视频视图的模式

Parameters
mode模式
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流开始前调用本 API 进行参数配置

◆ SetPreviewWaterMarkRect()

ZEGO_API void ZEGO::LIVEROOM::SetPreviewWaterMarkRect ( int  left,
int  top,
int  right,
int  bottom,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置水印在预览视频中的位置

Parameters
left左上角坐标的第一个元素
top左上角坐标的第二个元素,即左上角坐标为 (left, top)
right右下角坐标的第一个元素
bottom右下角坐标的第二个元素,即右下角坐标为 (right, bottom)
idx推流 channel Index. 默认为主Channel
Note
左上角为坐标系原点,区域不能超过 preview 的大小

◆ SetPublishEncryptKey()

ZEGO_API void ZEGO::LIVEROOM::SetPublishEncryptKey ( const unsigned char *  pKey,
int  nkeyLen,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置推流加密密钥

Parameters
pszKey加密密钥
nkeyLen密钥长度(支持16/24/32字节)
idx推流 channel Index. 默认为主Channel
Attention
在InitSDK之后调用

◆ SetPublishQualityMonitorCycle()

ZEGO_API bool ZEGO::LIVEROOM::SetPublishQualityMonitorCycle ( unsigned int  timeInMS)

设置推流质量监控周期

Parameters
timeInMS时间周期,单位为毫秒,取值范围为(500, 60000)。默认为 3000
Returns
true 成功,false 失败
Attention
必须在推流前调用才能生效。该设置会影响 ILivePublisherCallback::OnPublishQualityUpdate 的回调频率

◆ SetPublishStreamExtraInfo()

ZEGO_API bool ZEGO::LIVEROOM::SetPublishStreamExtraInfo ( const char *  pszStreamExtraInfo,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置或更新推流的附加信息

Parameters
pszStreamExtraInfo流附加信息, 最大为 1024 字节
idx推流 channel Index. 默认为主Channel
Returns
更新流附加信息成功后,同一房间内的其他人会收到 OnStreamExtraInfoUpdated 通知

◆ SetPublishWaterMarkRect()

ZEGO_API void ZEGO::LIVEROOM::SetPublishWaterMarkRect ( int  left,
int  top,
int  right,
int  bottom,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置水印在采集视频中的位置

Parameters
left左上角坐标的第一个元素
top左上角坐标的第二个元素,即左上角坐标为 (left, top)
right右下角坐标的第一个元素
bottom右下角坐标的第二个元素,即右下角坐标为 (right, bottom)
idx推流 channel Index. 默认为主Channel
Note
左上角为坐标系原点,区域不能超过编码分辨率设置的大小

◆ SetRecvBufferLevelLimit()

ZEGO_API bool ZEGO::LIVEROOM::SetRecvBufferLevelLimit ( int  minBufferLevel,
int  maxBufferLevel,
const char *  streamID 
)

设置拉流播放缓存自适应调整的区间范围(上下限)

Parameters
minBufferLevel缓存自适应区间下限, 单位毫秒. 当 minBufferLevel <= 0 表示未设置下限.
maxBufferLevel缓存自适应区间上限, 单位毫秒. 当 maxBufferLevel <= 0 表示未设置上限. 当设置的上限超过4000时,会取值4000.
streamID流 ID
Returns
true 设置成功, false 设置失败
Note
调用时机为拉流前或者拉流中, 每次拉流都需要重新设置
上下限在未设置时, 内部默认区间范围 [0, 4000]
当设置的上限小于下限时,会自动将上限取值为下限

◆ SetRoomCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetRoomCallback ( IRoomCallback pCB)

设置直播房间相关信息通知的回调

Parameters
pCB回调对象指针
Returns
true 成功,false 失败

◆ SetRoomConfig()

ZEGO_API void ZEGO::LIVEROOM::SetRoomConfig ( bool  audienceCreateRoom,
bool  userStateUpdate 
)

设置房间配置信息

Parameters
audienceCreateRoom观众是否可以创建房间。true 可以,false 不可以。默认 true
userStateUpdate用户状态(用户进入、退出房间)是否广播。true 广播,false 不广播。默认 false @discussion 1、在登录房间前调用有效,退出房间后失效。 2、userStateUpdate为房间属性而非用户属性,设置的是该房间内是否会进行用户状态的广播。如果需要在房间内用户状态改变时,其他用户能收到通知,请为所有用户设置为true;反之,设置为false。设置为true后,方可从OnUserUpdate回调收到用户状态变更通知

◆ SetRoomExtraInfo()

ZEGO_API int ZEGO::LIVEROOM::SetRoomExtraInfo ( const char *  pszKey,
const char *  pszValue 
)

更新房间属性 登录房间成功后使用

Parameters
pszKey房间额外信息key值,不能超过 10字节, 不允许为空字符串, 一个房间内只允许1个消息类型
pszValue房间属性内容,不能超过 128 字节, 允许为空字符串
Returns
发送序号 seq

◆ SetRoomExtraInfoCallback()

ZEGO_API bool ZEGO::LIVEROOM::SetRoomExtraInfoCallback ( IRoomExtraInfoCallback pCB)

设置 RoomExtraInfo 通知的回调

Parameters
pCB回调对象指针
Returns
true 成功,false 失败

◆ SetRoomMaxUserCount()

ZEGO_API void ZEGO::LIVEROOM::SetRoomMaxUserCount ( unsigned int  maxCount)

设置房间最大在线人数

Parameters
maxCount最大人数 @discussion 在登录房间前调用有效,退出房间后失效

◆ SetRunLoopObserveCallback()

ZEGO_API void ZEGO::LIVEROOM::SetRunLoopObserveCallback ( void(*)(unsigned int taskId, AV::ZegoTaskType type, int taskDispatchTime, int taskRunTime, int taskTotalTime)  OnRunLoopObserveCallback)

设置SDK线程回调observe,将会回调SDK 主线程执行相关耗时 建议 外部static 函数

Parameters
OnRunLoopObserveCallbackobserve回调的callback
taskIdsdk主线程taskid
type任务类型 参见ZegoTaskType
taskDispatchTime任务调度消耗时间 单位ms
taskRunTime任务执行消耗时间 单位ms
taskTotalTime任务总耗时,单位ms 一般情况只需关注此时间即可
Attention
注意此非线程安全,外部不应该在回调线程做耗时操作。建议InitSDK 前调用 UnInitSDK会清除此回调

◆ SetSharpenFactor()

ZEGO_API bool ZEGO::LIVEROOM::SetSharpenFactor ( float  factor,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置锐化参数

Parameters
factor锐化参数,取值范围[0,2],值越大锐化越强。默认 0.2
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置。设置时需确保对应美颜特性开启

◆ SetSpeakerDeviceMute()

ZEGO_API void ZEGO::LIVEROOM::SetSpeakerDeviceMute ( const char *  deviceId,
bool  mute 
)

设置扬声器静音

Parameters
deviceId扬声器 deviceId
mutetrue 静音,false 不静音

◆ SetSpeakerDeviceVolume()

ZEGO_API void ZEGO::LIVEROOM::SetSpeakerDeviceVolume ( const char *  deviceId,
int  volume 
)

设置扬声器音量

Parameters
deviceId扬声器 deviceId
volume音量,取值 (0,100)

◆ SetSpeakerSimpleMute()

ZEGO_API void ZEGO::LIVEROOM::SetSpeakerSimpleMute ( const char *  deviceId,
bool  mute 
)

设置 App 中扬声器静音

Parameters
deviceId扬声器 deviceId
mutetrue 静音,false 不静音

◆ SetSpeakerSimpleVolume()

ZEGO_API void ZEGO::LIVEROOM::SetSpeakerSimpleVolume ( const char *  deviceId,
int  volume 
)

设置 App 中扬声器音量

Parameters
deviceId扬声器 deviceId
volume音量,取值 (0,100)

◆ SetSystemPlayoutVolumeBeforeMixing()

ZEGO_API bool ZEGO::LIVEROOM::SetSystemPlayoutVolumeBeforeMixing ( int  volume)

设置系统声卡采集的音量

Parameters
volume音量, 有效范围[0, 200], 默认为 100
Returns
true 表示成功,false 表示失败
Note
在 InitSDK 后设置有效, 在 UnInitSDK 后还原
如果调用 MixSysPlayoutWithProperty 接口, 启用了内部自动增益,则该接口设置无效

◆ SetTrafficControlFocusOn()

ZEGO_API void ZEGO::LIVEROOM::SetTrafficControlFocusOn ( enum AV::ZegoTrafficControlFocusOn  focusOn,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置触发流量控制的关注因素

Parameters
focusOn触发流量控制的关注因素。选择 ZEGO_TRAFFIC_CONTROL_FOCUS_ON_LOCAL_ONLY 时,只关注本地网络状况。选择 ZEGO_TRAFFIC_CONTROL_FOCUS_ON_REMOTE 时,不仅关注本地网络,同时也兼顾远端网络,目前只在 1v1 场景下有效。
idx推流通道,参考 AV::PublishChannelIndex 定义。默认 AV::PUBLISH_CHN_MAIN。
Note
在初始化 SDK 之后,推流之前调用有效。如果每次推流前不重新设置,将继续使用上次的配置。在反初始化 SDK 之后失效。
当 focusOn 设置为 ZEGO_TRAFFIC_CONTROL_FOCUS_ON_REMOTE 时,当对方的网络拥塞时,推流端可能限定推流的码率。
当通过 EnableTrafficControl 接口开启了指定推流通道的流量控制后,可通过该接口控制是否因为远端网络状况差而启动流量控制。在 1v1 场景下默认是开启的。

◆ SetUser()

ZEGO_API bool ZEGO::LIVEROOM::SetUser ( const char *  pszUserID,
const char *  pszUserName 
)

设置用户信息

Parameters
pszUserID用户唯一 ID
pszUserName用户名字
Returns
true 成功,false 失败

◆ SetUseTestEnv()

ZEGO_API void ZEGO::LIVEROOM::SetUseTestEnv ( bool  bTestEnv)

设置是否使用测试环境

Parameters
bTestEnv测试环境

◆ SetVerbose()

ZEGO_API void ZEGO::LIVEROOM::SetVerbose ( bool  bVerbose)

设置是否开启调试信息

Parameters
bVerbose控制开关
Attention
建议SetLogDirAndSize后 initSDK前调用 , 启用后,控制台会输出用户调用信息,并且会在SDK日志目录生成 明文的用户可见的日志文件

◆ SetVideoBitrate()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoBitrate ( int  nBitrate,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频码率

Parameters
nBitrate码率,单位为bps
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SetVideoCaptureResolution()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoCaptureResolution ( int  nWidth,
int  nHeight,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频采集分辨率

Parameters
nWidth
nHeight
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SetVideoCodecId()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoCodecId ( AV::ZegoVideoCodecAvc  codecId,
AV::PublishChannelIndex  nChannel = AV::PUBLISH_CHN_MAIN 
)

设置选用分层编码

Parameters
codecId设备 ID
Returns
true 成功,false 失败

◆ SetVideoDevice()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoDevice ( const char *  pszDeviceID,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置选用视频设备

Parameters
pszDeviceID设备 ID
Returns
true 成功,false 失败

◆ SetVideoEncodeMode()

ZEGO_API void ZEGO::LIVEROOM::SetVideoEncodeMode ( AV::ZegoVideoEncodeMode  mode,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频编码模式

Parameters
mode视频编码模式,详见 AV::ZegoVideoEncodeMode。默认是 AV::ZEGO_VIDEO_ENCODE_MODE_LOW_DELAY。
idx推流通道,默认为 AV::PUBLISH_CHN_MAIN
Note
初始化 SDK 之后,推流之前设置有效,在开始推流后设置,下次推流生效。
AV::ZEGO_VIDEO_ENCODE_MODE_LOW_BITRATE 模式只在使用 x264 软件编码的情况下生效,需要通过 ZEGO 的特殊渠道发包才能指定 x264 编码器。

◆ SetVideoEncodeResolution()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoEncodeResolution ( int  nWidth,
int  nHeight,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频编码输出分辨率

Parameters
nWidth
nHeight
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SetVideoEncoderRateControlConfig()

ZEGO_API void ZEGO::LIVEROOM::SetVideoEncoderRateControlConfig ( AV::ZegoVideoEncoderRateControlStrategy  strategy,
int  encoderCRF,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置编码器码率控制策略

Parameters
strategy策略配置,参考 ZegoVideoEncoderRateControlStrategy
encoderCRF当策略为恒定质量(ZEGO_RC_VBR/ZEGO_RC_CRF)有效,取值范围 [0~51],越小质量越好,但是码率会相应变大。建议取值范围 [18, 28]
idx推流 channel Index. 默认为主Channel

◆ SetVideoFPS()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoFPS ( int  nFps,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频帧率

Parameters
nFps帧率
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SetVideoKeyFrameInterval()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoKeyFrameInterval ( int  nIntervalSecond,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置视频关键帧间隔

Parameters
nIntervalSecond关键帧间隔,单位为秒,默认2秒
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流开始前调用本 API 进行参数配置

◆ SetVideoMirrorMode()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoMirrorMode ( AV::ZegoVideoMirrorMode  mode,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

是否启用预览和推流镜像

Parameters
mode镜像模式
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Note
默认启用预览镜像,不启用推流镜像

◆ SetVideoSource()

ZEGO_API bool ZEGO::LIVEROOM::SetVideoSource ( AV::ZegoVideoSourceType  srcType,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_AUX 
)

设置采集视频源类型

Note
  1. 在推流前调用,推流过程中不能更改此值,否则可能会出现不可预知问题;
  2. 当 srcType 设置为 VIDEO_SRC_EXTERNAL_CAPTURE 但对应通道没有外部采集工厂时,将自动修正为 VIDEO_SRC_CAMERA;
  3. 当 srcType 设置为 VIDEO_SRC_NONE 时,表示不启动视频采集,即没有视频数据;
  4. 当 srcType 设置为 VIDEO_SRC_DEFAULT 时,如果有设置外部视频采集工厂,则使用外部采集,否则使用内部采集;
  5. 当 srcType 设置为 VIDEO_SRC_CAMERA 时,即使设置了外部视频采集工厂,也会使用摄像头作为视频数据源;
  6. 当 index 为 PUBLISH_CHN_MAIN 时,srcType 不能设置为 VIDEO_SRC_MAIN_PUBLISH_CHN;
  7. 一旦使用过此 API 设置采集视频源类型,在停止推流时,SDK 不会重置视频采集源类型;
Parameters
srcType源类型,参见 ZegoVideoSourceType 定义
idx推流 channel Index. 默认为辅Channel
Returns
true 设置成功,false 设置失败

◆ SetViewBackgroundColor()

ZEGO_API bool ZEGO::LIVEROOM::SetViewBackgroundColor ( int  color,
const char *  pszStreamID 
)

设置视频控件的背景颜色

Attention
  1. 必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效,每次拉流都需要重新设置。
Parameters
color颜色,取值为0x00RRGGBB
pszStreamID播放流 ID
Returns
true 成功,false 失败

◆ SetViewMode()

ZEGO_API bool ZEGO::LIVEROOM::SetViewMode ( ZegoVideoViewMode  mode,
const char *  pszStreamID 
)

设置观看直播的 View 的模式

Attention
  1. 必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效,每次拉流都需要重新设置
Note
  1. 一般在流播放、流新增、全屏切换等其他流尺寸可能变化的场合时调用。
Parameters
mode模式,默认 ZegoVideoViewModeScaleAspectFit
pszStreamID播放流 ID
Returns
true 成功,false 失败

◆ SetViewRotation()

ZEGO_API bool ZEGO::LIVEROOM::SetViewRotation ( int  nRotation,
const char *  pszStreamID 
)

设置播放渲染朝向

Attention
  1. 必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效,每次拉流都需要重新设置。
Note
  1. 一般用于全屏切换、旋转设备时调用,调整播放方向。
Parameters
nRotation逆时针旋转角度(0/90/180/270)。默认 0
pszStreamID播放流 ID
Returns
true 成功,false 失败

◆ SetWaterMarkImagePath()

ZEGO_API void ZEGO::LIVEROOM::SetWaterMarkImagePath ( const char *  filePath,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置水印的图片路径

Parameters
filePath图片路径
idx推流 channel Index. 默认为主Channel
Attention
推流开始前调用本 API 进行参数配置

◆ SetWhitenFactor()

ZEGO_API bool ZEGO::LIVEROOM::SetWhitenFactor ( float  factor,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

设置美颜美白的亮度修正参数

Parameters
factor亮度修正参数,取值范围[0,1],值越大亮度越暗。默认 0.5
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
推流时可调用本 API 进行参数配置。设置时需确保对应美颜特性开启

◆ StartPlayingStream()

ZEGO_API bool ZEGO::LIVEROOM::StartPlayingStream ( const char *  pszStreamID,
void *  pView,
const char *  pszParams = 0 
)

播放多媒体流

Attention
  1. 调用此 API可播放直播流,必须在调用初始化 SDK 接口之后调用。
Note
  1. 调用成功后,等待 ILivePlayerCallback::OnPlayStateUpdate 回调。
  2. 若中途收到 IRoomCallback::OnDisconnect 回调,则不会再收到 ILivePlayerCallback::OnPlayStateUpdate 回调。
Parameters
pszStreamID需要播放的用户流 ID
pView用来渲染播放视频的视图
pszParams拉流参数
Returns
true 成功,false 失败

◆ StartPlayingStream2()

ZEGO_API bool ZEGO::LIVEROOM::StartPlayingStream2 ( const char *  pszStreamID,
void *  pView,
ZegoStreamExtraPlayInfo *  info = nullptr 
)

根据用户配置的多媒体流附加信息,播放多媒体流

Attention
  1. 调用此 API可播放直播流,必须在调用初始化 SDK 接口之后调用。
Note
  1. 调用成功后,等待 ILivePlayerCallback::OnPlayStateUpdate 回调。
  2. 若中途收到 IRoomCallback::OnDisconnect 回调,则不会再收到 ILivePlayerCallback::OnPlayStateUpdate 回调。
Parameters
pszStreamID需要播放的用户流 ID
pView用来渲染播放视频的视图
info多媒体流附加信息,请参考 ZegoStreamExtraPlayInfo 定义
Returns
成功,false 失败

◆ StartPreview()

ZEGO_API bool ZEGO::LIVEROOM::StartPreview ( AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN)

启动本地预览

Parameters
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
启动本地预览前,要调用 LIVEROOM::SetPreviewView 设置本地预览视图

◆ StartPublishing()

ZEGO_API bool ZEGO::LIVEROOM::StartPublishing ( const char *  pszTitle,
const char *  pszStreamID,
int  flag,
const char *  pszParams = 0 
)

开始直播

Attention
调用此 API 推直播流,必须在调用初始化 SDK 接口之后调用。
Note
  1. 推流成功后,等待 ILivePublisherCallback::OnPublishStateUpdate 回调
  2. 若中途收到 IRoomCallback::OnDisconnect 回调,则不会再收到 ILivePublisherCallback::OnPublishStateUpdate 回调。
Parameters
pszTitle直播名称
pszStreamID流 ID
flag直播属性,参考 ZegoPublishFlag
pszParams推流参数
Returns
true 成功,false 失败

◆ StartPublishing2()

ZEGO_API bool ZEGO::LIVEROOM::StartPublishing2 ( const char *  pszTitle,
const char *  pszStreamID,
int  flag,
const char *  pszParams = 0,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

开始直播

Attention
调用此 API 推直播流,必须在调用初始化 SDK 接口之后调用。
Note
  1. 推流成功后,等待 ILivePublisherCallback::OnPublishStateUpdate 回调
  2. 若中途收到 IRoomCallback::OnDisconnect 回调,则不会再收到 ILivePublisherCallback::OnPublishStateUpdate 回调
  3. 调用此接口 SetMixStreamConfig 无效,混流需要调用 MixStream。
Parameters
pszTitle直播名称
pszStreamID流 ID
flag直播属性,参考 ZegoPublishFlag
pszParams推流参数
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ StopAudioVolumeNotify()

ZEGO_API bool ZEGO::LIVEROOM::StopAudioVolumeNotify ( AV::AudioDeviceType  deviceType,
const char *  deviceId 
)

停止监听设备的音量变化

Parameters
deviceType设备类型
deviceId设备 Id
Returns
true 成功,false 失败

◆ StopPlayingStream()

ZEGO_API bool ZEGO::LIVEROOM::StopPlayingStream ( const char *  pszStreamID)

停止播放流

Parameters
pszStreamID需要停止播放的用户流 ID
Returns
true 成功,false 失败

◆ StopPreview()

ZEGO_API bool ZEGO::LIVEROOM::StopPreview ( AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN)

结束本地预览

Parameters
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败
Attention
建议停止推流,或本地预览结束后,调用该 API 停止本地预览

◆ StopPublishing()

ZEGO_API bool ZEGO::LIVEROOM::StopPublishing ( int  flag = 0,
const char *  pszMsg = 0,
AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN 
)

停止直播

Parameters
flag保留字段
pszMsg自定义信息,server 对接流结束回调包含此字段内容
idx推流 channel Index. 默认为主Channel
Returns
true 成功,false 失败

◆ SwitchRoom()

ZEGO_API bool ZEGO::LIVEROOM::SwitchRoom ( const char *  pszRoomID,
int  role,
const char *  pszRoomName = "" 
)

切换房间 调用成功会停止调用该接口之前的推拉流(注意:登录房间成功后,需要快速切换到其它房间时使用,切换结果回调OnLoginRoom,也会停止MultiRoom的拉流)

Parameters
pszRoomID房间 ID
role成员角色, 参见 ZegoRoomRole
pszRoomName房间名称
Returns
true 成功,false 失败

◆ TakeSnapshot()

ZEGO_API bool ZEGO::LIVEROOM::TakeSnapshot ( const char *  pszStreamID)

对观看直播视图进行截图

Attention
  1. 必须在拉流 StartPlayingStream 或 StartPlayingStream2 后调用才有效。
Note
  1. 截图成功后,通过回调 ILivePlayerCallback::OnSnapshot 返回结果。
Parameters
pszStreamID需要截图的流 ID
Returns
true 成功,false 失败

◆ TakeSnapshotPreview()

ZEGO_API bool ZEGO::LIVEROOM::TakeSnapshotPreview ( AV::PublishChannelIndex  idx = AV::PUBLISH_CHN_MAIN)

截预览图

Parameters
idx推流 channel Index. 默认为主Channel
Returns
true 成功,通过回调返回结果,false 失败

◆ UnInitSDK()

ZEGO_API bool ZEGO::LIVEROOM::UnInitSDK ( )

反初始化 SDK

Returns
true 成功,false 失败

◆ UpdatePlayDecryptKey()

ZEGO_API void ZEGO::LIVEROOM::UpdatePlayDecryptKey ( const char *  pszStreamID,
const unsigned char *  pKey,
int  nkeyLen 
)

设置拉流解密密钥(只用于拉流之后更新密钥)

Parameters
pszStreamID需要设置密钥的用户流 ID
pszKey解密密钥
nkeyLen密钥长度(支持16/24/32字节)
Attention
在拉流之后调用

◆ UpdatePlayView()

ZEGO_API bool ZEGO::LIVEROOM::UpdatePlayView ( void *  pView,
const char *  pszStreamID 
)

更新播放视图

Attention
  1. 调用 StartPlayingStream 播放流成功以后,如果要切换流播放 View 或者停止显示流画面,调用该 API 变更。
Parameters
pView播放视图
pszStreamID需要更新视图的用户流 ID
Returns
true 成功,false 失败

◆ UploadLog()

ZEGO_API void ZEGO::LIVEROOM::UploadLog ( )

上传日志

Variable Documentation

◆ kInvalidSeq

const int ZEGO::LIVEROOM::kInvalidSeq = -1

◆ kZegoVideoDataAuxPublishingStream

ZEGO_API const char* ZEGO::LIVEROOM::kZegoVideoDataAuxPublishingStream

◆ kZegoVideoDataMainPublishingStream

ZEGO_API const char* ZEGO::LIVEROOM::kZegoVideoDataMainPublishingStream