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 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.', '<', '>', '/', '' |