通过阅读本文,您可以了解iOS SDK和Mac SDK回调及监听的接口详情。
目录
DingRtcEngineDelegate:回调及监听
API |
描述 |
支持的最低版本 |
加入频道回调。 |
3.0 |
|
离开频道回调。 |
3.0 |
|
频道剩余时长回调。 |
3.0 |
|
音频推流变更回调。 |
3.0 |
|
视频推流变更回调。 |
3.0 |
|
屏幕分享推流变更回调。 |
3.0 |
|
远端用户(通信模式)加入频道回调。 |
3.0 |
|
远端用户(通信模式)离开频道回调。 |
3.0 |
|
远端用户的音视频流发生变化回调。 |
3.0 |
|
音频流订阅情况变更回调。 |
3.0 |
|
相机流订阅情况变更回调。 |
3.0 |
|
屏幕分享流订阅情况变更回调。 |
3.0 |
|
相机流大小规格订阅情况变更回调。 |
3.0 |
|
网络质量变化时发出的消息。 |
3.0 |
|
网络连接状态改变的回调。 |
3.0 |
|
被服务器踢出/会议结束频道的消息。 |
3.0 |
|
如果engine出现warning,通过这个回调通知app。 |
3.0 |
|
如果engine出现error,通过这个回调通知app。 |
3.0 |
|
音频首包发送回调。 |
3.0 |
|
视频首包发送回调。 |
3.0 |
|
远端用户音频首包接收回调。 |
3.0 |
|
远端用户视频首包接收回调。 |
3.0 |
|
远端用户视频首帧接收回调。 |
3.0 |
|
远端用户的第一帧视频帧显示时触发这个消息。 |
3.0 |
|
预览开始显示第一帧视频帧时触发这个消息。 |
3.0 |
|
视频渲染接收到远端视频分辨率有变化时触发此回调。 |
3.2.1 |
|
视频渲染接收到本地视频分辨率有变化时触发此回调。 |
3.2.1 |
|
用户音量提示回调。 |
3.0 |
|
远端用户静音/取消静音回调。 |
3.0 |
|
远端用户暂停/恢复视频流发送的通知。 |
3.0 |
|
远端用户关闭相机流采集发送通知。 |
3.5 |
|
远端用户应用退到后台 |
3.5 |
|
远端用户应用返回前台 |
3.5 |
|
质量报告事件,相对onRtcLocalAudioStats,onRtcRemoteVideoStats更加简练,适合在UI上展示。 |
3.0 |
|
实时数据回调(2s触发一次)。 |
3.0 |
|
本地视频统计信息(2s触发一次)。 |
3.0 |
|
远端视频统计信息(2s触发一次)。 |
3.0 |
|
本地音频统计信息(2s触发一次)。 |
3.0 |
|
远端音频统计信息(2s触发一次)。 |
3.0 |
|
音频路由发生变化回调(仅适用于iOS系统)。 |
3.0 |
|
音频设备状态变更(仅适用于Mac系统)。 |
3.0 |
|
摄像头设备状态变更(仅适用于Mac系统)。 |
3.4.1 |
|
音频采集设备测试回调。 |
3.0 |
|
音频播放设备测试回调。 |
3.0 |
|
API方法已执行回调。 |
3.0 |
|
视频截图回调。 |
3.0 |
|
收到媒体扩展信息回调 |
3.4 |
|
伴奏混音回调。 |
3.4 |
|
返回当前频道内所有的分组列表。 |
3.4 |
|
当调用joinAudioGroup:usrData:}加入某个group,触发此回调。 |
3.4 |
|
当调用leaveAudioGroup:}离开某个group,触发此回调。 |
3.4 |
|
当调用dismissAudioGroup:}解散某个group,触发此回调。 |
3.4 |
|
当调用mixAudioToGroup:mix:}向分组或者大厅混流,触发此回调。 |
3.4 |
|
分组中成员变化,触发此回调。 |
3.4 |
|
大厅中的成员列表变化,触发此回调。 |
3.4 |
|
分组列表变化,触发此回调。 |
3.4 |
DingRtcAudioFrameDelegate:音频数据回调及监听
API |
描述 |
支持的最低版本 |
本地订阅音频数据回调。 |
3.0 |
|
本地采集音频数据回调。 |
3.0 |
|
经过3A处理后的数据回调。 |
3.0 |
|
本地推流音频数据回调。 |
3.0 |
详情
-
onJoinChannelResult: 加入频道回调。
void onJoinChannelResult (int result,[channel] NSString *_Nonnull channel,[userId] NSString *_Nonnull userId,[elapsed] int elapsed)
- 当应用调用 joinChannel 方法时,该回调表示成功/失败加入频道,并且返回频道加入的相关信息以及加入频道耗时。
- DingRtcErrJoinBadAppId :AppId不存在,请检查入会参数authinfo中appId是否正确。
- DingRtcErrJoinInvalidAppId :AppId已失效,请检查入会参数authinfo中appId是否正确。
- DingRtcErrJoinBadChannel :频道不存在,请检查入会参数authinfo中channelId是否正确。
- DingRtcErrJoinInvalidChannel :频道已失效,请检查入会参数authinfo中channelId是否正确。
- DingRtcErrJoinBadToken :token不存在,请检查入会参数authinfo生成算法是否与官网文档一致。
- DingRtcErrJoinTimeout :加入频道超时,请检查当前网络是否为弱网或限速。
- DingRtcErrJoinBadParam :参数错误,请检查入会参数authinfo生成是否存在非法字符,或与官网文档是否一致。
参数
类型
描述
result
int
0:成功。
非0:失败。
channel
加入频道名。
userId
用户ID。
elapsed
加入频道耗时。
重要此回调等同于joinChannel接口的block参数,二者择一处理即可。
-
onLeaveChannelResult: 离开频道回调。
void onLeaveChannelResult (int result,[stats] DingRtcStats *_Nonnull stats)
调用 leaveChannel 方法后,该回调表示成功/失败离开频道,回调将会返回离会的result和该频道的基本信息。
参数
类型
描述
result
int
离开频道结果,成功返回0,失败返回错误码。
stats
本次频道内会话的数据统计信息。
重要调用 DingRtcEngine 接口后返回,如果 DingRtcEngine 后直接调用 DingRtcEngine 将不会收到此回调。
-
onChannelRemainingTimeNotify: 频道剩余时长回调。
void onChannelRemainingTimeNotify (int remainingTimeInSec)
参数
类型
描述
remainingTimeInSec
int
频道剩余时长,单位秒。
-
onAudioPublishStateChanged: 音频推流变更回调。
void onAudioPublishStateChanged (DingRtcPublishState oldState,[newState] DingRtcPublishState newState,[elapseSinceLastState] NSInteger elapseSinceLastState,[channel] NSString *_Nonnull channel)
参数
类型
描述
oldState
DingRtcPublishState
之前的推流状态,详见DingRtcPublishState。
newState
DingRtcPublishState
当前的推流状态,详见DingRtcPublishState。
elapseSinceLastState
NSInteger
状态变更时间间隔(毫秒)。
channel
NSString *_Nonnull
当前频道id。
-
onVideoPublishStateChanged: 视频推流变更回调。
void onVideoPublishStateChanged (DingRtcPublishState oldState,[newState] DingRtcPublishState newState,[elapseSinceLastState] NSInteger elapseSinceLastState,[channel] NSString *_Nonnull channel)
参数
类型
描述
oldState
DingRtcPublishState
之前的推流状态,详见DingRtcPublishState。
newState
DingRtcPublishState
当前的推流状态,详见DingRtcPublishState。
elapseSinceLastState
NSInteger
状态变更时间间隔(毫秒)。
channel
NSString *_Nonnull
当前频道id。
-
onRemoteUserOnLineNotify: 远端用户(通信模式)加入频道回调。
void onRemoteUserOnLineNotify (NSString *_Nonnull uid,[elapsed] int elapsed)
- 该回调在以下场景会被触发。
- 通信模式:远端用户加入频道会触发该回调,如果当前用户在加入频道前已有其他用户在频道中,当前用户加入频道后也会收到已加入频道用户的回调。
参数
类型
描述
uid
NSString *_Nonnull
用户ID从Appserver分配的唯一标示符。
elapsed
int
用户加入频道时的耗时。
-
onRemoteUserOffLineNotify: 远端用户(通信模式)离开频道回调。
void onRemoteUserOffLineNotify (NSString *_Nonnull uid,[offlineReason] DingRtcUserOfflineReason reason)
- 该回调在以下场景会被触发。
- 通信模式:远端用户离开频道会触发该回调。
- 通信模式情况下,当长时间收不到远端用户数据,超时掉线时,会触发该回调。
参数
类型
描述
uid
NSString *_Nonnull
用户ID从Appserver分配的唯一标示符。
reason
DingRtcUserOfflineReason
用户离线的原因,详见DingRtcUserOfflineReason。
-
onRemoteTrackAvailableNotify: 远端用户的音视频流发生变化回调。
void onRemoteTrackAvailableNotify (NSString *_Nonnull uid,[audioTrack] DingRtcAudioTrack audioTrack,[videoTrack] DingRtcVideoTrack videoTrack)
- 该回调在以下场景会被触发。
- 当远端用户从未推流变更为推流(包括音频和视频)。
- 当远端用户从已推流变更为未推流(包括音频和视频)。
参数
类型
描述
uid
NSString *_Nonnull
userId,从Appserver分配的唯一标示符。
audioTrack
DingRtcAudioTrack
音频流类型,详见DingRtcAudioTrack。
videoTrack
DingRtcVideoTrack
视频流类型,详见DingRtcVideoTrack。
-
onAudioSubscribeStateChanged: 音频流订阅情况变更回调。
void onAudioSubscribeStateChanged (NSString *_Nonnull uid,[oldState] DingRtcSubscribeState oldState,[newState] DingRtcSubscribeState newState,[elapseSinceLastState] NSInteger elapseSinceLastState,[channel] NSString *_Nonnull channel)
参数
类型
描述
uid
NSString *_Nonnull
用户ID,从Appserver分配的唯一标示符。
oldState
DingRtcSubscribeState
之前的订阅状态,详见DingRtcSubscribeState。
newState
DingRtcSubscribeState
当前的订阅状态,详见DingRtcSubscribeState。
elapseSinceLastState
NSInteger
两次状态变更时间间隔(毫秒)。
channel
NSString *_Nonnull
当前频道id。
-
onVideoSubscribeStateChanged: 相机流订阅情况变更回调。
void onVideoSubscribeStateChanged (NSString *_Nonnull uid,[oldState] DingRtcSubscribeState oldState,[newState] DingRtcSubscribeState newState,[elapseSinceLastState] NSInteger elapseSinceLastState,[channel] NSString *_Nonnull channel)
参数
类型
描述
uid
NSString *_Nonnull
用户ID,从Appserver分配的唯一标示符。
oldState
DingRtcSubscribeState
之前的订阅状态,详见DingRtcSubscribeState。
newState
DingRtcSubscribeState
当前的订阅状态,详见DingRtcSubscribeState。
elapseSinceLastState
NSInteger
两次状态变更时间间隔(毫秒)。
channel
NSString *_Nonnull
当前频道id。
-
onSubscribeStreamTypeChanged: 相机流大小规格订阅情况变更回调。
void onSubscribeStreamTypeChanged (NSString *_Nonnull uid,[oldStreamType] DingRtcVideoStreamType oldStreamType,[newStreamType] DingRtcVideoStreamType newStreamType,[elapseSinceLastState] NSInteger elapseSinceLastState,[channel] NSString *_Nonnull channel)
参数
类型
描述
uid
NSString *_Nonnull
用户ID,从Appserver分配的唯一标示符。
oldStreamType
DingRtcVideoStreamType
之前的订阅的规格类型,详见DingRtcVideoStreamType。
newStreamType
DingRtcVideoStreamType
当前的订阅的规格类型,详见DingRtcVideoStreamType。
elapseSinceLastState
NSInteger
大小流类型变更时间间隔(毫秒)。
channel
NSString *_Nonnull
当前频道id。
-
onNetworkQualityChanged: 网络质量变化时发出的消息。
void onNetworkQualityChanged (NSString *_Nonnull uid,[upNetworkQuality] DingRtcNetworkQuality upQuality,[downNetworkQuality] DingRtcNetworkQuality downQuality)
参数
类型
描述
uid
NSString *_Nonnull
网络质量发生变化的uid。
upQuality
DingRtcNetworkQuality
上行网络质量。
downQuality
DingRtcNetworkQuality
下行网络质量。
重要当网络质量发生变化时触发,uid为""时代表self的网络质量变化。
-
onConnectionStatusChanged: 网络连接状态改变的回调。
void onConnectionStatusChanged (DingRtcConnectionStatus status,[reason] DingRtcConnectionStatusChangeReason reason)
参数
类型
描述
status
DingRtcConnectionStatus
当前状态值,对应值参考枚举DingRtcConnectionStatus。
reason
DingRtcConnectionStatusChangeReason
引起状态变化的具体原因,对应值参考枚举DingRtcConnectionStatusChangeReason。
-
onBye: 被服务器踢出/会议结束频道的消息。
void onBye (DingRtcOnByeType code)
参数
类型
描述
code
DingRtcOnByeType
原因参考DingRtcOnByeType。
-
onOccurWarning: 如果engine出现warning,通过这个回调通知app。
void onOccurWarning (int warn,[message] NSString *_Nonnull message)
参数
类型
描述
warn
int
Warningtype。
message
NSString *_Nonnull
警告描述。
-
onOccurError: 如果engine出现error,通过这个回调通知app。
void onOccurError (int error,[message] NSString *_Nonnull message)
参数
类型
描述
error
int
Error类型,参考DingRtcErrorCode。
message
NSString *_Nonnull
错误描述。
-
onFirstAudioPacketSentWithTimecost: 音频首包发送回调。
void onFirstAudioPacketSentWithTimecost (int timeCost)
在首个音频数据包发送出去时触发此回调。
参数
类型
描述
timeCost
int
发送耗时,从入会开始到音频首包发送出去的耗时。
-
onFirstVideoPacketSentWithVideoTrack: 视频首包发送回调。
void onFirstVideoPacketSentWithVideoTrack (DingRtcVideoTrack videoTrack,[timeCost] int timeCost)
参数
类型
描述
videoTrack
DingRtcVideoTrack
发送视频track,参考DingRtcVideoTrack。
timeCost
int
耗时(毫秒)。
重要该接口用于视频首包发送的回调。
-
onFirstAudioPacketReceivedWithUid: 远端用户音频首包接收回调。
void onFirstAudioPacketReceivedWithUid (NSString *_Nonnull uid,[timeCost] int timeCost)
在接收到远端首个音频数据包时触发此回调。
参数
类型
描述
uid
NSString *_Nonnull
远端用户ID,从Appserver分配的唯一标识符。
timeCost
int
接收耗时,从入会开始到音频首包接收到的耗时。
-
onFirstVideoPacketReceivedWithUid: 远端用户视频首包接收回调。
void onFirstVideoPacketReceivedWithUid (NSString *_Nonnull uid,[videoTrack] DingRtcVideoTrack videoTrack,[timeCost] int timeCost)
参数
类型
描述
uid
NSString *_Nonnull
UserID,从Appserver分配的唯一标示符。
videoTrack
DingRtcVideoTrack
接收视频track,参考DingRtcVideoTrack。
timeCost
int
耗时(毫秒)。
重要该接口用于视频首包接收的回调。
-
onFirstVideoFrameReceivedWithUid: 远端用户视频首帧接收回调。
void onFirstVideoFrameReceivedWithUid (NSString *_Nonnull uid,[videoTrack] DingRtcVideoTrack videoTrack,[timeCost] int timeCost)
参数
类型
描述
uid
NSString *_Nonnull
UserID,从Appserver分配的唯一标示符。
videoTrack
DingRtcVideoTrack
接收视频track,参考DingRtcVideoTrack。
timeCost
int
耗时(毫秒)。
重要该接口用于收到远端用户视频首帧的回调。
-
onFirstRemoteVideoFrameDrawn: 远端用户的第一帧视频帧显示时触发这个消息。
void onFirstRemoteVideoFrameDrawn (NSString *_Nonnull uid,[videoTrack] DingRtcVideoTrack videoTrack,[width] int width,[height] int height,[elapsed] int elapsed)
参数
类型
描述
uid
NSString *_Nonnull
UserID,从Appserver分配的唯一标示符。
videoTrack
DingRtcVideoTrack
屏幕流或者相机流,参考DingRtcVideoTrack。
width
int
视频宽度。
height
int
视频高度。
elapsed
int
本地用户加入频道直至该回调触发的延迟总耗时(毫秒)。
重要该接口用于远端用户的第一帧视频帧显示时的回调。
-
onFirstLocalVideoFrameDrawn: 预览开始显示第一帧视频帧时触发这个消息。
void onFirstLocalVideoFrameDrawn (int width,[height] int height,[elapsed] int elapsed)
参数
类型
描述
width
int
本地预览视频宽度。
height
int
本地预览视频高度。
elapsed
int
从本地用户加入频道直至该回调触发的延迟总耗时(毫秒)。
重要该接口用于预览开始显示第一帧视频帧时的回调。
-
onRenderRemoteVideoSizeChanged: 视频渲染接收到远端视频分辨率有变化时触发此回调。
void onRenderRemoteVideoSizeChanged (NSString *_Nonnull uid,[videoTrack] DingRtcVideoTrack videoTrack,[newWidth] int newWidth,[newHeight] int newHeight,[oldWidth] int oldWidth,[oldHeight] int oldHeight)
参数
类型
描述
uid
NSString *_Nonnull
userId,从Appserver分配的唯一标示符。
videoTrack
DingRtcVideoTrack
接收视频track。
newWidth
int
变化后新的视频宽度
newHeight
int
变化后新的视频高度
oldWidth
int
变化前旧的视频宽度
oldHeight
int
变化前旧的视频高度
重要因为simulcast的存在,以及动态调整分辨率,横竖屏变化,视频大小和远端设置的最大推流分辨率不一定相同。
-
onRenderLocalVideoSizeChanged: 视频渲染接收到本地视频分辨率有变化时触发此回调。
void onRenderLocalVideoSizeChanged (DingRtcVideoTrack videoTrack,[newWidth] int newWidth,[newHeight] int newHeight,[oldWidth] int oldWidth,[oldHeight] int oldHeight)
参数
类型
描述
videoTrack
DingRtcVideoTrack
本地视频track。
newWidth
int
变化后新的视频宽度
newHeight
int
变化后新的视频高度
oldWidth
int
变化前旧的视频宽度
oldHeight
int
变化前旧的视频高度
重要视频大小可能和摄像头采集到的视频大小不相等,比如在采集之后存在缩放等处理。
-
onAudioVolumeIndication: 用户音量提示回调。
void onAudioVolumeIndication (NSArray< DingRtcUserVolumeInfo * > *_Nullable speakers,[speakerNumber] int speakerNumber)
参数
类型
描述
speakers
用户音量信息,表示回调用户音量信息数组,包含用户uid,语音状态以及音量,uid为"0"表示本地说话人。
speakerNumber
int
用户数量。
-
onUserAudioMuted: 远端用户静音/取消静音回调。
void onUserAudioMuted (NSString *_Nonnull uid,[audioMuted] BOOL isMute)
参数
类型
描述
uid
NSString *_Nonnull
远端用户ID。
isMute
BOOL
该用户是否静音
YES:静音。
NO:取消静音。
-
onUserVideoMuted: 远端用户暂停/恢复视频流发送的通知。
void onUserVideoMuted (NSString *_Nonnull uid,[videoMuted] BOOL isMute,[track] DingRtcVideoTrack track)
参数
类型
描述
uid
NSString *_Nonnull
远端用户ID。
isMute
BOOL
YES:该用户暂停视频流的发送。
NO:该用户恢复视频流的发送。
track
DingRtcVideoTrack
屏幕流或者相机流。
-
onUserVideoEnabled: 远端用户关闭相机流采集发送通知。
void onUserVideoEnabled (NSString *_Nonnull uid,[enabled] BOOL enabled)
参数
类型
描述
uid
NSString *_Nonnull
远端用户ID。
enabled
BOOL
YES:打开相机流采集。
NO:关闭相机流采集。
-
onUserWillResignActive: 远端用户应用退到后台
void onUserWillResignActive (NSString *_Nonnull uid)
参数
类型
描述
uid
NSString *_Nonnull
远端用户ID
-
onUserWillBecomeActive: 远端用户应用返回前台
void onUserWillBecomeActive (NSString *_Nonnull uid)
参数
类型
描述
uid
NSString *_Nonnull
远端用户ID
-
onRtcQualityReport: 质量报告事件,相对onRtcLocalAudioStats,onRtcRemoteVideoStats更加简练,适合在UI上展示。
void onRtcQualityReport (DingRtcQualityReport *_Nonnull quality)
参数
类型
描述
quality
采集到的各项指标数据。
-
onRtcStats: 实时数据回调(2s触发一次)。
void onRtcStats (DingRtcStats *_Nonnull stats)
参数
类型
描述
stats
stats。
-
onRtcLocalVideoStats: 本地视频统计信息(2s触发一次)。
void onRtcLocalVideoStats (DingRtcLocalVideoStats *_Nonnull localVideoStats)
参数
类型
描述
localVideoStats
本地视频统计信息。
重要SDK每两秒触发一次此统计信息回调。
-
onRtcRemoteVideoStats: 远端视频统计信息(2s触发一次)。
void onRtcRemoteVideoStats (DingRtcRemoteVideoStats *_Nonnull remoteVideoStats)
参数
类型
描述
remoteVideoStats
远端视频统计信息。
-
onRtcLocalAudioStats: 本地音频统计信息(2s触发一次)。
void onRtcLocalAudioStats (DingRtcLocalAudioStats *_Nonnull localAudioStats)
参数
类型
描述
localAudioStats
本地视频统计信息。
重要SDK每两秒触发一次此统计信息回调。
-
onRtcRemoteAudioStats: 远端音频统计信息(2s触发一次)。
void onRtcRemoteAudioStats (DingRtcRemoteAudioStats *_Nonnull remoteAudioStats)
参数
类型
描述
remoteAudioStats
远端音频统计信息。
-
onAudioRouteChanged: 音频路由发生变化回调(仅适用于iOS系统)。
void onAudioRouteChanged (DingRtcAudioRouteType routing)
- 所谓“音频路由”,是指声音是从手机的扬声器还是从听筒中播放出来,音频路由变化也就是声音的播放位置发生了变化。
- 当音频路由为听筒时,声音比较小,只有将耳朵凑近才能听清楚,隐私性较好,适合用于接听电话。
- 当音频路由为扬声器时,声音比较大,不用将手机贴脸也能听清,因此可以实现“免提”的功能。
参数
类型
描述
routing
DingRtcAudioRouteType
当前使用的音频路由,详情参考DingRtcAudioRouteType
-
onAudioDeviceStateChanged: 音频设备状态变更(仅适用于Mac系统)。
void onAudioDeviceStateChanged (NSString *_Nonnull deviceId,[deviceType] DingRtcExternalDeviceType deviceType,[deviceState] DingRtcExternalDeviceState deviceState)
参数
类型
描述
deviceId
NSString *_Nonnull
外接设备ID。
deviceType
DingRtcExternalDeviceType
外接设备类型。
deviceState
DingRtcExternalDeviceState
外接设备状态。
-
onVideoDeviceStateChanged: 摄像头设备状态变更(仅适用于Mac系统)。
void onVideoDeviceStateChanged (NSString *_Nonnull deviceId,[deviceType] DingRtcExternalDeviceType deviceType,[deviceState] DingRtcExternalDeviceState deviceState)
参数
类型
描述
deviceId
NSString *_Nonnull
外接设备ID。
deviceType
DingRtcExternalDeviceType
外接设备类型。
deviceState
DingRtcExternalDeviceState
外接设备状态。
-
onAudioDeviceRecordLevel: 音频采集设备测试回调。
void onAudioDeviceRecordLevel (int level)
参数
类型
描述
level
int
音频采集设备音量值。
-
onAudioDevicePlayoutLevel: 音频播放设备测试回调。
void onAudioDevicePlayoutLevel (int level)
参数
类型
描述
level
int
音频采集设备音量值。
-
onApiCalledExecuted: API方法已执行回调。
void onApiCalledExecuted (int error,[api] NSString *_Nullable api,[result] NSString *_Nullable result)
参数
类型
描述
error
int
当该方法调用失败时SDK返回的错误码。如果该方法调用成功,SDK将返回0。失败,非0。
api
NSString *_Nullable
SDK执行的API。
result
NSString *_Nullable
SDK调用API的调用结果。
-
onSnapshotComplete: 视频截图回调。
void onSnapshotComplete (NSString *_Nullable uid,[videoTrack] DingRtcVideoTrack videoTrack,[filePath] NSString *_Nullable filePath,[width] int width,[height] int height,[success] BOOL success)
参数
类型
描述
uid
NSString *_Nullable
用户uid,为nil或者为""代表本地用户。
videoTrack
DingRtcVideoTrack
截图视频track,参考DingRtcVideoTrack。
filePath
NSString *_Nullable
截图的本地保存路径。
width
int
截图宽度。
height
int
截图高度。
image
截图数据。
success
截图结果。
重要成功时image返回截图数据,失败返回nil。
-
onMediaExtensionMsgReceived: 收到媒体扩展信息回调
void onMediaExtensionMsgReceived (NSString *_Nonnull uid,[message] NSData *_Nonnull data)
参数
类型
描述
uid
NSString *_Nonnull
发送用户userId
data
NSData *_Nonnull
媒体扩展信息
重要当一端通过 AliRtcEngine 发送信息后,其他端通过该回调接收数据
-
onAudioMixingStateChanged: 伴奏混音回调。
void onAudioMixingStateChanged (DingRtcAudioMixingStatusConfig *_Nonnull status)
参数
类型
描述
status
伴奏混音状态,详细参考DingRtcAudioMixingStatusConfig。
重要该接口用于伴奏混音状态监控。
-
onListAllAudioGroups: 返回当前频道内所有的分组列表。
void onListAllAudioGroups (NSArray< NSString * > *_Nonnull audioGroups)
参数
类型
描述
audioGroups
NSArray< NSString * > *_Nonnull
分组列表。
重要该回调发生在加入频道的时候。App通过该回调可以获得当前频道内所有的分组。后续分组变化,通过回调 onAudioGroupListUpdate获得。
-
onAudioGroupJoinResult: 当调用joinAudioGroup:usrData:}加入某个group,触发此回调。
void onAudioGroupJoinResult (int result,[errorMessage] NSString *_Nullable errorMessage,[group] NSString *_Nonnull group,[members] NSArray< DingRtcAudioGroupMemberInfo * > *_Nonnull members)
参数
类型
描述
result
int
0表示成功,其他值表示失败。
errorMessage
NSString *_Nullable
如果result不为0,补充说明错误原因。
group
NSString *_Nonnull
加入的分组。
members
DingRtcAudioGroupMemberInfo
该分组的成员用户列表。
-
onAudioGroupLeaveResult: 当调用leaveAudioGroup:}离开某个group,触发此回调。
void onAudioGroupLeaveResult (int result,[errorMessage] NSString *_Nullable errorMessage,[group] NSString *_Nonnull group)
参数
类型
描述
result
int
0表示成功,其他值表示失败。
errorMessage
NSString *_Nullable
如果result不为0,补充说明错误原因。
group
NSString *_Nonnull
离开的分组。
-
onAudioGroupDismissResult: 当调用dismissAudioGroup:}解散某个group,触发此回调。
void onAudioGroupDismissResult (int result,[errorMessage] NSString *_Nullable errorMessage,[group] NSString *_Nonnull group)
参数
类型
描述
result
int
0表示成功,其他值表示失败。
errorMessage
NSString *_Nullable
如果result不为0,补充说明错误原因。
group
NSString *_Nonnull
解散的分组。
-
onAudioGroupMixResult: 当调用mixAudioToGroup:mix:}向分组或者大厅混流,触发此回调。
void onAudioGroupMixResult (int result,[reason] NSString *_Nullable reason,[group] NSString *_Nonnull group,[mix] BOOL mix)
参数
类型
描述
result
int
0表示成功,其他值表示失败。
reason
NSString *_Nullable
如果result不为0,补充说明失败的原因。
group
NSString *_Nonnull
目标分组。如果是HallID,则表示目标为大厅的音频,否则是普通分组的ID。非空。
mix
BOOL
YES表示将本地音频流混进指定的channelaudio或者分组音频中;NO表示取消。
-
onAudioGroupMemberUpdate: 分组中成员变化,触发此回调。
void onAudioGroupMemberUpdate (int updateOption,[group] NSString *_Nonnull group,[members] NSArray< DingRtcAudioGroupMemberInfo * > *_Nonnull members)
参数
类型
描述
updateOption
int
1表示新增了成员,-1表示离开了成员。
group
NSString *_Nonnull
成员变化的分组。
members
DingRtcAudioGroupMemberInfo
变动的(新增的或者离开的)成员列表。
-
onAudioGroupHallMembers: 大厅中的成员列表变化,触发此回调。
void onAudioGroupHallMembers (NSArray< DingRtcAudioGroupMemberInfo * > *_Nonnull hallMembers)
参数
类型
描述
hallMembers
DingRtcAudioGroupMemberInfo
大厅中的全量成员列表。
重要大方会场景下,回调如果比较频繁,存在一定的 cpu 开销。
-
onAudioGroupListUpdate: 分组列表变化,触发此回调。
void onAudioGroupListUpdate (int updateOption,[group] NSString *_Nonnull group)
参数
类型
描述
updateOption
int
1表示新增了分组,-1表示删除了分组。
group
NSString *_Nonnull
该回调指示的分组。
-
onPlaybackAudioFrame: 本地订阅音频数据回调。
void onPlaybackAudioFrame (DingRtcAudioDataSample *_Nonnull frame)
远端所有用户混音后待播放的音频数据。
参数
类型
描述
frame
音频数据。
-
onCapturedAudioFrame: 本地采集音频数据回调。
void onCapturedAudioFrame (DingRtcAudioDataSample *_Nonnull frame)
参数
类型
描述
frame
音频数据。
-
onProcessCapturedAudioFrame: 经过3A处理后的数据回调。
void onProcessCapturedAudioFrame (DingRtcAudioDataSample *_Nonnull frame)
参数
类型
描述
frame
音频数据。
-
onPublishAudioFrame: 本地推流音频数据回调。
void onPublishAudioFrame (DingRtcAudioDataSample *_Nonnull frame)
参数
类型
描述
frame
音频数据。