ByteRTCEngineDelegate class

Inheritance
  • Object
  • NativeClass
  • NativeObserverClass
  • ByteRTCEngineDelegate
Implementers

Constructors

ByteRTCEngineDelegate([NativeClassOptions? options])

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 Internal log callbacks.
SDK internal runtime will call back the log to the business side to facilitate troubleshooting. @param engine ByteRTCEngine object. @param dict Log content.
rtcEngine$onActiveSpeaker$uid(ByteRTCEngine engine, NSString roomId, NSString uid) FutureOr<void>
@detail callback @author zhangcaining @brief After calling enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport}, you will periodically receive this callback for the active speaker information. @param engine ByteRTCEngine object @param roomId Room ID. @param uid The user ID of the active speaker.
rtcEngine$onAudioAEDStateUpdate(ByteRTCEngine engine, ByteRTCAudioAEDType state) FutureOr<void>
@hidden for internal use only @detail callback @region Audio Management @author shiyayun @brief Callback about publishing status of the black frame video stream .
After enableAudioAEDReport, you will periodically receive this callback.
@param state Music scene detection result, see ByteRTCAudioAEDType{@link #ByteRTCAudioAEDType}.
rtcEngine$onAudioDeviceStateChanged$device_type$device_state$device_error(ByteRTCEngine engine, NSString deviceID, ByteRTCAudioDeviceType deviceType, ByteRTCMediaDeviceState deviceState, ByteRTCMediaDeviceError deviceError) FutureOr<void>
@detail callback @author dixing @brief Audio device state callback, returns the state of audio capture and audio playback devices. @param engine ByteRTCEngine instance @param deviceID Device ID @param deviceType Device type. See ByteRTCAudioDeviceType{@link #ByteRTCAudioDeviceType}. @param deviceState Device state. See ByteRTCMediaDeviceState{@link #ByteRTCMediaDeviceState}. @param deviceError Device error. See ByteRTCMediaDeviceError{@link #ByteRTCMediaDeviceError}.
rtcEngine$onAudioDeviceVolumeChanged$volume$muted(ByteRTCEngine engine, ByteRTCAudioDeviceType deviceType, int volume, bool muted) FutureOr<void>
@hidden(iOS) @detail callback @author caocun @brief Callback to notify you the volume of the audio device has been changed or when the device has been muted or unmuted. No need to activate the notification beforehand. @param engine ByteRTCEngine object @param deviceType Includes microphones and speakers. Refer to ByteRTCAudioDeviceType{@link #ByteRTCAudioDeviceType} for more details. @param volume Volume ranging 0, 255. When the volume turns to 0, muted turns to True. @param muted Whether is muted. When a speaker is muted, muted turns True but volume remains unchanged.
rtcEngine$onAudioDeviceWarning$deviceType$deviceWarning(ByteRTCEngine engine, NSString deviceId, ByteRTCAudioDeviceType deviceType, ByteRTCMediaDeviceWarning deviceWarning) FutureOr<void>
@detail callback @author dixing @brief Audio device warning callback. The audio devices includes audio capture devices and audio rendering devices. @param engine ByteRTCEngine object @param deviceId Device ID @param deviceType See ByteRTCAudioDeviceType{@link #ByteRTCAudioDeviceType} @param deviceWarning See ByteRTCMediaDeviceWarning{@link #ByteRTCMediaDeviceWarning}
rtcEngine$onAudioDumpStateChanged(ByteRTCEngine engine, ByteRTCAudioDumpStatus status) FutureOr<void>
@hidden for internal use only @detail callback @author songxiaomeng.19 @brief audio dump status change callback @param engine ByteRTCEngine object @param status audio dump status, see ByteRTCAudioDumpStatus{@link #ByteRTCAudioDumpStatus}. @note This callback is used to internally troubleshoot sound quality related exceptions, which developers need not pay attention to.
rtcEngine$onAudioFramePlayStateChanged$info$rtcUser$state(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCUser user, ByteRTCFirstFramePlayState state) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief Receive this callback when the audio first frame playback state changes @param engine ByteRTCEngine instance. @param streamId ID of the audio stream @param info Audio stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user User information from the audio stream. See ByteRTCUser{@link #ByteRTCUser} @param state First frame playback status. See ByteRTCFirstFramePlayState{@link #ByteRTCFirstFramePlayState}
rtcEngine$onAudioFrameSendStateChanged$info$rtcUser$state(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCUser user, ByteRTCFirstFrameSendState state) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief Receive this callback when the sending state of the first audio frame changes. @param engine ByteRTCEngine object @param streamId ID of the audio stream @param info Audio stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user Local user information. See ByteRTCUser{@link #ByteRTCUser} @param state First frame sending status. See ByteRTCFirstFrameSendState{@link #ByteRTCFirstFrameSendState}
rtcEngine$onAudioMixingPlayingProgress$progress(ByteRTCEngine engine, NSInteger mixId, int64_t progress) FutureOr<void>
@detail callback @author songxiaomeng.19 @brief Callback for playback progress of mixed audio files @param engine Current RTC SDK object @param mixId ID of the mixing task @param progress The current playback progress (ms) of the mixed audio file @note After calling setAudioMixingProgressInterval:interval: to set the time interval to a value greater than 0, or calling startAudioMixing:filePath:config: to set the time interval in ByteRTCAudioMixingConfig to a value greater than 0, the SDK will trigger the callback according to the set time interval.
rtcEngine$onAudioPlaybackDeviceTestVolume(ByteRTCEngine engine, int volume) FutureOr<void>
@hidden(iOS) @detail callback @author dixing @region Audio Device Management @brief Notification on the playing volume during the test for the local audio devices. @param engine ByteRTCEngine object @param volume Playing volume during the test for the local audio devices. The range is 0,255. @note Start an audio-device test by calling startAudioPlaybackDeviceTest:interval:{@link #ByteRTCAudioDeviceManager#startAudioPlaybackDeviceTest:interval} or startAudioDeviceRecordTest:{@link #ByteRTCAudioDeviceManager#startAudioDeviceRecordTest} will register this callback for regular notification on playing volume. You can set the time interval between each callback by passing a proper value when calling the API above.
rtcEngine$onAudioRecordingStateUpdate$error_code(ByteRTCEngine engine, ByteRTCAudioRecordingState state, ByteRTCAudioRecordingErrorCode errorCode) FutureOr<void>
rtcEngine$onAudioRouteChanged(ByteRTCEngine engine, ByteRTCAudioRoute device) FutureOr<void>
@hidden(macOS) @detail callback @author dixing @brief RTC notifies the audio route changes via this callback. @param engine ByteRTCEngine object @param device Current audio playback device. Refer to ByteRTCAudioRoute{@link #ByteRTCAudioRoute} for more information. @note Either of the following actions will lead to audio route switching. See Set the Audio Route.
rtcEngine$onAudioVADStateUpdate(ByteRTCEngine engine, ByteRTCAudioVADType state) FutureOr<void>
@detail callback @hidden 3.60 for internal use only @region Audio Management @author gengjunjie @brief Callback about voice detection .
After enableAudioVADReport, you will periodically receive this callback.
@param state Voice detection result, see ByteRTCAudioVADType{@link #ByteRTCAudioVADType}.
rtcEngine$onClientMixedFirstVideoFrame(ByteRTCEngine engine, NSString taskId) FutureOr<void>
@hidden for internal use only @detail callback @author liujingchao @brief Used for reporting events during pushing a single stream to CDN. @param taskId Task ID
rtcEngine$onCloudProxyConnected(ByteRTCEngine engine, NSInteger interval) FutureOr<void>
@detail callback @brief Receives the callback when you call startCloudProxy:{@link #ByteRTCEngine#startCloudProxy} to start cloud proxy, and the SDK connects the proxy server successfully. @param engine ByteRTCEngine object @param interval The interval in ms between starting cloud proxy and connects the cloud proxy server successfully.
rtcEngine$onConnectionStateChanged(ByteRTCEngine engine, ByteRTCConnectionState state) FutureOr<void>
@detail callback @author hanchenchen.c @brief SDK connection state change callback with signaling server. Triggered when the connection state changes. @param engine ByteRTCEngine object @param state The current connection status between the SDK and the signaling server. See ByteRTCConnectionState{@link #ByteRTCConnectionState}. @note Refer to Getting Connection Status for more details.
rtcEngine$onDeadLockError(ByteRTCEngine engine, ByteRTCDeadLockMsg deadlockMsg) FutureOr<void>
@hidden internal use only @valid since 3.57 @detail callback @brief Receive this callback when an internal thread is blocked. @param engine ByteRTCEngine object. @param deadLockMsg See ByteRTCDeadLockMsg{#ByteRTCDeadLockMsg}.
rtcEngine$onEchoTestResult(ByteRTCEngine engine, ByteRTCEchoTestResult result) FutureOr<void>
@detail callback @author qipengxiang @brief Callback about the call test result. @param engine ByteRTCEngine object @param result Test result, see ByteRTCEchoTestResult{@link #ByteRTCEchoTestResult}. @note The timing when this callback will be triggered is as follows:
- A device-related error occurred during the test; - After a successful test; - After stopping the test, provided that the audio/video playback was not received during the test due to non-device reasons.
rtcEngine$onEffectError$msg(ByteRTCEngine engine, ByteRTCEffectErrorType error, NSString msg) FutureOr<void>
@hidden internal use only @detail callback @brief When effect settings fail, this callback is received. @param engine ByteRTCEngine object. @param error Type of effect error. See ByteRTCEffectErrorType{@link #ByteRTCEffectErrorType} for details. @param msg Error message.
rtcEngine$onError(ByteRTCEngine engine, ByteRTCErrorCode errorCode) FutureOr<void>
@detail callback @author panjian.fishing @brief Error callback occurred. This callback is triggered when a network or media-related error occurs during the
SDK runtime and cannot be automatically recovered and you may need to intervene. @param engine ByteRTCEngine object. @param errorCode BigInt. See ByteRTCErrorCode{@link #ByteRTCErrorCode}.
rtcEngine$onExperimentalCallback(ByteRTCEngine engine, NSString param) FutureOr<void>
@hidden internal use only @valid since 3.60. @detail callback @author hegangjie @brief callback for experimental api @param param result of callback in JSON string
rtcEngine$onExtensionAccessError$msg(ByteRTCEngine engine, NSString extensionName, NSString msg) FutureOr<void>
@valid since 3.52 @detail callback @brief Failed to access the extension.
RTC SDK provides some features with extensions. Without implementing the extension, you cannot use the corresponding feature. @param engine ByteRTCEngine object. @param extensionName The name of extension. @param msg Error message.
rtcEngine$onExternalScreenFrameUpdate(ByteRTCEngine engine, ByteRTCFrameUpdateInfo frameUpdateInfo) FutureOr<void>
@hidden @detail callback @author zhoubohui @brief After calling setOriginalScreenVideoInfo:withOriginalCaptureHeight: to set the original width and height of the external shared-screen stream and setting the encoding mode to the automatic mode, you will receive this callback to re-capture the stream based on the recommended pixel and framerate by RTC. @param engine ByteRTCEngine object @param frameUpdateInfo The recommended pixel and framerate by RTC. See ByteRTCFrameUpdateInfo{@link #ByteRTCFrameUpdateInfo}.
rtcEngine$onFirstLocalAudioFrame(ByteRTCEngine engine, ByteRTCAudioSource audioSource) FutureOr<void>
rtcEngine$onFirstLocalVideoFrameCaptured$withFrameInfo(ByteRTCEngine engine, ByteRTCVideoSource videoSource, ByteRTCVideoFrameInfo frameInfo) FutureOr<void>
@detail callback @author zhangzhenyu.samuel @brief Receive this callback when the first locally captured video/screen share screen is rendered in the local view. @param engine ByteRTCEngine object @param videoSource Video source object. Refer to ByteRTCVideoSource{@link #ByteRTCVideoSource}. @param frameInfo Video frame information. See ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
rtcEngine$onFirstRemoteAudioFrame$info(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info) FutureOr<void>
@detail callback @author wangjunzheng @brief The subscriber will receive this callback when the first frame of the receiving audio stream begins to decode. The following situations are included:
1. The publisher publishes audio, including the initial publication and restart after cancellation.
2. After the publisher stops audio capture, they restart it. When using an external source, this involves stopping the stream and then streaming again.
3. After the publisher publishes audio, the subscriber cancels the subscription to audio and then re-subscribes to it. @param engine ByteRTCEngine object @param streamId ID of Remote stream information. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @note The callback will be received when the user has just received each audio stream in the room.
rtcEngine$onFirstRemoteVideoFrameDecoded$info$withFrameInfo(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCVideoFrameInfo frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief The subscriber will receive this callback when the first frame of the receiving video stream begins to decode. The following situations are included:
1. The publisher publishes video, including the initial publication and restart after cancellation.
2. After the publisher stops video capture, they restart it. When using an external source, this involves stopping the stream and then streaming again.
3. After the publisher publishes video, the subscriber cancels the subscription to video and then re-subscribes to it. @param engine ByteRTCEngine object @param streamId ID of Remote stream information. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param frameInfo Video frame information. See ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo} @note - For main stream, after joining the room, the subscriber will receive this callback only when the publisher publishes video stream for the first time. - For screen-sharing stream, the subscriber will receive this callback every time the publisher publishes or republishes the screen video stream.
rtcEngine$onFirstRemoteVideoFrameRendered$info$withFrameInfo(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCVideoFrameInfo frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief The subscriber will receive this callback when the first frame of the receiving video stream begins to render. The following situations are included:
1. The publisher publishes video, including the initial publication and restart after cancellation.
2. After the publisher stops video capture, they restart it. When using an external source, this involves stopping the stream and then streaming again.
3. After the publisher publishes video, the subscriber cancels the subscription to video and then re-subscribes to it. @param engine ByteRTCEngine object @param streamId ID of Remote stream information. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param frameInfo Video frame information. See ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
rtcEngine$onGetPeerOnlineStatus$status(ByteRTCEngine engine, NSString peerUserId, ByteRTCUserOnlineStatus status) FutureOr<void>
@detail callback @author hanchenchen.c @brief Returns the result of querying the login status of the peer or local user @param engine ByteRTCEngine object @param peerUserId
User ID to query @param status
User login status of the query
See ByteRTCUserOnlineStatus{@link #ByteRTCUserOnlineStatus}. @note You must first call getPeerOnlineStatus:{@link #ByteRTCEngine#getPeerOnlineStatus} to receive this callback.
rtcEngine$onHardwareEchoDetectionResult(ByteRTCEngine engine, ByteRTCHardwareEchoDetectionResult result) FutureOr<void>
@detail callback @brief Callback that notifies you the result of the echo detection before a call @param engine ByteRTCEngine object. @param result Refer to ByteRTCHardwareEchoDetectionResult{@link #ByteRTCHardwareEchoDetectionResult} for more details. @note - This callback notifies you the result of the echo detection by calling startHardwareEchoDetection:{@link #ByteRTCEngine#startHardwareEchoDetection}. - We recommend to call stopHardwareEchoDetection{@link #ByteRTCEngine#stopHardwareEchoDetection} to stop the detection. - Listen to ByteRTCMediaDeviceWarningDetectLeakEcho in the callback of rtcEngine:onAudioDeviceWarning:deviceType:deviceWarning:{@link #ByteRTCEngineDelegate#rtcEngine:onAudioDeviceWarning:deviceType:deviceWarning} for the echo issue during a call.
rtcEngine$onLicenseWillExpire(ByteRTCEngine engine, NSInteger days) FutureOr<void>
@hidden internal use only @detail callabck @author wangyu.1705 @brief License expiration time reminder @param engine ByteRTCEngine{@link #ByteRTCEngine} object. @param days Expiration time in days
rtcEngine$onLocalAudioPropertiesReport(ByteRTCEngine engine, NSArray<ByteRTCLocalAudioPropertiesInfo> audioPropertiesInfos) FutureOr<void>
@detail callback @author huangshouqin @brief After calling enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport}, you will periodically receive this callback for the instantaneous information about local audio.
Local audio includes the microphone audio, the screen audio captured using RTC SDK internal mechanisms, and locally mixing audio. @param engine ByteRTCEngine object @param audioPropertiesInfos See ByteRTCLocalAudioPropertiesInfo{@link #ByteRTCLocalAudioPropertiesInfo}. On the macOS, you can set the volume of the local audio via setAudioCaptureDeviceVolume:.
rtcEngine$onLocalAudioStateChanged$state$error(ByteRTCEngine engine, ByteRTCAudioSource audioSource, ByteRTCLocalAudioStreamState state, ByteRTCLocalAudioStreamError error) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief Receive this callback when the state of the local audio stream changes. @param engine ByteRTCEngine object @param audioSource Audio stream object. See ByteRTCAudioSource{@link #ByteRTCAudioSource}. @param state The current state of the local audio device. See ByteRTCLocalAudioStreamState{@link #ByteRTCLocalAudioStreamState} @param error Error code when the state of the local audio stream changes. See ByteRTCLocalAudioStreamError{@link #ByteRTCLocalAudioStreamError}
rtcEngine$onLocalProxyStateChanged$withProxyState$withProxyError(ByteRTCEngine engine, ByteRTCLocalProxyType type, ByteRTCLocalProxyState state, ByteRTCLocalProxyError error) FutureOr<void>
@detail callback @author keshixing.rtc @brief Callback on local proxy connection. After calling setLocalProxy:{@link #ByteRTCEngine#setLocalProxy} to set local proxies, you will receive this callback that informs you of the states of local proxy connection. @param engine ByteRTCEngine object @param type The types of local proxies. Refer to ByteRTCLocalProxyType{@link #ByteRTCLocalProxyType} for details. @param state The states of local proxy connection. Refer to ByteRTCLocalProxyState{@link #ByteRTCLocalProxyState} for details. @param error The errors of local proxy connection. Refer to ByteRTCLocalProxyError{@link #ByteRTCLocalProxyError} for details.
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 Triggered after calling takeLocalSnapshotToFile:{@link #ByteRTCEngine#takeLocalSnapshotToFile} to report whether the snapshot is taken successfully and provide details of the snapshot image. @param engine ByteRTCEngine object. @param videoSource Video source. See ByteRTCVideoSource{@link #ByteRTCVideoSource} @param filePath The path where the snapshot file is saved. @param width The width (px) of the snapshot image. @param height The height (px) of the snapshot image. @param errorCode The error code for the snapshot task. See ByteRTCSnapshotErrorCode{@link #ByteRTCSnapshotErrorCode} for specific indications. @param taskId The index of the snapshot task, which matches the return value of takeLocalSnapshotToFile:{@link #ByteRTCEngine#takeLocalSnapshotToFile}.
rtcEngine$onLocalVideoSizeChanged$withFrameInfo(ByteRTCEngine engine, ByteRTCVideoSource videoSource, ByteRTCVideoFrameInfo frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief Receive this callback when local video size or rotation information changes. @param engine ByteRTCEngine object @param videoSource Local video source object. This parameter is valid only in the multi-stream version. See ByteRTCVideoSource{@link #ByteRTCVideoSource}. @param frameInfo Frame information. See ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
rtcEngine$onLocalVideoStateChanged$withStreamState$withStreamError(ByteRTCEngine engine, ByteRTCVideoSource videoSource, ByteRTCLocalVideoStreamState state, ByteRTCLocalVideoStreamError error) FutureOr<void>
@detail callback @author shenpengliang @brief Receive this event when the state of the local video stream changes. @param engine ByteRTCEngine object @param videoSource Video stream object. See ByteRTCVideoSource{@link #ByteRTCVideoSource}. @param state Current state of local video stream. See ByteRTCLocalVideoStreamState{@link #ByteRTCLocalVideoStreamState} @param error Error code when local video state changes. See ByteRTCLocalVideoStreamError{@link #ByteRTCLocalVideoStreamError}
rtcEngine$onLoginResult$errorCode$elapsed(ByteRTCEngine engine, NSString uid, ByteRTCLoginErrorCode errorCode, NSInteger elapsed) FutureOr<void>
@detail callback @author hanchenchen.c @brief Login result callback @param engine ByteRTCEngine object @param uid
Login user ID @param errorCode
Login result
See ByteRTCLoginErrorCode{@link #ByteRTCLoginErrorCode}. @param elapsed
The time it takes from calling the login:uid:{@link #ByteRTCEngine#login:uid} interface to return the result.
Is in ms. @note Receive this callback after calling login:uid:{@link #ByteRTCEngine#login:uid}.
rtcEngine$onLogout(ByteRTCEngine engine, ByteRTCLogoutReason reason) FutureOr<void>
@detail callback @author hanchenchen.c @brief Callback of the logout result @param engine ByteRTCEngine object @param reason It describes the reason why users log out. See ByteRTCLogoutReason{@link #ByteRTCLogoutReason} @note You will receive this callback when calling logout{@link #ByteRTCEngine#logout} or when the local user is kicked out because another user logs in with the same UserId.
rtcEngine$onMixedStreamEvent$withMixedStreamInfo$withErrorCode(ByteRTCEngine engine, ByteRTCMixedStreamTaskEvent event, ByteRTCMixedStreamTaskInfo info, ByteRTCMixedStreamTaskErrorCode errorCode) FutureOr<void>
@valid since 3.60. Since version 3.60, this callback replaces the onStreamMixingEvent:taskId:error:mixType: and rtcEngine:onPushPublicStreamResult:publicStreamId:errorCode: methods for the functions described below. If you have upgraded to version 3.60 or later and are still using these methods, please migrate to this callback. @hidden(Linux) @detail callback @author lizheng @brief Reports events during pushing a mixed stream to CDN or a WTN stream. @param engine ByteRTCEngine object. @param event Stream mixing and pushing status, see ByteRTCMixedStreamTaskEvent{@link #ByteRTCMixedStreamTaskEvent}. @param info Task details, see ByteRTCMixedStreamTaskInfo{@link #ByteRTCMixedStreamTaskInfo}. @param errorCode Errors occurring during the pushing process. See ByteRTCMixedStreamTaskErrorCode{@link #ByteRTCMixedStreamTaskErrorCode}. @order 0
rtcEngine$onNetworkDetectionResult$quality$rtt$lostRate$bitrate$jitter(ByteRTCEngine engine, ByteRTCNetworkDetectionLinkType type, ByteRTCNetworkQuality quality, int rtt, double lostRate, int bitrate, int jitter) FutureOr<void>
@detail callback @author hanchenchen.c @brief Callback of pre-call network detection result.
After successfully calling startNetworkDetection:uplinkBandwidth:downlink:downlinkBandwidth:{@link #ByteRTCEngine#startNetworkDetection:uplinkBandwidth:downlink:downlinkBandwidth}, you will receive this callback for the first time in 3s and every 2s thereafter. @param engine ByteRTCEngine instance. @param type Identifies the network type as uplink/downlink. @param quality Network quality, see ByteRTCNetworkQuality{@link #ByteRTCNetworkQuality}. @param rtt Network RTT in ms. @param lostRate Packet loss rate. @param bitrate Network bandwidth in kbps. @param jitter Network jitter in ms
rtcEngine$onNetworkDetectionStopped(ByteRTCEngine engine, ByteRTCNetworkDetectionStopReason errorCode) FutureOr<void>
@detail callback @author hanchenchen.c @brief Pre-call network probing ends
The following will stop detection and receive this primary callback:
1. This callback is received once when the stopNetworkDetection{@link #ByteRTCEngine#stopNetworkDetection} interface is called to stop probing;
2. Stop detection when the first frame of remote/local audio is received;
3. Stop detecting when the detection exceeds 3 minutes;
4. When the probe link is disconnected for a certain period of time, the probe is stopped. @param engine ByteRTCEngine object @param errorCode
See ByteRTCNetworkDetectionStopReason{@link #ByteRTCNetworkDetectionStopReason} for reasons of stopping probing.
rtcEngine$onNetworkTimeSynchronized() FutureOr<void>
@detail callback @author songxiaomeng.19 @brief After calling getNetworkTimeInfo{@link #ByteRTCEngine#getNetworkTimeInfo} for the first time, the SDK starts network time synchronization internally. This callback will be triggered when the synchronization is completed. @param engine See ByteRTCEngine{@link #ByteRTCEngine}.
rtcEngine$onNetworkTypeChanged(ByteRTCEngine engine, ByteRTCNetworkType type) FutureOr<void>
@detail callback @author hanchenchen.c @brief SDK current network connection type change callback. @param engine ByteRTCEngine object @param type SDK The current network connection type. See ByteRTCNetworkType{@link #ByteRTCNetworkType}
rtcEngine$onPerformanceAlarms$info$mode$reason$sourceWantedData(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCPerformanceAlarmMode mode, ByteRTCPerformanceAlarmReason reason, ByteRTCSourceWantedData data) FutureOr<void>
@detail callback @author panjian.fishing @brief When the publish performance fallback setPublishFallbackOption:{@link #ByteRTCEngine#setPublishFallbackOption} is not turned on locally, and when insufficient device performance is detected, this callback is received.
When the setPublishFallbackOption:{@link #ByteRTCEngine#setPublishFallbackOption} is locally turned on, and when the publish performance fallback/recovery is caused due to device performance/network reasons, this callback is received. @param engine ByteRTCEngine object @param streamId Stream ID @param info Stream information, see ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param mode Indicates whether the release fallback function is turned on locally. See ByteRTCPerformanceAlarmMode{@link #ByteRTCPerformanceAlarmMode}
- When the publiiher does not turn on the release performance fallback, the mode value is ByteRTCPerformanceAlarmModeNormal. - When the publisher turns on the release performance fallback, the mode value is ByteRTCPerformanceAlarmModeSimulcast. @param reason For alarm reasons. See ByteRTCPerformanceAlarmReason{@link #ByteRTCPerformanceAlarmReason} @param data Performance fallback related data. See ByteRTCSourceWantedData{@link #ByteRTCSourceWantedData}.
rtcEngine$onPushPublicStreamResult$publicStreamId$errorCode(ByteRTCEngine engine, NSString roomId, NSString streamId, ByteRTCPublicStreamErrorCode errorCode) FutureOr<void>
@deprecated since 3.60, use rtcEngine:onMixedStreamEvent:withMixedStreamInfo:withErrorCode:{@link #ByteRTCEngineDelegate#rtcEngine:onMixedStreamEvent:withMixedStreamInfo:withErrorCode} instead. @hidden currently not available @detail callback @brief Callback of the result of publishing the WTN stream
You will be informed of the result of publishing the WTN stream by this callback after calling startPushMixedStream:withPushTargetConfig:withMixedConfig:{@link #ByteRTCEngine#startPushMixedStream:withPushTargetConfig:withMixedConfig}. @param engine engine instance @param roomId Room ID from which the WTN stream is published @param streamId ID of the WTN stream @param errorCode Result and status code of publishing the WTN stream. Refer to ByteRTCPublicStreamErrorCode{@link #ByteRTCPublicStreamErrorCode} for details.
rtcEngine$onRecordingProgressUpdate$process$recording_info(ByteRTCEngine engine, ByteRTCVideoSource videoSource, ByteRTCRecordingProgress process, ByteRTCRecordingInfo recordingInfo) FutureOr<void>
@detail callback @author wangzhanqiang @brief Local recording progress callback.
This callback is triggered by startFileRecording:type:{@link #ByteRTCEngine#startFileRecording:type}. When the recording state is normal, the system will prompt the recording progress through this callback every second. @param engine ByteRTCEngine object @param videoSource Video source. See ByteRTCVideoSource{@link #ByteRTCVideoSource} @param process Recording progress. See ByteRTCRecordingProgress{@link #ByteRTCRecordingProgress} @param recordingInfo Details of the recorded file. See ByteRTCRecordingInfo{@link #ByteRTCRecordingInfo}
rtcEngine$onRecordingStateUpdate$state$error_code$recording_info(ByteRTCEngine engine, ByteRTCVideoSource videoSource, ByteRTCRecordingState state, ByteRTCRecordingErrorCode errorCode, ByteRTCRecordingInfo recordingInfo) FutureOr<void>
@detail callback @author wangzhanqiang @brief Get local recording status callback.
The callback is triggered by either startFileRecording:type:{@link #ByteRTCEngine#startFileRecording:type} or stopFileRecording:{@link #ByteRTCEngine#stopFileRecording}. @param engine ByteRTCEngine object @param videoSource Video source. See ByteRTCVideoSource{@link #ByteRTCVideoSource} @param state Recording status. See ByteRTCRecordingState{@link #ByteRTCRecordingState} @param errorCode Recording error code. See ByteRTCRecordingErrorCode{@link #ByteRTCRecordingErrorCode} @param recordingInfo Recording file details. See ByteRTCRecordingInfo{@link #ByteRTCRecordingInfo}
rtcEngine$onRemoteAudioPropertiesReport$totalRemoteVolume(ByteRTCEngine engine, NSArray<ByteRTCRemoteAudioPropertiesInfo> audioPropertiesInfos, NSInteger totalRemoteVolume) FutureOr<void>
@detail callback @author huangshouqin @brief After calling enableAudioPropertiesReport:{@link #ByteRTCEngine#enableAudioPropertiesReport}, you will periodically receive this callback for the instantaneous information about the subscribed remote audio streams.
The remote audio streams includes the microphone audio and screen audio collected using the RTC SDK internal mechanism/custom mechanism. @param engine ByteRTCEngine object @param audioPropertiesInfos See ByteRTCRemoteAudioPropertiesInfo{@link #ByteRTCRemoteAudioPropertiesInfo}. @param totalRemoteVolume The volume of the mixing of all the subscribed audio streams. The range is 0,255.
- 0,25 Is close to silent; - 25,75 Is low volume; - 76,204 Is medium volume; - 205,255 Is high volume.
rtcEngine$onRemoteAudioPropertiesReportEx(ByteRTCEngine engine, NSArray<ByteRTCRemoteAudioPropertiesInfo> audioPropertiesInfos) FutureOr<void>
@hidden for internal use only @detail callback @author shenpengliang @brief Transmission state change of an video stream in the room triggers this callback. @param engine ByteRTCEngine instance @param roomId Room ID. @param uid The user who changes his/her transmission state of the video streams @param muteState Transmission state of the video streams. Refer to ByteRTCMuteState{@link #ByteRTCMuteState} for more details.
rtcEngine$onRemoteAudioStateChanged$info$state$reason(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCRemoteAudioState state, ByteRTCRemoteAudioStateChangeReason reason) FutureOr<void>
@detail callback @author zhangyuanyuan.0101 @brief Receive this callback when the state of the remote audio stream subscribed to changes. @param engine ByteRTCEngine object @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param state The current state of the remote audio stream. See ByteRTCRemoteAudioState{@link #ByteRTCRemoteAudioState} @param reason The reason for the change in the state of the remote audio stream. See ByteRTCRemoteAudioStateChangeReason{@link #ByteRTCRemoteAudioStateChangeReason}
rtcEngine$onRemoteSnapshotTakenToFile$info$filePath$width$height$errorCode$taskId(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, NSString filePath, NSInteger width, NSInteger height, ByteRTCSnapshotErrorCode errorCode, NSInteger taskId) FutureOr<void>
@detail callback @valid since 3.60. @brief Triggered after calling takeRemoteSnapshotToFile:filePath:{@link #ByteRTCEngine#takeRemoteSnapshotToFile:filePath} to report whether the snapshot is taken successfully and provide details of the snapshot image. @param engine ByteRTCEngine object. @param streamId ID of the video stream for taking snapshot. @param info Stream information, see ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param filePath The path where the snapshot file is saved. @param width The width (px) of the snapshot image. @param height The height (px) of the snapshot image. @param errorCode The error code for the snapshot task. See ByteRTCSnapshotErrorCode{@link #ByteRTCSnapshotErrorCode} for specific indications. @param taskId The index of the snapshot task, which matches the return value of takeRemoteSnapshotToFile:filePath:{@link #ByteRTCEngine#takeRemoteSnapshotToFile:filePath}.
rtcEngine$onRemoteVideoSizeChanged$info$withFrameInfo(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCVideoFrameInfo frameInfo) FutureOr<void>
@detail callback @author zhushufan.ref @brief Users in the room who subscribe to this video stream receive this callback when the remote video size or rotation information changes. @param engine ByteRTCEngine object @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param frameInfo Video frame information. See ByteRTCVideoFrameInfo{@link #ByteRTCVideoFrameInfo}
rtcEngine$onRemoteVideoStateChanged$info$withVideoState$withVideoStateReason(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCRemoteVideoState state, ByteRTCRemoteVideoStateChangeReason reason) FutureOr<void>
@detail callback @author shenpengliang @brief When the state of the remote video stream changes, users in the room who subscribe to this stream will receive the event. @param engine ByteRTCEngine object @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param state The current state of the remote video stream. See ByteRTCRemoteVideoState{@link #ByteRTCRemoteVideoState} @param reason The reason for the change in the state of the remote video stream. See ByteRTCRemoteVideoStateChangeReason{@link #ByteRTCRemoteVideoStateChangeReason} @note This callback is only applicable to the main stream and not applicable to the screen stream.
rtcEngine$onRemoteVideoSuperResolutionModeChanged$info$withMode$withReason(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCVideoSuperResolutionMode mode, ByteRTCVideoSuperResolutionModeChangedReason reason) FutureOr<void>
@hidden not available @detail callback @author yinkaisheng @brief When the super resolution mode of a remote video stream changes, users in the room who subscribe to this stream will receive this callback. @param engine ByteRTCEngine object @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param mode Super resolution mode. See ByteRTCVideoSuperResolutionMode{@link #ByteRTCVideoSuperResolutionMode}. @param reason Remote video stream super resolution mode change reason. See ByteRTCVideoSuperResolutionModeChangedReason{@link #ByteRTCVideoSuperResolutionModeChangedReason}
rtcEngine$onSEIMessageReceived$info$andMessage(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, NSData message) FutureOr<void>
@detail callback @author wangzhanqiang @brief Receive this callback when you receive a video frame with a SEI message by calling sendSEIMessage:andRepeatCount:andCountPerFrame:{@link #ByteRTCEngine#sendSEIMessage:andRepeatCount:andCountPerFrame}. @param engine Current ByteRTCEngine instance @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param message Received SEI message content
rtcEngine$onSEIStreamUpdate$info$eventType(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCSEIStreamEventType eventType) FutureOr<void>
@detail callback @author wangzhanqiang @brief Callback about publishing status of the black frame video stream.
In a voice call scenario, when the local user calls sendSEIMessage:andRepeatCount:andCountPerFrame:{@link #ByteRTCEngine#sendSEIMessage:andRepeatCount:andCountPerFrame} to send SEI data with a black frame, the sending status of the stream is notified to the remote user through this callback.
You can tell from this callback that the video frame carrying SEI data is a black frame and thus not render that video frame. @param engine Current ByteRTCEngine instance @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param eventType State of the black frame video stream, see ByteRTCSEIStreamEventType{@link #ByteRTCSEIStreamEventType}.
rtcEngine$onServerMessageSendResult$error$message(ByteRTCEngine engine, int64_t msgid, ByteRTCUserMessageSendResult error, NSData message) FutureOr<void>
@detail callback @author hanchenchen.c @brief Callback to send a message to the application server. @param engine ByteRTCEngine object. @param msgid The ID of this message. All P2P and P2Server messages share a single ID sequence. @param error Message sending result, see ByteRTCUserMessageSendResult{@link #ByteRTCUserMessageSendResult}. @param message The message returned in ACK when the application server receives HTTP request. The message should not exceed 64 KB. @note This callback is asynchronous. Receive this callback when a message is sent by calling the sendServerMessage:{@link #ByteRTCEngine#sendServerMessage} or sendServerBinaryMessage:{@link #ByteRTCEngine#sendServerBinaryMessage} interface.
rtcEngine$onServerParamsSetResult(ByteRTCEngine engine, NSInteger errorCode) FutureOr<void>
@detail callback @author hanchenchen.c @brief Set the return result of the application server parameter @param engine ByteRTCEngine object @param errorCode
- 200, set successfully - != 200: Failure. Refer to ByteRTCUserMessageSendResult{@link #ByteRTCUserMessageSendResult} for details. @note Receive this callback after calling setServerParams:url:{@link #ByteRTCEngine#setServerParams:url}.
rtcEngine$onSimulcastSubscribeFallback$info$event(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCRemoteStreamSwitchEvent event) FutureOr<void>
@detail callback @author panjian.fishing @brief Once the fallback option is set, fillback or reverting from a Fallback of a media stream will trigger this callback. @param engine Current ByteRTCEngine instance @param streamId Stream ID @param info Stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param event Information of stream switching. Refer to ByteRTCRemoteStreamSwitchEvent{@link #ByteRTCRemoteStreamSwitchEvent} for more details.
rtcEngine$onSingleStreamEvent$withTaskId$withErrorCode(ByteRTCEngine engine, ByteRTCSingleStreamTaskEvent event, NSString taskId, ByteRTCSingleStreamTaskErrorCode errorCode) FutureOr<void>
@valid since 3.60. @detail callback @author lizheng @brief Reports events during pushing a single stream to CDN. @param engine ByteRTCEngine object. @param event Stream pushing status, see ByteRTCSingleStreamTaskEvent{@link #ByteRTCSingleStreamTaskEvent}. @param taskId Task ID. @param errorCode Errors occurring during the pushing process. See ByteRTCSingleStreamTaskErrorCode{@link #ByteRTCSingleStreamTaskErrorCode}.
rtcEngine$onStreamSyncInfoReceived$info$streamType$data(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCSyncInfoStreamType streamType, NSData data) FutureOr<void>
@detail callback @author wangjunzheng @brief Audio stream synchronization information callback. You can use this callback to receive audio stream synchronization information sent remotely after the remote user calls sendStreamSyncInfo:config:{@link #ByteRTCEngine#sendStreamSyncInfo:config} to send an audio stream synchronization message. @param engine Current ByteRTCEngine instance. @param streamId ID of Remote stream. @param info Remote stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}. @param streamType Media stream type. See ByteRTCSyncInfoStreamType{@link #ByteRTCSyncInfoStreamType}. @param data Message content.
rtcEngine$onSysStats(ByteRTCEngine engine, ByteRTCSysStats stats) FutureOr<void>
@detail callback @author wangzhanqiang @brief Report the current device CPU and memory usage, which is triggered every 2s. @param engine ByteRTCEngine object @param stats Cpu and memory usage information. See ByteRTCSysStats{@link #ByteRTCSysStats} data type
rtcEngine$onUserBinaryMessageReceivedOutsideRoom$message(ByteRTCEngine engine, NSString uid, NSData message) FutureOr<void>
@detail callback @author hanchenchen.c @brief > This interface will be deprecated since version 3.64. Use rtcEngine:onUserBinaryMessageReceivedOutsideRoom:uid:message:{@link #ByteRTCEngineDelegate#rtcEngine:onUserBinaryMessageReceivedOutsideRoom:uid:message} instead. @brief Receive this callback when you receive a binary message from an out-of-room user call sendUserBinaryMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserBinaryMessageOutsideRoom:message:config}. @param engine ByteRTCEngine object @param uid User ID of the message sender. @param message The content of the received binary message.
rtcEngine$onUserBinaryMessageReceivedOutsideRoom$uid$message(ByteRTCEngine engine, NSInteger msgid, NSString uid, NSData message) FutureOr<void>
@detail callback @author hanchenchen.c @brief Receive this callback when you receive a binary message from an out-of-room user call sendUserBinaryMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserBinaryMessageOutsideRoom:message:config}. @param engine ByteRTCEngine object @param msgid Message number. @param uid User ID of the message sender. @param message The content of the received binary message.
rtcEngine$onUserMessageReceivedOutsideRoom$message(ByteRTCEngine engine, NSString uid, NSString message) FutureOr<void>
@detail callback @author hanchenchen.c @brief > This interface will be deprecated since version 3.64. Use rtcEngine:onUserMessageReceivedOutsideRoom:uid:message:{@link #ByteRTCEngineDelegate#rtcEngine:onUserMessageReceivedOutsideRoom:uid:message} instead. @brief Receive this callback when you receive a text message from an out-of-room user calling sendUserMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserMessageOutsideRoom:message:config} @param engine ByteRTCEngine object. @param uid User ID of the message sender. @param message The content of the received text message.
rtcEngine$onUserMessageReceivedOutsideRoom$uid$message(ByteRTCEngine engine, NSInteger msgid, NSString uid, NSString message) FutureOr<void>
@detail callback @author hanchenchen.c @brief Receive this callback when you receive a text message from an out-of-room user calling sendUserMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserMessageOutsideRoom:message:config} @param engine ByteRTCEngine object @param msgid Message number. @param uid User ID of the message sender. @param message The content of the received text message.
rtcEngine$onUserMessageSendResultOutsideRoom$error(ByteRTCEngine engine, NSInteger msgid, ByteRTCUserMessageSendResult error) FutureOr<void>
@detail callback @author hanchenchen.c @brief A callback that sends a message to a specified user outside the room @param engine ByteRTCEngine object @param msgid
The ID of this message
All P2P and P2Server messages share a single ID sequence. @param error
Message sending result
See ByteRTCUserMessageSendResult{@link #ByteRTCUserMessageSendResult}. @note Receive this callback when you send a message by calling sendUserMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserMessageOutsideRoom:message:config} or sendUserBinaryMessageOutsideRoom:message:config:{@link #ByteRTCEngine#sendUserBinaryMessageOutsideRoom:message:config}.
rtcEngine$onUserStartAudioCapture$info(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info) FutureOr<void>
@detail callback @author dixing @brief The remote clients in the room will be informed of the state change via this callback after the visible user starts audio capture by calling startAudioCapture{@link #ByteRTCEngine#startAudioCapture}. @param engine ByteRTCEngine instance @param streamId The stream ID of the remote user who turns on audio capture @param info Information of the remote user who turn on audio capture, see ByteRTCStreamInfo{@link #ByteRTCStreamInfo}.
rtcEngine$onUserStartVideoCapture$info(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info) FutureOr<void>
@detail callback @author liuyangyang @brief The remote clients in the room will be informed of the state change via this callback after the visible user starts video capture by startVideoCapture{@link #ByteRTCEngine#startVideoCapture}. @param engine ByteRTCEngine instance @param streamId ID of the room where the user enables video capture @param info Stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}.
rtcEngine$onUserStopAudioCapture$info(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info) FutureOr<void>
@detail callback @author dixing @brief The remote clients in the room will be informed of the state change via this callback after the visible user stops audio capture by calling stopAudioCapture{@link #ByteRTCEngine#stopAudioCapture}. @param engine ByteRTCEngine instance @param streamId The stream ID @param info Information of the audio stream.
rtcEngine$onUserStopVideoCapture$info(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info) FutureOr<void>
@detail callback @author liuyangyang @brief The remote clients in the room will be informed of the state change via this callback after the visible user stops video capture by calling stopVideoCapture{@link #ByteRTCEngine#stopVideoCapture}.
If you don't start video capture before you publish video data, all visible user will receive this callback. @param engine ByteRTCEngine instance @param streamId ID of the room where the user disables video capture @param info Stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo}.
rtcEngine$onVideoDenoiseModeChanged$withReason(ByteRTCEngine engine, ByteRTCVideoDenoiseMode mode, ByteRTCVideoDenoiseModeChangedReason reason) FutureOr<void>
@hidden not available @detail callback @author Yujianli @brief When the state of the video noise reduction mode changes, this callback will return the real state of the mode and the reasons for the changes. @param engine ByteRTCEngine object @param mode Video noise reduction mode. Refer to ByteRTCVideoDenoiseMode{@link #ByteRTCVideoDenoiseMode} for more details. @param reason Video noise reduction mode change reason. Refer to ByteRTCVideoDenoiseModeChangedReason{@link #ByteRTCVideoDenoiseModeChangedReason} for more
details.
rtcEngine$onVideoDeviceStateChanged$device_type$device_state$device_error(ByteRTCEngine engine, NSString deviceID, ByteRTCVideoDeviceType deviceType, ByteRTCMediaDeviceState deviceState, ByteRTCMediaDeviceError deviceError) FutureOr<void>
@detail callback @author liuyangyang @brief Video device state callback. It returns the state of media devices, including video capture and screen capture. @param engine ByteRTCEngine object @param deviceID Device ID @param deviceType Device type. Refer to ByteRTCVideoDeviceType{@link #ByteRTCVideoDeviceType} for more details. @param deviceState Device state. Refer to ByteRTCMediaDeviceState{@link #ByteRTCMediaDeviceState} for more details. @param deviceError Device error. Refer to ByteRTCMediaDeviceError{@link #ByteRTCMediaDeviceError} for more details.
rtcEngine$onVideoDeviceWarning$deviceType$deviceWarning(ByteRTCEngine engine, NSString deviceId, ByteRTCVideoDeviceType deviceType, ByteRTCMediaDeviceWarning deviceWarning) FutureOr<void>
@detail callback @author liuyangyang @brief Video device warning callback. The video devices includes video capture devices. @param engine ByteRTCEngine object @param deviceId Device ID @param deviceType See ByteRTCVideoDeviceType{@link #ByteRTCVideoDeviceType} @param deviceWarning See ByteRTCMediaDeviceWarning{@link #ByteRTCMediaDeviceWarning}
rtcEngine$onVideoFramePlayStateChanged$info$rtcUser$state(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCUser user, ByteRTCFirstFramePlayState state) FutureOr<void>
@detail callback @author shenpengliang @brief Receive this callback when the video first frame playback state changes @param engine ByteRTCEngine instance. @param streamId ID of the video stream @param info Video stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user User information from the video stream source. See ByteRTCUser{@link #ByteRTCUser} @param state First frame playback state. See ByteRTCFirstFramePlayState{@link #ByteRTCFirstFramePlayState}
rtcEngine$onVideoFrameSendStateChanged$info$rtcUser$state(ByteRTCEngine engine, NSString streamId, ByteRTCStreamInfo info, ByteRTCUser user, ByteRTCFirstFrameSendState state) FutureOr<void>
@detail callback @author shenpengliang @brief Receive this callback when the video first frame sending state changes @param engine ByteRTCEngine object @param streamId ID of the video stream @param info Video stream information. See ByteRTCStreamInfo{@link #ByteRTCStreamInfo} @param user Local user information. See ByteRTCUser{@link #ByteRTCUser} @param state First frame sending status. See ByteRTCFirstFrameSendState{@link #ByteRTCFirstFrameSendState}
rtcEngine$onWarning(ByteRTCEngine engine, ByteRTCWarningCode code) FutureOr<void>
@detail callback @author panjian.fishing @brief A warning occurred during the SDK runtime. The SDK usually recovers automatically and warnings can be ignored. @param engine ByteRTCEngine object. @param code Warning code. See ByteRTCWarningCode{@link #ByteRTCWarningCode}.
rtcEngineOnNetworkTimeSynchronized(ByteRTCEngine engine) FutureOr<void>
@detail callback @author songxiaomeng.19 @brief After calling getNetworkTimeInfo{@link #ByteRTCEngine#getNetworkTimeInfo} for the first time, the SDK starts network time synchronization internally. This callback will be triggered when the synchronization is completed. @param engine See ByteRTCEngine{@link #ByteRTCEngine}.
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