通过阅读本文,您可以了解iOS SDK和Mac SDK回调及监听的接口详情。
目录
API | 描述 | 支持的最低版本 |
---|
接口详情
- onJoinChannelResult:加入频道结果回调(该回调等同于调用joinChannel接口的block操作,即处理加入频道之后的事件,选择其一即可)。
- (void)onJoinChannelResult:(int)result channel:(NSString *_Nonnull)channel elapsed:(int) elapsed;
参数 类型 描述 参数 类型 描述 result int 加入频道结果,成功返回0,失败返回错误码。 channel NSString *_Nonnull 加入的频道ID。 elapsed int 加入频道耗时。 - onLeaveChannelResult:离开频道结果回调。调用leaveChannel接口后返回,如果调用leaveChannel后直接调用destroy,将不会收到此回调。
- (void)onLeaveChannelResult:(int)result stats:(AliRtcStats)stats;
参数 类型 描述 参数 类型 描述 result int 离开频道结果,成功返回0,失败返回错误码。 stats AliRtcStats 本次频道内会话的数据统计汇总。 - onAudioPublishStateChanged:音频推流变更回调。
- (void)onAudioPublishStateChanged:(AliRtcPublishState)oldState newState:(AliRtcPublishState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 oldState AliRtcPublishState 之前的推流状态。 newState AliRtcPublishState 当前的推流状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onVideoPublishStateChanged:视频推流变更回调。
- (void)onVideoPublishStateChanged:(AliRtcPublishState)oldState newState:(AliRtcPublishState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 oldState AliRtcPublishState 之前的推流状态。 newState AliRtcPublishState 当前的推流状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onDualStreamPublishStateChanged:次要流推流变更回调。
- (void)onDualStreamPublishStateChanged:(AliRtcPublishState)oldState newState:(AliRtcPublishState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 oldState AliRtcPublishState 之前的推流状态。 newState AliRtcPublishState 当前的推流状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onScreenSharePublishStateChanged:屏幕分享推流变更回调。
- (void)onScreenSharePublishStateChanged:(AliRtcPublishState)oldState newState:(AliRtcPublishState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 oldState AliRtcPublishState 之前的推流状态。 newState AliRtcPublishState 当前的推流状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onRemoteUserOnLineNotify:远端用户上线时的回调。
- (void)onRemoteUserOnLineNotify:(NSString *_Nonnull)uid elapsed:(int)elapsed;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 用户ID从App server分配的唯一标示符。 elapsed int 用户加入频道时的耗时。 - onRemoteUserOffLineNotify:远端用户下线时的回调。
- (void)onRemoteUserOffLineNotify:(NSString *_Nonnull)uid offlineReason:(AliRtcUserOfflineReason)reason;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 用户ID从App server分配的唯一标示符。 reason AliRtcUserOfflineReason 用户离线的原因。 - onRemoteTrackAvailableNotify:远端用户的流发生变化时回调。
- (void)onRemoteTrackAvailableNotify:(NSString *_Nonnull)uid audioTrack:(AliRtcAudioTrack)audioTrack videoTrack:(AliRtcVideoTrack)videoTrack;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 用户ID从App server分配的唯一标示符。 audioTrack AliRtcAudioTrack 远端用户发生变化后的音频流。 videoTrack AliRtcVideoTrack 远端用户发生变化后的视频流。 - onAudioSubscribeStateChanged:音频订阅情况变更回调。
- (void)onAudioSubscribeStateChanged:(NSString *_Nonnull)uid oldState:(AliRtcSubscribeState)oldState newState:(AliRtcSubscribeState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 订阅情况变更的用户ID。 oldState AliRtcSubscribeState 之前的订阅状态。 newState AliRtcSubscribeState 当前的订阅状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onVideoSubscribeStateChanged:相机流订阅情况变更回调。
- (void)onVideoSubscribeStateChanged:(NSString *_Nonnull)uid oldState:(AliRtcSubscribeState)oldState newState:(AliRtcSubscribeState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 订阅情况变更的用户ID。 oldState AliRtcSubscribeState 之前的订阅状态。 newState AliRtcSubscribeState 当前的订阅状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onScreenShareSubscribeStateChanged:屏幕分享流订阅情况变更回调。
- (void)onScreenShareSubscribeStateChanged:(NSString *_Nonnull)uid oldState:(AliRtcSubscribeState)oldState newState:(AliRtcSubscribeState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 订阅情况变更的用户ID。 oldState AliRtcSubscribeState 之前的订阅状态。 newState AliRtcSubscribeState 当前的订阅状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onSubscribeStreamTypeChanged:大小流订阅情况变更回调。
- (void)onSubscribeStreamTypeChanged:(NSString *_Nonnull)uid oldStreamType:(AliRtcVideoStreamType)oldStreamType newStreamType:(AliRtcVideoStreamType)newStreamType elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 订阅情况变更的用户ID。 oldState AliRtcVideoStreamType 之前的订阅状态。 newState AliRtcVideoStreamType 当前的订阅状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 - onNetworkQualityChanged:网络质量变化时回调。
- (void)onNetworkQualityChanged:(NSString *_Nonnull)uidupNetworkQuality:(AliRtcNetworkQuality)upQualitydownNetworkQuality:(AliRtcNetworkQuality)downQuality;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 网络质量发生变化的用户ID,用户ID为空表示本地,其他表示远端。 upQuality AliRtcNetworkQuality 上行网络质量。 downQuality AliRtcNetworkQuality 下行网络质量。 - onConnectionStatusChange:网络连接状态改变的回调。
- (void)onConnectionStatusChange:(AliRtcConnectionStatus)status reason:(AliRtcConnectionStatusChangeReason)reason;
参数 类型 描述 参数 类型 描述 status AliRtcConnectionStatus 当前状态值。 reason AliRtcConnectionStatusChangeReason 引起状态变化的具体原因。 - onOccurWarning:如果engine出现warning,通过这个回调通知App。
- (void)onOccurWarning:(int)warn message:(NSString *_Nonnull)message;
参数 类型 描述 参数 类型 描述 warn int 警告编码。 message NSString *_Nonnull 警告描述。 - onOccurError:如果engine出现error,通过这个回调通知App。
- (void)onOccurError:(int)errormessage:(NSString *_Nonnull)message;
参数 类型 描述 参数 类型 描述 error int 错误码。 message NSString *_Nonnull 错误描述。 - onFirstAudioPacketSentWithTimecost:音频首包数据发送成功。
- (void)onFirstAudioPacketSentWithTimecost:(int)timeCost;
参数 类型 描述 参数 类型 描述 timeCost int 发送耗时。 - onFirstVideoPacketSentWithVideoTrack:视频首包数据发送成功。
- (void)onFirstVideoPacketSentWithVideoTrack:(AliRtcVideoTrack)videoTracktimeCost:(int)timeCost;
参数 类型 描述 参数 类型 描述 videoTrack AliRtcVideoTrack 发送成功的视频流类型。 timeCost int 发送耗时。 - onFirstAudioPacketReceivedWithUid:音频首包数据接收成功。
- (void)onFirstAudioPacketReceivedWithUid:(NSString *_Nonnull)uidtimeCost:(int)timeCost;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 从App server分配的唯一标示符。 timeCost int 接受耗时。 - onFirstVideoPacketReceivedWithUid:视频首包数据接收成功。
- (void)onFirstVideoPacketReceivedWithUid:(NSString *_Nonnull)uidvideoTrack:(AliRtcVideoTrack)videoTracktimeCost:(int)timeCost;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 从App server分配的唯一标示符。 videoTrack AliRtcVideoTrack 接收成功的视频流类型。 timeCost int 接受耗时。 - onFirstRemoteAudioDecodedWithUid:已解码远端音频首帧回调。
- (void)onFirstRemoteAudioDecodedWithUid:(NSString *_Nonnull)uid elapsed:(int)elapsed;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 从App server分配的唯一标示符。 elapsed int 从本地用户加入频道直至该回调触发的延迟,单位:毫秒。 - onFirstRemoteVideoFrameDrawn:远端用户的第一帧视频帧显示时的回调。
- (void)onFirstRemoteVideoFrameDrawn:(NSString *_Nonnull)uid videoTrack:(AliRtcVideoTrack)videoTrack width:(int)width height:(int)height elapsed:(int)elapsed;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 从App server分配的唯一标示符。 videoTrack AliRtcVideoTrack 屏幕流或者相机流。 width int 视频宽度。 height int 视频高度。 elapsed int 总耗时。 - onFirstLocalVideoFrameDrawn:预览开始显示第一帧视频帧时的回调。
- (void)onFirstLocalVideoFrameDrawn:(int)width height:(int)height elapsed:(int)elapsed;
参数 类型 描述 参数 类型 描述 width int 视频宽度。 height int 视频高度。 elapsed int 总耗时。 - onAudioSampleCallback:订阅的音频数据回调。
- (void)onAudioSampleCallback:(AliRtcAudioSource)audioSource audioSample:(AliRtcAudioDataSample *_Nonnull)audioSample;
参数 类型 描述 参数 类型 描述 audioSource AliRtcAudioSource 音频裸数据源类型。 audioSample AliRtcAudioDataSample *_Nonnull 音频裸数据。 - onPlaybackAudioFrameBeforeMixing:混音前的指定用户的音频数据的回调。
- (void)onPlaybackAudioFrameBeforeMixing:(NSString *_Nonnull)uid audioSample:(AliRtcAudioDataSample *_Nonnull)audioSample;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 混音前的指定用户ID。 audioSample AliRtcAudioDataSample *_Nonnull 音频裸数据。 - onAudioVolumeCallback:订阅的音频音量、语音状态和UID的回调。
- (void)onAudioVolumeCallback:(NSArray <AliRtcUserVolumeInfo *> *_Nullable)array totalVolume:(int)totalVolume;
参数 类型 描述 参数 类型 描述 array NSArray <AliRtcUserVolumeInfo *> *_Nullable 表示回调用户音量信息数组,包含用户UID、语音状态以及音量,UID为0表示本地说话人。 totalVolume int 混音后的总音量,范围[0,255]。在本地用户的回调中,totalVolume为本地用户混音后的音量;在远端用户的回调中,totalVolume为所有说话者混音后的总音量。 - onActiveSpeaker:当前正在说话的人的回调。
- (void)onActiveSpeaker:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 当前正在说话的人的ID。 - onGetVideoFormatPreference:视频数据输出格式的回调。
- (AliRtcVideoFormat)onGetVideoFormatPreference;
返回期望输出的视频数据格式,默认返回AliRtcYUV420。需要在注册registerVideoSampleObserver后触发回调。
- onCaptureVideoSample:订阅的本地采集视频数据回调。
- (BOOL)onCaptureVideoSample:(AliRtcVideoSource)videoSource videoSample:(AliRtcVideoDataSample *_Nonnull)videoSample;
返回说明参数 类型 描述 参数 类型 描述 videoSource AliRtcVideoSource 视频裸数据源类型。 videoSample AliRtcVideoDataSample *_Nonnull 视频裸数据。 返回true表示需要写回SDK(只对I420和CVPixelBuffer有效),false表示不需要写回SDK。
- onPreEncodeVideoSample:订阅的本地编码前视频数据回调。
- (BOOL)onPreEncodeVideoSample:(AliRtcVideoSource)videoSource videoSample:(AliRtcVideoDataSample *_Nonnull)videoSample;
返回说明参数 类型 描述 参数 类型 描述 videoSource AliRtcVideoSource 视频裸数据源类型。 videoSample AliRtcVideoDataSample *_Nonnull 视频裸数据。 返回true表示需要写回SDK(只对I420和CVPixelBuffer有效),false表示不需要写回SDK。
- onRemoteVideoSample:订阅的远端视频数据回调。
- (BOOL)onRemoteVideoSample:(NSString *_Nonnull)uid videoSource:(AliRtcVideoSource)videoSource videoSample:(AliRtcVideoDataSample *_Nonnull)videoSample;
返回说明参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 订阅的远端用户的ID。 videoSource AliRtcVideoSource 视频裸数据源类型。 videoSample AliRtcVideoDataSample *_Nonnull 视频裸数据。 返回true表示需要写回SDK(只对I420和CVPixelBuffer有效),false表示不需要写回SDK。
- onUserAudioMuted:用户muteAudio通知。
- (void)onUserAudioMuted:(NSString *_Nonnull)uid audioMuted:(BOOL)isMute;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 执行muteAudio的用户ID。 isMute BOOL YES表示静音,NO表示未静音。 - onUserVideoMuted:用户muteVideo通知。
- (void)onUserVideoMuted:(NSString *_Nonnull)uid videoMuted:(BOOL)isMute;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 执行muteVideo的用户ID。 isMute BOOL YES表示推流黑帧,NO表示正常推流。 - onUserVideoEnabled:禁用或重新启用本地视频采集的通知。
- (void)onUserVideoEnabled:(NSString *_Nullable)uid videoEnabled:(BOOL)isEnable;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 执行EnableLocalVideo的用户ID。 isMute BOOL YES表示打开相机流采集,NO表示关闭相机流采集。 - onUserAudioInterruptedBegin:用户audio被中断通知(一般用户打电话等音频被抢占场景)。
- (void)onUserAudioInterruptedBegin:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull audio被中断的用户ID。 - onUserAudioInterruptedEnded:用户audio中断结束通知(对应onUserAudioInterruptedBegin)。
- (void)onUserAudioInterruptedEnded:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull audio中断结束的用户ID。 - onUserWillResignActive:远端用户应用退到后台的回调。
- (void)onUserWillResignActive:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 应用退到后台的用户ID。 - onUserWillBecomeActive:远端用户应用返回前台的回调。
- (void)onUserWillBecomeActive:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 应用返回前台的用户ID。 - onTextureCreate:订阅本地视频Texture创建回调(仅iOS)。
- (void)onTextureCreate:(void *_Nullable)context;
参数 类型 描述 参数 类型 描述 context void *_Nullable Texture上下文。 - onTextureUpdate:订阅本地视频Texture绘制回调(仅iOS)。
- (int)onTextureUpdate:(int)textureId width:(int)width height:(int)height videoSample:(AliRtcVideoDataSample *_Nonnull)videoSample;
返回说明参数 类型 描述 参数 类型 描述 textureId int 视频纹理ID。 width int 宽度。 height int 高度。 videoSample AliRtcVideoDataSample *_Nonnull 视频裸数据。 返回视频纹理ID。
- onTextureDestory:订阅本地视频Texture销毁回调(仅iOS)。
- (void)onTextureDestory;
- onAudioPlayingStateChanged:本地伴奏播放状态回调。
- (void)onAudioPlayingStateChanged:(AliRtcAudioPlayingStateCode)playState errorCode:(AliRtcAudioPlayingErrorCode)errorCode;
参数 类型 描述 参数 类型 描述 playState AliRtcAudioPlayingStateCode 当前播放状态。 errorCode AliRtcAudioPlayingErrorCode 播放错误码。 - onRemoteAudioAccompanyStarted:远端用户伴奏播放开始回调。
- (void)onRemoteAudioAccompanyStarted:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 伴奏播放开始的远端用户ID。 - onRemoteAudioAccompanyFinished:远端用户伴奏播放结束回调。
- (void)onRemoteAudioAccompanyFinished:(NSString *_Nonnull)uid;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 伴奏播放结束的远端用户ID。 - onAudioEffectFinished:本地音效播放结束回调。
- (void)onAudioEffectFinished:(int)soundId;
参数 类型 描述 参数 类型 描述 soundId int 播放完成的音效的ID。 - onMediaRecordEvent:文件录制回调事件。
- (void)onMediaRecordEvent:(int)event filePath:(NSString *_Nullable)filePath;
参数 类型 描述 参数 类型 描述 event int 录制事件,取值: - 0:录制开始。
- 1:录制结束。
- 2:打开文件失败。
- 3:写文件失败。
filePath NSString *_Nullable 录制文件路径。 - onRtcLocalVideoStats:本地视频统计信息(2s触发一次)。
- (void)onRtcLocalVideoStats:(AliRtcLocalVideoStats *_Nonnull)localVideoStats;
参数 类型 描述 参数 类型 描述 localVideoStats AliRtcLocalVideoStats *_Nonnull 本地视频统计信息。 - onRtcRemoteVideoStats:远端视频统计信息(2s触发一次)。
- (void)onRtcRemoteVideoStats:(AliRtcRemoteVideoStats *_Nonnull)remoteVideoStats;
参数 类型 描述 参数 类型 描述 remoteVideoStats AliRtcRemoteVideoStats *_Nonnull 远端视频统计信息。 - onRtcLocalAudioStats:本地音频统计信息(2s触发一次)。
- (void)onRtcLocalAudioStats:(AliRtcLocalAudioStats *_Nonnull)localAudioStats;
参数 类型 描述 参数 类型 描述 localAudioStats AliRtcLocalAudioStats *_Nonnull 本地音频统计信息(2s触发一次)。 - onRtcRemoteAudioStats:远端音频统计信息(2s触发一次)。
- (void)onRtcRemoteAudioStats:(AliRtcRemoteAudioStats *_Nonnull)remoteAudioStats;
参数 类型 描述 参数 类型 描述 remoteAudioStats AliRtcRemoteAudioStats *_Nonnull 远端音频统计信息。 - onMediaExtensionMsgReceived:收到媒体扩展信息回调。
- (void)onMediaExtensionMsgReceived:(NSString *_Nonnull)uid message:(NSData *_Nonnull)data;
参数 类型 描述 参数 类型 描述 uid NSString *_Nonnull 远端用户UID。 data NSData *_Nonnull 媒体扩展信息。 - onDownlinkMessageNotify:下行消息通道(接收消息)(仅iOS)。
- (void)onDownlinkMessageNotify:(AliRtcMessage *_Nonnull)messageInfo;
参数 类型 描述 参数 类型 描述 messageInfo AliRtcMessage *_Nonnull 消息信息。 - onUplinkMessageResponse:发送上行消息后返回结果。
- (void)onUplinkMessageResponse:(AliRtcMessageResponse *_Nonnull)resultInfo;
参数 类型 描述 参数 类型 描述 resultInfo AliRtcMessageResponse *_Nonnull 消息信息。 - onAudioRouteChanged:语音路由发生变化回调(仅iOS)。
- (void)onAudioRouteChanged:(AliRtcAudioRouteType)routing;
参数 类型 描述 参数 类型 描述 routing AliRtcAudioRouteType 当前使用的语音路由。 - onSnapshotComplete:截图回调。
- (void)onSnapshotComplete:(NSString*_Nullable)uid videoTrack:(AliRtcVideoTrack)videoTrack image:(UIImage* _Nullable)image success:(BOOL)success;
参数 类型 描述 参数 类型 描述 uid NSString*_Nullable 远端用户UID。 videoTrack AliRtcVideoTrack 截图的视频流类型。 image UIImage* _Nullable 截图数据本身的图片。 success BOOL 截图是否成功。 - onPublishLiveStreamStateChanged:旁路推流状态改变回调。
- (void)onPublishLiveStreamStateChanged:(NSString *_Nonnull)streamURL state:(AliRtcLiveTranscodingState)state errCode:(AliRtcTrascodingLiveStreamErrorCode)errCode;
参数 类型 描述 参数 类型 描述 streamURL NSString * 流地址。 state AliRtcLiveTranscodingState 状态。 errCode AliRtcTrascodingLiveStreamErrorCode 错误码。 - onPublishTaskStateChanged:旁路任务状态改变回调。
- (void)onPublishTaskStateChanged:(NSString *_Nonnull)streamURL state:(AliRtcTrascodingLiveTaskStatus)state;
参数 类型 描述 参数 类型 描述 streamURL NSString * 流地址。 state AliRtcTrascodingLiveTaskStatus 状态。 - onChannelRelayStateChanged:跨频道转推状态变化。
- (void)onChannelRelayStateChanged:(int)state code:(int)code message:(NSString *_Nullable)message;
参数 类型 描述 参数 类型 描述 state int state当前状态,请详情参见AliRtcChannelRelayState。 code int 错误码。 message NSString *_Nullable 错误信息。 - onChannelRelayEvent:跨频道转推事件回调。
- (void)onChannelRelayEvent:(int)event;
参数 类型 描述 参数 类型 描述 event int 事件,详情请参见AliRtcChannelRelayState。 - onGetVideoObservedFramePosition:视频数据输出位置。
- (NSInteger)onGetVideoObservedFramePosition;
返回期望的视频输出位置,详情请参见AliRtcVideoObserPosition。
在注册registerVideoSampleObserver后触发回调,应用可返回期望输出的视频内容,对应数据将分别从onCaptureVideoSample、onPreEncodeVideoSample、onRemoteVideoSample获取,默认返回AliRtcVideoObserPosition全部类型数据,即AliRtcPositionPostCapture、AliRtcPositionPreRender、AliRtcPositionPreEncoder。 - onUpdateRoleNotifyWithOldRole:用户角色发生改变时回调(调用setClientRole方法切换角色成功时触发此回调)。
- (void)onUpdateRoleNotifyWithOldRole:(AliRtcClientRole)oldRole newRole:(AliRtcClientRole)newRole;
参数 类型 描述 参数 类型 描述 oldRole AliRtcClientRole 变化前角色类型。 newRole AliRtcClientRole 变化后角色类型。 - onConnectionLost:网络断开回调。Mac环境从1.15版本开始支持该回调。
- (void)onConnectionLost;
- onTryToReconnect:尝试网络重连回调。Mac环境从1.15版本开始支持该回调。
- (void)onTryToReconnect;
- onConnectionRecovery:网络重连成功回调。Mac环境从1.15版本开始支持该回调。
- (void)onConnectionRecovery;
- onBye:被服务器踢出或者频道关闭时回调。
- (void)onBye:(int)code;
参数 类型 描述 参数 类型 描述 code int 消息类型。取值: - 1:被服务器踢出。
- 2:频道关闭。
- 3:同一个用户ID在其他端登录,被服务器踢出。
- onPerformanceLow:当前设备性能不足回调。
- (void)onPerformanceLow;
- onPerformanceRecovery:当前设备性能恢复回调。
- (void)onPerformanceRecovery;
- onLastmileDetectResultWithQuality:网络质量探测回调。
- (void)onLastmileDetectResultWithQuality:(AliRtcNetworkQuality)networkQuality;
参数 类型 描述 参数 类型 描述 networkQuality AliRtcNetworkQuality 网络质量。 - onRtcStats:实时数据回调(2s触发一次)。
- (void)onRtcStats:(AliRtcStats)stats;
参数 类型 描述 参数 类型 描述 stats AliRtcStats 数据回调。 - onScreenSharePublishStateChangedWithInfo:屏幕分享推流变更回调(仅Mac)。
- (void)onScreenSharePublishStateChangedWithInfo:(AliRtcPublishState)oldState newState:(AliRtcPublishState)newState elapseSinceLastState:(NSInteger)elapseSinceLastState channel:(NSString *_Nonnull)channel info:(AliRtcScreenShareInfo* _Nonnull)screenShareInfo;
参数 类型 描述 参数 类型 描述 oldState AliRtcPublishState 之前的推流状态。 newState AliRtcPublishState 当前的推流状态。 elapseSinceLastState NSInteger 状态变更时间间隔,单位:毫秒。 channel NSString *_Nonnull 当前频道ID。 screenShareInfo AliRtcScreenShareInfo* _Nonnull 本次屏幕共享推流配置信息。 - onAudioDeviceRecordLevel:音频采集设备测试回调(仅Mac)。
- (void)onAudioDeviceRecordLevel:(int)level;
参数 类型 描述 参数 类型 描述 level int 音频采集设备音量值。 - onAudioDevicePlayoutLevel:音频播放设备测试回调(仅Mac)。
- (void)onAudioDevicePlayoutLevel:(int) level;
参数 类型 描述 参数 类型 描述 level int 音频播放设备音量值。 - onAudioDevicePlayoutEnd:音频播放设备测试结束(音频文件播放完毕)(仅Mac)。
- (void)onAudioDevicePlayoutEnd;
- onAudioDeviceStateChanged:音频设备状态变更(仅Mac)。
- (void)onAudioDeviceStateChanged:(AliRtcDeviceInfo *_Nonnull)deviceInfo deviceType:(AliRtcExternalDeviceType)deviceType deviceState:(AliRtcExternalDeviceState)deviceState;
参数 类型 描述 参数 类型 描述 deviceInfo AliRtcDeviceInfo *_Nonnull 外接设备信息。 deviceType AliRtcExternalDeviceType 外接设备类型。 deviceState AliRtcExternalDeviceState 外接设备状态。 - onGetIfUserFetchObserverData:视频输出数据是否由用户来获取。
- (BOOL)onGetIfUserFetchObserverData;
YES表示视频输出数据由用户来获取,NO表示视频输出数据由SDK回调获取,默认值为NO。
- onGetVideoAlignment:视频数据输出对齐方式。
- (AliRtcVideoObserAlignment)onGetVideoAlignment;
返回裸数据回调数据对齐类型,默认值为AliRtcAlignmentDefault。
- onGetObserverDataMirrorApplied:视频输出数据是否需要镜像。
- (BOOL)onGetObserverDataMirrorApplied;
YES表示视频输出数据需要镜像,NO表示视频输出数据不需要镜像,默认值为NO。
- onGetSmoothRenderingEnabled:拉流视频数据是否平滑输出。
- (BOOL)onGetSmoothRenderingEnabled;
YES表示拉流视频数据平滑输出,NO表示拉流视频数据直接输出,默认值为NO。
当且仅当onGetIfUserFetchObserverData返回NO时,拉流视频数据平滑输出才生效。 - onRemoteVideoChanged:远端视频流改变回调。
- (void)onRemoteVideoChanged:(NSString *_Nonnull)uid trackType:(AliRtcVideoTrack)trackType state:(AliRtcVideoState)state reason:(AliRtcVideoReason)reason;
参数 类型 描述 参数 类型 描述 uId NSString * 用户ID。 trackType AliRtcVideoTrack 视频流类型。 state AliRtcVideoState 视频流状态变化。 reason AliRtcVideoReason 触发视频流状态变化的原因。