ZegoExpressEngine

Declared in ZegoExpressEngine.h

Includes

Public Static Func Lists

Public Func Lists

Public Static Func Docs

createEngineWithAppID:appSign:isTestEnv:scenario:eventHandler:

+ (ZegoExpressEngine *)createEngineWithAppID:(unsigned int) appID appSign:(NSString *) appSign isTestEnv:(BOOL) isTestEnv scenario:(ZegoScenario) scenario eventHandler:(nullable id< ZegoEventHandler >) eventHandler;

创建引擎单例对象

Parameters
appID ZEGO 为开发者签发的应用 ID,请从 ZEGO 管理控制台 申请,取值范围为 0~4294967295。
appSign 每个 AppID 对应的应用签名,请从 ZEGO 管理控制台申请。为 64 字符的字符串。每个字符范围为'0'~'9', 'a'~'z'。
isTestEnv 选择使用测试环境还是正式商用环境,正式环境需要在 ZEGO 管理控制台提交工单配置。测试环境为测试开发用,限制房间数为 30,用户数为 230。正式环境 App 正式上线用,ZEGO 会根据开发者在管理控制台提交的配置记录提供相应的服务资源。测试环境与正式环境是两套环境,不可互通。
scenario 所属的应用场景,开发者可根据所开发的 App 的场景选择其中一个,引擎会通过所设置的场景预设置一个针对具体场景的较为通用的设置。当设置具体场景后,开发者若有定制化参数设置,依然可以调用具体接口来设置具体参数。
eventHandler 事件通知回调。传 [nil] 则意味着不接收任何回调通知。之后也可通过 [setEventHandler] 进行设置

destroyEngine:

+ (void)destroyEngine:(ZegoDestroyCompletionCallbacknullable ) callback;

异步销毁引擎单例对象

Parameters
callback 销毁引擎完成的通知回调,可监听此回调以确保设备硬件资源被释放完成。本回调只作为引擎内部资源释放完成的通知,开发者不可以在此回调内释放与引擎相关的资源。若开发者只使用 SDK 来实现音视频功能,该参数可传 [nil]。

sharedEngine

+ (ZegoExpressEngine *)sharedEngine:;

获取引擎单例对象

setEngineConfig:

+ (void)setEngineConfig:(ZegoEngineConfig *) config;

设置引擎进阶配置,仅在创建引擎之前调用才生效

Parameters
config 引擎进阶配置

getVersion

+ (NSString *)getVersion:;

获取 SDK 版本号

Public Func Docs

setEventHandler:

- (void)setEventHandler:(nullable id< ZegoEventHandler >) eventHandler;

设置事件通知回调,传 [nil] 则清空已设置的回调

Parameters
eventHandler 事件通知回调。开发者应根据自身业务场景,重写回调的相关方法以关注特定的通知。SDK 主要的回调方法都在 [IZegoEventHandler] 里。

uploadLog

- (void)uploadLog:;

上传日志到 ZEGO 服务器

setDebugVerbose:language:

- (void)setDebugVerbose:(BOOL) enable language:(ZegoLanguage) language;

设置调试详细信息开关以及语言

Parameters
enable 详细调试信息开关
language 调试信息语种

enableCustomVideoRender:config:

- (void)enableCustomVideoRender:(BOOL) enable config:(nullable ZegoCustomVideoRenderConfig *) config;

开始或停止自定义视频渲染

Parameters
enable 是否开启
config 自定义渲染配置

setCustomVideoRenderHandler:

- (void)setCustomVideoRenderHandler:(nullable id< ZegoCustomVideoRenderHandler >) handler;

设置自定义视频渲染回调

Parameters
handler 自定义视频渲染回调对象

enableCustomVideoCapture:config:channel:

- (void)enableCustomVideoCapture:(BOOL) enable config:(nullable ZegoCustomVideoCaptureConfig *) config channel:(ZegoPublishChannel) channel;

开始或停止自定义视频采集

Parameters
enable 是否开启
config 自定义采集配置
channel 推流通道

setCustomVideoCaptureHandler:

- (void)setCustomVideoCaptureHandler:(nullable id< ZegoCustomVideoCaptureHandler >) handler;

设置自定义视频采集回调

Parameters
handler 自定义视频采集回调对象

sendCustomVideoCaptureTextureData:size:timestamp:

- (void)sendCustomVideoCaptureTextureData:(GLuint) textureID size:(CGSize) size timestamp:(CMTime) timestamp;

向 SDK 发送自定义采集的视频帧 Texture 数据

Parameters
textureID 纹理 ID
size 视频帧的画面宽高
timestamp 该视频帧的时间戳

sendCustomVideoCaptureTextureData:size:timestamp:channel:

- (void)sendCustomVideoCaptureTextureData:(GLuint) textureID size:(CGSize) size timestamp:(CMTime) timestamp channel:(ZegoPublishChannel) channel;

向 SDK 发送自定义采集的视频帧 Texture 数据,支持其他路推流

Parameters
textureID 纹理 ID
size 视频帧的画面宽高
timestamp 该视频帧的时间戳
channel 推流通道

sendCustomVideoCapturePixelBuffer:timestamp:

- (void)sendCustomVideoCapturePixelBuffer:(CVPixelBufferRef) buffer timestamp:(CMTime) timestamp;

向 SDK 发送自定义采集的视频帧 CVPixelBuffer 数据

Parameters
buffer 要向 SDK 发送的视频帧数据
timestamp 该视频帧的时间戳

sendCustomVideoCapturePixelBuffer:timestamp:channel:

- (void)sendCustomVideoCapturePixelBuffer:(CVPixelBufferRef) buffer timestamp:(CMTime) timestamp channel:(ZegoPublishChannel) channel;

向 SDK 发送自定义采集的视频帧 CVPixelBuffer 数据,支持其他路推流

Parameters
buffer 要向 SDK 发送的视频帧数据
timestamp 该视频帧的时间戳
channel 推流通道

sendCustomVideoCaptureEncodedData:params:timestamp:

- (void)sendCustomVideoCaptureEncodedData:(NSData *) data params:(ZegoVideoEncodedFrameParam *) params timestamp:(CMTime) timestamp;

给 SDK 发送自定义采集的视频帧编码后的数据

Parameters
data 要向 SDK 发送的视频帧数据
params 视频帧的参数
timestamp 该视频帧的时间戳

sendCustomVideoCaptureEncodedData:params:timestamp:channel:

- (void)sendCustomVideoCaptureEncodedData:(NSData *) data params:(ZegoVideoEncodedFrameParam *) params timestamp:(CMTime) timestamp channel:(ZegoPublishChannel) channel;

给 SDK 发送自定义采集的视频帧编码后的数据,支持其他路推流

Parameters
data 要向 SDK 发送的视频帧数据
params 视频帧的参数
timestamp 该视频帧的时间戳
channel 推流通道

setCustomVideoCaptureFillMode:

- (void)setCustomVideoCaptureFillMode:(ZegoViewMode) mode;

设置自定义视频采集画面缩放填充模式

Parameters
mode 画面填充缩放模式

setCustomVideoCaptureFillMode:channel:

- (void)setCustomVideoCaptureFillMode:(ZegoViewMode) mode channel:(ZegoPublishChannel) channel;

设置自定义视频采集画面缩放填充模式,支持其他路推流

Parameters
mode 画面填充缩放模式
channel 推流通道

muteMicrophone:

- (void)muteMicrophone:(BOOL) mute;

是否静音(关闭)麦克风

Parameters
mute 是否静音(关闭)麦克风;YES 表示静音(关闭)麦克风;NO 表示开启麦克风,默认为 NO

isMicrophoneMuted

- (BOOL)isMicrophoneMuted:;

检查麦克风是否设置为静音

muteSpeaker:

- (void)muteSpeaker:(BOOL) mute;

是否静音(关闭)音频输出

Parameters
mute 是否静音(关闭)音频输出;YES 表示静音(关闭)音频输出;NO 表示开启音频输出。默认为 NO

isSpeakerMuted

- (BOOL)isSpeakerMuted:;

检查音频输出是否静音

useAudioDevice:deviceType:

- (void)useAudioDevice:(NSString *) deviceID deviceType:(ZegoAudioDeviceType) deviceType;

选择使用某个音频设备

Parameters
deviceID 通过 getAudioDeviceList: 获取的某个设备的 ID
deviceType 音频设备类型

getAudioDeviceList:

- (NSArray< ZegoDeviceInfo * > *)getAudioDeviceList:(ZegoAudioDeviceType) deviceType;

获取音频设备列表

Parameters
deviceType 音频设备类型

enableAudioCaptureDevice:

- (void)enableAudioCaptureDevice:(BOOL) enable;

开/关音频采集设备

Parameters
enable 是否开启音频采集设备;YES 表示打开音频采集设备;NO 表示关闭音频采集设备

setBuiltInSpeakerOn:

- (void)setBuiltInSpeakerOn:(BOOL) enable;

是否使用内置扬声器播放声音

Parameters
enable 是否使用内置扬声器播放声音,YES 表示使用内置扬声器播放声音,NO 表示使用当前系统调度的优先级最高的音频输出设备播放声音

enableCamera:

- (void)enableCamera:(BOOL) enable;

开/关摄像头

Parameters
enable 是否打开摄像头;YES 表示打开摄像头;NO 表示关闭摄像头

enableCamera:channel:

- (void)enableCamera:(BOOL) enable channel:(ZegoPublishChannel) channel;

开/关摄像头,支持设置其他通道的推流

Parameters
enable 是否打开摄像头;YES 表示打开摄像头;NO 表示关闭摄像头
channel 推流通道

useFrontCamera:

- (void)useFrontCamera:(BOOL) enable;

切换前后摄像头

Parameters
enable 是否采用前置摄像头;YES 表示使用前置摄像头;NO 表示使用后置摄像头。默认为 YES

useFrontCamera:channel:

- (void)useFrontCamera:(BOOL) enable channel:(ZegoPublishChannel) channel;

切换前后摄像头,支持设置其他通道的推流

Parameters
enable 是否采用前置摄像头;YES 表示使用前置摄像头;NO 表示使用后置摄像头。默认为 YES
channel 推流通道

useVideoDevice:

- (void)useVideoDevice:(NSString *) deviceID;

选择使用某个视频设备

Parameters
deviceID 通过 getVideoDeviceList: 获取的某个设备的 ID

useVideoDevice:channel:

- (void)useVideoDevice:(NSString *) deviceID channel:(ZegoPublishChannel) channel;

选择使用某个视频设备,支持设置其他通道的推流

Parameters
deviceID 通过 getVideoDeviceList: 获取的某个设备的 ID
channel 推流通道

getVideoDeviceList

- (NSArray< ZegoDeviceInfo * > *)getVideoDeviceList:;

获取视频设备列表

startSoundLevelMonitor

- (void)startSoundLevelMonitor:;

启动声浪监控

stopSoundLevelMonitor

- (void)stopSoundLevelMonitor:;

停止声浪监控

startAudioSpectrumMonitor

- (void)startAudioSpectrumMonitor:;

启动音频频谱监控

stopAudioSpectrumMonitor

- (void)stopAudioSpectrumMonitor:;

停止音频频谱监控

enableHeadphoneMonitor:

- (void)enableHeadphoneMonitor:(BOOL) enable;

开启/关闭 耳返

Parameters
enable YES: 开启耳返, NO: 关闭耳返

setHeadphoneMonitorVolume:

- (void)setHeadphoneMonitorVolume:(int) volume;

设置耳返音量

Parameters
volume 采集耳返音量大小,取值(0, 100)。默认 80

enableMixSystemPlayout:

- (void)enableMixSystemPlayout:(BOOL) enable;

开启/关闭 系统声卡采集

Parameters
enable YES: 开启声卡采集, NO: 关闭声卡采集

sendBroadcastMessage:roomID:callback:

- (void)sendBroadcastMessage:(NSString *) message roomID:(NSString *) roomID callback:(ZegoIMSendBroadcastMessageCallbacknullable ) callback;

发送房间广播消息

Parameters
message 消息内容,长度不超过256字节
roomID 房间 ID,最大长度为 128 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''
callback 发送广播消息结果通知

sendBarrageMessage:roomID:callback:

- (void)sendBarrageMessage:(NSString *) message roomID:(NSString *) roomID callback:(ZegoIMSendBarrageMessageCallbacknullable ) callback;

发送房间弹幕消息

Parameters
message 消息内容,长度不超过256字节
roomID 房间 ID,最大长度为 128 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''
callback 发送弹幕消息结果通知

sendCustomCommand:toUserList:roomID:callback:

- (void)sendCustomCommand:(NSString *) command toUserList:(nullable NSArray< ZegoUser * > *) toUserList roomID:(NSString *) roomID callback:(ZegoIMSendCustomCommandCallbacknullable ) callback;

发送自定义信令

Parameters
command 自定义信令内容,长度不超过256字节
toUserList 信令的接收者
roomID 房间 ID,最大长度为 128 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''
callback 发送信令结果通知

createMediaPlayer

- (nullable ZegoMediaPlayer *)createMediaPlayer:;

创建媒体播放器实例对象

destroyMediaPlayer:

- (void)destroyMediaPlayer:(ZegoMediaPlayer *) mediaPlayer;

销毁媒体播放器实例对象

Parameters
mediaPlayer 媒体播放器实例对象

startMixerTask:callback:

- (void)startMixerTask:(ZegoMixerTask *) task callback:(ZegoMixerStartCallbacknullable ) callback;

开始混流任务

Parameters
task 混流任务对象
callback 开始混流任务结果通知

stopMixerTask:callback:

- (void)stopMixerTask:(ZegoMixerTask *) task callback:(ZegoMixerStopCallbacknullable ) callback;

停止混流任务

Parameters
task 混流任务对象
callback 停止混流任务结果通知

startPlayingStream:canvas:

- (void)startPlayingStream:(NSString *) streamID canvas:(nullable ZegoCanvas *) canvas;

开始拉流

Parameters
streamID 流 ID,长度不超过256的字符串。不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''。
canvas 用于显示拉流画面的视图,视图设置为 [nil] 则不进行显示

startPlayingStream:canvas:config:

- (void)startPlayingStream:(NSString *) streamID canvas:(nullable ZegoCanvas *) canvas config:(ZegoPlayerConfig *) config;

开始拉流

Parameters
streamID 流 ID,长度不超过256的字符串。不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''。
canvas 用于显示拉流画面的视图,视图设置为 [nil] 则不进行显示
config 拉流进阶配置

startPlayingStream:

- (void)startPlayingStream:(NSString *) streamID;

开始拉流

Parameters
streamID 流 ID,长度不超过256的字符串。不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''。

startPlayingStream:config:

- (void)startPlayingStream:(NSString *) streamID config:(ZegoPlayerConfig *) config;

开始拉流

Parameters
streamID 流 ID,长度不超过256的字符串。不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''。
config 拉流进阶配置

stopPlayingStream:

- (void)stopPlayingStream:(NSString *) streamID;

停止拉流

Parameters
streamID 流 ID

setPlayVolume:streamID:

- (void)setPlayVolume:(int) volume streamID:(NSString *) streamID;

设置拉流音量

Parameters
volume 音量百分比,取值范围为 0 ~ 100,默认值为 100
streamID 流 ID

mutePlayStreamAudio:streamID:

- (void)mutePlayStreamAudio:(BOOL) mute streamID:(NSString *) streamID;

停止或恢复拉取音频流

Parameters
mute 禁用标识;YES 表示禁止拉取;NO 表示恢复拉取
streamID 流 ID

mutePlayStreamVideo:streamID:

- (void)mutePlayStreamVideo:(BOOL) mute streamID:(NSString *) streamID;

停止或恢复拉取视频流

Parameters
mute 禁用标识;YES 表示禁止拉取;NO 表示恢复拉取
streamID 流 ID

enableHardwareDecoder:

- (void)enableHardwareDecoder:(BOOL) enable;

开/关硬件解码

Parameters
enable 是否开启硬解开关;YES 表示开启硬解;NO 表示关闭硬解;默认为 NO

enableCheckPoc:

- (void)enableCheckPoc:(BOOL) enable;

开/关帧顺序检测

Parameters
enable 是否开启帧顺序检测;YES 表示开启帧顺序检测,不支持 B 帧;NO 表示关闭帧顺序检测,支持 B 帧,可能出现短暂花屏;默认为 YES

enableAEC:

- (void)enableAEC:(BOOL) enable;

开/关回声消除

Parameters
enable 是否开启回声消除;YES 表示开启回声消除;NO 表示关闭回声消除

setAECMode:

- (void)setAECMode:(ZegoAECMode) mode;

设置回声消除模式

Parameters
mode 回声消除模式

enableAGC:

- (void)enableAGC:(BOOL) enable;

开/关自动增益

Parameters
enable 是否开启自动增益;YES 表示开启自动增益;NO 表示关闭自动增益

enableANS:

- (void)enableANS:(BOOL) enable;

开/关噪声抑制

Parameters
enable 是否开启噪声抑制;YES 表示开启噪声抑制;NO 表示关闭噪声抑制

enableAudioMixing:

- (void)enableAudioMixing:(BOOL) enable;

开/关 混音功能

Parameters
enable 是否开启混音功能;YES 表示开启;NO 表示关闭

setAudioMixingHandler:

- (void)setAudioMixingHandler:(nullable id< ZegoAudioMixingHandler >) handler;

设置混音相关回调

Parameters
handler 混音回调

muteLocalAudioMixing:

- (void)muteLocalAudioMixing:(BOOL) mute;

禁止或恢复本地播放混音声音

Parameters
mute 是否静音本地混音;YES 表示禁止播放播放;NO 表示开启

setAudioMixingVolume:

- (void)setAudioMixingVolume:(int) volume;

设置混音音量

Parameters
volume 混音音量 取值范围是 0 ~ 100,默认为 50

setAudioMixingVolume:type:

- (void)setAudioMixingVolume:(int) volume type:(ZegoVolumeType) type;

设置混音音量

Parameters
volume 混音音量 取值范围是 0 ~ 100,默认为 50
type 混音本地播放音量/混音推流中的音量

enableBeautify:

- (void)enableBeautify:(ZegoBeautifyFeature) featureBitmask;

开/关美颜

Parameters
featureBitmask 美颜特性,位掩码格式,可选择同时开启 [ZegoBeautifyFeature] 中的几个特性

enableBeautify:channel:

- (void)enableBeautify:(ZegoBeautifyFeature) featureBitmask channel:(ZegoPublishChannel) channel;

开/关美颜

Parameters
featureBitmask 美颜特性,位掩码格式,可选择同时开启 [ZegoBeautifyFeature] 中的几个特性
channel 推流通道

setBeautifyOption:

- (void)setBeautifyOption:(ZegoBeautifyOption *) option;

设置美颜参数

Parameters
option 美颜选项参数

setBeautifyOption:channel:

- (void)setBeautifyOption:(ZegoBeautifyOption *) option channel:(ZegoPublishChannel) channel;

设置美颜参数

Parameters
option 美颜选项参数
channel 推流通道

startPublishingStream:

- (void)startPublishingStream:(NSString *) streamID;

开始推流

Parameters
streamID 流 ID,长度不超过256的字符串,需要在整个 AppID 内全局唯一,若出现在同一个 AppID 内,不同的用户各推了一条流且流名相同,将会导致后推流的用户推流失败。不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''。

startPublishingStream:channel:

- (void)startPublishingStream:(NSString *) streamID channel:(ZegoPublishChannel) channel;

开始推流,可选择推第二路流

Parameters
streamID 流 ID,长度不超过256的字符串,需要在整个 AppID 内全局唯一,若出现在同一个 AppID 内,不同的用户各推了一条流且流名相同,将会导致后推流的用户推流失败。不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''。
channel 推流通道

stopPublishingStream

- (void)stopPublishingStream:;

停止推流

stopPublishingStream:

- (void)stopPublishingStream:(ZegoPublishChannel) channel;

停止推流,可停止指定通道的音视频流

Parameters
channel 推流通道

setStreamExtraInfo:callback:

- (void)setStreamExtraInfo:(NSString *) extraInfo callback:(ZegoPublisherSetStreamExtraInfoCallbacknullable ) callback;

设置流附加信息

Parameters
extraInfo 流附加信息,长度不超过1024的字符串
callback 更新流附加信息执行结果通知

setStreamExtraInfo:channel:callback:

- (void)setStreamExtraInfo:(NSString *) extraInfo channel:(ZegoPublishChannel) channel callback:(ZegoPublisherSetStreamExtraInfoCallbacknullable ) callback;

设置流附加信息,支持设置其他通道的推流

Parameters
extraInfo 流附加信息,长度不超过1024的字符串
channel 推流通道
callback 更新流附加信息执行结果通知

startPreview:

- (void)startPreview:(nullable ZegoCanvas *) canvas;

启动/更新本地预览

Parameters
canvas 启动预览时用于显示画面的视图,视图设置为 nil 则不进行预览

startPreview:channel:

- (void)startPreview:(nullable ZegoCanvas *) canvas channel:(ZegoPublishChannel) channel;

启动/更新本地预览,支持设置其他通道的推流

Parameters
canvas 启动预览时用于显示画面的视图,视图设置为 nil 则不进行预览
channel 推流通道

startPreview

- (void)startPreview:;

启动本地音频预览,即在创建 Engine 之后,未推拉流之前,可以调用此接口,Enging 会开始采集音频

stopPreview

- (void)stopPreview:;

停止本地预览

stopPreview:

- (void)stopPreview:(ZegoPublishChannel) channel;

停止本地预览

Parameters
channel 推流通道

setVideoConfig:

- (void)setVideoConfig:(ZegoVideoConfig *) config;

设置视频配置

Parameters
config 视频配置,SDK 提供常用的分辨率、帧率和码率的组合值,也可自定义分辨率、帧率和码率

setVideoConfig:channel:

- (void)setVideoConfig:(ZegoVideoConfig *) config channel:(ZegoPublishChannel) channel;

设置视频配置,支持设置其他推流

Parameters
config 视频配置,SDK 提供常用的分辨率、帧率和码率的组合值,也可自定义分辨率、帧率和码率
channel 推流通道

getVideoConfig

- (ZegoVideoConfig *)getVideoConfig:;

获取当前视频配置

getVideoConfig:

- (ZegoVideoConfig *)getVideoConfig:(ZegoPublishChannel) channel;

获取当前视频配置

Parameters
channel 推流通道

setVideoMirrorMode:

- (void)setVideoMirrorMode:(ZegoVideoMirrorMode) mirrorMode;

设置镜像模式

Parameters
mirrorMode 预览或推流的镜像模式

setVideoMirrorMode:channel:

- (void)setVideoMirrorMode:(ZegoVideoMirrorMode) mirrorMode channel:(ZegoPublishChannel) channel;

设置镜像模式,支持设置其他通道的推流

Parameters
mirrorMode 预览或推流的镜像模式
channel 推流通道

setAppOrientation:

- (void)setAppOrientation:(UIInterfaceOrientation) orientation;

设置视频的朝向

Parameters
orientation 视频的朝向

setAppOrientation:channel:

- (void)setAppOrientation:(UIInterfaceOrientation) orientation channel:(ZegoPublishChannel) channel;

设置采集视频的朝向,支持设置其他路推流。

Parameters
orientation 视频的朝向
channel 推流通道

setAudioConfig:

- (void)setAudioConfig:(ZegoAudioConfig *) config;

设置音频质量配置

Parameters
config 音频质量配置

getAudioConfig

- (ZegoAudioConfig *)getAudioConfig:;

获取当前音频质量配置

mutePublishStreamAudio:

- (void)mutePublishStreamAudio:(BOOL) mute;

停止或恢复发送音频流

Parameters
mute 是否停止发送音频流;YES 表示只发送视频流不发送音频流;NO 表示同时发送音频和视频流;默认为 NO

mutePublishStreamAudio:channel:

- (void)mutePublishStreamAudio:(BOOL) mute channel:(ZegoPublishChannel) channel;

停止或恢复发送音频流,支持设置其他路推流

Parameters
mute 是否停止发送音频流;YES 表示只发送视频流不发送音频流;NO 表示同时发送音频和视频流;默认为 NO
channel 推流通道

mutePublishStreamVideo:

- (void)mutePublishStreamVideo:(BOOL) mute;

停止或恢复发送视频流

Parameters
mute 是否停止发送视频流;YES 表示只发送音频流不发送视频流;NO 表示同时发送音频和视频流;默认为 NO

mutePublishStreamVideo:channel:

- (void)mutePublishStreamVideo:(BOOL) mute channel:(ZegoPublishChannel) channel;

停止或恢复发送视频流,支持设置其他路推流

Parameters
mute 是否停止发送视频流;YES 表示只发送音频流不发送视频流;NO 表示同时发送音频和视频流;默认为 NO
channel 推流通道

enableTrafficControl:property:

- (void)enableTrafficControl:(BOOL) enable property:(ZegoTrafficControlProperty) property;

开始或停止流量控制

Parameters
enable 是否使用流量控制;YES 表示开启流控;NO 表示关闭流控;默认为 YES
property 流量控制的可调节的属性,位掩码格式。具体可设置为 [ZegoTrafficControlProperty] 的属性的一个或多个枚举组合。默认为 AdaptiveFPS

setMinVideoBitrateForTrafficControl:mode:

- (void)setMinVideoBitrateForTrafficControl:(int) bitrate mode:(ZegoTrafficControlMinVideoBitrateMode) mode;

设置流量控制视频码率最低值

Parameters
bitrate 最低视频码率,单位为 kbps
mode 低于最低码率时的视频发送模式

setCaptureVolume:

- (void)setCaptureVolume:(int) volume;

设置推流端采集音量

Parameters
volume 音量百分比,范围为 0 ~ 100,默认值为 100。

addPublishCdnUrl:streamID:callback:

- (void)addPublishCdnUrl:(NSString *) targetURL streamID:(NSString *) streamID callback:(ZegoPublisherUpdateCdnUrlCallbacknullable ) callback;

增加转推至 CDN 的 URL

Parameters
targetURL CDN 转推地址,支持的转推地址格式为 rtmp。
streamID 流 ID
callback 添加 CDN 转推结果通知

removePublishCdnUrl:streamID:callback:

- (void)removePublishCdnUrl:(NSString *) targetURL streamID:(NSString *) streamID callback:(ZegoPublisherUpdateCdnUrlCallbacknullable ) callback;

删除转推至 CDN 的 URL

Parameters
targetURL CDN 转推地址,支持的转推地址格式有 rtmp,flv,hls
streamID 流 ID
callback 移除 CDN 转推结果通知

enablePublishDirectToCDN:config:

- (void)enablePublishDirectToCDN:(BOOL) enable config:(nullable ZegoCDNConfig *) config;

是否不经过 Zego 实时视频云服务器直接推流到 CDN

Parameters
enable 是否开启直推 CDN;YES 表示开启直推 CDN;NO 表示不开启直推 CDN;默认为 NO
config CDN 配置,若为 nil 则使用 Zego 的后台配置

enablePublishDirectToCDN:config:channel:

- (void)enablePublishDirectToCDN:(BOOL) enable config:(nullable ZegoCDNConfig *) config channel:(ZegoPublishChannel) channel;

是否不经过 Zego 实时视频云服务器直接推流到 CDN,支持设置其他路推流

Parameters
enable 是否开启直推 CDN;YES 表示开启直推 CDN;NO 表示不开启直推 CDN;默认为 NO
config CDN 配置,若为 nil 则使用 Zego 的后台配置
channel 推流通道

setPublishWatermark:isPreviewVisible:

- (void)setPublishWatermark:(nullable ZegoWatermark *) watermark isPreviewVisible:(BOOL) isPreviewVisible;

设置推流水印

Parameters
watermark 水印布局左上角为坐标系原点,区域不能超过编码分辨率设置的大小。若为空表示取消水印。
isPreviewVisible 是否本地预览能看见水印

setPublishWatermark:isPreviewVisible:channel:

- (void)setPublishWatermark:(nullable ZegoWatermark *) watermark isPreviewVisible:(BOOL) isPreviewVisible channel:(ZegoPublishChannel) channel;

设置推流水印,支持设置其他路推流

Parameters
watermark 水印布局左上角为坐标系原点,区域不能超过编码分辨率设置的大小。若为空表示取消水印。
isPreviewVisible 是否本地预览能看见水印
channel 推流通道

sendSEI:

- (void)sendSEI:(NSData *) data;

发送媒体增强补充信息

Parameters
data SEI 内容

sendSEI:channel:

- (void)sendSEI:(NSData *) data channel:(ZegoPublishChannel) channel;

发送媒体增强补充信息, 支持设置其他路推流

Parameters
data SEI 内容
channel 推流通道

enableHardwareEncoder:

- (void)enableHardwareEncoder:(BOOL) enable;

开/关硬件编码

Parameters
enable 是否开启硬件编码;YES 表示开启硬编;NO 表示关闭硬编;默认为 NO

setCapturePipelineScaleMode:

- (void)setCapturePipelineScaleMode:(ZegoCapturePipelineScaleMode) mode;

设置采集缩放时机,视频数据是采集的时候立即缩放还是编码时才进行缩放

Parameters
mode 采集缩放时机

loginRoom:user:

- (void)loginRoom:(NSString *) roomID user:(ZegoUser *) user;

登录房间,推拉流前必须登录房间

Parameters
roomID 房间 ID,最大长度为 128 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''
user 用户对象实例,配置用户 ID、用户名。 注意用户 ID 需要在相同的 appID 下全局唯一,否则会出现后登陆的用户踢掉先登陆的用户的情况。

loginRoom:user:config:

- (void)loginRoom:(NSString *) roomID user:(ZegoUser *) user config:(ZegoRoomConfig *) config;

使用配置进阶属性的方式登录房间,推拉流前必须登录房间

Parameters
roomID 房间 ID,最大长度为 128 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''
user 用户对象实例,配置用户 ID、用户名。 注意用户 ID 需要在相同的 appID 下全局唯一,否则会出现后登陆的用户踢掉先登陆的用户的情况。
config 房间进阶配置

logoutRoom:

- (void)logoutRoom:(NSString *) roomID;

退出房间

Parameters
roomID 房间 ID,最大长度为 128 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', ''