ios_IRTCEngineEventHandler class

Inheritance

Properties

$instance ↔ dynamic
getter/setter pairinherited
$resource → NativeResource
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
ready Future<void>
Whether the instance is initialized
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

destroy() → void
inherited
emit(String name, List args) → dynamic
inherited
nativeCall<T>(String method, [List? args, NativeMethodMeta? meta]) Future<T>
Call instance method
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
registerEvent(String name, dynamic method) → void
inherited
rtcEngine$log(ByteRTCEngine engine, NSDictionary dict) FutureOr<void>
@deprecated since 3.45 and will be deleted in 3.51. @detail callback @author chenweiming.push @brief SDK 内部日志回调。
SDK 内部运行时,会把日志回调给业务方,方便排查问题。 @param engine ByteRTCEngine 对象。 @param dict 日志内容。
inherited
rtcEngine$onActiveSpeaker$uid(dynamic engine, dynamic roomId, dynamic uid) FutureOr<void>
@detail callback @author zhangcaining @brief 调用 enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport}  后,根据设置的 config.interval,你会周期性地收到此回调,获取房间内的最活跃用户信息。 @param engine ByteRTCEngine 实例 @param roomId 房间 ID @param uid 最活跃用户(ActiveSpeaker)的用户 ID
override
rtcEngine$onAudioAEDStateUpdate(ByteRTCEngine engine, ByteRTCAudioAEDType state) FutureOr<void>
@hidden for internal use only @detail callback @region 音频管理 @author shiyayun @brief 音乐场景检测结果回调。
调用 enableAudioAEDReport 后,根据设置的interval值,本地会周期性地收到此回调
@param state 音乐场景检测结果,参看 ByteRTCAudioAEDType{@link #ByteRTCAudioAEDType}。
inherited
rtcEngine$onAudioDeviceStateChanged$device_type$device_state$device_error(dynamic engine, dynamic deviceID, dynamic deviceType, dynamic deviceState, dynamic deviceError) FutureOr<void>
@detail callback @author dixing @brief 音频设备状态回调。提示音频采集、音频播放等设备的状态。 @param engine ByteRTCEngine 实例 @param deviceID 设备 ID @param deviceType 设备类型,参看 ByteRTCAudioDeviceType{@link #ByteRTCAudioDeviceType}。 @param deviceState 设备状态,参看 ByteRTCMediaDeviceState{@link #ByteRTCMediaDeviceState}。 @param deviceError 设备错误类型,参看 ByteRTCMediaDeviceError{@link #ByteRTCMediaDeviceError}。
override
rtcEngine$onAudioDeviceVolumeChanged$volume$muted(ByteRTCEngine engine, ByteRTCAudioDeviceType deviceType, int volume, bool muted) FutureOr<void>
@hidden(iOS) @detail callback @author caocun @brief 音频设备音量改变回调。当通过系统设置,改变音频设备音量或静音状态时,触发本回调。本回调无需手动开启。 @param engine 参看 ByteRTCEngine{@link #ByteRTCEngine} @param deviceType 设备类型,包括麦克风和扬声器,参阅 ByteRTCAudioDeviceType{@link #ByteRTCAudioDeviceType}。 @param volume 音量值,0, 255。当 volume 变为 0 时,muted 会转为 True。 @param muted 是否禁音状态。扬声器被设置为禁音时,muted 为 True,但 volume 保持不变。
inherited
rtcEngine$onAudioDeviceWarning$deviceType$deviceWarning(dynamic engine, dynamic deviceId, dynamic deviceType, dynamic deviceWarning) FutureOr<void>
@detail callback @author dixing @brief 音频设备警告回调。音频设备包括音频采集设备和音频渲染设备。 @param engine ByteRTCEngine 对象 @param deviceId 设备 ID @param deviceType 参看 ByteRTCAudioDeviceType{@link #ByteRTCAudioDeviceType} @param deviceWarning 参看 ByteRTCMediaDeviceWarning{@link #ByteRTCMediaDeviceWarning}
override
rtcEngine$onAudioDumpStateChanged(dynamic engine, dynamic status) FutureOr<void>
@hidden for internal use only @detail callback @author songxiaomeng.19 @brief 音频 dump 状态回调。 @param engine ByteRTCEngine 实例 @param status 音频 dump 状态,参看 ByteRTCAudioDumpStatus{@link #ByteRTCAudioDumpStatus}。 @note 本回调用于内部排查音质相关异常问题,开发者无需关注。
override
rtcEngine$onAudioFramePlayStateChanged$info$rtcUser$state(dynamic engine, dynamic streamId, dynamic info, dynamic user, dynamic state) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief 音频首帧播放状态发生改变时,收到此回调。 @param engine ByteRTCEngine 对象。 @param streamId 音频流 ID @param info 音频流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user 音频流来源的用户信息,参看 ByteRTCUser{@link #ByteRTCUser} @param state 首帧播放状态,参看 ByteRTCFirstFramePlayState{@link #ByteRTCFirstFramePlayState}
override
rtcEngine$onAudioFrameSendStateChanged$info$rtcUser$state(dynamic engine, dynamic streamId, dynamic info, dynamic user, dynamic state) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief 本地音频首帧发送状态发生改变时,收到此回调。 @param engine ByteRTCEngine 对象 @param streamId 流 ID @param info 流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user 本地用户信息,详见 ByteRTCUser{@link #ByteRTCUser} @param state 首帧发送状态,详见 ByteRTCFirstFrameSendState{@link #ByteRTCFirstFrameSendState}
override
rtcEngine$onAudioMixingPlayingProgress$progress(dynamic engine, dynamic mixId, dynamic progress) FutureOr<void>
@detail callback @author songxiaomeng.19 @brief 混音音频文件播放进度回调 @param engine 当前 RTC SDK 对象 @param mixId 混音 ID @param progress 当前混音音频文件播放进度,单位毫秒 @note 调用 setAudioMixingProgressInterval:interval: 将时间间隔设为大于 0 的值后,或调用 startAudioMixing:filePath:config: 将 ByteRTCAudioMixingConfig 中的时间间隔设为大于 0 的值后,SDK 会按照设置的时间间隔回调该事件。
override
rtcEngine$onAudioPlaybackDeviceTestVolume(dynamic engine, dynamic volume) FutureOr<void>
@hidden(iOS) @detail callback @brief 回调音频设备测试时的播放音量 @param engine 参看 ByteRTCEngine{@link #ByteRTCEngine}。 @param volume 音频设备测试播放音量。取值范围:0,255 @note 调用 startAudioPlaybackDeviceTest:interval:{@link #ByteRTCAudioDeviceManager#startAudioPlaybackDeviceTest:interval} 或 startAudioDeviceRecordTest:{@link #ByteRTCAudioDeviceManager#startAudioDeviceRecordTest},开始播放音频文件或录音时,将开启该回调。本回调为周期性回调,回调周期由上述接口的 interval 参数指定。
override
rtcEngine$onAudioRecordingStateUpdate$error_code(dynamic engine, dynamic state, dynamic errorCode) FutureOr<void>
@detail callback @author huangshouqin @brief 调用 startAudioRecording:{@link #ByteRTCEngine#startAudioRecording} 或者 stopAudioRecording{@link #ByteRTCEngine#stopAudioRecording} 改变音频文件录制状态时,收到此回调。 @param engine ByteRTCEngine 实例 @param state 录制状态,参看 ByteRTCAudioRecordingState{@link #ByteRTCAudioRecordingState} @param errorCode 录制错误码,参看 ByteRTCAudioRecordingErrorCode{@link #ByteRTCAudioRecordingErrorCode}
override
rtcEngine$onAudioRouteChanged(dynamic engine, dynamic device) FutureOr<void>
@hidden(macOS) @detail callback @author dixing @brief 音频播放路由变化时,收到该回调。 @param engine ByteRTCEngine 实例 @param device 新的音频播放路由,详见 ByteRTCAudioRoute{@link #ByteRTCAudioRoute} @note 插拔音频外设,或调用 setAudioRoute:{@link #ByteRTCEngine#setAudioRoute} 都可能触发音频路由切换,详见移动端设置音频路由
override
rtcEngine$onAudioVADStateUpdate(ByteRTCEngine engine, ByteRTCAudioVADType state) FutureOr<void>
@detail callback @hidden 3.60 for internal use only @region 音频管理 @author gengjunjie @brief 人声检测结果回调。
调用 enableAudioVADReport 后,根据设置的interval值,本地会周期性地收到此回调
@param state 人声检测结果,参看 ByteRTCAudioVADType{@link #ByteRTCAudioVADType}。
inherited
rtcEngine$onClientMixedFirstVideoFrame(ByteRTCEngine engine, NSString taskId) FutureOr<void>
@hidden for internal use only @detail callback @author liujingchao @brief 客户端合流视频首帧回调 @param taskId 任务 ID
inherited
rtcEngine$onCloudProxyConnected(dynamic engine, dynamic interval) FutureOr<void>
@detail callback @author daining.nemo @brief 调用 startCloudProxy:{@link #ByteRTCEngine#startCloudProxy} 开启云代理,SDK 首次成功连接云代理服务器时,回调此事件。 @param engine ByteRTCEngine 实例 @param interval 从开启云代理到连接成功经过的时间,单位为 ms
override
rtcEngine$onConnectionStateChanged(dynamic engine, dynamic state) FutureOr<void>
@detail callback @author hanchenchen.c @brief SDK 与信令服务器连接状态改变回调。连接状态改变时触发。 @param engine ByteRTCEngine 对象 @param state 当前 SDK 与信令服务器的连接状态,详见 ByteRTCConnectionState{@link #ByteRTCConnectionState}。 @note 更多信息参见 连接状态提示
override
rtcEngine$onDeadLockError(ByteRTCEngine engine, ByteRTCDeadLockMsg deadlockMsg) FutureOr<void>
@hidden internal use only @valid since 3.57 @detail callback @brief 当内部线程发生 block 时,将收到此回调。 @param engine ByteRTCEngine 对象 @param deadlockMsg block 线程的线程名和 block 检测次数。参看 ByteRTCDeadLockMsg{#ByteRTCDeadLockMsg}
inherited
rtcEngine$onEchoTestResult(dynamic engine, dynamic result) FutureOr<void>
@detail callback @author qipengxiang @brief 关于音视频回路测试结果的回调。 @param engine ByteRTCEngine 实例 @param result 测试结果,参看 ByteRTCEchoTestResult{@link #ByteRTCEchoTestResult}。 @note 该回调触发的时机包括:
- 检测过程中采集设备发生错误时; - 检测成功后; - 非设备原因导致检测过程中未接收到音/视频回放,停止检测后。
override
rtcEngine$onEffectError$msg(dynamic engine, dynamic error, dynamic msg) FutureOr<void>
@hidden internal use only @detail callback @author wangqianqian.1104 @brief 当特效设置失败时,收到此回调。 @param engine ByteRTCEngine 实例 @param error 特效错误类型。参看 ByteRTCEffectErrorType{@link #ByteRTCEffectErrorType}。 @param msg 错误信息。
override
rtcEngine$onError(dynamic engine, dynamic errorCode) FutureOr<void>
@detail callback @author panjian.fishing @brief 发生错误回调。
SDK 运行时出现了网络或媒体相关的错误,且无法自动恢复时触发此回调。
你可能需要干预. @param engine ByteRTCEngine 对象。 @param errorCode 错误代码,参看 ByteRTCErrorCode{@link #ByteRTCErrorCode}。
override
rtcEngine$onExperimentalCallback(dynamic engine, dynamic param) FutureOr<void>
@hidden internal use only @valid since 3.60. @detail callback @author hegangjie @brief 试验性接口回调 @param param 回调内容(JSON string)
override
rtcEngine$onExtensionAccessError$msg(dynamic engine, dynamic extensionName, dynamic msg) FutureOr<void>
@valid since 3.52 @detail callback @author zhanyuqiao @brief 当访问插件失败时,收到此回调。
RTC SDK 将一些功能封装成插件。当使用这些功能时,如果插件不存在,功能将无法使用。 @param engine ByteRTCEngine 实例 @param extensionName 插件名字 @param msg 失败说明
override
rtcEngine$onExternalScreenFrameUpdate(dynamic engine, dynamic frameUpdateInfo) FutureOr<void>
@hidden @detail callback @author zhoubohui @brief 外部采集时,调用 setOriginalScreenVideoInfo:withOriginalCaptureHeight: 设置屏幕或窗口大小改变前的分辨率后,若屏幕采集模式为智能模式,你将收到此回调,根据 RTC 智能决策合适的帧率和分辨率积(宽高)重新采集。 @param engine 参看 ByteRTCEngine{@link #ByteRTCEngine} @param frameUpdateInfo RTC 智能决策后合适的帧率和分辨率积(宽高)。参看 ByteRTCFrameUpdateInfo{@link #ByteRTCFrameUpdateInfo}。
override
rtcEngine$onFirstLocalAudioFrame(dynamic engine, dynamic audioSource) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief 发布音频流时,采集到第一帧音频帧,收到该回调。 @param engine ByteRTCEngine 对象 @param audioSource 音频源信息,参看 ByteRTCAudioSource{@link #ByteRTCAudioSource} @note 如果发布音频流时,未开启本地音频采集,SDK 会推送静音帧,也会收到此回调。
override
rtcEngine$onFirstLocalVideoFrameCaptured$withFrameInfo(dynamic engine, dynamic videoSource, dynamic frameInfo) FutureOr<void>
@detail callback @author zhangzhenyu.samuel @brief 第一帧本地采集的视频/屏幕共享画面在本地视图渲染完成时,收到此回调。 @param engine ByteRTCEngine 对象 @param videoSource 视频源对象。参看 ByteRTCVideoSource{@link #ByteRTCVideoSource}。 @param frameInfo 视频帧信息,参看 ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
override
rtcEngine$onFirstRemoteAudioFrame$info(dynamic engine, dynamic streamId, dynamic info) FutureOr<void>
@detail callback @author wangjunzheng @brief 订阅端接收并解码远端音频流首帧时,收到此回调。包含以下情况:
1. 发布端发布音频,包含首次发布和取消后再次发布。
2. 发布端关闭音频采集后,再次打开采集。使用外部源时,停止推流后再次推流。
3. 发布端发布音频后,订阅端取消订阅音频后,又再次订阅音频。 @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @note - 用户刚收到房间内每一路音频流时,都会收到该回调。 - 摄像头流、屏幕流,内部采集、外部源、自动订阅和手动订阅的音频流,都符合上述策略。
override
rtcEngine$onFirstRemoteVideoFrameDecoded$info$withFrameInfo(dynamic engine, dynamic streamId, dynamic info, dynamic frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief 订阅端接收并解码远端视频流首帧后,收到此回调。包含以下情况:
1. 发布端发布视频,包含首次发布和取消后再次发布。
2. 发布端关闭视频采集后,再次打开采集。使用外部源时,停止推流后再次推流。
3. 发布端发布视频后,订阅端取消订阅视频后,又再次订阅视频。 @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param frameInfo 视频帧信息,参看 ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo} @note - 对于主流,进入房间后,仅在发布端第一次发布的时候,订阅端会收到该回调,此后不受重新发布的影响,只要不重新加入房间,就不会再收到该回调。 - 对于屏幕流,用户每次重新发布屏幕视频流在订阅端都会重新触发一次该回调。
override
rtcEngine$onFirstRemoteVideoFrameRendered$info$withFrameInfo(dynamic engine, dynamic streamId, dynamic info, dynamic frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief SDK 内部渲染成功远端视频流首帧后,收到此回调。包含以下情况:
1. 发布端首次发布视频
2. 在 1 条件下,发布端取消发布视频后,再次发布视频
3. 在 1 条件下,发布端关闭视频采集后,再次打开采集(或使用外部源时,停止推流后再次推流)
4. 在 1 条件下,订阅端取消订阅视频后,再次订阅视频(调用接口包括 subscribeAllStreamsVideo:{@link #ByteRTCRoom-subscribeAllStreamsVideo}pauseAllSubscribedStreamVideo:{@link #ByteRTCRoom-pauseAllSubscribedStreamVideo}/resumeAllSubscribedStreamVideo:{@link #ByteRTCRoom-resumeAllSubscribedStreamVideo}) @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param frameInfo 视频帧信息,参看 ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo} @note 仅在采用内部渲染时,符合上述策略。
override
rtcEngine$onGetPeerOnlineStatus$status(dynamic engine, dynamic peerUserId, dynamic status) FutureOr<void>
@detail callback @author hanchenchen.c @brief 查询对端或本端用户登录状态的返回结果 @param engine ByteRTCEngine 对象 @param peerUserId
需要查询的用户 ID @param status
查询的用户登录状态
详见 ByteRTCUserOnlineStatus{@link #ByteRTCUserOnlineStatus}. @note 必须先调用 getPeerOnlineStatus:{@link #ByteRTCEngin e#getPeerOnlineStatus},才能收到此回调。
override
rtcEngine$onHardwareEchoDetectionResult(dynamic engine, dynamic result) FutureOr<void>
@detail callback @author zhangcaining @brief 通话前回声检测结果回调。 @param engine ByteRTCEngine 实例 @param result 参见 ByteRTCHardwareEchoDetectionResult{@link #ByteRTCHardwareEchoDetectionResult}。 @note - 通话前调用 startHardwareEchoDetection:{@link #ByteRTCEngine#startHardwareEchoDetection} 后,将触发本回调返回检测结果。 - 建议在收到检测结果后,调用 stopHardwareEchoDetection{@link #ByteRTCEngine#stopHardwareEchoDetection} 停止检测,释放对音频设备的占用。 - 如果 SDK 在通话中检测到回声,将通过 rtcEngine:onAudioDeviceWarning:deviceType:deviceWarning:{@link #ByteRTCEngineDelegate#rtcEngine:onAudioDeviceWarning:deviceType:deviceWarning} 回调 ByteRTCMediaDeviceWarningDetectLeakEcho
override
rtcEngine$onLicenseWillExpire(dynamic engine, dynamic days) FutureOr<void>
@hidden internal use only @detail callback @author wangyu.1705 @brief license 过期时间提醒 @param engine ByteRTCEngine{@link #ByteRTCEngine} 对象 @param days 过期时间天数
override
rtcEngine$onLocalAudioPropertiesReport(dynamic engine, List audioPropertiesInfos) FutureOr<void>
@detail callback @author huangshouqin @brief 调用 enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport} 后,根据设置的 interval 值,你会周期性地收到此回调,了解本地音频的瞬时相关信息。
本地音频包括使用 RTC SDK 内部机制采集的麦克风音频,屏幕音频和本地混音音频信息。 @param engine ByteRTCEngine 对象 @param audioPropertiesInfos 本地音频信息,详见 ByteRTCLocalAudioPropertiesInfo{@link #ByteRTCLocalAudioPropertiesInfo} 。在 macOS 端,本地音量可通过 setAudioCaptureDeviceVolume: 设置。
override
rtcEngine$onLocalAudioStateChanged$state$error(dynamic engine, dynamic audioSource, dynamic state, dynamic error) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief 本地音频流的状态发生改变时,收到此回调。 @param engine ByteRTCEngine 对象 @param audioSource 音频流对象,参看 ByteRTCAudioSource{@link #ByteRTCAudioSource}。 @param state 本地音频设备的当前状态,详见 ByteRTCLocalAudioStreamState{@link #ByteRTCLocalAudioStreamState} @param error 本地音频流状态改变时的错误码,详见 ByteRTCLocalAudioStreamError{@link #ByteRTCLocalAudioStreamError}
override
rtcEngine$onLocalProxyStateChanged$withProxyState$withProxyError(dynamic engine, dynamic type, dynamic state, dynamic error) FutureOr<void>
@detail callback @author keshixing.rtc @brief 本地代理状态发生改变回调。调用 setLocalProxy:{@link #ByteRTCEngin e#setLocalProxy} 设置本地代理后,SDK 会触发此回调,返回代理连接的状态。 @param engine ByteRTCEngine 实例 @param type 本地代理类型。参看 ByteRTCLocalProxyType{@link #ByteRTCLocalProxyType} 。 @param state 本地代理状态。参看 ByteRTCLocalProxyState{@link #ByteRTCLocalProxyState}。 @param error 本地代理错误。参看 ByteRTCLocalProxyError{@link #ByteRTCLocalProxyError}。
override
rtcEngine$onLocalSnapshotTakenToFile$filePath$width$height$errorCode$taskId(ByteRTCEngine engine, ByteRTCVideoSource videoSource, NSString filePath, NSInteger width, NSInteger height, ByteRTCSnapshotErrorCode errorCode, NSInteger taskId) FutureOr<void>
@detail callback @valid since 3.60. @brief 调用 takeLocalSnapshotToFile:{@link #ByteRTCEngine#takeLocalSnapshotToFile} 截取视频画面时,会收到此回调报告截图是否成功,以及截取的图片信息。 @param engine ByteRTCEngine 对象。 @param videoSource 视频源,参看 ByteRTCVideoSource{@link #ByteRTCVideoSource} @param filePath 截图文件的保存路径。 @param width 截图图像的宽度。单位:像素。 @param height 截图图像的高度。单位:像素。 @param errorCode 截图错误码。参看 ByteRTCSnapshotErrorCode{@link #ByteRTCSnapshotErrorCode}。 @param taskId 截图任务的编号,和 takeLocalSnapshotToFile:{@link #ByteRTCEngine#takeLocalSnapshotToFile} 的返回值一致。
inherited
rtcEngine$onLocalVideoSizeChanged$withFrameInfo(dynamic engine, dynamic videoSource, dynamic frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief 本地视频大小或旋转信息发生改变时,收到此回调。 @param engine ByteRTCEngine 对象 @param videoSource 本地视频源对象,仅在多流版本中有效。参看 ByteRTCVideoSource{@link #ByteRTCVideoSource}。 @param frameInfo 视频帧信息,参看 ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
override
rtcEngine$onLocalVideoStateChanged$withStreamState$withStreamError(dynamic engine, dynamic videoSource, dynamic state, dynamic error) FutureOr<void>
@detail callback @author shenpengliang @brief 本地视频流的状态发生改变时,收到该事件。 @param engine ByteRTCEngine 对象 @param videoSource 视频流对象,参看 ByteRTCVideoSource{@link #ByteRTCVideoSource}。 @param state 本地视频流的当前状态,参看 ByteRTCLocalVideoStreamState{@link #ByteRTCLocalVideoStreamState} @param error 本地视频状态改变时的错误码,参看 ByteRTCLocalVideoStreamError{@link #ByteRTCLocalVideoStreamError}
override
rtcEngine$onLoginResult$errorCode$elapsed(dynamic engine, dynamic uid, dynamic errorCode, dynamic elapsed) FutureOr<void>
@detail callback @author hanchenchen.c @brief 登录结果回调 @param engine ByteRTCEngine 对象 @param uid
登录用户 ID @param errorCode
登录结果
详见 ByteRTCLoginErrorCode{@link #ByteRTCLoginErrorCode}。 @param elapsed
从调用 login:uid:{@link #ByteRTCEngine#login:uid} 接口开始到返回结果所用时长。
单位为 ms。 @note 调用 login:uid:{@link #ByteRTCEngine#login:uid} 后,会收到此回调。
override
rtcEngine$onLogout(dynamic engine, dynamic reason) FutureOr<void>
@detail callback @author hanchenchen.c @brief 登出结果回调 @param engine ByteRTCEngine 对象 @param reason 用户登出的原因,参看 ByteRTCLogoutReason{@link #ByteRTCLogoutReason} @note 在以下两种情况下会收到此回调:调用 logout{@link #ByteRTCEngine#logout} 接口主动退出;或其他用户以相同 UserId 进行 login 导致本地用户被动登出。
override
rtcEngine$onMixedStreamEvent$withMixedStreamInfo$withErrorCode(dynamic engine, dynamic event, dynamic info, dynamic errorCode) FutureOr<void>
@valid since 3.60. @hidden(Linux) @detail callback @author lizheng @brief 合流转推 CDN / WTN 流状态回调 @param engine ByteRTCEngine 对象。 @param event 任务事件,参看 ByteRTCMixedStreamTaskEvent{@link #ByteRTCMixedStreamTaskEvent}。 @param info 任务详情,参看 ByteRTCMixedStreamTaskInfo{@link #ByteRTCMixedStreamTaskInfo}。 @param errorCode 任务错误码,参看 ByteRTCMixedStreamTaskErrorCode{@link #ByteRTCMixedStreamTaskErrorCode}。 @order 0
override
rtcEngine$onNetworkDetectionResult$quality$rtt$lostRate$bitrate$jitter(dynamic engine, dynamic type, dynamic quality, dynamic rtt, dynamic lostRate, dynamic bitrate, dynamic jitter) FutureOr<void>
@detail callback @author hanchenchen.c @brief 通话前网络探测结果的回调。
成功调用 startNetworkDetection:uplinkBandwidth:downlink:downlinkBandwidth:{@link #ByteRTCEngine#startNetworkDetection:uplinkBandwidth:downlink:downlinkBandwidth} 接口开始探测后,会在 3s 内首次收到该回调,之后每 2s 收到一次该回调。 @param engine ByteRTCEngine 对象 @param type 探测网络类型为上行/下行 @param quality 探测网络的质量,参看 ByteRTCNetworkQuality{@link #ByteRTCNetworkQuality}。 @param rtt 探测网络的 RTT,单位:ms @param lostRate 探测网络的丢包率 @param bitrate 探测网络的带宽,单位:kbps @param jitter 探测网络的抖动,单位:ms
override
rtcEngine$onNetworkDetectionStopped(dynamic engine, dynamic errorCode) FutureOr<void>
@detail callback @author hanchenchen.c @brief 通话前网络探测结束
以下情况将停止探测并收到一次本回调:
1. 当调用 stopNetworkDetection{@link #ByteRTCEngine#stopNetworkDetection} 接口停止探测后,会收到一次该回调;
2. 当收到远端/本端音频首帧后,停止探测;
3. 当探测超过 3 分钟后,停止探测;
4. 当探测链路断开一定时间之后,停止探测。 @param engine ByteRTCEngine 对象 @param errorCode
停止探测的原因类型,参考 ByteRTCNetworkDetectionStopReason{@link #ByteRTCNetworkDetectionStopReason}
override
rtcEngine$onNetworkTimeSynchronized() FutureOr<void>
@detail callback @author songxiaomeng.19 @brief 首次调用 getNetworkTimeInfo{@link #ByteRTCEngine#getNetworkTimeInfo} 后,SDK 内部启动网络时间同步,同步完成时会触发此回调。 @param engine ByteRTCEngine{@link #ByteRTCEngine} 对象
inherited
rtcEngine$onNetworkTypeChanged(dynamic engine, dynamic type) FutureOr<void>
@detail callback @author hanchenchen.c @brief SDK 当前网络连接类型改变回调。 @param engine ByteRTCEngine 对象 @param type SDK 当前的网络连接类型,详见 ByteRTCNetworkType{@link #ByteRTCNetworkType}
override
rtcEngine$onPerformanceAlarms$info$mode$reason$sourceWantedData(dynamic engine, dynamic streamId, dynamic info, dynamic mode, dynamic reason, dynamic data) FutureOr<void>
@detail callback @author panjian.fishing @brief 本地未通过 setPublishFallbackOption:{@link #ByteRTCEngine#setPublishFallbackOption} 开启发布性能回退,检测到设备性能不足时,收到此回调。
本地通过 setPublishFallbackOption:{@link #ByteRTCEngine#setPublishFallbackOption} 开启发布性能回退,因设备性能/网络原因,造成发布性能回退/恢复时,收到此回调。 @param engine ByteRTCEngine 实例 @param streamId 流 ID @param info 流信息, 参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param mode 指示本地是否开启发布回退功能。参看 ByteRTCPerformanceAlarmMode{@link #ByteRTCPerformanceAlarmMode}
- 当发布端未开启发布性能回退时,mode 值为 ByteRTCPerformanceAlarmModeNormal。 - 当发布端开启发布性能回退时,mode 值为 ByteRTCPerformanceAlarmModeSimulcast。 @param reason 告警原因,参看 ByteRTCPerformanceAlarmReason{@link #ByteRTCPerformanceAlarmReason} @param data 性能回退相关数据,详见 ByteRTCSourceWantedData{@link #ByteRTCSourceWantedData}。
override
rtcEngine$onPushPublicStreamResult$publicStreamId$errorCode(dynamic engine, dynamic roomId, dynamic streamId, dynamic errorCode) FutureOr<void>
@deprecated since 3.60, use rtcEngine:onMixedStreamEvent:withMixedStreamInfo:withErrorCode:{@link #ByteRTCEngineDelegate#rtcEngine:onMixedStreamEvent:withMixedStreamInfo:withErrorCode} instead. @detail callback @author qipengxiang @brief WTN 流发布结果回调。
调用 startPushMixedStream:withPushTargetConfig:withMixedConfig:{@link #ByteRTCEngine#startPushMixedStream:withPushTargetConfig:withMixedConfig}
接口或直接在服务端启动推 WTN 流功能后,你会通过此回调收到启动结果和推流过程中的错误。 @param engine engine 实例 @param roomId 发布 WTN 流的房间 ID @param streamId WTN 流 ID。 @param errorCode WTN 流发布结果状态码。 详见 ByteRTCPublicStreamErrorCode{@link #ByteRTCPublicStreamErrorCode}。
override
rtcEngine$onRecordingProgressUpdate$process$recording_info(dynamic engine, dynamic videoSource, dynamic process, dynamic recordingInfo) FutureOr<void>
@detail callback @author wangzhanqiang @brief 本地录制进度回调。
该回调由 startFileRecording:type:{@link #ByteRTCEngine#startFileRecording:type} 触发,录制状态正常时,系统每秒钟都会通过该回调提示录制进度。 @param engine ByteRTCEngine 对象 @param videoSource 视频源,参看 ByteRTCVideoSource{@link #ByteRTCVideoSource} @param process 录制进度,参看 ByteRTCRecordingProgress{@link #ByteRTCRecordingProgress} @param recordingInfo 录制文件的详细信息,参看 ByteRTCRecordingInfo{@link #ByteRTCRecordingInfo}
override
rtcEngine$onRecordingStateUpdate$state$error_code$recording_info(dynamic engine, dynamic videoSource, dynamic state, dynamic errorCode, dynamic recordingInfo) FutureOr<void>
@detail callback @author wangzhanqiang @brief 获取本地录制状态回调。
该回调由 startFileRecording:type:{@link #ByteRTCEngine#startFileRecording:type} 或 stopFileRecording:{@link #ByteRTCEngine#stopFileRecording} 触发。 @param engine ByteRTCEngine 对象 @param videoSource 视频源,参看 ByteRTCVideoSource{@link #ByteRTCVideoSource} @param state 录制状态,参看 ByteRTCRecordingState{@link #ByteRTCRecordingState} @param errorCode 录制错误码,参看 ByteRTCRecordingErrorCode{@link #ByteRTCRecordingErrorCode} @param recordingInfo 录制文件的详细信息,参看 ByteRTCRecordingInfo{@link #ByteRTCRecordingInfo}
override
rtcEngine$onRemoteAudioPropertiesReport$totalRemoteVolume(dynamic engine, List audioPropertiesInfos, dynamic totalRemoteVolume) FutureOr<void>
@detail callback @author huangshouqin @brief 远端用户进房后,本地调用 enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport} ,根据设置的 interval 值,本地会周期性地收到此回调,了解订阅的远端用户的瞬时音频信息。
远端用户的音频包括使用 RTC SDK 内部机制/自定义机制采集的麦克风音频和屏幕音频。 @param engine ByteRTCEngine 对象 @param audioPropertiesInfos 远端音频信息,其中包含音频流属性、房间 ID、用户 ID ,详见 ByteRTCRemoteAudioPropertiesInfo{@link #ByteRTCRemoteAudioPropertiesInfo}。 @param totalRemoteVolume 所有订阅的远端流混音后的音量,范围是 0,255
- 0,25 接近无声; - 25,75 为低音量; - 76,204 为中音量; - 205,255 为高音量。
override
rtcEngine$onRemoteAudioPropertiesReportEx(dynamic engine, List audioPropertiesInfos) FutureOr<void>
@hidden for internal use only @detail callback @author shenpengliang @brief 房间内用户暂停/恢复发送视频流时,房间内其他用户会收到此回调。 @param engine ByteRTCEngine 实例 @param roomId 房间 ID @param uid 暂停/恢复发送视频流的用户 ID。 @param muteState 视频流的发送状态。参看 ByteRTCMuteState{@link #ByteRTCMuteState}。
override
rtcEngine$onRemoteAudioStateChanged$info$state$reason(dynamic engine, dynamic streamId, dynamic info, dynamic state, dynamic reason) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief 订阅的远端音频流状态发生改变时,收到此回调。 @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param state 远端音频流的当前状态,详见 ByteRTCRemoteAudioState{@link #ByteRTCRemoteAudioState} @param reason 远端音频流状态改变的原因,详见 ByteRTCRemoteAudioStateChangeReason{@link #ByteRTCRemoteAudioStateChangeReason}
override
rtcEngine$onRemoteSnapshotTakenToFile$info$filePath$width$height$errorCode$taskId(dynamic engine, dynamic streamId, dynamic info, dynamic filePath, dynamic width, dynamic height, dynamic errorCode, dynamic taskId) FutureOr<void>
@detail callback @valid since 3.60. @brief 调用 takeRemoteSnapshotToFile:filePath:{@link #ByteRTCEngine#takeRemoteSnapshotToFile:filePath} 截取视频画面时,会收到此回调报告截图是否成功,以及截取的图片信息。 @param engine ByteRTCEngine 对象。 @param streamId 被截图的视频流 ID。 @param info 视频流信息,参考 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param filePath 截图文件的保存路径。 @param width 截图图像的宽度。单位:像素。 @param height 截图图像的高度。单位:像素。 @param errorCode 截图错误码。参看 ByteRTCSnapshotErrorCode{@link #ByteRTCSnapshotErrorCode}。 @param taskId 截图任务的编号,和 takeRemoteSnapshotToFile:filePath:{@link #ByteRTCEngine#takeRemoteSnapshotToFile:filePath} 的返回值一致。
override
rtcEngine$onRemoteVideoSizeChanged$info$withFrameInfo(dynamic engine, dynamic streamId, dynamic info, dynamic frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief 远端视频大小或旋转信息发生改变时,房间内订阅此视频流的用户会收到此回调。 @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param frameInfo 视频帧信息,参看 ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
override
rtcEngine$onRemoteVideoStateChanged$info$withVideoState$withVideoStateReason(dynamic engine, dynamic streamId, dynamic info, dynamic state, dynamic reason) FutureOr<void>
@detail callback @author shenpengliang @brief 远端视频流的状态发生改变时,房间内订阅此流的用户会收到该事件。 @param engine ByteRTCEngine 对象 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param state 远端视频流的当前状态,参看 ByteRTCRemoteVideoState{@link #ByteRTCRemoteVideoState} @param reason 远端视频流状态改变的原因,参看 ByteRTCRemoteVideoStateChangeReason{@link #ByteRTCRemoteVideoStateChangeReason} @note 本回调仅适用于主流,不适用于屏幕流。
override
rtcEngine$onRemoteVideoSuperResolutionModeChanged$info$withMode$withReason(dynamic engine, dynamic streamId, dynamic info, dynamic mode, dynamic reason) FutureOr<void>
@hidden not available on iOS @valid since 3.54 @detail callback @author yinkaisheng @brief 远端视频流的超分状态发生改变时,房间内订阅此流的用户会收到该回调。 @param engine ByteRTCEngine 实例 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param mode 超分模式,参看 ByteRTCVideoSuperResolutionMode{@link #ByteRTCVideoSuperResolutionMode}。 @param reason 超分模式改变原因,参看 ByteRTCVideoSuperResolutionModeChangedReason{@link #ByteRTCVideoSuperResolutionModeChangedReason}。
override
rtcEngine$onSEIMessageReceived$info$andMessage(dynamic engine, dynamic streamId, dynamic info, dynamic message) FutureOr<void>
@detail callback @author wangzhanqiang @brief 收到通过调用 sendSEIMessage:andRepeatCount:andCountPerFrame:{@link #ByteRTCEngine#sendSEIMessage:andRepeatCount:andCountPerFrame} 发送带有 SEI 消息的视频帧时,收到此回调。 @param engine 当前 ByteRTCEngine 实例。 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param message 收到的 SEI 消息内容
override
rtcEngine$onSEIStreamUpdate$info$eventType(dynamic engine, dynamic streamId, dynamic info, dynamic eventType) FutureOr<void>
@detail callback @author wangzhanqiang @brief 黑帧视频流发布状态回调。
在语音通话场景下,本地用户调用 sendSEIMessage:andRepeatCount:andCountPerFrame:{@link #ByteRTCEngine#sendSEIMessage:andRepeatCount:andCountPerFrame} 通过黑帧视频流发送 SEI 数据时,流的发送状态会通过该回调通知远端用户。
你可以通过此回调判断携带 SEI 数据的视频帧为黑帧,从而不对该视频帧进行渲染。 @param engine 当前 ByteRTCEngine 实例。 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param eventType 黑帧视频流状态,参看 ByteRTCSEIStreamEventType{@link #ByteRTCSEIStreamEventType}
override
rtcEngine$onServerMessageSendResult$error$message(dynamic engine, dynamic msgid, dynamic error, dynamic message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 给应用服务器发送消息的回调。 @param engine ByteRTCEngine 对象。 @param msgid 本条消息的 ID。
所有的 P2P 和 P2Server 消息共用一个 ID 序列。 @param error 消息发送结果。详见 ByteRTCUserMessageSendResult{@link #ByteRTCUserMessageSendResult}。 @param message 应用服务器收到 HTTP 请求后,在 ACK 中返回的信息。消息不超过 64 KB。 @note 本回调为异步回调。当调用 sendServerMessage:{@link #ByteRTCEngin e#sendServerMessage} 或 sendServerBinaryMessage:{@link #ByteEngin e#sendServerBinaryMessage} 接口发送消息后,会收到此回调。
override
rtcEngine$onServerParamsSetResult(dynamic engine, dynamic errorCode) FutureOr<void>
@detail callback @author hanchenchen.c @brief 设置应用服务器参数的返回结果 @param engine ByteRTCEngine 对象 @param errorCode
设置结果
- 返回 200,设置成功 - 返回其他,设置失败,详见 ByteRTCUserMessageSendResult{@link #ByteRTCUserMessageSendResult} @note 调用 setServerParams:url:{@link #ByteRTCEngine#setServerParams:url} 后,会收到此回调。
override
rtcEngine$onSimulcastSubscribeFallback$info$event(dynamic engine, dynamic streamId, dynamic info, dynamic event) FutureOr<void>
@detail callback @author panjian.fishing @brief 音视频流因网络环境变化等原因发生回退,或从回退中恢复时,触发该回调。 @param engine 当前 ByteRTCEngine 实例 @param streamId 流 ID @param info 流信息, 参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param event 流切换信息。详见 ByteRTCRemoteStreamSwitchEvent{@link #ByteRTCRemoteStreamSwitchEvent}。
override
rtcEngine$onSingleStreamEvent$withTaskId$withErrorCode(dynamic engine, dynamic event, dynamic taskId, dynamic errorCode) FutureOr<void>
@valid since 3.60. @detail callback @author lizheng @brief 单流转推 CDN 状态回调。 @param engine ByteRTCEngine 对象。 @param event 任务状态, 参看 ByteRTCSingleStreamTaskEvent{@link #ByteRTCSingleStreamTaskEvent}。 @param taskId 任务 ID。 @param errorCode 错误码,参看 ByteRTCSingleStreamTaskErrorCode{@link #ByteRTCSingleStreamTaskErrorCode}。
override
rtcEngine$onStreamSyncInfoReceived$info$streamType$data(dynamic engine, dynamic streamId, dynamic info, dynamic streamType, dynamic data) FutureOr<void>
@detail callback @author wangjunzheng @brief 音频流同步信息回调。可以通过此回调,在远端用户调用 sendStreamSyncInfo:config:{@link #ByteRTCEngine#sendStreamSyncInfo:config} 发送音频流同步消息后,收到远端发送的音频流同步信息。 @param engine 当前 ByteRTCEngine 实例。 @param streamId 远端流 ID。 @param info 远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。 @param streamType 媒体流类型,详见 ByteRTCSyncInfoStreamType{@link #ByteRTCSyncInfoStreamType} 。 @param data 消息内容。
override
rtcEngine$onSysStats(dynamic engine, dynamic stats) FutureOr<void>
@detail callback @author wangzhanqiang @brief 报告当前设备 cpu 与 memory 使用率,每 2s 触发一次。 @param engine ByteRTCEngine 对象 @param stats cpu 和 memory 使用率信息,详见 ByteRTCSysStats{@link #ByteRTCSysStats} 数据类型
override
rtcEngine$onUserBinaryMessageReceivedOutsideRoom$message(ByteRTCEngine engine, NSString uid, NSData message) FutureOr<void>
@detail callback @author hanchenchen.c @brief > 该接口将于 3.64 rtcEngine:onUserBinaryMessageReceivedOutsideRoom:uid:message:{@link #ByteRTCEngineDelegate#rtcEngine:onUserBinaryMessageReceivedOutsideRoom:uid:message} 代替。 @brief 收到房间外用户调用 sendUserBinaryMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserBinaryMessageOutsideRoom:message:config} 发来的二进制消息时,会收到此回调。 @param engine ByteRTCEngine 对象 @param uid 消息发送者 ID。 @param message 收到的二进制消息内容。
inherited
rtcEngine$onUserBinaryMessageReceivedOutsideRoom$uid$message(dynamic engine, dynamic msgid, dynamic uid, dynamic message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 收到房间外用户调用 sendUserBinaryMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserBinaryMessageOutsideRoom:message:config} 发来的二进制消息时,会收到此回调。 @param engine ByteRTCEngine 对象 @param msgid 消息编号。 @param uid 消息发送者 ID。 @param message 收到的二进制消息内容。
override
rtcEngine$onUserMessageReceivedOutsideRoom$message(ByteRTCEngine engine, NSString uid, NSString message) FutureOr<void>
@detail callback @author hanchenchen.c @brief > 该接口将于 3.64 rtcEngine:onUserMessageReceivedOutsideRoom:uid:message:{@link #ByteRTCEngineDelegate#rtcEngine:onUserMessageReceivedOutsideRoom:uid:message} 代替。 @brief 收到房间外用户调用 sendUserMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserMessageOutsideRoom:message:config} 发来的文本消息时,会收到此回调 @param engine ByteRTCEngine 对象。 @param uid 消息发送者 ID。 @param message 收到的文本消息内容。
inherited
rtcEngine$onUserMessageReceivedOutsideRoom$uid$message(dynamic engine, dynamic msgid, dynamic uid, dynamic message) FutureOr<void>
@detail callback @author hanchenchen.c @brief 收到房间外用户调用 sendUserMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserMessageOutsideRoom:message:config} 发来的文本消息时,会收到此回调 @param engine ByteRTCEngine 对象。 @param msgid 消息编号。 @param uid 消息发送者 ID。 @param message 收到的文本消息内容。
override
rtcEngine$onUserMessageSendResultOutsideRoom$error(dynamic engine, dynamic msgid, dynamic error) FutureOr<void>
@detail callback @author hanchenchen.c @brief 给房间外指定的用户发送消息的回调 @param engine ByteRTCEngine 对象 @param msgid
本条消息的 ID
所有的 P2P 和 P2Server 消息共用一个 ID 序列。 @param error
消息发送结果
详见 ByteRTCUserMessageSendResult{@link #ByteRTCUserMessageSendResult}。 @note 当调用 sendUserMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserMessageOutsideRoom:message:config} 或 sendUserBinaryMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserBinaryMessageOutsideRoom:message:config} 发送消息后,会收到此回调。
override
rtcEngine$onUserStartAudioCapture$info(dynamic engine, dynamic streamId, dynamic info) FutureOr<void>
@detail callback @author dixing @brief 房间内的可见用户调用 startAudioCapture{@link #ByteRTCEngine#startAudioCapture} 开启音频采集时,房间内其他用户会收到此回调。 @param engine ByteRTCEngine 实例 @param streamId 开启音频采集的远端流 ID @param info 开启音频采集的远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。
override
rtcEngine$onUserStartVideoCapture$info(dynamic engine, dynamic streamId, dynamic info) FutureOr<void>
@detail callback @author liuyangyang @brief 房间内的可见用户调用 startVideoCapture{@link #ByteRTCEngine#startVideoCapture} 开启内部视频采集时,房间中其他用户会收到此回调。 @param engine ByteRTCEngine 实例 @param streamId 视频流 ID @param info 视频流信息,详见 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。
override
rtcEngine$onUserStopAudioCapture$info(dynamic engine, dynamic streamId, dynamic info) FutureOr<void>
@detail callback @author dixing @brief 房间内的可见用户调用 stopAudioCapture{@link #ByteRTCEngine#stopAudioCapture} 关闭音频采集时,房间内其他用户会收到此回调。 @param engine ByteRTCEngine 实例 @param streamId 流 ID。 @param info 关闭音频采集的远端流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。
override
rtcEngine$onUserStopVideoCapture$info(dynamic engine, dynamic streamId, dynamic info) FutureOr<void>
@detail callback @author liuyangyang @brief 房间内的可见用户调用 stopVideoCapture{@link #ByteRTCEngine#stopVideoCapture} 关闭内部视频采集时,房间内其他用户会收到此回调。
若发布视频数据前未开启采集,房间内所有可见用户会收到此回调。 @param engine ByteRTCEngine 实例 @param streamId 视频流 ID @param info 视频流信息,详见 ByteRTCStreamInfo{@link #ByteRTCStreamInfo}。
override
rtcEngine$onVideoDenoiseModeChanged$withReason(dynamic engine, dynamic mode, dynamic reason) FutureOr<void>
@valid since 3.54 @hidden not available on iOS @detail callback @author Yujianli @brief 降噪模式状态变更回调。当降噪模式的运行状态发生改变,SDK 会触发该回调,提示用户降噪模式改变后的运行状态及状态发生改变的原因。 @param engine ByteRTCEngine 实例 @param mode 视频降噪模式,参看 ByteRTCVideoDenoiseMode{@link #ByteRTCVideoDenoiseMode}。 @param reason 视频降噪模式改变的原因,参看 ByteRTCVideoDenoiseModeChangedReason{@link #ByteRTCVideoDenoiseModeChangedReason}。
override
rtcEngine$onVideoDeviceStateChanged$device_type$device_state$device_error(dynamic engine, dynamic deviceID, dynamic deviceType, dynamic deviceState, dynamic deviceError) FutureOr<void>
@detail callback @author liuyangyang @brief 视频设备状态发生改变回调。当设备的视频状态发生改变时,SDK 会触发该回调,提示摄像头视频采集、屏幕视频采集等设备的状态。 @param engine 参看 ByteRTCEngine{@link #ByteRTCEngine}。 @param deviceID 设备 ID @param deviceType 设备类型,参看 ByteRTCVideoDeviceType{@link #ByteRTCVideoDeviceType}。 @param deviceState 设备状态,参看 ByteRTCMediaDeviceState{@link #ByteRTCMediaDeviceState}。 @param deviceError 设备错误类型,参看 ByteRTCMediaDeviceError{@link #ByteRTCMediaDeviceError}。
override
rtcEngine$onVideoDeviceWarning$deviceType$deviceWarning(dynamic engine, dynamic deviceId, dynamic deviceType, dynamic deviceWarning) FutureOr<void>
@detail callback @author liuyangyang @brief 视频设备警告回调。视频设备包括视频采集设备。 @param engine ByteRTCEngine 对象 @param deviceId 设备 ID @param deviceType 参看 ByteRTCVideoDeviceType{@link #ByteRTCVideoDeviceType} @param deviceWarning 参看 ByteRTCMediaDeviceWarning{@link #ByteRTCMediaDeviceWarning}
override
rtcEngine$onVideoFramePlayStateChanged$info$rtcUser$state(dynamic engine, dynamic streamId, dynamic info, dynamic user, dynamic state) FutureOr<void>
@detail callback @author shenpengliang @brief 视频首帧播放状态发生改变时,收到此回调。 @param engine ByteRTCEngine 对象。 @param streamId 视频流 ID @param info 视频流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user 视频流来源的用户信息,参看 ByteRTCUser{@link #ByteRTCUser} @param state 首帧播放状态,参看 ByteRTCFirstFramePlayState{@link #ByteRTCFirstFramePlayState}
override
rtcEngine$onVideoFrameSendStateChanged$info$rtcUser$state(dynamic engine, dynamic streamId, dynamic info, dynamic user, dynamic state) FutureOr<void>
@detail callback @author shenpengliang @brief 本地视频首帧发送状态发生改变时,收到此回调。 @param engine ByteRTCEngine 对象 @param streamId 视频流 ID @param info 视频流信息,参看 ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user 本地用户信息,详见 ByteRTCUser{@link #ByteRTCUser} @param state 首帧发送状态,详见 ByteRTCFirstFrameSendState{@link #ByteRTCFirstFrameSendState}
override
rtcEngine$onWarning(dynamic engine, dynamic code) FutureOr<void>
@detail callback @author panjian.fishing @brief 发生警告回调。
SDK 运行时出现了警告。SDK 通常会自动恢复,警告信息可以忽略。 @param engine ByteRTCEngine 对象。 @param code 警告代码,参看 ByteRTCWarningCode{@link #ByteRTCWarningCode}。
override
rtcEngineOnNetworkTimeSynchronized(ByteRTCEngine engine) FutureOr<void>
@detail callback @author songxiaomeng.19 @brief 首次调用 getNetworkTimeInfo{@link #ByteRTCEngine#getNetworkTimeInfo} 后,SDK 内部启动网络时间同步,同步完成时会触发此回调。 @param engine ByteRTCEngine{@link #ByteRTCEngine} 对象
inherited
sendInstanceGet<T>(String property) Future<T>
Get instance property
inherited
sendInstancePropertiesGet(dynamic nativeClass) Future<Map<String, dynamic>>
Get instance properties
inherited
sendInstanceSet(String property, dynamic value) Future<void>
Set instance property
inherited
toString() String
A string representation of this object.
inherited
updateInstance(dynamic instance) → void
inherited
updateResource(NativeResource resource) → void
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited