通过阅读本文,您可以了解到iOS SDK和Mac SDK的AliRtcEngine接口详情。
接口说明
查看所有接口详情,请参见AliRtcEngine。
目录
基础接口
API | 描述 | 支持的最低版本 |
---|---|---|
setH5CompatibleMode | 设置H5兼容模式。 | 1.1 |
getH5CompatibleMode | 检查是否设置了H5兼容模式。 | 1.1 |
sharedInstance | 创建AliRtcEngine实例。 | 1.17 |
destroy | 释放SDK实例。 | 1.1 |
uploadLog | 上传日志。 | 1.1 |
setLogDirPath | 设置SDK日志文件保存路径。 | 1.17 |
setLogLevel | 设置日志级别。 | 1.17 |
频道相关接口
API | 描述 | 支持的最低版本 |
---|---|---|
joinChannel | 加入频道。 | 1.1 |
leaveChannel | 离开频道。 | 1.1 |
switchChannel | 切换频道。 | 2.1 |
isInCall | 检查当前是否在频道中。 | 1.1 |
setChannelProfile | 设置频道模式。 | 1.15 |
createChannelWithDelegate | 创建AliRtcEngine子频道实例。 | 2.1 |
destroyChannel | 销毁createChannelWithDelegate创建的子频道。 | 2.1 |
发布相关接口
API | 描述 | 支持的最低版本 |
---|---|---|
publishLocalVideoStream | 设置是否允许发布视频流。 | 2.1 |
isLocalVideoStreamPublished | 查询当前是否允许发布视频流。 | 1.1 |
isScreenSharePublished | 查询当前是否允许发布屏幕流。 | 1.1 |
publishLocalAudioStream | 设置是否允许发布音频流。 | 2.1 |
isLocalAudioStreamPublished | 查询当前是否允许推音频流。 | 1.1 |
publishLocalDualStream | 设置是否允许发布次要视频流。 | 2.1 |
isDualStreamPublished | 查询当前是否允许发布次要视频流。 | 2.1 |
订阅相关接口
API | 描述 | 支持的最低版本 |
---|---|---|
setRemoteVideoStreamType | 设置订阅的相机流格式,大流或小流。 | 2.1 |
setRemoteDefaultVideoStreamType | 设置默认订阅的相机流格式,大流或小流。 | 2.1 |
setDefaultSubscribeAllRemoteAudioStreams | 设置是否默认接收音频流。 | 2.1 |
subscribeAllRemoteAudioStreams | 停止或恢复接收所有远端音频流。 | 2.1 |
subscribeRemoteAudioStream | 停止或恢复特定远端用户的音频流拉取。 | 2.1 |
setDefaultSubscribeAllRemoteVideoStreams | 设置是否默认接收视频流。 | 2.1 |
subscribeAllRemoteVideoStreams | 停止或恢复接收所有远端视频流。 | 2.1 |
subscribeRemoteVideoStream | 停止或恢复特定远端用户的视频流拉取。 | 2.1 |
视频相关接口
API | 描述 | 支持的最低版本 |
---|---|---|
setScreenShareEncoderConfiguration | 设置屏幕共享编码属性。 | 2.1 |
setLocalViewConfig | 为本地预览设置渲染窗口以及绘制参数。 | 1.1 |
setCameraCapturerConfiguration | 设置摄像头采集偏好。 | 2.1 |
enableLocalVideo | 禁用或重新启用本地视频采集。 | 2.1 |
muteLocalCamera | 停止或恢复本地视频数据发送。 | 1.1 |
muteAllRemoteVideoRendering | 停止或恢复远端所有的视频渲染(仅iOS)。 | 2.1 |
setRemoteViewConfig | 为远端的视频设置渲染窗口以及绘制参数。 | 1.1 |
isCameraOn | 检查摄像头是否打开。 | 1.1 |
stopRecord | 停止录制。 | 1.17 |
startRecord | 开始录制(非布局录制)。 | 1.17 |
setBeautyEffect | 设置是否启用基础美颜。 | 1.17.9 |
setVideoEncoderConfiguration | 设置视频编码属性。 | 2.1 |
addVideoWatermark | 添加水印。 | 2.1 |
clearVideoWatermark | 清理对应数据流水印信息。 | 2.1 |
snapshotVideo | 截图。 | 2.1 |
switchCamera | 切换前后摄像头(仅iOS)。 | 1.1 |
getCurrentCameraDirection | 获取当前摄像头方向,默认前置摄像头(仅iOS)。 | 1.1 |
setCameraZoom | 设置摄像头缩放比例(仅iOS)。 | 1.1 |
setCameraFlash | 设置摄像头闪光灯是否打开(仅iOS)。 | 1.14 |
isCameraFocusPointSupported | 摄像头是否支持手动聚焦(仅iOS)。 | 1.14 |
isCameraExposurePointSupported | 摄像头是否支持设置曝光区域(仅iOS)。 | 1.14 |
setCameraFocusPoint | 设置摄像头手动聚焦(仅iOS)。 | 1.14 |
setCameraExposurePoint | 设置摄像头曝光点(仅iOS)。 | 1.14 |
isCameraAutoFocusFaceModeSupported | 摄像头是否支持人脸聚焦(仅iOS)。 | 2.1 |
setCameraAutoFocusFaceModeEnabled | 设置摄像头人脸对焦(仅iOS)。 | 2.1 |
getVideoCaptureData | 主动获取采集数据。 | 2.4 |
getVideoPreEncoderData | 主动获取编码前数据。 | 2.4 |
getVideoRenderData | 主动获取拉流数据。 | 2.4 |
共享视频接口
API | 描述 | 支持的最低版本 |
---|---|---|
startScreenShare | 开始屏幕分享(仅iOS)。 | 2.1 |
startScreenShareWithDesktopId | 根据桌面ID进行屏幕分享(仅Mac)。 | 2.1 |
startScreenShareWithWindowId | 根据窗口ID进行屏幕分享(仅Mac)。 | 2.1 |
getScreenShareSourceInfoWithType | 获取屏幕分享源信息(仅Mac)。 | 2.1 |
updateScreenShareConfig | 更新屏幕分享配置(仅Mac)。 | 2.1 |
stopScreenShare | 停止屏幕分享。 | 2.1 |
音频相关接口
API | 描述 | 支持的最低版本 |
---|---|---|
setAudioOnlyMode | 设置为纯音频模式还是音视频模式。 | 1.1 |
isAudioOnly | 查询当前是否为纯音频模式。 | 1.1 |
muteLocalMic | 停止或恢复本地音频数据发送。 | 1.1 |
muteRemoteAudioPlaying | 停止或恢复远端的音频播放。 | 1.1 |
muteAllRemoteAudioPlaying | 停止或恢复远端所有的音频播放。 | 1.16.2 |
startAudioCapture | 开启音频采集。 | 1.11 |
stopAudioCapture | 关闭音频采集。 | 1.11 |
startAudioPlayer | 开启音频播放设备。 | 1.11 |
stopAudioPlayer | 关闭音频播放。 | 1.11 |
setRemoteAudioVolume | 设置本地播放的指定远端用户音量。 | 2.1 |
enableSpeakerphone | 设置音频输出为听筒或扬声器(仅iOS)。 | 2.1 |
isEnableSpeakerphone | 获取当前音频输出为听筒或扬声器(仅iOS)。 | 2.1 |
setRecordingVolume | 设置录音音量。 | 1.16.2 |
setPlayoutVolume | 设置播放音量。 | 1.16.2 |
setRecordingDeviceVolume | 设置音频采集设备音量(仅Mac)。 | 2.1 |
getRecordingDeviceVolume | 获取音频采集设备音量(仅Mac)。 | 2.1 |
setPlayoutDeviceVolume | 设置音频播放设备音量(仅Mac)。 | 2.1 |
getPlayoutDeviceVolume | 获取音频播放设备音量(仅Mac)。 | 2.1 |
setExternalAudioRenderVolume | 设置外部输入音频的播放音量(仅Mac)。 | 2.1 |
getExternalAudioRenderVolume | 获取外部输入音频的播放音量(仅Mac)。 | 2.1 |
enableAudioVolumeIndication | 设置音量回调频率和平滑系数。 | 1.17.9 |
setAudioProfile | 设置音频Profile。 | 2.1 |
setAudioSessionOperationRestriction | 设置SDK对AVAudioSession的控制权限(仅iOS)。 | 2.1 |
setDeviceVolumeType | 设置SDK设备音量类型(仅iOS)。 | 2.1 |
enableAudioDTX | 开启本地音频流量控制(语音)。 | 2.1 |
enableAudioAMD | 开启本地音频流量控制(麦克风)。 | 2.1 |
setAudioEffectVoiceChangerMode | 设置变声音效模式。 | 2.1 |
setAudioEffectPitchValue | 设置变调参数。 | 2.1 |
setAudioEffectReverbMode | 设置混响音效模式。 | 2.1 |
setAudioEffectReverbParamType | 设置混响音效类型和具体参数。 | 2.1 |
enableEarBack | 启用耳返(仅iOS)。 | 1.15 |
setEarBackVolume | 设置耳返音量(仅iOS)。 | 1.15 |
setRecordingDeviceMute | 静音音频采集设备(仅Mac)。 | 2.4 |
getRecordingDeviceMute | 获取音频采集设备静音状态(仅Mac)。 | 2.4 |
setPlaybackDeviceMute | 静音音频播放设备(仅Mac)。 | 2.4 |
getPlaybackDeviceMute | 获取音频播放设备静音状态(仅Mac)。 | 2.4 |
伴奏与音效接口
媒体引擎接口
API | 描述 | 支持的最低版本 |
---|---|---|
registerVideoSampleObserver | 注册视频数据输出。 | 1.17 |
unRegisterVideoSampleObserver | 取消注册视频数据输出。 | 1.17 |
registerLocalVideoTexture | 注册本地相机流视频OpenGL纹理数据观测器(仅iOS)。 | 1.15 |
unregisterLocalVideoTexture | 取消注册本地相机流视频OpenGL纹理数据观测器(仅iOS)。 | 1.15 |
subscribeAudioData | 订阅音频数据输出。 | 1.17 |
unSubscribeAudioData | 取消音频数据输出。 | 1.17 |
setSubscribeAudioNumChannel | 设置输出音频声道数(混音前数据不支持该参数设置)。 | 2.1 |
setSubscribeAudioSampleRate | 设置输出音频采样率(混音前数据不支持该参数设置)。 | 2.1 |
setExternalVideoSource | 启用外部视频输入源。 | 2.1 |
pushExternalVideoFrame | 输入视频数据。 | 2.1 |
setExternalAudioSource | 设置是否启用外部音频输入源。 | 1.17.9 |
pushExternalAudioFrameRawData | 输入音频数据。 | 1.17.9 |
setExternalAudioVolume | 设置混音音量。 | 1.17.9 |
getExternalAudioVolume | 获取混音音量。 | 1.17.9 |
setMixedWithMic | 设置是否与麦克风采集音频混合。 | 1.17.9 |
setExteranlAudioRender | 设置是否启用外部输入音频播放。 | 1.17.9 |
pushExternalAudioRenderRawData | 输入外部音频播放数据。 | 1.17.9 |
直播旁路接口
API | 描述 | 支持的最低版本 |
---|---|---|
startPublishLiveStreamWithURL | 开启旁路直播。 | 2.4 |
updatePublishLiveStreamWithURL | 更新旁路直播相关参数。 | 2.4 |
stopPublishLiveStreamWithURL | 停止旁路直播。 | 2.1 |
GetPublishLiveStreamStateWithURL | 获取旁路直播状态。 | 2.4 |
跨频道连麦接口
API | 描述 | 支持的最低版本 |
---|---|---|
startChannelRelay | 开启跨频道连麦。 | 2.1 |
updateChannelRelay | 更新跨频道连麦。 | 2.1 |
stopChannelRelay | 停止跨频道连麦。 | 2.1 |
enableBackgroundExchange | 开启或关闭虚拟背景替换功能(仅Mac)。 | 2.4 |
enableBackgroundBlur | 开启或关闭虚拟背景虚化功能(仅Mac)。 | 2.4 |
预览接口
API | 描述 | 支持的最低版本 |
---|---|---|
startPreview | 开始本地预览。 | 1.1 |
stopPreview | 停止本地预览。 | 1.1 |
远端用户查询接口
API | 描述 | 支持的最低版本 |
---|---|---|
getOnlineRemoteUsers | 获取远端在线用户列表。 | 1.1 |
getUserInfo | 查询远端用户信息。 | 1.1 |
isUserOnline | 查询用户是否在线。 | 1.1 |
设备管理接口(仅Mac)
API | 描述 | 支持的最低版本 |
---|---|---|
getAudioCaptures | 获取系统中的录音设备列表。 | 1.1 |
getCurrentAudioCapture | 获取使用的录音设备名称。 | 1.1 |
getCurrentAudioCaptureID | 获取使用的录音设备ID。 | 1.16.2 |
setCurrentAudioCapture | 通过名称设置录音设备。 | 1.1 |
setCurrentAudioCaptureWithID | 通过ID设置录音设备。 | 1.16.2 |
getAudioRenderers | 获取系统中的扬声器列表。 | 1.1 |
getCurrentAudioRenderer | 获取当前使用的扬声器名称。 | 1.1 |
getCurrentAudioRendererID | 获取当前使用的扬声器ID。 | 1.16.2 |
setCurrentAudioRenderer | 通过名称设置扬声器。 | 1.1 |
setCurrentAudioRendererWithID | 通过ID设置扬声器。 | 1.16.2 |
getCameraList | 获取摄像头列表。 | 1.1 |
getCurrentCamera | 获取当前使用的摄像头名称。 | 1.1 |
getCurrentCameraID | 获取当前使用的摄像头ID。 | 1.16.2 |
setCurrentCamera | 通过名称设置摄像头。 | 1.1 |
setCurrentCameraWithID | 通过ID设置摄像头。 | 1.16.2 |
startTestAudioRecordWithName | 开始测试音频采集设备。 | 1.16.2 |
stopTestAudioRecord | 停止测试音频采集设备。 | 1.16.2 |
startTestAudioPlayoutWithName | 开始测试音频播放设备。 | 1.16.2 |
stopTestAudioPlayout | 停止测试音频播放设备。 | 1.16.2 |
视频布局录制接口(仅Mac)
API | 描述 | 支持的最低版本 |
---|---|---|
startRecord | 开始录制。 | 2.1 |
pauseRecord | 暂停录制。 | 2.1 |
resumeRecord | 重新开启录制。 | 2.1 |
UpdateRecordLayout | 更新录制信息。 | 2.1 |
addRecordTemplate | 添加录制模板。 | 2.1 |
其他接口
API | 描述 | 支持的最低版本 |
---|---|---|
getSDKVersion | 获取SDK版本号。 | 1.1 |
getErrorDescription | 获取错误码描述。 | 2.1 |
setClientRole | 设置用户角色。 | 1.16 |
getCurrentClientRole | 获取用户角色(仅iOS)。 | 1.17.19 |
getClientRole | 获取用户角色(仅Mac)。 | 1.17.19 |
startLastmileDetect | 开始网络质量探测。 | 1.16.2 |
stopLastmileDetect | 停止网络质量探测。 | 1.16.2 |
postFeedbackWithUid | SDK问题反馈。 | 1.17.12 |
sendMediaExtensionMsg | 发送媒体扩展信息。 | 1.17.1 |
startIntelligentDenoise | 开启智能降噪。 | 2.1 |
stopIntelligentDenoise | 关闭智能降噪。 | 2.1 |
refreshAuthInfo | 刷新鉴权信息。 | 1.17.41 |
getCurrentConnectionStatus | 获取当前网络链接状态。 | 2.1 |
enableDelegateMainQueue | 是否分发回调到主线程(仅iOS)。 | 2.1 |
setDelegateQueue | 指定回调线程队列(仅iOS)。 | 2.1 |
showDebugView | 显示仪表盘。 | 2.4 |
接口详情
- setH5CompatibleMode:设置是否兼容H5。
参数说明+ (void)setH5CompatibleMode:(BOOL)comp;
名称 类型 描述 comp BOOL YES表示兼容H5,NO表示不兼容H5。默认不兼容H5。 注意 当前版本不支持在创建AliRtcEngine实例之后更改H5兼容模式,必须在创建实例之前就调用此方法。 - getH5CompatibleMode:检查是否设置了H5兼容模式。
返回说明+ (BOOL)getH5CompatibleMode;
YES表示兼容H5,NO表示不兼容H5。
- sharedInstance:创建AliRtcEngine实例。
参数说明+ (instancetype _Nonnull )sharedInstance:(id<AliRtcEngineDelegate>_Nullable)delegate extras:(NSString *_Nullable)extras;
名称 类型 描述 delegate id<AliRtcEngineDelegate>_Nullable 监听回调的代理。 extras NSString *_Nullable 通过JSON配置SDK的特别功能,详情请参见extras功能说明。无需特别功能,可填空字符:""。 注意 同一时间只会存在一个主实例。 - destroy:释放SDK实例。
+ (void)destroy;
注意 在所有操作结束之后调用。 - uploadLog:上传日志。默认离会后自动上传。
+ (void)uploadLog;
- setLogDirPath:设置SDK日志文件保存路径。
参数说明+ (int)setLogDirPath:(NSString *_Nullable)logDirPath;
名称 类型 描述 logDirPath NSString *_Nullable 日志文件保存绝对路径。iOS端日志默认存储路径为Library/Caches/Ali_RTC_Log。Mac端日志默认存储路径为/Users/xxx/Documents(文稿)/Ali_RTC_Log。 0表示方法调用成功,其他表示方法调用失败。
注意 请在调用所有SDK接口前调用此接口,避免日志出现丢失,同时App必须保证指定的目录已存在且可写入。 - setLogLevel:设置日志等级。
参数说明- (void)setLogLevel:(AliRtcLogLevel)logLevel;
名称 类型 描述 logLevel AliRtcLogLevel Log级别,默认值为AliRtcLogLevelInfo。 - joinChannel:加入频道。
参数说明- (int)joinChannel:(AliRtcAuthInfo *_Nonnull)authInfo name:(NSString *_Nullable)userName onResult:(void(^_Nullable)(NSInteger errCode,NSString * _Nonnull channel,NSInteger elapsed))onResult;
名称 类型 描述 authInfo AliRtcAuthInfo 鉴权信息。 userName String 用户的显示名称(不是用户ID)。 onResult void(^_Nullable)(NSInteger errCode,NSString * _Nonnull channel,NSInteger elapsed) 当此接口执行结束后调用此回调。 说明 加入频道成功后,如果中途需要加入其他频道,必须先调用leaveChannel离开当前频道,如果加入频道失败,需要重试时,无需先调用leaveChannel。 - leaveChannel:离开频道。
返回说明- (int)leaveChannel;
0表示方法调用成功,其他表示方法调用失败。
说明- 1.15及以上版本:销毁引擎只能通过destroy方法。
- 1.15以下版本:离开频道时,AliRtcEngine实例会被销毁,如需继续加入频道等操作,需要重新调用getInstance初始化AliRtcEngine实例。
- 如果当前不在频道内,调用leaveChannel不会对实例产生任何影响,但会产生消息,通知频道内其他用户。
- switchChannel:切换频道。
参数说明- (int)switchChannel:(AliRtcAuthInfo *_Nonnull)authInfo;
名称 类型 描述 authInfo AliRtcAuthInfo 鉴权信息。 0表示方法调用成功,其他表示方法调用失败。
- 返回ERR_SDK_INVALID_STATE,请确认是否频道模式或角色不匹配,或当前未加入任何频道中。
- 返回ERR_INVALID_ARGUMENTS,请确认鉴权信息是否合法,或是否加入相同频道。
- 返回ERR_INNER为SDK内部状态错误。
说明- 本方法只允许在直播模式AliRtcInteractivelive下,观看角色AliRtcClientRolelive使用。
- 该接口是异步接口,调用此方法成功切换频道后,SDK会先触发离开原频道的onLeaveChannelResult回调,再返回加入新频道的onJoinChannelResult回调。
- isInCall:检查当前是否在频道中。
返回说明- (BOOL)isInCall;
YES表示在频道中,NO表示不在频道中。
- setChannelProfile:设置频道模式。
参数说明- (int)setChannelProfile:(AliRtcChannelProfile)profile;
名称 类型 描述 profile AliRtcChannelProfile 频道类型,默认为AliRtcCommunication。 0表示方法调用成功,其他表示方法调用失败。
说明 该接口只可以在加入频道之前调用,会议中不可以重新设置,离开频道后可以重新设置。 - createChannelWithDelegate:创建AliRtcEngine子频道实例。
参数说明- (AliRtcEngine *_Nullable)createChannelWithDelegate:(id<AliRtcEngineDelegate>_Nonnull)delegate extras:(NSString *_Nullable)extras;
名称 类型 描述 delegate id<AliRtcEngineDelegate>_Nonnull 返回的SDK实例对象的代理。 extras NSString *_Nullable 通过JSON配置SDK的特别功能,详情请参见extras功能说明。无需特别功能,可填空字符:@""。 成功返回子频道实例,失败返回nil。
- destroyChannel:销毁createChannelWithDelegate创建的子频道。
- (void)destroyChannel;
- publishLocalVideoStream:设置是否允许发布相机流。
参数说明- (int)publishLocalVideoStream:(BOOL)enable;
名称 类型 描述 enable boolean YES表示发送视频,NO表示停止发送,默认YES。 - isLocalVideoStreamPublished:查询当前是否允许发布视频流。
返回说明- (BOOL)isLocalVideoStreamPublished;
YES表示发布相机流,NO表示不发布相机流。
- isScreenSharePublished:查询当前是否允许发布屏幕流。
返回说明- (BOOL)isScreenSharePublished;
YES表示发布屏幕流,NO表示未发布屏幕流。
- publishLocalAudioStream:设置是否允许发布音频流。
参数说明- (int)publishLocalAudioStream:(BOOL)enable;
名称 类型 描述 enable boolean YES表示发送本地音频流,NO表示停止推流,默认YES。 0表示方法调用成功,其他表示方法调用失败。
- isLocalAudioStreamPublished:查询当前是否允许推音频流。
返回说明- (BOOL)isLocalAudioStreamPublished;
YES表示允许推送,NO表示不允许推送。
- publishLocalDualStream:设置是否允许发布次要视频流。
参数说明- (int)publishLocalDualStream:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示需要推送次流,NO表示不推送次流,默认NO。 0表示方法调用成功,其他表示方法调用失败。
- isDualStreamPublished:查询当前是否允许发布次要视频流。
返回说明- (BOOL)isDualStreamPublished;
YES表示允许推送,NO表示不允许推送。
- setRemoteVideoStreamType:设置订阅的相机流格式,大流或小流。
参数说明- (int)setRemoteVideoStreamType:(NSString *_Nonnull)uid type:(AliRtcVideoStreamType)streamType;
名称 类型 描述 uid NSString *_Nonnull 远端用户ID。 streamType AliRtcVideoStreamType 相机流格式,默认值为AliRtcVideoStreamTypeHigh(大流)。 0表示方法调用成功,其他表示方法调用失败。
- setRemoteDefaultVideoStreamType:设置默认订阅的相机流格式,大流或小流。
参数说明- (int)setRemoteDefaultVideoStreamType:(AliRtcVideoStreamType)streamType;
名称 类型 描述 streamType AliRtcVideoStreamType 相机流格式,默认值为AliRtcVideoStreamTypeHigh(大流)。 0表示方法调用成功,其他表示方法调用失败。
- setDefaultSubscribeAllRemoteAudioStreams:设置是否默认接收音频流。
参数说明- (int)setDefaultSubscribeAllRemoteAudioStreams:(BOOL)sub;
名称 类型 描述 sub BOOL YES表示接收用户的音频流,NO表示停止接收用户的音频流,默认值为YES。 0表示方法调用成功,其他表示方法调用失败。
注意- 入会前、后均可调用。如果在加入频道后调用setDefaultSubscribeAllRemoteAudioStreams:NO,会接收不到设置后加入频道的用户的音频流。
- 停止接收音频流后,如果想要恢复接收,请调用subscribeRemoteAudioStream:uid sub:YES,并指定您想要接收的远端用户UID。
- 如果想恢复接收多个用户的音频流,则需要多次调用subscribeRemoteAudioStream。setDefaultSubscribeAllRemoteAudioStreams:YES只能恢复接收后面加入频道的用户的音频流。
- subscribeAllRemoteAudioStreams:停止或恢复接收所有远端音频流。
参数说明- (int)subscribeAllRemoteAudioStreams:(BOOL)sub;
名称 类型 描述 sub BOOL YES表示接收所有用户的音频流,NO表示停止接收所有用户的音频流,默认值为YES。 0表示方法调用成功,其他表示方法调用失败。
说明 该接口作为订阅远端音频流的总开关,如果设置为NO,则不仅当前会议中所有远端音频流都会停止订阅,后续入会的新用户也将不再订阅(即使设置了setDefaultSubscribeAllRemoteAudioStreams:YES)。 - subscribeRemoteAudioStream:停止或恢复特定远端用户的音频流拉取。
参数说明- (int)subscribeRemoteAudioStream:(NSString *_Nonnull)uid sub:(BOOL)sub;
名称 类型 描述 uid NSString *_Nonnull 远端用户ID。 sub BOOL YES表示接收指定用户的音频流,NO表示停止接收指定用户的音频流,默认值为YES。 0表示方法调用成功,其他表示方法调用失败。
说明 如果之前有调用过subscribeAllRemoteAudioStreams:NO对所有远端音频进行静音,在调用本API之前请确保您已调用subscribeAllRemoteAudioStreams:YES。subscribeAllRemoteAudioStreams是全局控制,subscribeRemoteAudioStream是精细控制。 - setDefaultSubscribeAllRemoteVideoStreams:设置是否默认接收视频流。
参数说明- (int)setDefaultSubscribeAllRemoteVideoStreams:(BOOL)sub;
名称 类型 描述 sub boolean YES表示接收用户的视频流,NO表示不接收用户的视频流,默认值为YES。 0表示方法调用成功,其他表示方法调用失败。
说明- 入会前、后均可调用。如果在加入频道后调用setDefaultSubscribeAllRemoteVideoStreams:NO,会接收不到设置后加入频道的用户的视频流。
- 停止接收视频流后,如果想要恢复接收,请调用subscribeRemoteVideoStream:uid track:track sub:YES,并指定您想要接收的远端用户UID。
- 如果想恢复接收多个用户的视频流,则需要多次调用subscribeRemoteVideoStream,setDefaultSubscribeAllRemoteVideoStreams:YES 只能恢复接收后面加入频道的用户的视频流。
- subscribeAllRemoteVideoStreams:停止或恢复接收所有远端视频流。
参数说明- (int)subscribeAllRemoteVideoStreams:(BOOL)sub;
名称 类型 描述 sub BOOL YES表示接收所有用户的视频流,NO表示停止允许接收所有用户的视频流,默认值为YES。 0表示方法调用成功,其他表示方法调用失败。
说明 该接口作为订阅远端视频流的总开关,如果设置为NO,则不仅当前会议中所有远端视频流都会停止订阅,后续入会的新用户也将不再订阅(即使设置了setDefaultSubscribeAllRemoteVideoStreams:YES)。 - subscribeRemoteVideoStream:停止或恢复特定远端用户的视频流拉取。
参数说明- (int)subscribeRemoteVideoStream:(NSString *_Nonnull)uid track:(AliRtcVideoTrack)track sub:(BOOL)sub;
名称 类型 描述 uid NSString *_Nonnull 远端用户ID。 track AliRtcVideoTrack 视频流类型。 sub BOOL YES表示接收指定用户的视频流,NO表示停止接收指定用户的视频流,默认值为YES。 0表示方法调用成功,其他表示方法调用失败。
说明- 如果之前有调用过subscribeAllRemoteVideoStreams:NO暂停接收所有远端视频,在调用此接口之前请确保已调用subscribeAllRemoteVideoStreams:YES。
- subscribeAllRemoteVideoStreams是全局控制,subscribeRemoteVideoStream是精细控制。
- setScreenShareEncoderConfiguration:设置屏幕共享编码属性。
参数说明- (void)setScreenShareEncoderConfiguration:(AliRtcScreenShareEncoderConfiguration* _Nonnull)config;
名称 类型 描述 config AliRtcScreenShareEncoderConfiguration* _Nonnull 预定义的屏幕共享编码属性,默认值: - dimensions:[0,0]
- frameRate:5
- bitrate:0
- rotation:0
- setLocalViewConfig:为本地预览设置渲染窗口以及绘制参数。
参数说明- (int)setLocalViewConfig:(AliVideoCanvas *_Nullable)viewConfig forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 viewConfig AliVideoCanvas *_Nullable 渲染参数,包含渲染窗口以及渲染方式。 track AliRtcVideoTrack 视频Track的类型。 0表示方法调用成功,其他表示方法调用失败。
说明- 支持joinChannel之前和之后切换窗口。如果canvas或者AliVideoCanvas::view为nil,则停止渲染。
- 如果在播放过程中需要重新设置render mode,请保持canvas中其他成员变量不变,仅修改renderMode。
- 如果在播放过程中需要重新设置mirror mode,请保持canvas中其他成员变量不变,仅修改mirrorMode。
- setCameraCapturerConfiguration:设置摄像头采集偏好。
参数说明- (int)setCameraCapturerConfiguration:(AliRtcCameraCapturerConfiguration* _Nonnull)config;
名称 类型 描述 config AliRtcCameraCapturerConfiguration* _Nonnull 摄像头采集偏好,默认值: - preference:0
- cameraDirection:0
0表示方法调用成功,其他表示方法调用失败。
- enableLocalVideo:禁用或重新启用本地视频采集。
参数说明- (int)enableLocalVideo:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示恢复正常,NO表示停止视频采集,默认YES。 0表示方法调用成功,其他表示方法调用失败。
- muteLocalCamera:停止或恢复本地视频数据发送。
参数说明- (int)muteLocalCamera:(BOOL)mute forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 mute BOOL YES表示视频数据发送黑帧,NO表示恢复正常,默认值为NO。 track AliRtcVideoTrack 需要改变发布状态的视频Track类型。 0表示方法调用成功,其他表示方法调用失败。
说明 此接口只是控制指定视频流上是否发送黑帧,采集和数据发送不会停止,如果需要关闭采集请使用enableLocalVideo接口,如果需要中止视频数据发送请使用publishLocalVideoStream接口。 - muteAllRemoteVideoRendering:停止或恢复远端所有的视频渲染(仅iOS)。
参数说明- (int)muteAllRemoteVideoRendering:(BOOL)mute;
名称 类型 描述 mute BOOL YES表示停止渲染,NO表示恢复渲染,默认为NO。 0表示方法调用成功,其他表示方法调用失败。
说明 拉流和解码不受影响,支持joinChannel之前和之后设置。 - setRemoteViewConfig:为远端的视频设置渲染窗口以及绘制参数。
参数说明- (int)setRemoteViewConfig:(AliVideoCanvas *_Nullable)canvas uid:(NSString *_Nonnull)uid forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 canvas AliVideoCanvas *_Nullable 渲染参数,包含渲染窗口以及渲染方式。 uid NSString *_Nonnull 用户ID。 track AliRtcVideoTrack 需要设置的视频Track类型。 0表示方法调用成功,其他表示方法调用失败。
说明- 支持joinChannel之前和之后切换窗口。如果canvas为nil或者view为nil,则停止渲染相应的流。
- 如果在播放过程中需要重新设置render mode,请保持canvas中其他成员变量不变,仅修改renderMode。
- 如果在播放过程中需要重新设置mirror mode,请保持canvas中其他成员变量不变,仅修改mirrorMode。
- isCameraOn:检查摄像头是否打开。
返回说明- (BOOL)isCameraOn;
YES表示摄像头已打开,NO表示摄像头没有打开。
- stopRecord:停止录制。
- (void)stopRecord;
- startRecord:开始录制(非布局录制)。
参数说明- (BOOL)startRecord:(AliRtcRecordType)recordType recordFormat:(AliRtcRecordFormat)recordFormat filePath:(NSString*_Nonnull)filePath audioConfig:(AliRtcRecordAudioConfig*_Nullable)audioConfig videoConfig:(AliRtcRecordVideoConfig*_Nullable)videoConfig;
名称 类型 描述 recordType AliRtcRecordType 录制类型。 recordFormat AliRtcRecordFormat 录制格式。 filePath NSString*_Nonnull 文件路径。 audioConfig AliRtcRecordAudioConfig*_Nullable 录制音频设置。 videoConfig AliRtcRecordVideoConfig*_Nullable 视频设置,移动端不支持录制视频。 YES表示方法调用成功,NO方法调用失败。
- setBeautyEffect:设置是否启用基础美颜(目前只支持美白和磨皮。)。
参数说明- (int)setBeautyEffect:(BOOL)enable config:(AliRtcBeautyConfig *_Nullable)config;
名称 类型 描述 enable BOOL YES表示启用,NO表示关闭,默认为NO。 config AliRtcBeautyConfig *_Nullable 基础美颜参数。 0表示方法调用成功,其他表示方法调用失败。
- setVideoEncoderConfiguration:设置视频编码属性。
参数说明- (void)setVideoEncoderConfiguration:(AliRtcVideoEncoderConfiguration* _Nonnull)config;
名称 类型 描述 config AliRtcVideoEncoderConfiguration* _Nonnull 预定义的编码属性,默认值: - dimensions:[640,480]
- frameRate:15
- bitrate:0
- mirrorMode:0
- orientationMode:0
- rotation:0
- addVideoWatermark:添加水印。
参数说明- (int)addVideoWatermark:(AliRtcVideoTrack)track image:(NSString*_Nonnull)imageUrl config:(AliRtcWatermarkConfig *_Nullable)config;
名称 类型 描述 track AliRtcVideoTrack 数据流类型。 imageUrl NSString*_Nonnull 水印图片路径。 config AliRtcWatermarkConfig *_Nullable 水印配置。 0表示方法调用成功,其他表示方法调用失败。
- clearVideoWatermark:清理对应数据流水印信息。
参数说明- (int)clearVideoWatermark:(AliRtcVideoTrack)track;
名称 类型 描述 track AliRtcVideoTrack 数据流类型。 0表示方法调用成功,其他表示方法调用失败。
- snapshotVideo:截图(截图结果通过OnSnapshotComplete回调返回)。
参数说明- (int)snapshotVideo:(NSString*_Nullable)userId type:(AliRtcVideoTrack)type;
名称 类型 描述 userId NSString*_Nullable 用户ID,为空表示本地用户。 trackType AliRtcVideoTrack 流类型。 0表示方法调用成功,其他表示方法调用失败。
- switchCamera:切换前后摄像头,默认为前置摄像头(仅iOS)。
返回说明- (int)switchCamera;
0表示方法调用成功,其他表示方法调用失败。
- getCurrentCameraDirection:获取当前摄像头方向,默认前置摄像头(仅iOS)。
返回说明- (AliRtcCameraDirection)getCurrentCameraDirection;
返回camera方向枚举值。
- setCameraZoom:设置摄像头缩放比例(仅iOS)。
参数说明- (int)setCameraZoom:(float)zoom;
名称 类型 描述 zoom float zoom的级别,默认值为1.0。 0表示方法调用成功,其他表示方法调用失败。
- setCameraFlash:设置摄像头闪光灯是否打开(仅iOS)。
参数说明- (int)setCameraFlash:(BOOL)flash;
名称 类型 描述 flash BOOL YES表示启用闪光灯,NO表示关闭闪光灯,默认为NO。 0表示方法调用成功,其他表示方法调用失败。
- isCameraFocusPointSupported:摄像头是否支持手动聚焦(仅iOS)。
返回说明- (BOOL)isCameraFocusPointSupported;
YES表示支持,NO表示不支持。
- isCameraExposurePointSupported:摄像头是否支持设置曝光区域(仅iOS)。
返回说明- (BOOL)isCameraExposurePointSupported;
YES表示支持,NO表示不支持。
- setCameraFocusPoint:设置摄像头手动聚焦(仅iOS)。
参数说明- (int)setCameraFocusPoint:(CGPoint)point;
名称 类型 描述 point CGPoint 聚焦点的坐标。 0表示方法调用成功,其他表示方法调用失败。
- setCameraExposurePoint:设置摄像头曝光点(仅iOS)。
参数说明- (int)setCameraExposurePoint:(CGPoint)point;
名称 类型 描述 point CGPoint 曝光点的坐标。 0表示方法调用成功,其他表示方法调用失败。
- isCameraAutoFocusFaceModeSupported:摄像头是否支持人脸聚焦(仅iOS)。
返回说明- (BOOL)isCameraAutoFocusFaceModeSupported;
YES表示支持,NO表示不支持。
- setCameraAutoFocusFaceModeEnabled:设置摄像头人脸对焦(仅iOS)。
参数说明- (BOOL)setCameraAutoFocusFaceModeEnabled:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示开启人脸对焦,NO表示关闭人脸对焦,默认值为NO。 YES表示方法调用成功,NO表示方法调用失败。
- startScreenShare:开始屏幕分享(仅iOS)。
返回说明- (int)startScreenShare;
0表示方法调用成功,其他表示方法调用失败。
- stopScreenShare:停止屏幕分享。
返回说明- (int)stopScreenShare;
0表示方法调用成功,其他表示方法调用失败。
- setAudioOnlyMode:设置为纯音频模式还是音视频模式。
参数说明- (int)setAudioOnlyMode:(BOOL)audioOnly;
名称 类型 描述 audioOnly BOOL YES表示只有音频推流和拉流,NO表示音视频都支持,默认值为NO。 0表示方法调用成功,其他表示方法调用失败。
- isAudioOnly:检查当前是否纯音频模式。
返回说明- (BOOL)isAudioOnly;
YES表示纯音频模式,NO表示音视频模式。
- muteLocalMic:停止或恢复本地音频数据发送。
参数说明- (int)muteLocalMic:(BOOL)mute mode:(AliRtcMuteLocalAudioMode)mode;
名称 类型 描述 mute BOOL YES表示本地音频发送空帧,NO表示恢复正常,默认值为NO。 mode AliRtcMuteLocalAudioMode 静音模式,默认麦克风静音模式。 0表示方法调用成功,其他表示方法调用失败。
说明 mute只是发送音频数据为静音帧,采集和编码模块仍然在工作。 - muteRemoteAudioPlaying:停止或恢复远端的音频播放。
参数说明- (int)muteRemoteAudioPlaying:(NSString *_Nonnull)uid mute:(BOOL)mute;
名称 类型 描述 uid NSString *_Nonnull 用户ID。 mute BOOL YES表示停止播放,NO表示恢复播放,默认值为NO。 0表示方法调用成功,其他表示方法调用失败。
- muteAllRemoteAudioPlaying:停止或恢复远端所有的音频播放。
参数说明- (int)muteAllRemoteAudioPlaying:(BOOL)mute;
名称 类型 描述 mute BOOL YES表示停止播放,NO表示恢复播放,默认值为NO。 0表示方法调用成功,其他表示方法调用失败。
说明 拉流和解码不受影响。支持joinChannel之前和之后设置。 - startAudioCapture:开启音频采集。
返回说明- (void)startAudioCapture;
0表示方法调用成功,其他表示方法调用失败。
说明 此接口可以控制提前打开音频采集,如果不设置,则SDK会在合适的时机在打开音频采集。 - stopAudioCapture:关闭音频采集。
返回说明- (void)stopAudioCapture;
0表示方法调用成功,其他表示方法调用失败。
说明 此接口可以控制关闭音频采集,与startAudioCapture对应。 - startAudioPlayer:开启音频播放设备。
返回说明- (void)startAudioPlayer;
0表示方法调用成功,其他表示方法调用失败。
说明 此接口可以控制提前打开音频播放,如果不设置,则SDK会在合适的时机在打开音频播放。 - stopAudioPlayer:关闭音频播放。
返回说明- (void)stopAudioPlayer;
0表示方法调用成功,其他表示方法调用失败。
说明 此接口可以控制关闭音频播放,与startAudioPlayer对应。 - setRemoteAudioVolume:设置本地播放的指定远端用户音量。
参数说明- (int)setRemoteAudioVolume:(NSString *_Nonnull)uid volume:(NSInteger)volume;
名称 类型 描述 uid NSString *_Nonnull 用户ID。 volume NSInteger 播放音量,取值范围:[0,100],其中0表示静音,100表示原始音量,默认值为100。 0表示方法调用成功,其他表示方法调用失败。
- enableSpeakerphone:设置音频输出为听筒或扬声器(仅iOS)。
参数说明- (int)enableSpeakerphone:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示扬声器模式,NO表示听筒模式,默认为YES。 0表示方法调用成功,其他表示方法调用失败。
- isEnableSpeakerphone:获取当前音频输出为听筒或扬声器(仅iOS)。
返回说明- (BOOL)isEnableSpeakerphone;
YES表示扬声器模式,NO表示听筒模式。
- setRecordingVolume:设置录音音量。
参数说明- (int)setRecordingVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 取值范围:[0,400],其中0表示静音,默认值为100,大于100表示放大音量,小于100表示减小音量。 0表示方法调用成功,其他表示方法调用失败。
- setPlayoutVolume:设置播放音量。
参数说明- (int)setPlayoutVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 取值范围:[0,400],其中0表示静音,默认值为100,大于100表示放大音量,小于100表示减小音量。 0表示方法调用成功,其他表示方法调用失败。
- enableAudioVolumeIndication:设置音量回调频率和平滑系数。
参数说明- (int)enableAudioVolumeIndication:(NSInteger)interval smooth:(NSInteger)smooth reportVad:(NSInteger)reportVad;
名称 类型 描述 interval NSInteger 时间间隔,单位为毫秒,最小值不得小于10ms,建议设置300~500ms,小于等于0表示不启用音量提示和说话人提示功能。 smooth NSInteger 平滑系数,取值范围:[0,9],数值越大平滑程度越高,反之越低,实时性越好,建议设置3。 reportVad NSInteger 说话人检测开关,取值: - 1:开启,通过onAudioVolumeCallback接口回调每一个说话人的状态。
- 0:关闭。
0表示方法调用成功,其他表示方法调用失败。
- setAudioProfile:设置音频Profile。
参数说明- (int)setAudioProfile:(AliRtcAudioProfile)audio_profile audio_scene:(AliRtcAudioScenario)audio_scene;
名称 类型 描述 audio_profile AliRtcAudioProfile 音频采集或编码模式参数,默认值为AliEngineBasicQualityMode。 audio_scene AliRtcAudioScenario 音频场景模式参数,默认值为AliEngineSceneDefaultMode。 0表示方法调用成功,其他表示方法调用失败。
- setAudioSessionOperationRestriction:设置SDK对AVAudioSession的控制权限(仅iOS)。
参数说明- (int)setAudioSessionOperationRestriction:(AliRtcAudioSessionOperationRestriction)restriction;
名称 类型 描述 restriction AliRtcAudioSessionOperationRestriction 控制权限,默认值为AliAudioSessionOperationRestrictionNone。 0表示方法调用成功,其他表示方法调用失败。
- setDeviceVolumeType:设置SDK设备音量类型(仅iOS)。
参数说明- (int)setDeviceVolumeType:(AliRtcDeviceVolumeType)type;
名称 类型 描述 type AliRtcDeviceVolumeType 音量类型,默认值为AliRtcDeviceVolumeTypeAuto。 0表示方法调用成功,其他表示方法调用失败。
- enableAudioDTX:开启本地音频流量控制(语音)。
参数说明- (int)enableAudioDTX:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示开启,NO表示关闭,默认值为NO。 0表示方法调用成功,其他表示方法调用失败。
说明 推流之前调用有效。开启语音活动检测可以在检测到没有语音的情况下,发送字节数减少,节省用户流量。 - enableAudioAMD:开启本地音频流量控制(麦克风)。
参数说明- (int)enableAudioAMD:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示开启,NO表示关闭,默认值为NO。 0表示方法调用成功,其他表示方法调用失败。
说明 推流之前调用有效。开启语音活动检测可以在检测到麦克风静音或者关闭麦克风时停止发送音频包。 - setAudioEffectVoiceChangerMode:设置变声音效模式。
参数说明- (int)setAudioEffectVoiceChangerMode:(AliRtcAudioEffectVoiceChangerMode)mode;
名称 类型 描述 mode AliRtcAudioEffectVoiceChangerMode 模式值,默认值为AliRtcSdk_AudioEffect_Voice_Changer_OFF。 0表示方法调用成功,其他表示方法调用失败。
- setAudioEffectPitchValue:设置变调参数。
参数说明- (int)setAudioEffectPitchValue:(double)value;
名称 类型 描述 value double 取值范围:[0.5,2.0],默认为1.0,表示音调不变。 0表示方法调用成功,其他表示方法调用失败。
- setAudioEffectReverbMode:设置混响音效模式。
参数说明- (int)setAudioEffectReverbMode:(AliRtcAudioEffectReverbMode)mode;
名称 类型 描述 mode AliRtcAudioEffectReverbMode 音效模式,默认值为AliRtcAudioEffectReverb_Off。 0表示方法调用成功,其他表示方法调用失败。
- setAudioEffectReverbParamType:设置混响音效类型和具体参数。
参数说明- (int)setAudioEffectReverbParamType:(AliRtcAudioEffectReverbParamType)type value:(float)value;
名称 类型 描述 type AliRtcAudioEffectReverbParamType 音效混响模式。 value float 具体参数值。 0表示方法调用成功,其他表示方法调用失败。
- startAudioAccompanyWithFile:开始混音。
参数说明- (int)startAudioAccompanyWithFile:(NSString *_Nonnull)filePath onlyLocalPlay:(BOOL)onlyLocalPlay replaceMic:(BOOL)replaceMic loopCycles:(NSInteger)loopCycles;
名称 类型 描述 filePath NSString *_Nonnull 混音文件路径。 onlyLocalPlay BOOL 是否只本地播放。 replaceMic BOOL 是否替换掉MIC。 loopCycles NSInteger 循环次数(可以设置-1或者正整数)。 0表示方法调用成功,其他表示方法调用失败。
- stopAudioAccompany:停止混音。
返回说明- (int)stopAudioAccompany;
0表示方法调用成功,其他表示方法调用失败。
- setAudioAccompanyVolume:设置混音音量(需要在startAudioAccompanyWithFile后才能生效)。
参数说明- (int)setAudioAccompanyVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- setAudioAccompanyPublishVolume:设置混音之后推流出去的音量(需要在startAudioAccompanyWithFile后才能生效)。
参数说明- (int)setAudioAccompanyPublishVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- getAudioAccompanyPublishVolume:获取推流出去的混音音量。
返回说明- (int)getAudioAccompanyPublishVolume;
返回推流出的混音音量,返回0~100为成功,其他为返回的错误码。
- setAudioAccompanyPlayoutVolume:设置混音之后本地播放的音量(需要在startAudioAccompanyWithFile后才能生效)。
参数说明- (int)setAudioAccompanyPlayoutVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- getAudioAccompanyPlayoutVolume:获取混音本地播放的音量。
返回说明- (int)getAudioAccompanyPlayoutVolume;
返回混音本地播放的音量,返回0~100为成功,其他为返回的错误码。
- pauseAudioAccompany:暂停混音。
返回说明public abstract int pauseAudioAccompany();
0表示方法调用成功,其他表示方法调用失败。
- resumeAudioAccompany:重新开始混音。
返回说明- (int)pauseAudioAccompany;
0表示方法调用成功,其他表示方法调用失败。
- getAudioAccompanyDuration:获取伴奏文件时长。
返回说明- (int)getAudioAccompanyDuration;
返回伴奏文件时长(单位:ms),小于0表示错误码。
- getAudioAccompanyCurrentPosition:获取音乐文件播放进度。
返回说明- (int)getAudioAccompanyCurrentPosition;
返回音乐文件播放进度(单位:ms),小于0表示错误码。
- setAudioAccompanyPosition:设置音频文件的播放位置。
参数说明- (int)setAudioAccompanyPosition:(int)pos;
名称 类型 描述 pos int 进度条位置,单位为毫秒。 0表示方法调用成功,其他表示方法调用失败。
- preloadAudioEffectWithSoundId:预加载音效文件。
参数说明- (int)preloadAudioEffectWithSoundId:(NSInteger)soundId filePath:(NSString *_Nonnull)filePath;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 filePath NSString *_Nonnull 音效文件路径。 0表示方法调用成功,其他表示方法调用失败。
- unloadAudioEffectWithSoundId:删除预加载的音效文件。
参数说明- (int)unloadAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 0表示方法调用成功,其他表示方法调用失败。
- playAudioEffectWithSoundId:开始播放音效。
参数说明- (int)playAudioEffectWithSoundId:(NSInteger)soundId filePath:(NSString *_Nonnull)filePath cycles:(NSInteger)cycles publish:(BOOL)publish;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 filePath NSString *_Nonnull 音效文件路径。 cycles NSInteger 循环次数(可以设置-1或者正整数)。 publish BOOL 是否发布。 0表示方法调用成功,其他表示方法调用失败。
- stopAudioEffectWithSoundId:停止播放音效。
参数说明- (int)stopAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 0表示方法调用成功,其他表示方法调用失败。
- stopAllAudioEffects:停止播放所有音效。
返回说明- (int)stopAllAudioEffects;
0表示方法调用成功,其他表示方法调用失败。
- setAudioEffectPublishVolumeWithSoundId:设置音效推流音量。
参数说明- (int)setAudioEffectPublishVolumeWithSoundId:(NSInteger)soundId volume:(NSInteger)volume;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- getAudioEffectPublishVolumeWithSoundId:获取推流音效音量。
参数说明- (int)getAudioEffectPublishVolumeWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 0表示方法调用成功,其他表示方法调用失败。
- setAudioEffectPlayoutVolumeWithSoundId:设置音效本地播放音量。
参数说明- (int)setAudioEffectPlayoutVolumeWithSoundId:(NSInteger)soundId volume:(NSInteger)volume;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- getAudioEffectPlayoutVolumeWithSoundId:获取音效本地播放音量。
参数说明- (int)getAudioEffectPlayoutVolumeWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 0表示方法调用成功,其他表示方法调用失败。
- setAllAudioEffectsPublishVolume:设置所有音效本地播放音量。
参数说明- (int)setAllAudioEffectsPublishVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- setAllAudioEffectsPlayoutVolume:设置所有音效推流音量。
参数说明- (int)setAllAudioEffectsPlayoutVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量,取值范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- pauseAudioEffectWithSoundId:暂停音效。
参数说明- (int)pauseAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 0表示方法调用成功,其他表示方法调用失败。
- pauseAllAudioEffects:暂停所有音效。
返回说明- (int)pauseAllAudioEffects;
0表示方法调用成功,其他表示方法调用失败。
- resumeAudioEffectWithSoundId:重新开始播放音效。
参数说明- (int)resumeAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 0表示方法调用成功,其他表示方法调用失败。
- resumeAllAudioEffects:重新开始播放所有音效。
返回说明- (int)resumeAllAudioEffects;
0表示方法调用成功,其他表示方法调用失败。
- enableEarBack:启用耳返(仅iOS)。
参数说明- (int)enableEarBack:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示启用耳返,NO表示关闭耳返,默认值为NO。 0表示方法调用成功,其他表示方法调用失败。
- setEarBackVolume:设置耳返音量(仅iOS)。
参数说明- (int)setEarBackVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 取值范围:[0,100],默认100。 0表示方法调用成功,其他表示方法调用失败。
- registerVideoSampleObserver:注册视频数据输出。
- (void)registerVideoSampleObserver;
- unRegisterVideoSampleObserver:取消注册视频数据输出。
- (void)unregisterVideoSampleObserver;
- registerLocalVideoTexture:注册本地相机流视频OpenGL纹理数据观测器(仅iOS)。
- (void)registerLocalVideoTexture;
- unregisterLocalVideoTexture:取消注册本地相机流视频OpenGL纹理数据观测器(仅iOS)。
- (void)unregisterLocalVideoTexture;
- subscribeAudioData:订阅音频数据输出。
参数说明- (void)subscribeAudioData:(AliRtcAudioSource)audioSource;
名称 类型 描述 audioSource AliRtcAudioSource 数据类型。 - unSubscribeAudioData:取消音频数据输出。
参数说明- (void)unSubscribeAudioData:(AliRtcAudioSource)audioSource;
名称 类型 描述 audioSource AliRtcAudioSource 数据类型。 - setSubscribeAudioNumChannel:设置输出音频声道数(混音前数据不支持该参数设置)。
参数说明- (void)setSubscribeAudioNumChannel:(AliRtcAudioNumChannel)audioNumChannel;
名称 类型 描述 audioNumChannel AliRtcAudioNumChannel 声道数,默认单声道。 - setSubscribeAudioSampleRate:设置输出音频采样率(混音前数据不支持该参数设置)。
参数说明- (void)setSubscribeAudioSampleRate:(AliRtcAudioSampleRate)audioSampleRate;
名称 类型 描述 audioSampleRate AliRtcAudioSampleRate 采样率,默认44.1 kHz。 - setExternalVideoSource:启用外部视频输入源。
参数说明- (int)setExternalVideoSource:(BOOL)enable sourceType:(AliRtcVideoSource)type renderMode:(AliRtcRenderMode)renderMode;
名称 类型 描述 enable BOOL YES表示开启,NO表示关闭。 type AliRtcVideoSource 流类型。 renderMode AliRtcRenderMode 渲染模式。 - pushExternalVideoFrame:输入视频数据。
参数说明- (int)pushExternalVideoFrame:(AliRtcVideoDataSample *_Nonnull)frame sourceType:(AliRtcVideoSource)type;
名称 类型 描述 frame AliRtcVideoDataSample *_Nonnull 帧数据。 type AliRtcVideoSource 流类型。 0表示方法调用成功,其他表示方法调用失败。
- setExternalAudioSource:设置是否启用外部音频输入源。
参数说明- (int)setExternalAudioSource:(BOOL)enable withSampleRate:(NSUInteger)sampleRate channelsPerFrame:(NSUInteger)channelsPerFrame;
名称 类型 描述 enable BOOL YES表示开启,NO表示关闭,默认值为NO。 sampleRate NSUInteger 采样率,例如16000 Hz、48000 Hz等。 channelsPerFrame NSUInteger 声道数,例如1或2。 0表示方法调用成功,其他表示方法调用失败。
- pushExternalAudioFrameRawData:输入音频数据。
参数说明- (int)pushExternalAudioFrameRawData:(void *_Nonnull)data samples:(NSUInteger)samples timestamp:(NSTimeInterval)timestamp;
名称 类型 描述 data void *_Nonnull 音频数据,不建议超过40ms数据。 samples NSUInteger 采样率,例如16 kHz、48 kHz等。 timestamp NSTimeInterval 时间戳。 0表示方法调用成功,其他表示方法调用失败。
- setExternalAudioVolume:设置混音音量。
参数说明- (int)setExternalAudioVolume:(int)vol;
名称 类型 描述 vol int 混音音量,取值范围:[1,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- getExternalAudioVolume:获取混音音量。
返回说明- (int)getExternalAudioVolume;
返回当前混音音量。
- setMixedWithMic:设置是否与麦克风采集音频混合。
参数说明- (int)setMixedWithMic:(BOOL)mixed;
名称 类型 描述 mixed BOOL YES表示混音,NO表示完全替换麦克风采集数据,默认值为NO。 返回当前混音音量。
- setExteranlAudioRender:设置是否启用外部输入音频播放。
参数说明- (int)setExteranlAudioRender:(BOOL)enable sampleRate:(NSUInteger)sampleRate channelsPerFrame:(NSUInteger)channelsPerFrame;
名称 类型 描述 enable BOOL YES表示开启,NO表示关闭,默认值为NO。 sampleRate NSUInteger 采样率,例如16 kHz、48 kHz等。 channelsPerFrame NSUInteger 声道数,例如1或2。 0表示方法调用成功,其他表示方法调用失败。
- pushExternalAudioRenderRawData:输入外部音频播放数据。
参数说明- (int)pushExternalAudioRenderRawData:(const void* _Nullable)audioSamples sampleLength:(NSUInteger)sampleLength sampleRate:(NSUInteger)sampleRate channelsPerFrame:(NSUInteger)channelsPerFrame timestamp:(long long)timestamp;
名称 类型 描述 audioSamples constvoid* _Nullable 音频数据。 sampleLength NSUInteger 音频数据长度。 sampleRate NSUInteger 音频采样率。 channelsPerFrame NSUInteger 音频声道数。 timestamp long long 时间戳。 0表示方法调用成功,其他表示方法调用失败。
- startPublishLiveStreamWithURL:开启旁路直播。
参数说明- (int)startPublishLiveStreamWithURL:(NSString *_Nonnull)streamURL liveTranscoding:(AliRtcLiveTranscodingParam *_Nonnull)trancoding;
名称 类型 描述 streamUrl NSString * 推流地址。 transcoding AliRtcLiveTranscodingParam * 推流所需参数。 0表示方法调用成功,其他表示方法调用失败。
- updatePublishLiveStreamWithURL:更新旁路直播相关参数。
参数说明- (int)updatePublishLiveStreamWithURL:(NSString *_Nonnull)streamURL liveTranscoding:(AliRtcLiveTranscodingParam *_Nonnull)trancoding;
名称 类型 描述 streamUrl NSString * 推流地址。 transcoding AliRtcLiveTranscodingParam * 推流所需参数。 0表示方法调用成功,其他表示方法调用失败。
- stopPublishLiveStreamWithURL:停止旁路直播。
参数说明- (int)stopPublishLiveStreamWithURL:(NSString *_Nonnull)streamURL;
名称 类型 描述 streamUrl NSString *_Nonnull 推流地址。 0表示方法调用成功,其他表示方法调用失败。
- startChannelRelay:开启跨频道连麦。
参数说明- (int)startChannelRelay:(AliRtcChannelRelayConfiguration *_Nonnull)configuration;
名称 类型 描述 configuration AliRtcChannelRelayConfiguration *_Nonnull 配置信息。 0表示方法调用成功,其他表示方法调用失败。
- updateChannelRelay:更新跨频道连麦。
参数说明- (int)updateChannelRelay:(AliRtcChannelRelayConfiguration *_Nonnull)configuration;
名称 类型 描述 configuration AliRtcChannelRelayConfiguration *_Nonnull 配置信息。 0表示方法调用成功,其他表示方法调用失败。
- stopChannelRelay:停止跨频道连麦。
返回说明- (int)stopChannelRelay;
0表示方法调用成功,其他表示方法调用失败。
- startPreview:开始本地预览(会自动打开摄像头)。
返回说明- (int)startPreview;
0表示方法调用成功,其他表示方法调用失败。
说明 如果没有设置view,则无法预览。可以在joinChannel之前就开启预览。 - stopPreview:停止本地预览。
返回说明- (int)stopPreview;
0表示方法调用成功,其他表示方法调用失败。
说明 leaveChannel会自动停止本地预览,且会自动关闭摄像头(如果正在推camera流,则不会关闭摄像头)。 - getOnlineRemoteUsers:获取远端在线用户列表。
返回说明- (NSArray<NSString *> *_Nullable)getOnlineRemoteUsers;
返回用户列表(保存的是用户ID)。
- getUserInfo:查询远端用户信息。
参数说明- (NSDictionary *_Nullable)getUserInfo:(NSString *_Nonnull)uid;
名称 类型 描述 uid NSString *_Nonnull 要获取的目标用户ID。 返回一个字典,其中key关键字含义如下所示:
key关键字 含义 userID 远端用户的ID。 displayName 远端用户的名称。 sessionID 远端用户的会话ID。 isOnline 远端用户是否在线。 isCameraMirror 远端用户是否开启了相机流镜像。 isScreenMirror 远端用户是否开启了屏幕流镜像。 muteAudioPlaying 本端是否静音了此远端用户。 preferCameraMaster 远端用户是否开启了大流优先。 hasCameraView 本端是否设置了此远端用户相机流的view。 hasScreenView 本端是否设置了此远端用户屏幕流的view。 hasAudio 远端用户是否推送了音频流。 hasCameraMaster 远端用户是否推送了相机大流。 hasCameraSlave 远端用户是否推送了相机小流。 hasScreenSharing 远端用户是否推送了屏幕流。 requestAudio 本端是否请求了此远端用户的音频流。 requestCameraMaster 本端是否请求了此远端用户的相机大流。 requestCameraSlave 本端是否请求了此远端用户的相机小流。 requestScreenSharing 本端是否请求了此远端用户的屏幕流。 subScribedAudio 本端是否拉到了此远端用户的音频流。 subScribedCameraMaster 本端是否拉到了此远端用户的相机大流。 subScribedCamearSlave 本端是否拉到了此远端用户的相机小流。 subScribedScreenSharing 本端是否拉到了此远端用户的屏幕流。 - isUserOnline:查询用户是否在线。
参数说明- (BOOL)isUserOnline:(NSString *_Nonnull)uid;
名称 类型 描述 uid NSString *_Nonnull 用户ID。从App server分配的唯一标示符。 YES表示在线,NO表示离线。
- getSdkVersion:获取SDK版本号。
返回说明+ (NSString *_Nonnull)getSdkVersion;
返回SDK版本号。
- getErrorDescription:获取错误码描述。
参数说明+ (NSString *_Nullable)getErrorDescription:(NSInteger)errCode;
名称 类型 描述 errorCode NSInteger 错误码。 返回错误码描述字符串。
- setClientRole:设置用户角色。
参数说明- (int)setClientRole:(AliRtcClientRole)role;
名称 类型 描述 role AliRtcClientRole 用户角色类型,默认值为AliRtcClientRolelive(观众角色),非通信模式下角色类型才有效。 0表示方法调用成功,其他表示方法调用失败。
- getCurrentClientRole:获取用户角色(仅iOS)。
返回说明- (AliRtcClientRole)getCurrentClientRole;
返回当前用户角色。
- startLastmileDetect:开始网络质量探测。
返回说明- (int)startLastmileDetect;
0表示方法调用成功,其他表示方法调用失败。
说明 请在joinChannel之前调用,探测结果在onLastmileDetectResultWithQuality回调。 - stopLastmileDetect:停止网络质量探测。
返回说明- (int)stopLastmileDetect;
0表示方法调用成功,其他表示方法调用失败。
- postFeedbackWithUid:SDK问题反馈。
参数说明- (void)postFeedbackWithUid:(NSString *_Nullable)uid channleId:(NSString *_Nullable)channelId description:(NSString *_Nonnull)description type:(AliRtcFeedbackType)type timeStamp:(NSTimeInterval)timeStamp;
名称 类型 描述 uid NSString *_Nullable 当前UID(允许为空)。 channelId NSString *_Nullable 当前频道ID(允许为空)。 description NSString *_Nullable 问题描述(支持中英文,不允许为空)。 type AliRtcFeedbackType 问题类型。 timeStamp NSTimeInterval 问题发生的时间戳(Unix时间戳,可以为大致时间,无需特别精确,也可以为0)。 - sendMediaExtensionMsg:发送媒体扩展信息。
参数说明- (int)sendMediaExtensionMsg:(NSData *_Nonnull)data repeatCount:(int)repeatCount;
名称 类型 描述 data NSData *_Nonnull 扩展信息。 repeatCount int 重复次数。 - 0:成功。
- -1:未推流。
- -2:参数错误。
- -3:发送过于频繁,建议稍后再发送。
- startIntelligentDenoise:开启智能降噪。
返回说明- (int)startIntelligentDenoise;
0表示方法调用成功,其他表示方法调用失败。
说明- 此接口可以通话过程中控制打开智能降噪功能。
- 此功能默认关闭,开启后可能导致功耗增加,智能降噪适合于会议,教育等语音通讯为主的场景,不适合有背景音乐的场景。
- stopIntelligentDenoise:关闭智能降噪。
- (void)stopIntelligentDenoise;
说明 此接口可以通话过程中控制关闭智能降噪功能。 - refreshAuthInfo:刷新鉴权信息。
参数说明- (int)refreshAuthInfo:(AliRtcAuthInfo *_Nonnull)authInfo;
名称 类型 描述 authInfo AliRtcAuthInfo *_Nonnull 鉴权信息。 0表示方法调用成功,其他表示方法调用失败。
- getCurrentConnectionStatus:获取当前网络连接状态。
返回说明- (AliRtcConnectionStatus)getCurrentConnectionStatus;
返回当前网络链接状态,状态详情请参见AliRtcConnectionStatus。
- enableDelegateMainQueue:是否分发回调到主线程(仅iOS)。
参数说明- (int)enableDelegateMainQueue:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示回调分发至主线程队列,NO表示回调不分发至主线程队列,默认为YES。 0表示方法调用成功,其他表示方法调用失败。
- setDelegateQueue:指定回调线程队列(仅iOS)。
参数说明- (int)setDelegateQueue:(NSOperationQueue *_Nullable)queue;
名称 类型 描述 queue NSOperationQueue *_Nullable 回调队列,默认值为使用主线程队列。 0表示方法调用成功,其他表示方法调用失败。
说明- 如果调用enableDelegateMainQueue:YES时,此接口设置无效,回调线程为主线程。
- 如果调用enableDelegateMainQueue:NO时,可通过此接口指定回调线程,若不设置,则使用SDK的默认子线程。
- startScreenShareWithDesktopId:根据桌面ID进行屏幕分享(仅Mac)。
参数说明- (int)startScreenShareWithDesktopId:(int)desktopId config:(AliRtcScreenShareConfig * _Nonnull)config;
名称 类型 描述 desktopId int 桌面ID,可通过getScreenShareSourceInfoWithType接口获取。 config AliRtcScreenShareConfig * _Nonnull 屏幕分享配置。 0表示方法调用成功,其他表示方法调用失败。
- startScreenShareWithWindowId:根据窗口ID进行屏幕分享(仅Mac)。
参数说明- (int)startScreenShareWithWindowId:(int)windowId config:(AliRtcScreenShareConfig * _Nonnull)config;
名称 类型 描述 windowId int 窗口ID,可通过getScreenShareSourceInfoWithType接口获取。 config AliRtcScreenShareConfig * _Nonnull 屏幕分享配置。 0表示方法调用成功,其他表示方法调用失败。
- getScreenShareSourceInfoWithType:获取屏幕分享源信息(仅Mac)。
参数说明- (NSArray<AliRtcScreenSourceInfo *> * _Nullable)getScreenShareSourceInfoWithType:(AliRtcScreenShareType)type;
名称 类型 描述 type AliRtcScreenShareType 屏幕分享类型。 返回一个列表,列表里的对象类型为屏幕分享源信息AliRtcScreenSourceInfo。
- updateScreenShareConfig:更新屏幕分享配置(仅Mac)。
参数说明- (int)updateScreenShareConfig:(AliRtcScreenShareConfig * _Nonnull)config;
名称 类型 描述 config AliRtcScreenShareConfig * _Nonnull 屏幕分享配置。 返回一个列表,列表里的对象类型为屏幕分享源信息AliRtcScreenSourceInfo。
- setRecordingDeviceVolume:设置音频采集设备音量(仅Mac)。
参数说明- (int)setRecordingDeviceVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 音量范围:[0,100],默认值为当前麦克风音量。 0表示方法调用成功,其他表示方法调用失败。
- getRecordingDeviceVolume:获取音频采集设备音量(仅Mac)。
返回说明- (int)getRecordingDeviceVolume;
返回音频采集设备音量(音量范围:[0,100]),-1表示方法调用失败。
- setPlayoutDeviceVolume:设置音频播放设备音量(仅Mac)。
参数说明- (int)setPlayoutDeviceVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 音量范围:[0,100],默认值为当前扬声器音量。 0表示方法调用成功,其他表示方法调用失败。
- getPlayoutDeviceVolume:获取音频播放设备音量(仅Mac)。
返回说明- (int)getPlayoutDeviceVolume;
返回音频播放设备音量(音量范围:[0,100]),-1表示方法调用失败。
- setExternalAudioRenderVolume:设置外部输入音频的播放音量(仅Mac)。
参数说明- (int)setExternalAudioRenderVolume:(int)vol;
名称 类型 描述 vol int 音量范围:[0,100],默认值为50。 0表示方法调用成功,其他表示方法调用失败。
- getExternalAudioRenderVolume:获取外部输入音频的播放音量(仅Mac)。
返回说明- (int)getExternalAudioRenderVolume;
返回音频播放音量(音量范围:[0,100])。
- getAudioCaptures:获取系统中的录音设备列表(仅Mac)。
- (NSArray<AliRtcDeviceInfo *> *_Nullable)getAudioCaptures;
- getCurrentAudioCapture:获取使用的录音设备名称(仅Mac)。
- (NSString *_Nullable)getCurrentAudioCapture;
- getCurrentAudioCaptureID:获取使用的录音设备ID(仅Mac)。
- (NSString *_Nullable)getCurrentAudioCaptureID;
- setCurrentAudioCapture:通过名称设置录音设备(仅Mac)。
参数说明- (void)setCurrentAudioCapture:(NSString *_Nonnull)capture;
名称 类型 描述 capture NSString *_Nonnull 要设置的录音设备的名称。 - setCurrentAudioCaptureWithID:通过ID设置录音设备(仅Mac)。
参数说明- (void)setCurrentAudioCaptureWithID:(NSString *_Nonnull)captureID;
名称 类型 描述 captureID NSString *_Nonnull 要设置的录音设备的ID。 - getAudioRenderers:获取系统中的扬声器列表(仅Mac)。
- (NSArray<AliRtcDeviceInfo *> *_Nullable)getAudioRenderers;
- getCurrentAudioRenderer:获取当前使用的扬声器名称(仅Mac)。
- (NSString *_Nullable)getCurrentAudioRenderer;
- getCurrentAudioRendererID:获取当前使用的扬声器ID(仅Mac)。
- (NSString *_Nullable)getCurrentAudioRendererID;
- setCurrentAudioRenderer:通过名称设置扬声器(仅Mac)。
参数说明- (void)setCurrentAudioRenderer:(NSString *_Nonnull)renderer;
名称 类型 描述 renderer NSString *_Nonnull 要设置的扬声器设备的名称。 - setCurrentAudioRendererWithID:通过ID设置扬声器(仅Mac)。
参数说明- (void)setCurrentAudioRendererWithID:(NSString *_Nonnull)rendererID;
名称 类型 描述 rendererID NSString *_Nonnull 要设置的扬声器设备的ID。 - getCameraList:获取摄像头列表(仅Mac)。
- (NSArray<AliRtcDeviceInfo *> *_Nullable)getCameraList;
- getCurrentCamera:获取当前使用的摄像头名称(仅Mac)。
- (NSString *_Nullable)getCurrentCamera;
- getCurrentCameraID:获取当前使用的摄像头ID(仅Mac)。
- (NSString *_Nullable)getCurrentCameraID;
- setCurrentCamera:通过名称设置摄像头(仅Mac)。
参数说明- (void)setCurrentCamera:(NSString *_Nonnull)camera;
名称 类型 描述 camera NSString *_Nonnull 要设置的摄像头设备的名称。 - setCurrentCameraWithID:通过ID设置摄像头(仅Mac)。
参数说明- (void)setCurrentCameraWithID:(NSString *_Nonnull)cameraID;
名称 类型 描述 cameraID NSString *_Nonnull 要设置的摄像头设备的ID。 - startTestAudioRecordWithName:开始测试音频采集设备(仅Mac)。
参数说明- (int)startTestAudioRecordWithName:(NSString *_Nonnull)deviceName;
名称 类型 描述 deviceName NSString *_Nonnull 音频采集设备名称。 - stopTestAudioRecord:停止测试音频采集设备(仅Mac)。
返回说明- (int)stopTestAudioRecord;
0表示方法调用成功,其他表示方法调用失败。
- startTestAudioPlayoutWithName:开始测试音频播放设备(仅Mac)。
参数说明- (int)startTestAudioPlayoutWithName:(NSString *_Nonnull)deviceName filePath:(NSString *_Nonnull)filePath loopCycles:(NSInteger)loopCycles;
名称 类型 描述 deviceName NSString *_Nonnull 音频播放设备名称。 filePath NSString *_Nonnull 音频文件路径。 loopCycles NSInteger 重复播放次数,-1为循环播放。 - stopTestAudioPlayout:停止测试音频播放设备(仅Mac)。
返回说明- (int)stopTestAudioPlayout;
0表示方法调用成功,其他表示方法调用失败。
- startRecord:开始录制(仅Mac)。
参数说明- (BOOL)startRecord:(NSString*_Nonnull)filePath recordLayout:(AliRtcRecordVideoLayout*_Nonnull)recordLayout;
名称 类型 描述 filePath NSString*_Nonnull 文件路径。 recordLayout AliRtcRecordVideoLayout*_Nonnull 视频窗口布局设置。 YES表示方法调用成功,NO表示方法调用失败。
- pauseRecord:暂停录制(仅Mac)。
返回说明- (BOOL)pauseRecord;
YES表示方法调用成功,NO表示方法调用失败。
- resumeRecord:重新开启录制(仅Mac)。
返回说明- (BOOL)resumeRecord;
YES表示方法调用成功,NO表示方法调用失败。
- UpdateRecordLayout:更新录制信息(仅Mac)。
参数说明- (BOOL)UpdateRecordLayout:(AliRtcRecordVideoLayout*_Nonnull)layout;
名称 类型 描述 layout AliRtcRecordVideoLayout*_Nonnull 视频窗口布局设置。 YES表示方法调用成功,NO表示方法调用失败。
- addRecordTemplate:添加录制模板(仅Mac)。
参数说明- (BOOL)addRecordTemplate:(AliRtcRecordTemplate*_Nonnull)recordTemplate;
名称 类型 描述 recordTemplate AliRtcRecordTemplate*_Nonnull 录制模板。 YES表示方法调用成功,NO表示方法调用失败。
- getClientRole:获取用户角色(仅Mac)。
返回说明- (AliRtcClientRole)getClientRole;
返回当前用户角色。
- showDebugView:显示仪表盘。
参数说明- (int)showDebugView:(UITextView * _Nonnull)view showType:(AliRtcShowDebugViewType)showType userId:(NSString * _Nullable)userId;
参数 类型 说明 view UITextView * 对外展示的View。 showType AliRtcShowDebugViewType 显示类型,取值: - 0(默认值):不显示。
- 1:音频。
- 2:视频。
- 3: 网络。
- 4: 全部。
说明 对于不公开的数据,可以设置特殊值。userId NSString * 对应用户数据。 0表示方法调用成功,非0表示方法调用失败。
- getVideoCaptureData:主动获取采集数据。
参数说明- (BOOL)getVideoCaptureData:(AliRtcVideoTrack)videoTrack videoSample:(AliRtcVideoDataSample**)p_sample;
参数 类型 说明 videoTrack AliRtcVideoTrack 视频流类型。 p_sample AliRtcVideoDataSample ** 视频样本。 YES表示方法调用成功,NO表示方法调用失败。
- getVideoPreEncoderData:主动获取编码前数据。
参数说明- (BOOL)getVideoPreEncoderData:(AliRtcVideoTrack)videoTrack videoSample:(AliRtcVideoDataSample**)p_sample;
参数 类型 说明 videoTrack AliRtcVideoTrack 视频流类型。 p_sample AliRtcVideoDataSample ** 视频样本。 YES表示方法调用成功,NO表示方法调用失败。
- getVideoRenderData:主动获取拉流数据。
参数说明- (BOOL)getVideoRenderData:(NSString*)uid videoTrack:(AliRtcVideoTrack)videoTrack videoSample:(AliRtcVideoDataSample**)p_sample;
参数 类型 说明 uid NSString * 远端用户ID。 videoTrack AliRtcVideoTrack 视频流类型。 p_sample AliRtcVideoDataSample ** 视频样本。 YES表示方法调用成功,NO表示方法调用失败。
- GetPublishLiveStreamStateWithURL:获取旁路直播状态。
参数说明- (AliRtcLiveTranscodingState)GetPublishLiveStreamStateWithURL:(NSString *_Nonnull)streamURL;
参数 类型 说明 streamURL NSString * 推流地址。 返回旁路直播状态。
- setRecordingDeviceMute:静音音频采集设备(仅Mac)。
参数说明- (int)setRecordingDeviceMute:(BOOL)mute;
参数 类型 说明 mute BOOL 设备是否静音,取值: - TRUE:设备设置为静音。
- FALSE:设备设置为非静音。
0表示方法调用成功,非0表示方法调用失败。
- getRecordingDeviceMute:获取音频采集设备静音状态(仅Mac)。
返回说明- (BOOL)getRecordingDeviceMute;
YES表示方法调用成功,NO表示方法调用失败。
- setPlaybackDeviceMute:静音音频播放设备(仅Mac)。
参数说明- (int)setPlaybackDeviceMute:(BOOL)mute;
参数 类型 说明 mute BOOL 设备是否静音,取值: - TRUE:设备设置为静音。
- FALSE:设备设置为非静音。
0表示方法调用成功,非0表示方法调用失败。
- getPlaybackDeviceMute:获取音频播放设备静音状态(仅Mac)。
返回说明- (BOOL)getPlaybackDeviceMute;
YES表示方法调用成功,NO表示方法调用失败。
- enableBackgroundExchange:开启或关闭虚拟背景替换功能(仅Mac)。
参数说明- (int)enableBackgroundExchange:(BOOL)enable imagePath:(NSString *_Nonnull)path scalMode:(AliRtcBokehScaleModel)mode;
参数 类型 描述 enable BOOL 是否开启背景替换功能。取值: - YES:开启。
- NO:关闭。
path NSString 本地图片路径,支持JPG、PNG格式。 mode AliRtcBokehScaleModel 背景图缩放模式。取值: - AliRtcBokehScaleModelCrop:等比裁剪。
- AliRtcBokehScaleModelFill:填充黑边。
0表示方法调用成功,非0表示方法调用失败。
- enableBackgroundBlur:开启或关闭虚拟背景虚化功能(仅Mac)。
参数说明- (int)enableBackgroundBlur:(BOOL)enable blurDegree:(uint32_t)blurDegree;
参数 类型 描述 enable BOOL 是否开启背景虚化功能。取值: - YES:开启。
- NO:关闭。
blurDegree uint32_t 虚化程度,取值范围:[0,100]。 0表示方法调用成功,非0表示方法调用失败。