BRTCDelegate
BRTCAudioCallbackDelegate
BRTCLogDelegate
错误回调
- (void)onError:(int)errCode errMsg:(nullable NSString *)errMsg extInfo:(nullable NSDictionary*)extInfo;
参数
详情
SDK 不可恢复的错误,一定要监听,并分情况给用户适当的界面提示。
加入房间成功与否的回调
- (void)onEnterRoom:(NSInteger)result;
离房回调
- (void)onExitRoom:(NSInteger)reason;
切换角色的事件回调
- (void)onSwitchRole:(BRTCLiteAVError)errCode errMsg:(nullable NSString *)errMsg;
有用户加入当前房间
- (void)onRemoteUserEnterRoom:(NSString *)userId;
有用户离开当前房间
- (void)onRemoteUserLeaveRoom:(NSString *)userId reason:(NSInteger)reason;
远端用户是否存在可播放的主路画面(一般用于摄像头)
- (void)onUserVideoAvailable:(NSString *)userId available:(BOOL)available;
某远端用户发布/取消了辅路视频画面
- (void)onUserSubStreamAvailable:(NSString *)userId available:(BOOL)available;
“辅路画面”一般被用于承载屏幕分享的画面。当您收到 onUserSubStreamAvailable(userId, YES) 通知时,表示该路画面已经有可播放的视频帧到达。 此时,您需要调用 startRemoteSubStreamView 接口订阅该用户的远程画面,订阅成功后,您会继续收到该用户的首帧画面渲染回调 onFirstVideoFrame(userid)。
远端用户是否存在可播放的音频数据
- (void)onUserAudioAvailable:(NSString *)userId available:(BOOL)available;
当您收到 onUserAudioAvailable(userId, YES) 通知时,表示该用户发布了自己的声音,此时 SDK 的表现为
开始渲染本地或远程用户的首帧画面
- (void)onFirstVideoFrame:(NSString *)userId streamType:(BRTCVideoStreamType)streamType width:(int)width height:(int)height;
开始播放远程用户的首帧音频(本地声音暂不通知)
- (void)onFirstAudioFrame:(NSString *)userId;
首帧本地视频数据已经被送出
- (void)onSendFirstLocalVideoFrame:(BRTCVideoStreamType)streamType;
首帧本地音频数据已经被送出
- (void)onSendFirstLocalAudioFrame;
技术指标统计回调
- (void)onStatistics:(BRTCStatistics *_Nonnull)statistics;
详情 该统计回调每间隔2秒抛出一次,用于通知 SDK 内部音频、视频以及网络相关的专业技术指标。
麦克风准备就绪
- (void)onMicDidReady;
当您调用 startLocalAudio 之后,SDK 会尝试启动麦克风,如果麦克风能够启动成功就会抛出本事件。 如果启动失败,大概率是因为当前应用没有获得访问麦克风的权限,或者麦克风当前正在被其他程序独占使用中。
用于提示音量大小的回调,包括每个 userId 的音量和远端总音量
- (void)onUserVoiceVolume:(NSArray<BRTCVolumeInfo *> *)userVolumes totalVolume:(NSInteger)totalVolume;
SDK 跟服务器的连接断开
- (void)onConnectionLost;
SDK 会在跟云端的连接断开时抛出此事件回调,导致断开的原因大多是网络不可用或者网络切换所致,比如用户在通话中走进电梯时就可能会遇到此事件。
在抛出此事件之后,SDK 会努力跟云端重新建立连接,重连过程中会抛出 onTryToReconnect,连接恢复后会抛出 onConnectionRecovery 。
SDK 尝试重新连接到服务器
- (void)onTryToReconnect;
SDK 会在跟云端的连接断开时抛出 onConnectionLost,之后会努力跟云端重新建立连接并抛出本事件,连接恢复后会抛出。
SDK 跟服务器的连接恢复
- (void)onConnectionRecovery;
SDK 会在跟云端的连接断开时抛出 onConnectionLost,之后会努力跟云端重新建立连接并抛出 onTryToReconnect,连接恢复后会抛出本事件回调。
回调每个媒体用户的连接质量评价级别
- (void)onNetworkQuality:(NSArray<BRTCCollectionQuality *> *)qualityArray;
此回调从 3.8.0 版本开始提供
每 2 秒回调一次
qualityArray 媒体用户的连接质量评价信息,包含用户ID和级别。
收到自定义消息回调
- (void)onRecvCustomCmdMsgUserId:(NSString *)userId cmdID:(NSInteger)cmdID seq:(UInt32)seq message:(NSData *)message;
自定义消息丢失回调
- (void)onMissCustomCmdMsgUserId:(NSString *)userId cmdID:(NSInteger)cmdID errCode:(NSInteger)errCode missed:(NSInteger)missed;
收到 SEI 消息的回调
- (void)onRecvSEIMsg:(NSString *)userId message:(NSData *)message;
当屏幕分享开始时,SDK 会通过此回调通知
- (void)onScreenCaptureStarted;
当屏幕分享暂停时,SDK 会通过此回调通知
- (void)onScreenCapturePaused:(int)reason;
当屏幕分享恢复时,SDK 会通过此回调通知
- (void)onScreenCaptureResumed:(int)reason;
当屏幕分享停止时,SDK 会通过此回调通知
- (void)onScreenCaptureStoped:(int)reason;
本地采集后的 PCM 数据回调
- (void)onAudioCapturedRawAudioFrame:(BRTCCustomAudioFrame *)frame;
本地采集并经过音频模块前处理(ANS、AEC、AGC)后的 PCM 数据回调
- (void)onAudioLocalProcessedAudioFrame:(BRTCCustomAudioFrame *)frame;
有日志打印时的回调
- (void)onLog:(nullable NSString*)log LogLevel:(BRTCLogLevel)level WhichModule:(nullable NSString*)module;
iOS
BRTCDelegate
BRTCAudioCallbackDelegate
BRTCLogDelegate
错误回调
参数
详情
SDK 不可恢复的错误,一定要监听,并分情况给用户适当的界面提示。
加入房间成功与否的回调
参数
详情
离房回调
参数
0:主动调用 exitRoom 退房
1:被服务器踢出当前房间
2:当前房间整个被解散
详情
切换角色的事件回调
参数
详情
有用户加入当前房间
参数
详情
有用户离开当前房间
参数
远端用户是否存在可播放的主路画面(一般用于摄像头)
参数
详情
某远端用户发布/取消了辅路视频画面
参数
详情
“辅路画面”一般被用于承载屏幕分享的画面。当您收到 onUserSubStreamAvailable(userId, YES) 通知时,表示该路画面已经有可播放的视频帧到达。 此时,您需要调用 startRemoteSubStreamView 接口订阅该用户的远程画面,订阅成功后,您会继续收到该用户的首帧画面渲染回调 onFirstVideoFrame(userid)。
远端用户是否存在可播放的音频数据
参数
详情
当您收到 onUserAudioAvailable(userId, YES) 通知时,表示该用户发布了自己的声音,此时 SDK 的表现为
开始渲染本地或远程用户的首帧画面
参数
详情
开始播放远程用户的首帧音频(本地声音暂不通知)
参数
首帧本地视频数据已经被送出
参数
详情
首帧本地音频数据已经被送出
详情
技术指标统计回调
参数
详情 该统计回调每间隔2秒抛出一次,用于通知 SDK 内部音频、视频以及网络相关的专业技术指标。
麦克风准备就绪
详情
当您调用 startLocalAudio 之后,SDK 会尝试启动麦克风,如果麦克风能够启动成功就会抛出本事件。 如果启动失败,大概率是因为当前应用没有获得访问麦克风的权限,或者麦克风当前正在被其他程序独占使用中。
用于提示音量大小的回调,包括每个 userId 的音量和远端总音量
参数
详情
SDK 跟服务器的连接断开
详情
SDK 会在跟云端的连接断开时抛出此事件回调,导致断开的原因大多是网络不可用或者网络切换所致,比如用户在通话中走进电梯时就可能会遇到此事件。
在抛出此事件之后,SDK 会努力跟云端重新建立连接,重连过程中会抛出 onTryToReconnect,连接恢复后会抛出 onConnectionRecovery 。
SDK 尝试重新连接到服务器
详情
SDK 会在跟云端的连接断开时抛出 onConnectionLost,之后会努力跟云端重新建立连接并抛出本事件,连接恢复后会抛出。
SDK 跟服务器的连接恢复
详情
SDK 会在跟云端的连接断开时抛出 onConnectionLost,之后会努力跟云端重新建立连接并抛出 onTryToReconnect,连接恢复后会抛出本事件回调。
回调每个媒体用户的连接质量评价级别
参数
详情
此回调从 3.8.0 版本开始提供
每 2 秒回调一次
qualityArray 媒体用户的连接质量评价信息,包含用户ID和级别。
收到自定义消息回调
参数
详情
自定义消息丢失回调
参数
详情
收到 SEI 消息的回调
参数
详情
当屏幕分享开始时,SDK 会通过此回调通知
当屏幕分享暂停时,SDK 会通过此回调通知
参数
当屏幕分享恢复时,SDK 会通过此回调通知
参数
当屏幕分享停止时,SDK 会通过此回调通知
参数
本地采集后的 PCM 数据回调
参数
本地采集并经过音频模块前处理(ANS、AEC、AGC)后的 PCM 数据回调
参数
有日志打印时的回调
参数