通过阅读本文,您可以了解到iOS SDK和Mac SDK的AliRtcEngine接口详情。
目录
基础接口
API | 描述 | 以上版本支持 |
---|---|---|
setH5CompatibleMode | 设置H5兼容模式。 | 1.1 |
getH5CompatibleMode | 检查当前是否兼容H5。 | 1.1 |
sharedInstance | 创建AliRtcEngine实例(同一时间只会存在一个实例)。 | 1.1 |
destroy | SDK资源释放。 | 1.1 |
频道相关接口
API | 描述 | 以上版本支持 |
---|---|---|
setAutoPublish | 设置是否自动发布,是否自动订阅。 | 1.1 |
joinChannel | 加入频道。 | 1.1 |
leaveChannel | 离开频道。 | 1.1 |
isInCall | 检查当前是否在频道中。 | 1.1 |
setChannelProfile | 设置频道模式。 | 1.15 |
发布相关接口
API | 描述 | 以上版本支持 |
---|---|---|
isAutoPublish | 查询当前是否为自动发布模式。 | 1.1 |
configLocalCameraPublish | 设置是否允许发布相机流。 | 1.1 |
isLocalCameraPublishEnabled | 查询当前是否允许发布相机流。 | 1.1 |
configLocalScreenPublish | 设置是否允许发布屏幕流(仅Mac)。 | 1.1 |
isLocalScreenPublishEnabled | 查询当前是否允许发布屏幕流(仅Mac)。 | 1.1 |
configLocalAudioPublish | 设置是否允许发布音频流。 | 1.1 |
isLocalAudioPublishEnabled | 查询当前是否允许发布音频流。 | 1.1 |
configLocalSimulcast | 设置是否允许发布次要视频流。 | 1.1 |
isLocalSimulcastEnabled | 查询当前是否允许发布次要视频流。 | 1.1 |
publish | 手动发布视频和音频流。 | 1.1 |
订阅相关接口
API | 描述 | 以上版本支持 |
---|---|---|
isAutoSubscribe | 查询当前是否为自动订阅模式。 | 1.1 |
configRemoteCameraTrack | 设置是否订阅远端相机流。 | 1.1 |
configRemoteScreenTrack | 设置是否订阅远端屏幕流。 | 1.1 |
configRemoteAudio | 设置是否订阅远端音频流。 | 1.1 |
subscribe | 手动订阅视频和音频流。 | 1.1 |
subscribeVideoRGBData | 订阅视频RGB数据。 | 1.17 |
unSubscribeVideoRGBData | 取消订阅视频RGB数据。 | 1.17 |
subscribeVideoTexture | 订阅视频纹理数据。 | 1.17 |
unSubscribeVideoTexture | 取消订阅视频纹理数据。 | 1.17 |
视频相关接口
API | 描述 | 以上版本支持 |
---|---|---|
setVideoProfile | 设置视频流的参数。 | 1.1 |
setLocalViewConfig | 为本地预览设置渲染窗口以及绘制参数。 | 1.1 |
muteLocalCamera | 设置是否停止发布本地视频流。 | 1.1 |
setRemoteViewConfig | 为远端的视频设置渲染窗口以及绘制参数。 | 1.1 |
getCameraList | 获取摄像头列表(仅Mac)。 | 1.1 |
getCurrentCamera | 获取当前使用的摄像头名称(仅Mac)。 | 1.1 |
setCurrentCamera | 选择摄像头(仅Mac)。 | 1.1 |
switchCamera | 切换前后摄像头(仅iOS)。 | 1.1 |
setCameraZoom | 设置摄像头参数(仅iOS)。 | 1.1 |
isCameraOn | 检查摄像头是否打开(仅iOS)。 | 1.1 |
isCameraFocusPointSupported | 相机是否支持手动聚焦(仅iOS)。 | 1.14 |
isCameraExposurePointSupported | 相机是否支持手动曝光(仅iOS)。 | 1.14 |
setCameraFocusPoint | 设置手动聚焦的坐标点(仅iOS)。 | 1.14 |
setCameraExposurePoint | 设置手动曝光的坐标点(仅iOS)。 | 1.14 |
subscribeVideoPreprocessData | 订阅采集视频前处理裸数据(仅iOS)。 | 1.14 |
unSubscribeVideoPreprocessData | 取消采集订阅前处理裸数据(仅iOS)。 | 1.14 |
enableHighDefinitionPreview | 是否允许高清预览,默认打开(仅iOS)。 | 1.14 |
registerVideoSampleObserver | 订阅视频数据输出。 | 1.16.2 |
unregisterVideoSampleObserver | 取消订阅视频数据输出。 | 1.16.2 |
setVideoSwapWidthAndHeight | 设置视频track是否需要交换宽高。 | 1.16.2 |
muteAllRemoteVideoRendering | mute或unmute远端的所有视频track的渲染。 | 1.16.2 |
getCurrentCameraID | 获取当前使用的摄像头ID(仅Mac)。 | 1.16.2 |
setCurrentCameraWithID | 通过设备ID选择摄像头(仅Mac)。 | 1.16.2 |
setExternalVideoSource | 启用外部视频输入源。 | 1.17.9 |
pushExternalVideoFrame | 输入外部视频。 |
|
setBeautyEffect | 设置基础美颜。 | 1.17.9 |
getCurrentCameraDirection | 获取当前摄像头方向(仅iOS)。 | 1.17.20 |
setVideoEncoderConfiguration | 设置视频编码属性。 | 1.17.31 |
enableLocalVideo | 禁用或重新启用本地视频采集。 | 1.17.39 |
音频相关接口
音效相关接口
API | 描述 | 以上版本支持 |
---|---|---|
getAudioAccompanyDuration | 获取伴奏文件时长。 | 1.17.30 |
getAudioAccompanyCurrentPosition | 获取音乐文件播放进度。 | 1.17.30 |
setAudioAccompanyPosition | 设置音频文件的播放位置。 | 1.17.30 |
stopAllAudioEffects | 停止播放所有音效。 | 1.17.30 |
setAllAudioEffectsPublishVolume | 设置所有音效推流音量。 | 1.17.30 |
setAllAudioEffectsPlayoutVolume | 设置所有音效本地播放音量。 | 1.17.30 |
pauseAllAudioEffects | 暂停所有音效。 | 1.17.30 |
resumeAllAudioEffects | 重新开始播放所有音效。 | 1.17.30 |
预览接口
API | 描述 | 以上版本支持 |
---|---|---|
startPreview | 开始本地预览。 | 1.1 |
stopPreview | 停止本地预览。 | 1.1 |
远端用户查询接口
API | 描述 | 以上版本支持 |
---|---|---|
getOnlineRemoteUsers | 获取远端在线用户列表。 | 1.1 |
getUserInfo | 查询远端用户信息。 | 1.1 |
isUserOnline | 查询用户是否在线。 | 1.1 |
其他接口
API | 描述 | 以上版本支持 |
---|---|---|
setLogLevel | 设置日志级别。 | 1.1 |
getSdkVersion | 获取SDK版本号。 | 1.1 |
uploadLog | 上传日志。 | 1.15 |
startIntelligentDenoise | 开启智能降噪(仅Mac)。 | 1.15 |
stopIntelligentDenoise | 关闭智能降噪(仅Mac)。 | 1.15 |
setClientRole | 设置用户角色。 | 1.16 |
setLogDirPath | 设置SDK日志文件保存路径。 | 1.16.2 |
setDeviceOrientationMode | 设置设备横竖屏方向。 | 1.16.2 |
startLastmileDetect | 开始网络质量探测。 | 1.16.2 |
stopLastmileDetect | 停止网络质量探测。 | 1.16.2 |
startRecord | 开始录制。 | 1.17.1 |
stopRecord | 停止录制。 | 1.17 |
getCurrentClientRole | 获取当前用户角色(仅iOS)。 | 1.17.9 |
postFeedbackWithUid | SDK问题反馈。 |
|
sendMediaExtensionMsg | 发送媒体扩展信息。 | 1.17.1 |
getClientRole | 获取当前用户角色(仅Mac)。 | 1.17.19 |
refreshAuthInfo | 刷新令牌。 | 1.17.41 |
接口详情
-
setH5CompatibleMode:设置H5兼容模式。
参数说明+ (void)setH5CompatibleMode:(BOOL)comp;
名称 类型 描述 comp BOOL YES为兼容H5模式,NO为不兼容H5。默认不兼容H5。 重要 该接口仅支持在创建AliRtcEngine实例前调用。 -
getH5CompatibleMode:检查当前是否兼容H5。
+ (BOOL)getH5CompatibleMode;
返回说明
YES表示标识兼容H5,NO表示不兼容H5。
重要 该接口仅支持在创建AliRtcEngine实例前调用。 -
sharedInstance:创建AliRtcEngine实例。
参数说明+ (instancetype)sharedInstance:(id<AliRtcEngineDelegate>)delegate extras:(NSString *)extras;
名称 类型 描述 delegate AliRtcEngineDelegate类型的代理 监听回调的代理。 extras NSString * 通过JSON配置SDK的特别功能,详情请参见extras功能说明。无需特别功能,可填空字符:@""。 重要 该接口同一时间只会存在一个实例。 -
destroy:销毁SDK。
+ (void)destroy;
重要 在所有操作结束之后调用。 -
setAutoPublish:设置是否自动发布,是否自动订阅。
参数说明- (int)setAutoPublish:(BOOL)autoPub withAutoSubscribe:(BOOL)autoSub;
名称 类型 描述 autoPub BOOL YES表示自动发布,NO表示手动发布。默认自动发布。 autoSub BOOL YES表示自动订阅,NO表示手动订阅。默认自动订阅。 返回说明
0表示Success,非0表示Failure。
重要 必须在加入频道之前设置。 -
joinChannel:加入频道。
参数说明- (void)joinChannel:(AliRtcAuthInfo *)authInfo name:(NSString *)userName onResult:(void(^)(NSInteger errCode))onResult;
名称 类型 描述 authInfo AliRtcAuthInfo * 鉴权信息。 userName NSString * 用户的显示名称( 非用户ID)。 onResult void(^)(NSInteger errCode) 当joinChannel执行结束后回调。 重要 加入频道成功后,如果中途需要加入其他频道,必须先调用leaveChannel离开当前频道。如果加入频道失败,需要重试时,无需先调用leaveChannel。 -
leaveChannel:离开频道。
- (void)leaveChannel;
1.15及以上版本:销毁引擎只能通过destroy方法。
1.15以下版本:离开频道时,AliRtcEngine实例会被销毁,如需继续加入频道等操作,需要先重新调用getInstance初始化AliRtcEngine实例。
-
isInCall:检查当前是否在频道中。
- (BOOL)isInCall;
返回说明
YES表示在频道中,NO表示不在频道中。
-
setChannelProfile:设置频道模式。
参数说明- (int)setChannelProfile:(AliRtcChannelProfile)profile;
名称 类型 描述 profile AliRtcChannelProfile 频道模式类型。默认为AliRtcCommunication通信模式。 返回说明
0表示成功,非0表示失败。
重要 该接口只可以在加入频道之前调用,会议中不可以重新设置,离开频道后可以重新设置。 -
isAutoPublish:查询当前是否为自动发布模式。
- (BOOL)isAutoPublish;
返回说明
YES表示自动发布,NO表示手动发布。
-
configLocalCameraPublish:设置是否允许发布相机流。
参数说明- (void)configLocalCameraPublish:(BOOL)enable;
名称 类型 描述 enable BOOL YES为允许发布相机流,NO为不允许。默认为允许发布相机流。 重要 手动发布时,需要调用publish才能生效。 -
isLocalCameraPublishEnabled:查询当前是否允许发布相机流
- (BOOL)isLocalCameraPublishEnabled;
返回说明
YES表示允许发布相机流,NO表示不允许发布相机流。
-
configLocalScreenPublish(仅Mac可用):设置是否允许发布屏幕流。
参数说明- (void)configLocalScreenPublish:(BOOL)enable;
名称 类型 描述 enable BOOL YES为允许发布屏幕流,NO为不允许发布屏幕流。默认为不允许发布屏幕流。 重要 手动发布时,需要调用publish才能生效。 -
isLocalScreenPublishEnabled(仅Mac可用):查询当前是否允许发布屏幕流。
- (BOOL)isLocalScreenPublishEnabled;
返回说明
YES表示允许发布屏幕流,NO表示不允许发布屏幕流。
-
configLocalAudioPublish:设置是否允许发布音频流。
参数说明- (void)configLocalAudioPublish:(BOOL)enable;
名称 类型 描述 enable BOOL YES为允许发布音频流,NO为不允许发布音频流。默认为允许发布音频流。 重要 手动发布时,需要调用publish才能生效。 -
isLocalAudioPublishEnabled:查询当前是否允许发布音频流。
- (BOOL)isLocalAudioPublishEnabled;
返回说明
YES表示允许发布音频流,NO表示不允许发布音频流。
-
configLocalSimulcast:设置是否允许发布次要视频流。
参数说明- (int)configLocalSimulcast:(BOOL)enabled forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 enabled BOOL YES表示允许发布次要视频流,NO表示不允许发布次要视频流。默认为允许发布次要视频流。 track AliRtcVideoTrack 流类型。当前只支持AliVideoTrackCamera(相机流)。 返回说明
0表示Success,非0表示Failure。
重要 手动发布时,需要调用publish才能生效。 -
isLocalSimulcastEnabled:查询当前是否允许发布次要视频流。
- (BOOL)isLocalSimulcastEnabled;
返回说明
YES表示允许发布次要视频流,NO表示不允许发布次要视频流。
-
publish:手动发布视频和音频流。
- (void)publish:(void (^)(int errCode))onResult;
- 调用publish的实际表现需要结合configLocalCameraPublish、configLocalAudioPublish、configLocalSimulcast等接口才能确定。
- 根据您的具体业务需求配置上述3个接口的参数,以发布相应的视频和音频流。
- 如需停止发布,则需要上述3个配置接口的参数都置为NO,再调用publish。
名称 类型 描述 onResult void (^)(int errCode) 当调用publish执行结束后回调。 -
isAutoSubscribe:查询当前是否为自动订阅模式。
- (BOOL)isAutoSubscribe;
返回说明
YES表示自动订阅,NO表示手动订阅。
-
configRemoteCameraTrack:设置是否订阅远端相机流。
参数说明- (void)configRemoteCameraTrack:(NSString *)uid preferMaster:(BOOL)master enable:(BOOL)enable;
名称 类型 描述 uid NSString * 用户ID。 master BOOL YES为订阅大流,NO为订阅次小流。默认为订阅大流。 enable BOOL YES为订阅远端相机流,NO为停止订阅远端相机流。默认为不订阅。 重要 该接口需要对流进行操作时(如手动订阅,关闭订阅),必须调用subscribe才能生效。 -
configRemoteScreenTrack:设置是否订阅远端屏幕流。
参数说明- (void)configRemoteScreenTrack:(NSString *)uid enable:(BOOL)enable;
名称 类型 描述 uid NSString * 用户ID。 enable BOOL YES为订阅远端屏幕流,NO为停止订阅远端屏幕流。默认为不订阅远端屏幕流。 重要 该接口需要对流进行操作时(如手动订阅,关闭订阅),必须调用subscribe才能生效。 -
configRemoteAudio:设置是否订阅远端音频流。
参数说明- (void)configRemoteAudio:(NSString *)uid enable:(BOOL)enable;
名称 类型 描述 uid NSString * 用户ID。 enable BOOL YES为订阅远端音频流,NO为停止订阅远端音频流。默认为订阅远端音频流。 重要 该接口需要对流进行操作时(如手动订阅,关闭订阅),必须调用subscribe才能生效。 -
subscribe:手动订阅视频和音频流。
- (void)subscribe:(NSString *)uid onResult:(void (^)(NSString *uid, AliRtcVideoTrack vt, AliRtcAudioTrack at))onResult;
- 调用subscribe的实际表现需要结合configRemoteCameraTrack、configRemoteScreenTrack、configRemoteAudio等接口才能确定。
- 根据您的具体业务需求配置上述3个接口的参数,以订阅相应的视频和音频流。
- 订阅和停止订阅都是调用subscribe。
- 如需停止订阅,则需要上述3个配置接口的参数都置为false,再调用subscribe。
名称 类型 描述 uid NSString * 用户ID。 onResult void (^)(NSString *uid, AliRtcVideoTrack vt, AliRtcAudioTrack at) 当调用subscribe执行结束后回调。 -
subscribeVideoRGBData:订阅视频RGB数据。
参数说明- (void)subscribeVideoRGBData:(NSString *)uid videoSource:(AliRtcVideoSource)videoSource;
名称 类型 描述 uid NSString * 用户的UID。 videoSource AliRtcVideoSource 视频裸数据源类型。 -
unSubscribeVideoRGBData:取消订阅视频RGB数据。
参数说明- (void)unSubscribeVideoRGBData:(NSString *)uid videoSource:(AliRtcVideoSource)videoSource;
名称 类型 描述 uid NSString * 用户的UID。 videoSource AliRtcVideoSource 视频裸数据源类型。 -
subscribeVideoTexture:订阅视频纹理数据。
参数说明- (void)subscribeVideoTexture:(NSString *)uid videoSource:(AliRtcVideoSource)videoSource videoTextureType:(AliRtcVideoTextureType)videoTextureType;
名称 类型 描述 uid NSString * 用户的UID。 videoSource AliRtcVideoSource 视频裸数据源类型。 videoTextureType AliRtcVideoTextureType 纹理类型。 -
unSubscribeVideoTexture:取消订阅视频纹理数据。
参数说明- (void)unSubscribeVideoTexture:(NSString *)uid videoSource:(AliRtcVideoSource)videoSource videoTextureType:(AliRtcVideoTextureType)videoTextureType;
名称 类型 描述 uid NSString * 用户的UID。 videoSource AliRtcVideoSource 视频裸数据源类型。 videoTextureType AliRtcVideoTextureType 纹理类型。 -
setVideoProfile:设置视频流的参数。
参数说明- (void)setVideoProfile:(AliRtcVideoProfile)profile forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 profile AliRtcVideoProfile 视频流参数。默认为分辨率480*640,帧率15的相机流。 track AliRtcVideoTrack 需要设置的视频Track类型。默认相机流。 -
setLocalViewConfig:为本地预览设置渲染窗口以及绘制参数。
- (int)setLocalViewConfig:(AliVideoCanvas *)viewConfig forTrack:(AliRtcVideoTrack)track;
- 支持joinChannel之前和之后切换窗口。如果viewConfig为NULL或者其成员渲染视图为NULL,则停止渲染。
- 如果在播放过程中需要重新设置渲染方式,请保持viewConfig中其他成员变量不变,仅修改renderMode。
- viewConfig中渲染方式默认为AliRtcRenderModeAuto。
名称 类型 描述 viewConfig AliVideoCanvas * 渲染参数,包含渲染窗口以及渲染方式。 track AliRtcVideoTrack 预览只允许AliVideoTrackCamera(相机流)。 返回说明
0表示Success,非0表示Failure。
-
muteLocalCamera:设置是否停止发布本地视频流。
参数说明- (int)muteLocalCamera:(BOOL)mute forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 mute BOOL YES表示停止发布视频流,NO表示恢复发布。默认NO。 track AliRtcVideoTrack 需要改变发布状态的视频Track类型。 返回说明
0表示Success,非0表示Failure。
重要 该接口不改变当前视频流的采集状态。 -
setRemoteViewConfig:为远端的视频设置渲染窗口以及绘制参数。
参数说明- (int)setRemoteViewConfig:(AliVideoCanvas *)canvas uid:(NSString *)uid forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 canvas AliVideoCanvas * 渲染参数,包含渲染窗口以及渲染方式。 uid NSString * 用户ID。 track AliRtcVideoTrack 需要设置的视频Track类型。 返回说明
0表示Success,非0表示Failure。
-
getCameraList(仅Mac可用):获取摄像头列表。
- (NSArray<AliRtcDeviceInfo *> *)getCameraList;
-
getCurrentCamera(仅Mac可用):获取当前使用的摄像头名称。
- (NSString *)getCurrentCamera;
-
setCurrentCamera(仅Mac可用):选择摄像头。
参数说明- (void)setCurrentCamera:(NSString *)camera;
名称 类型 描述 camera NSString * 摄像头名称。 重要 必须先调用getCameraList接口获取设备列表后再调用此接口设置。 -
switchCamera(仅iOS可用):切换前后摄像头。
- (int)switchCamera;
返回说明
0表示切换成功,其他表示切换失败。
-
setCameraZoom(仅iOS可用):设置摄像头参数。
参数说明- (int)setCameraZoom:(float)zoom flash:(BOOL)flash autoFocus:(BOOL)autoFocus;
名称 类型 描述 zoom float 变焦的级别。取值范围:-3.0~3.0,默认取值1.0。 flash BOOL 是否打开闪光灯。YES为打开闪光灯,NO为不打开闪光灯。默认不打开闪光灯。 autoFocus BOOL 是否打开自动对焦。YES为打开自动对焦,NO为不打开自动对焦。默认不打开自动对焦。 返回说明
0表示设置成功,其他表示设置失败。
-
isCameraOn(仅iOS可用):检查摄像头是否打开。
- (BOOL)isCameraOn;
返回说明
YES表示摄像头已打开,NO表示摄像头没有打开。
-
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表示成功,其他表示失败。
-
subscribeVideoPreprocessData(仅iOS可用):订阅采集视频前处理裸数据。
参数说明- (void)subscribeVideoPreprocessData:(AliRtcVideoSource)videoSource;
名称 类型 描述 videoSource AliRtcVideoSource 视频流类型。 -
unSubscribeVideoPreprocessData(仅iOS可用):取消采集订阅前处理裸数据。
参数说明- (void)unSubscribeVideoPreprocessData:(AliRtcVideoSource)videoSource;
名称 类型 描述 videoSource AliRtcVideoSource 视频流类型。 -
enableHighDefinitionPreview(仅iOS可用):是否允许高清预览,
参数说明- (BOOL)enableHighDefinitionPreview:(BOOL)enable;
名称 类型 描述 enable BOOL YES表示允许高清预览,NO表示不允许高清预览。默认允许高清预览。 返回说明
YES表示设置成功,NO表示设置失败。
重要 该接口需要在开启预览和开启推流之前调用。 -
setVideoSwapWidthAndHeight:设置视频track是否需要交换宽高。
参数说明- (void)setVideoSwapWidthAndHeight:(BOOL)swapWidthAndHeight forTrack:(AliRtcVideoTrack)track;
名称 类型 描述 swapWidthAndHeight BOOL YES表示需要交换宽高,NO表示不需要。默认NO。 track AliRtcVideoTrack 需要设置的视频Track类型。 -
muteAllRemoteVideoRendering:mute或unmute远端的所有视频track的渲染。
参数说明- (int)muteAllRemoteVideoRendering:(BOOL)mute;
名称 类型 描述 mute BOOL YES表示停止渲染,NO表示恢复渲染。默认NO。 返回说明
0表示成功,其他返回错误码。
-
getCurrentCameraID(仅Mac可用):获取当前使用的摄像头ID。·
- (NSString *)getCurrentCameraID;
-
setCurrentCameraWithID(仅Mac可用):通过设备ID选择摄像头。
参数说明- (void)setCurrentCameraWithID:(NSString *)cameraID;
名称 类型 描述 cameraID NSString * 摄像头ID。 -
setExternalVideoSource:启用外部视频输入源。
参数说明- (int)setExternalVideoSource:(BOOL)enable useTexture:(BOOL)useTexture sourceType:(AliRtcVideoSource)type renderMode:(AliRtcRenderMode)renderMode
名称 类型 描述 enable BOOL YES表示启用外部视频数据作为推流输入源,NO表示停止。 useTexture BOOL 是否使用texture模式,目前暂不支持。 type AliRtcVideoSource 视频流类型。 renderMode AliRtcRenderMode 渲染模式(输入视频比例和推流profile不一致时,按照设置的renderMode进行对应处理 )。 返回说明
大于等于0表示成功,小于0表示失败。
-
pushExternalVideoFrame:输入外部视频。
参数说明- (int)pushExternalVideoFrame:(AliRtcVideoDataSample *)frame sourceType:(AliRtcVideoSource)type;
名称 类型 描述 frame AliRtcVideoDataSample * 帧数据。 type AliRtcVideoSource 视频流类型。 返回说明
大于等于0表示成功,小于0表示失败。
-
setBeautyEffect:设置基础美颜。
- iOS代码和参数,如下所示:
参数说明- (int)setBeautyEffect:(BOOL)enable config:(AliRtcBeautyConfig)config;
名称 类型 描述 enable BOOL YES表示开启基础美颜,NO表示关闭,默认为关闭。 config AliRtcBeautyConfig 美颜参数配置。 - Mac代码和参数,如下所示:
参数说明- (int)setBeatutyEffect:(bool)enable config:(AliRtcBeautyConfig)config;
名称 类型 描述 enable bool true表示开启基础美颜,false表示关闭,默认为关闭。 config AliRtcBeautyConfig 美颜参数配置。
返回说明
0表示操作成功,非0表示操作失败。
- iOS代码和参数,如下所示:
- getCurrentCameraDirection(仅iOS可用):获取当前摄像头方向。
- (AliRtcCameraDirection)getCurrentCameraDirection;
该接口默认前置摄像头。
- setVideoEncoderConfiguration:设置视频编码属性。
参数说明- (void)setVideoEncoderConfiguration:(AliRtcVideoEncoderConfiguration* _Nonnull )config;
名称 类型 描述 config AliRtcVideoEncoderConfiguration 预定义的视频编码属性。 - enableLocalVideo:禁用或重新启用本地视频采集。
参数说明- (int)enableLocalVideo:(BOOL)enable;
名称 类型 描述 enable BOOL 禁用或重新启用本地视频采集。取值: - YES(默认值):启用本地视频采集。
- NO:禁用本地视频采集。
返回说明
0表示设置成功,其他表示设置失败。
-
registerVideoSampleObserver:订阅视频数据输出。
- (void)registerVideoSampleObserver;
-
unregisterVideoSampleObserver:取消订阅视频数据输出。
- (void)unregisterVideoSampleObserver;
-
setAudioOnlyMode:设置为纯音频模式还是音视频模式,默认为音视频模式(非纯音频)。
参数说明- (int)setAudioOnlyMode:(BOOL)audioOnly;
名称 类型 描述 audioOnly BOOL YES表示只有音频发布和订阅,NO表示音视频都支持。默认为音视频模式。 返回说明
0表示设置成功,其他表示设置失败。
重要 该接口必须在调用joinChannel之前设置。 -
isAudioOnly:查询当前是否为纯音频模式。
- (BOOL)isAudioOnly;
返回说明
YES表示纯音频,NO表示音视频。
-
muteLocalMic:设置是否停止发布本地音频。
参数说明- (int)muteLocalMic:(BOOL)mute;
名称 类型 描述 mute BOOL YES表示停止发布本地音频,NO表示恢复发布。默认恢复发布。 返回说明
0表示设置成功,-1表示设置失败。
重要 该接口不改变当前音频的采集状态。 -
muteRemoteAudioPlaying:设置是否停止播放远端音频流。
参数说明- (int)muteRemoteAudioPlaying:(NSString *)uid mute:(BOOL)mute;
名称 类型 描述 uid NSString * 用户ID。 mute BOOL YES表示停止播放,NO表示恢复播放。默认恢复播放。 返回说明
0表示设置成功,-1表示设置失败。
-
enableSpeakerphone(仅iOS可用):设置音频输出为听筒还是扬声器。
参数说明- (int)enableSpeakerphone:(BOOL)enable;
名称 类型 描述 enable BOOL YES为扬声器模式,NO为听筒模式(默认值)。 返回说明
0表示成功,其他返回错误码。
-
getAudioCaptures(仅Mac可用):获取系统中的录音设备列表。
- (NSArray<AliRtcDeviceInfo *> *)getAudioCaptures;
-
getCurrentAudioCapture(仅Mac可用):获取当前使用的音频采集设备名称。
- (NSString *)getCurrentAudioCapture;
-
setCurrentAudioCapture(仅Mac可用):选择音频采集设备。
参数说明- (void)setCurrentAudioCapture:(NSString *)capture;
名称 类型 描述 capture NSString * 音频采集设备名称。 重要 必须先调用getCurrentAudioCapture接口获取设备列表后再调用此接口设置。 -
getAudioRenderers(仅Mac可用):获取系统中的扬声器列表。
- (NSArray<AliRtcDeviceInfo *> *)getAudioRenderers;
-
getCurrentAudioRenderer(仅Mac可用):获取当前使用的音频播放设备。
- (NSString *)getCurrentAudioRenderer;
-
setCurrentAudioRenderer(仅Mac可用):选择音频播放设备。
参数说明- (void)setCurrentAudioRenderer:(NSString *)renderer;
名称 类型 描述 renderer NSString * 音频播放设备名称。 重要 必须先调用getAudioRenderers接口获取设备列表后再调用此接口设置。 -
startAudioCapture:开启音频采集。
- (void)startAudioCapture;
重要 您可以控制提前打开音频采集,如果不设置,SDK会在开始推流的时候打开音频采集。 -
stopAudioCapture:关闭音频采集。
- (void)stopAudioCapture;
-
startAudioPlayer:开启音频播放。
- (void)startAudioPlayer;
重要 您可以控制提前打开音频播放,如果不设置,SDK会在订阅成功的时候打开音频播放。 -
stopAudioPlayer:关闭音频播放。
- (void)stopAudioPlayer;
重要 该接口在入会前调用。 -
startAudioAccompanyWithFile(仅iOS可用):开始播放伴奏。
参数说明- (int)startAudioAccompanyWithFile:(NSString *)filePath onlyLocalPlay:(BOOL)onlyLocalPlay replaceMic:(BOOL)replaceMic loopCycles:(NSInteger)loopCycles;
名称 类型 描述 filePath NSString * 文件路径。 onlyLocalPlay BOOL 是否只本地播放。取值:YES|NO。 replaceMic BOOL 是否替换MIC(麦克风)。取值:YES|NO。 loopCycles NSInteger 循环次数。可以设置为-1或者正整数。 返回说明
0表示成功,其他返回错误码。
重要 支持本地资源和网络资源播放。 -
stopAudioAccompany(仅iOS可用):停止伴奏。
- (int)stopAudioAccompany;
返回说明
0表示成功,其他返回错误码。
-
setAudioAccompanyVolume:设置伴奏音量。
参数说明- (int)setAudioAccompanyVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量。取值范围:0~100。默认取值50。 返回说明
0表示成功,其他返回错误码。
重要 设置音量需要在调用startAudioAccompanyWithFile后才能生效。 -
setAudioAccompanyPublishVolume(仅iOS可用):设置伴奏之后推流出去的音量。
参数说明- (int)setAudioAccompanyPublishVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量。取值范围:0~100。默认取值50。 返回说明
0表示成功,其他返回错误码。
重要 设置音量需要在调用startAudioAccompanyWithFile后才能生效。 -
getAudioAccompanyPublishVolume(仅iOS可用):获取伴奏推流音量。
- (int)getAudioAccompanyPublishVolume;
返回说明
0表示成功,其他返回错误码。
-
setAudioAccompanyPlayoutVolume(仅iOS可用):设置伴奏本地音量。
参数说明- (int)setAudioAccompanyPlayoutVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 混音音量。取值范围:0~100。默认取值50。 返回说明
0表示成功,其他返回错误码。
重要 设置音量需要在调用startAudioAccompanyWithFile后才能生效。 -
getAudioAccompanyPlayoutVolume(仅iOS可用):获取伴奏本地音量。
- (int)getAudioAccompanyPlayoutVolume;
返回说明
0表示成功,其他返回错误码。
-
pauseAudioAccompany(仅iOS可用):暂停播放伴奏。
- (int)pauseAudioAccompany;
返回说明
0表示成功,其他返回错误码。
-
resumeAudioAccompany(仅iOS可用):恢复播放伴奏。
- (int)resumeAudioAccompany;
返回说明
0表示成功,其他返回错误码。
-
preloadAudioEffectWithSoundId(仅iOS可用):预加载音效。
参数说明- (int)preloadAudioEffectWithSoundId:(NSInteger)soundId filePath:(NSString *)filePath;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 filePath NSString * 音效文件路径。 返回说明
0表示成功,其他返回错误码。
-
unloadAudioEffectWithSoundId(仅iOS可用):清除预加载音效。
参数说明- (int)unloadAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 返回说明
0表示成功,其他返回错误码。
-
playAudioEffectWithSoundId(仅iOS可用):开始播放音效。
参数说明- (int)playAudioEffectWithSoundId:(NSInteger)soundId filePath:(NSString *)filePath cycles:(NSInteger)cycles publish:(BOOL)publish;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 filePath NSString * 音效文件路径。 cycles NSInteger 循环次数。可以设置-1或者正整数。 publish BOOL 是否发布。取值:YES|NO。 返回说明
0表示成功,其他返回错误码。
-
stopAudioEffectWithSoundId(仅iOS可用):停止播放音效。
参数说明- (int)stopAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 返回说明
0表示成功,其他返回错误码。
-
setAudioEffectPublishVolumeWithSoundId(仅iOS可用):设置音效推流音量。
参数说明- (int)setAudioEffectPublishVolumeWithSoundId:(NSInteger)soundId volume:(NSInteger)volume;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 volume NSInteger 混音音量。取值范围:0~100。默认取值50。 返回说明
0表示成功,其他返回错误码。
-
getAudioEffectPublishVolumeWithSoundId(仅iOS可用):获取音效推流音量。
参数说明- (int)getAudioEffectPublishVolumeWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 返回说明
返回0~100为成功,否则返回错误码。
-
setAudioEffectPlayoutVolumeWithSoundId(仅iOS可用):设置音效本地音量。
参数说明- (int)setAudioEffectPlayoutVolumeWithSoundId:(NSInteger)soundId volume:(NSInteger)volume;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 volume NSInteger 混音音量。取值范围:0~100。默认取值50。 返回说明
0表示成功,其他返回错误码。
-
getAudioEffectPlayoutVolumeWithSoundId(仅iOS可用):获取音效本地音量。
参数说明- (int)getAudioEffectPlayoutVolumeWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 返回说明
0表示成功,其他返回错误码。
-
pauseAudioEffectWithSoundId(仅iOS可用):暂停播放音效。
参数说明- (int)pauseAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 返回说明
0表示成功,其他返回错误码。
-
resumeAudioEffectWithSoundId(仅iOS可用):恢复播放音效。
参数说明- (int)resumeAudioEffectWithSoundId:(NSInteger)soundId;
名称 类型 描述 soundId NSInteger 用户给该音效文件分配的ID。 返回说明
0表示成功,其他返回错误码。
-
enableEarBack(仅iOS可用):启用耳返。
参数说明- (int)enableEarBack:(BOOL)enable;
名称 类型 描述 enable BOOL 是否启用耳返。YES为启用耳返,NO表示不启用耳返。默认不启用。 返回说明
0表示成功,其他返回错误码。
-
setEarBackVolume(仅iOS可用):设置耳返音量。
参数说明- (int)setEarBackVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 音量。取值范围:0~100,默认取值100。 返回说明
0表示成功,其他返回错误码。
-
setSubscribeAudioNumChannel:设置回调音频声道数。
参数说明- (void)setSubscribeAudioNumChannel:(AliRtcAudioNumChannel)audioNumChannel;
名称 类型 描述 audioNumChannel AliRtcAudioNumChannel 音频编号通道。默认单声道。 -
setSubscribeAudioSampleRate:设置回调音频采样率。
参数说明- (void)setSubscribeAudioSampleRate:(AliRtcAudioSampleRate)audioSampleRate;
名称 类型 描述 audioSampleRate AliRtcAudioSampleRate 音频采样率。默认44.1k。 -
setAudioSessionOperationRestriction(仅iOS可用):设置SDK对AVAudioSession的控制权限。
参数说明- (int)setAudioSessionOperationRestriction:(AliRtcAudioSessionOperationRestriction)restriction;
名称 类型 描述 restriction AliRtcAudioSessionOperationRestriction 设置权限类型。默认值为AliRtcAudioSessionOperationRestrictionNone。 返回说明
0表示Success,非0表示Failure。
-
setRecordingVolume(仅iOS可用):设置录音音量。
参数说明- (int)setRecordingVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 音量。取值:0~400,0表示静音 。默认取值100。 - 当设置大于100时,表示增大音量。
- 当设置小于100时,表示减小音量。
返回说明
0表示操作成功,非0表示操作失败。
重要 录音音量调节:当对端用户物理按键调大最大,且依然觉得播放声音小时可以调用该接口,推荐值100~200,超过200会有影响音质的风险。 -
setPlayoutVolume(仅iOS可用):设置播放音量。
参数说明- (int)setPlayoutVolume:(NSInteger)volume;
名称 类型 描述 volume NSInteger 音量。取值范围:0~400,0表示静音。默认取值100。 - 当设置大于100时,表示增大音量。
- 当设置小于100时,表示减小音量。
返回说明
0表示操作成功,非0表示操作失败。
重要 播放音量调节:当本地物理按键调大最大,且依然觉得播放声音小时可以调用该接口,推荐值100~200,超过200会有影响音质的风险。 -
subscribeAudioData:订阅音频数据。
- (void)subscribeAudioData:(AliRtcAudioSource)audioSource;
-
unSubscribeAudioData:取消订阅音频数据。
- (void)unSubscribeAudioData:(AliRtcAudioSource)audioSource;
-
muteAllRemoteAudioPlaying:停止远端的所有音频流的播放。
参数说明- (int)muteAllRemoteAudioPlaying:(BOOL)mute;
名称 类型 描述 mute BOOL YES表示停止播放,NO表示恢复播放。默认为播放状态。 返回说明
0表示成功,其他返回错误码。
-
setExteranlAudioRender:设置是否启用外部输入音频播放。
参数说明- (int)setExteranlAudioRender:(BOOL)enable sampleRate:(NSUInteger)sampleRate channelsPerFrame:(NSUInteger)channelsPerFrame;
名称 类型 描述 enable BOOL YES表示启用外部音频数据作为推流输入源,NO表示停止。 sampleRate NSUInteger 外部音频数据的采样率。 channelsPerFrame NSUInteger 外部音频数据的声道数(目前支持单声道,双声道)。 返回说明
0表示成功,其他返回错误码。
-
pushExternalAudioRenderRawData:输入音频播放数据。
参数说明- (int)pushExternalAudioRenderRawData:(const void* _Nullable)audioSamples sampleLength:(NSUInteger)sampleLength sampleRate:(NSUInteger)sampleRate channelsPerFrame:(NSUInteger)channelsPerFrame timestamp:(long long)timestamp;
名称 类型 描述 audioSamples const void* _Nullable 音频数据。 sampleLength NSUInteger 音频数据长。 sampleRate NSUInteger 音频采样率。 channelsPerFrame NSUInteger 音频声道数。 timestamp long long 时间戳。 返回说明
大于等于0表示成功,小于0表示失败。
-
isEnableSpeakerphone(仅iOS可用):获取当前音频输出为听筒还是扬声器。
- (BOOL)isEnableSpeakerphone;
返回说明
YES表示扬声器模式,NO表示听筒模式。
-
getCurrentAudioCaptureID(仅Mac可用):获取使用的录音设备ID。
- (NSString *)getCurrentAudioCaptureID;
-
setCurrentAudioCaptureWithID(仅Mac可用):通过设备ID选择录音设备。
参数说明- (void)setCurrentAudioCaptureWithID:(NSString *)captureID;
名称 类型 描述 captureID NSString * 设备录音ID。 -
getCurrentAudioRendererID(仅Mac可用):获取当前使用的扬声器ID。
- (NSString *)getCurrentAudioRendererID;
-
setCurrentAudioRendererWithID(仅Mac可用):通过设备ID选择扬声器。
参数说明- (void)setCurrentAudioRendererWithID:(NSString *)rendererID;
名称 类型 描述 rendererID NSString * 扬声器ID。 -
startTestAudioRecordWithName(仅Mac可用):开始测试音频采集设备。
参数说明- (int)startTestAudioRecordWithName:(NSString *)deviceName;
名称 类型 描述 deviceName NSString * 音频采集设备名字。 返回说明
0表示成功,非0表示失败。
重要 该接口必须在加入频道之前调用。 -
stopTestAudioRecord(仅Mac可用):停止测试音频采集设备。
- (int)stopTestAudioRecord;
返回说明
0表示成功,非0表示失败。
重要 该接口必须在加入频道之前调用。 -
startTestAudioPlayoutWithName(仅Mac可用):开始测试音频播放设备。
参数说明- (int)startTestAudioPlayoutWithName:(NSString *)deviceName filePath:(NSString *)filePath loopCycles:(NSInteger)loopCycles;
名称 类型 描述 deviceName NSString * 音频播放设备名字。 filePath NSString * 音频文件路径。 loopCycles NSInteger 重复播放次数。-1为循环播放。 返回说明
0表示成功,非0表示失败。
重要 该接口必须在加入频道之前调用。 -
stopTestAudioPlayout(仅Mac可用):停止测试音频播放设备。
- (int)stopTestAudioPlayout;
返回说明
0表示成功,非0表示失败。
重要 该接口必须在加入频道之前调用。 -
setExternalAudioSource:设置是否将外部音频数据作为推流的输入源。
参数说明- (int)setExternalAudioSource:(BOOL)enable withSampleRate:(NSUInteger)sampleRate channelsPerFrame:(NSUInteger)channelsPerFrame;
名称 类型 描述 enable BOOL YES表示启用外部音频数据作为推流输入源,NO表示停止。 sampleRate NSUInteger 外部音频数据的采样率。 channelsPerFrame NSUInteger 外部音频数据声道数(目前支持单声道,双声道)。 返回说明
大于等于0表示成功,小于0表示失败。
-
pushExternalAudioFrameRawData:输入音频数据。
参数说明- (int)pushExternalAudioFrameRawData:(void *_Nonnull)data samples:(NSUInteger)samples timestamp:(NSTimeInterval)timestamp;
名称 类型 描述 data void *_Nonnull 音频数据,不建议超过40ms数据。 samples NSUInteger 采样率。 timestamp NSTimeInterval 时间戳,目前传0即可。 返回说明
大于等于0表示成功,小于0表示失败。
-
setExternalAudioVolume:设置外部音频输入音量。
参数说明- (int)setExternalAudioVolume:(int)vol;
名称 类型 描述 vol int 音量。取值:0~100。默认50。 返回说明
0表示Success,非0表示Failure。
-
getExternalAudioVolume:获取外部音频输入音量。
- (int)getExternalAudioVolume;
-
setMixedWithMic:设置外部音频输入是否与麦克风采集音频混合。
参数说明- (int)setMixedWithMic:(BOOL)mixed;
名称 类型 描述 mixed BOOL YES表示混音,NO表示完全替换麦克风采集数据。默认YES。 返回说明
0表示成功,非0表示失败。
-
setExternalAudioRenderVolume(仅Mac可用):设置外部音频播放音量。
参数说明- (int)setExternalAudioRenderVolume:(int)vol;
名称 类型 描述 vol int 音量。取值:0~100。默认50。 返回说明
0表示Success,非0表示Failure。
-
getExternalAudioRenderVolume(仅Mac可用):获取音频播放音量。
- (int)getExternalAudioRenderVolume;
-
setVolumeCallbackIntervalMs:设置音量回调频率和平滑系数。
参数说明- (int)setVolumeCallbackIntervalMs:(NSInteger)interval smooth:(NSInteger)smooth reportVad:(NSInteger)reportVad;
名称 类型 描述 interval NSInteger 时间间隔,单位:ms。最小值不得小于10ms。默认值为160ms。 smooth NSInteger 平滑系数。数值越大平滑程度越高,反之越低,实时性越好。取值范围:0~9,默认取值3。 reportVad NSInteger 本地语音检测开关。 - 1:开启,通过onAudioVolumeCallback接口回调。
- 0:关闭。
返回说明
0表示成功,-1表示interval设置小于10,-2表示平滑系数超出范围。
-
setAudioEffectReverbMode:设置混响音效模式。
参数说明- (int)setAudioEffectReverbMode:(AliRtcAudioEffectReverbMode)mode;
名称 类型 描述 mode AliRtcAudioEffectReverbMode 混响模式类型。默认关闭。 返回说明
0表示成功,非0表示失败。
-
setAudioEffectReverbParamType:设置混响音效类型。
参数说明- (int)setAudioEffectReverbParamType:(AliRtcAudioEffectReverbParamType)type value:(float)value;
名称 类型 描述 type AliRtcAudioEffectReverbParamType 混响音效类型。 value float 对应混响音效类型值。 返回说明
0表示成功,失败返回错误码。
-
setDeviceVolumeType:设置SDK设备音量类型(仅iOS)。
参数说明- (int)setDeviceVolumeType:(AliRtcDeviceVolumeType)type;
名称 类型 描述 type AliRtcDeviceVolumeType 设备音量类型。 返回说明
0表示设置成功,失败返回错误码。
- getAudioAccompanyDuration:获取伴奏文件时长,单位为毫秒。
- (int)getAudioAccompanyDuration;
- getAudioAccompanyCurrentPosition:获取音乐文件播放进度,单位为毫秒。
- (int)getAudioAccompanyCurrentPosition;
- setAudioAccompanyPosition:设置音频文件的播放位置。
参数说明- (int)setAudioAccompanyPosition:(int)pos;
名称 类型 描述 posMs int 进度条位置,单位为毫秒。 返回说明
0表示成功,失败返回错误码。
- stopAllAudioEffects:停止播放所有音效。
- (int)stopAllAudioEffects;
返回说明
0表示成功,失败返回错误码。
- setAllAudioEffectsPublishVolume:设置所有音效推流音量。
参数说明public abstract int setAllAudioEffectsPublishVolume(int volume);
名称 类型 描述 volume int 混音音量,取值范围:0~100。默认取值50。 - setAllAudioEffectsPlayoutVolume:设置所有音效本地播放音量。
参数说明- (int)setAllAudioEffectsPlayoutVolume:(NSInteger)volume;
名称 类型 描述 volume int 混音音量,取值范围:0~100。默认取值50。 返回说明
0表示成功,失败返回错误码。
- pauseAllAudioEffects:暂停所有音效。
- (int)pauseAllAudioEffects;
返回说明
0表示成功,失败返回错误码。
- resumeAllAudioEffects:重新开始播放所有音效。
- (int)resumeAllAudioEffects;
返回说明
0表示成功,失败返回错误码。
-
startPreview:开始本地预览。
- (int)startPreview;
返回说明
0表示Success,非0表示Failure。
重要 您可以在加入频道之前开始本地预览。开始预览之前需要调用setLocalViewConfig。 -
stopPreview:停止本地预览。
- (int)stopPreview;
返回说明
0表示Success,非0表示Failure。
-
getOnlineRemoteUsers:获取远端在线用户列表。
- (NSArray<NSString *> *)getOnlineRemoteUsers;
返回说明
返回用户ID列表。
-
getUserInfo:查询远端用户信息。
参数说明- (NSDictionary *)getUserInfo:(NSString *)uid;
名称 类型 描述 uid NSString * 用户ID。 -
isUserOnline:查询用户是否在线。
参数说明- (BOOL)isUserOnline:(NSString *)uid;
名称 类型 描述 uid NSString * 用户ID。 返回说明
YES表示在线,NO表示不在线。
-
getMediaInfoWithUserId: 获取当前的媒体流信息。
参数说明- (NSString *)getMediaInfoWithUserId:(NSString *)userId videoTrack:(AliRtcVideoTrack)videoTrack keys:(NSArray<NSString *> *)keys;
名称 类型 描述 userId NSString * 需要查询的用户ID,self请赋值空字符串。 videoTrack AliRtcVideoTrack 需要查询的媒体流类型。 keys NSArray<NSString *> * 查询key值数组。 返回说明
返回key-value的JSON格式字符串。
-
setLogLevel:设置日志级别。
参数说明- (void)setLogLevel:(AliRtcLogLevel)logLevel;
名称 类型 描述 logLevel AliRtcLogLevel 日志级别。默认AliRtcLogLevelInfo。 -
getSdkVersion:获取SDK版本号。
+ (NSString *)getSdkVersion;
-
uploadLog:上传日志。
+ (void)uploadLog;
-
startIntelligentDenoise(仅Mac可用):开启智能降噪。默认关闭。
- (void)startIntelligentDenoise;
该接口可以在通话过程中打开智能降噪功能。
-
stopIntelligentDenoise(仅Mac可用):关闭智能降噪。默认关闭。
- (void)stopIntelligentDenoise;
该接口可以在通话过程中关闭智能降噪功能。
-
setClientRole:设置用户角色。
参数说明- (int)setClientRole:(AliRtcClientRole)role;
名称 类型 描述 role AliRtcClientRole 用户角色类型。默认AliRtcClientRolelive。 返回说明
0表示设置成功,非0表示设置失败。
-
setLogDirPath:设置SDK日志文件保存路径。
参数说明+ (int)setLogDirPath:(NSString *)logDirPath;
名称 类型 描述 logDirPath NSString * 日志文件保存绝对路径。 - iOS Log日志默认存储路径Library/Caches/Ali_RTC_Log。
- mac Log日志默认存储路径/Users/xxx/Documents(文稿)/Ali_RTC_Log。
返回说明
0表示成功,非0表示失败。
-
setDeviceOrientationMode:设置设备横竖屏方向。
参数说明- (int)setDeviceOrientationMode:(AliRtcOrientationMode)mode;
名称 类型 描述 mode AliRtcOrientationMode 设备方向。取值: - AliRtcOrientationModePortrait(默认值):固定竖屏模式。
- AliRtcOrientationModeLandscapeLeft:固定左横屏模式。
- AliRtcOrientationModeLandscapeRight:固定右横屏模式。
- AliRtcOrientationModeAuto:自适应横竖屏模式。
返回说明
0表示成功,非0表示失败。
重要 该接口当前仅支持固定横竖屏模式,仅允许在发布和预览之前进行设置。 -
startLastmileDetect:开始网络质量探测。·
- (int)startLastmileDetect;
返回说明
0表示成功,非0表示失败。
重要 该接口需要在加入频道之前调用,并且入会后会自动停止,探测结果在onLastmileDetectResultWithQuality回调。 -
stopLastmileDetect:停止网络质量探测。
- (int)stopLastmileDetect;
返回说明
0表示成功,非0表示失败。
-
startRecord:开始录制 。
参数说明- (BOOL)startRecord:(AliRtcRecordType)recordType recordFormat:(AliRtcRecordFormat)recordFormat filePath:(NSString*)filePath audioConfig:(AliRtcRecordAudioConfig*)audioConfig videoConfig:(AliRtcRecordVideoConfig*)videoConfig isFragment:(BOOL)isFragment
名称 类型 描述 recordType AliRtcRecordType 录制类型。 recordFormat AliRtcRecordFormat 录制文件格式。 filePath NSString* 文件路径。 audioConfig AliRtcRecordAudioConfig* 录制音频设置。 videoConfig AliRtcRecordVideoConfig* 录制视频设置(仅Mac可用)。 isFragment BOOL 是否支持mp4内部分段,只在录制mp4时有效(仅Mac可用)。 返回说明
YES表示成功,No表示失败。
-
stopRecord:停止录制。
- (void)stopRecord;
-
getCurrentClientRole(仅iOS可用):获取当前用户角色。
- (AliRtcClientRole)getCurrentClientRole;
返回说明
返回当前用户角色。
-
postFeedbackWithUid:SDK问题反馈。
参数说明- (void)postFeedbackWithUid:(NSString *_Nullable)uid channleId:(NSString *_Nullable)channelId description:(NSString *_Nonnull)description type:(AliRtcFeedbackType)type timeStamp:(NSTimeInterval)timeStamp
名称 类型 描述 uid NSString * 当前uid(允许为nil)。 channelId NSString * 当前channel id(允许为nil)。 description NSString * 问题描述(支持中英文,Nonnull)。 type AliRtcFeedbackType 问题类型(见AliRtcFeedbackType注释)。 timeStamp NSTimeInterval 问题发生的时间戳(Unix时间戳,大致时间,无需特别精确,可以为0)。 - sendMediaExtensionMsg:发送媒体扩展信息。
参数说明- (int)sendMediaExtensionMsg:(NSData *)data repeatCount:(int)repeatCount;
名称 类型 描述 data NSData 自定义消息数据,目前长度限制为8Byte。 repeatCount int 消息发送次数。 返回说明- 0:发送成功。
- -1:当前未在推流状态,不能发送自定义消息。
- -2:参数设置错误,自定义消息长度超过8Byte,或者repeatCount<=0。
- -3:发送过于频繁,建议降低发送频率。
重要 使用音视频数据通道,将自定义消息发送给房间内其他用户,需要满足两个前提:- 己方正常入会,并且在推流中。
- 房间内的其他用户需要订阅己方音视频流,发送成功之后可在onMediaExtensionMsgReceived回调中接收结果。
- getClientRole(仅Mac可用):获取用户角色。
- (AliRtcClientRole)getClientRole;
返回说明
返回当前用户角色。
- refreshAuthInfo:刷新令牌。
参数说明- (int)refreshAuthInfo:(AliRtcAuthInfo *)info;
名称 类型 描述 info AliRtcAuthInfo * 新的鉴权信息。 返回说明
0表示刷新令牌成功,其它表示刷新令牌失败。