| 方法 | 描述 |
|---|---|
| Feedback | 本次通话质量打分评价。 |
| CreateByteRtcEngine | 创建 RTCEngine 实例。 此方法应该作为正常 SDK 流程中的第一步操作,通过创建一个 RTCEngine 实例,来使用 SDK 的其他能力。 |
| DestroyByteRtcEngine | 销毁由 CreateByteRtcEngine 创建的 RTCEngine 实例,并释放所有相关资源。 |
| GetVersion | 获取当前 SDK 版本信息。 |
| SetBusinessId | 设置业务标识参数。 可通过 business_id 区分不同的业务场景(角色/策略等)。business_id 由客户自定义,相当于一个“标签”, 可以分担和细化现在 AppId 的逻辑划分的功能。 |
| 方法 | 描述 |
|---|---|
| EnablePerformanceCollect | 设置引擎是否开启性能采集功能,默认为开启。 |
| 方法 | 描述 |
|---|---|
| JoinChannel | 加入房间。用户调用此方法加入房间,在一个房间内的用户间可以相互通话。 用户调用 CreateByteRtcEngine 创建 RTC 引擎后,需调用此方法加入房间实现同其他用户进行音视频通话。如果用户调用此方法加入房间,则后续重复调用此方法均会失败,用户必须调用 LeaveChannel 退出当前房间后,才能加入下一个房间。 用户调用此方法加入房间成功后,会收到 OnJoinChannelSuccess 回调通知。 |
| SetClientRole | 设置用户角色。 用户可通过设置用户角色,控制:1.是否发布音视频流;2.用户自身是否在房间中隐身。详见用户角色 CLIENT_ROLE_TYPE。 默认用户角色为主播角色 CLIENT_ROLE_BROADCASTER 房间模式(通过调用接口 SetChannelProfile 可设置房间模式)为直播模式、游戏模式、云游戏模式时,设置用户角色生效。房间模式为通信模式时不区分用户角色。 |
| SetChannelProfile | 设置房间模式。 通过设置房间模式,用户可以选择应用 SDK 针对不同房间模式场景的优化策略。 默认的房间模式为通信模式 CHANNEL_PROFILE_COMMUNICATION 房间模式必须在调用 JoinChannel 加入房间前设置,加入房间后设置不生效。设置用户角色(通过方法 SetClientRole )建议在设置完房间模式后。 |
| LeaveChannel | 离开房间。 用户调用此方法离开房间,结束通话过程,释放所有通话相关的资源。 调用 JoinChannel 方法加入房间后,在通话结束时必须调用此方法结束通话,否则无法开始下一次通话。无论当前是否在房间中,都可以调用此方法。重复调用此方法不会有负面影响。 此方法是异步操作,调用返回时并没有真正退出房间。真正退出房间后,本地会收到 OnLeaveChannel 回调通知。 |
| RenewToken | 更新 Token。 Token 有一定的有效期,当 Token 过期时,用户需调用此方法更新房间的 Token 信息。 用户调用 JoinChannel 方法加入房间时,如果使用了过期的 Token 将导致加入房间失败,并会收到 OnChannelError 回调通知,回调错误码为 BRERR_INVALID_TOKEN 。此时需要重新获取 Token ,并调用此方法更新 Token。 |
| SubscribeStream | 订阅指定的房间内远端音视频流。 关闭自动订阅功能,使用手动订阅模式时用户调用此方法按需订阅房间中的音视频流。 此方法仅在关闭自动订阅功能时生效。用户需在加入房间前调用 EnableAutoSubscribe 方法关闭自动订阅功能以使用手动订阅模式。 用户在自动订阅功能开启时调用此方法,SDK 不会订阅音视频流,并通过 OnChannelWarning 回调通知用户订阅失败,回调警告码为 BRWARN_SUBSCRIBE_STREAM_FORBIDEN 。 订阅流失败时,SDK 会按失败原因回调 OnChannelError 通知用户,具体错误可参考错误码 RTC_ERROR_CODE 描述。 |
| Unsubscribe | 停止订阅指定的房间内远端音视频流。 关闭自动订阅功能,使用手动订阅模式时用户调用此方法停止订阅已订阅的音视频流。 此方法仅在关闭自动订阅功能时生效。用户需在加入房间前调用 EnableAutoSubscribe 方法关闭自动订阅功能以使用手动订阅模式。 |
| EnableAutoSubscribe | 开启/关闭自动订阅功能。 用户调用此方法设置房间中是否开启自动订阅功能。SDK 默认开启自动订阅功能。 如需开启手动订阅功能,建议在调用 JoinChannel 方法加入房间前设置完成。 |
| 方法 | 描述 |
|---|---|
| AdjustRecordingSignalVolume | 调节录音音量 |
| AdjustPlaybackSignalVolume | 调节本地播放的所有远端用户音量 |
| EnableAudioLoopBackCapture | 开启声卡采集 开启声卡采集后,声卡播放的声音会被合到本地音频流中,从而可以发送到远端,一般会用于屏幕共享的场景,声卡采集的声音可以通过 AdjustAudioLoopbackCaptureVolume 调节 |
| AdjustAudioLoopbackCaptureVolume | 调节声卡采集音量 开启声卡采集后,声卡采集的声音可通过此 API 调节,开启声卡采集详情参考 EnableAudioLoopBackCapture |
| EnableLocalAudio | 开启/关闭本地音频采集。 调用该方法后,房间中的其他用户会收到 OnUserEnableLocalAudio 事件回调。 |
| MuteLocalAudioStream | 静音本地音频流 |
| SetAudioPerfProfile | 设置音频处理复杂度。对于希望性能占用较低,可设置较低的音频处理复杂度,如果更在意通话质量,可选择设置更高的音频处理复杂度。 加入房间时,会携带本接口传入的机型等级,然后从服务端拉起相应音频配置。如果传入的是 auto,服务端会查询数据库,获得机型等级,再下发配置。 不同复杂度会开关 AEC、ANS、AGC 算法,调整播放 sample rate 等, 进行性能和质量的控制。 |
| GetAudioDeviceManager | 设备音频管理接口创建 |
| EnableAudioVolumeIndication | 启用说话者音量提示。 |
| AdjustRemoteAudioVolume | 调节远端用户音量 |
| SetDefaultMuteAllRemoteAudioStreams | 设置是否默认静音所有远端音频流。默认状态为非静音所有远端音频流。 |
| MuteAllRemoteAudioStreams | 静音所有音频流。默认状态为非静音所有远端音频流。 |
| UnmuteAllRemoteAudioStreams | 取消静音所有远端音频流。默认状态为非静音所有远端音频流。 |
| MuteRemoteAudioStream | 静音指定用户音频流 |
| UnmuteRemoteAudioStream | 取消对指定用户音频流的静音 |
| 方法 | 描述 |
|---|---|
| SetExternalAudioSource | 设置是否启用外部音频采集渲染。 |
| SetAudioDeviceObserver | 启动音频外部源采集渲染时,添加音频外部设备事件监控 |
| PushExternalAudioFrame | 推送外部音频数据。使用 SetExternalAudioSource 启用自定义音频采集渲染后,可以使用本方法推送外部音频数据。 |
| PullExternalAudioFrame | 拉取远端音频数据。使用 SetExternalAudioSource 启用自定义音频采集渲染后,可以使用本方法拉取远端音频数据。 |
| 方法 | 描述 |
|---|---|
| StartAudioMixing | 开始播放音乐文件及混音。 |
| StopAudioMixing | 停止播放音乐文件及混音 |
| PauseAudioMixing | 暂停播放音乐文件 |
| ResumeAudioMixing | 恢复播放音乐文件 |
| AdjustAudioMixingVolume | 调节音乐文件的文件音量。为保证更好的音质,建议将 volume 值设为 [0,100]。 |
| AdjustAudioMixingPlayoutVolume | 调节音乐文件的本地播放音量。为保证更好的音质,建议将 volume 值设为 [0,100]。 |
| AdjustAudioMixingPublishVolume | 调节音乐文件的远端播放音量。为保证更好的音质,建议将 volume 值设为 [0,100]。 |
| GetAudioMixingDuration | 获取音乐文件时长 |
| GetAudioMixingCurrentPosition | 获取音乐文件播放进度 |
| SetAudioMixingPosition | 设置音频文件的播放位置 |
| GetEffectVolume | 获取指定音效文件的文件音量 |
| SetVolumeOfEffect | 调节指定音效文件的文件音量 |
| PlayEffect | 开始播放指定音效文件。你可以在该方法中设置音效文件的播放次数、音量大小,以及远端用户是否能听到该音效。 |
| PreloadEffect | 预加载指定音效文件。 |
| UnloadEffect | 卸载指定音效文件 |
| StopEffect | 停止播放指定音效文件 |
| PauseEffect | 暂停播放指定音效文件 |
| ResumeEffect | 恢复播放指定音效文件 |
| SetEffectsVolume | 调节所有音效文件的文件音量 |
| StopAllEffects | 停止所有音效文件的播放 |
| PauseAllEffects | 暂停所有音效文件的播放。 |
| ResumeAllEffects | 恢复所有音效文件的播放 |
| UnloadAllEffects | 卸载所有音效文件 |
| SetAudioPlayoutMixStream | 启动/停止外部音频流混音, 并设置混音数据格式 |
| GetAudioMixingStreamCachedFrameNum | 获取SDK当前缓冲数据 |
| PushAudioMixingStreamData | 向SDK推送混音的音频数据 |
| 方法 | 描述 |
|---|---|
| EnableLocalVideo | 该方法开启或关闭本地视频采集。本地视频采集默认为开启。 调用该方法后,房间中的其他用户会收到 OnUserEnableLocalVideo 回调。 |
| SetVideoProfiles | 设置 SimulCast(联播模式)发布的一组视频分辨率,需要指定每个分辨率 VideoSolution 的宽、高、帧率、码率。 当发布的视频分辨率与采集的视频的长宽比与不同的时候,根据 ScaleMode 进行裁剪。 调用该方法代表使用 SimulCast 进行视频发布。 |
| SetupLocalVideo | 设置本地视频画布 该方法设置本地视频显示信息。应用通过调用此接口绑定本地视频流的显示视窗 canvas,并设置本地用户视图的渲染模式。 在应用开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。退出房间后,绑定仍然有效。 如果需要解除绑定,可以指定空 canvas 调用该函数。 |
| SetLocalVideoRender | 设置本地视频渲染器 该方法设置本地视频外部渲染器。应用程序通过调用此接口绑定本地视频流的渲染器canvas。 在应用程序开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入频道。退出频道后,绑定仍然有效, 如果需要解除绑定,可以指定空的VideoSink。 |
| RemoveLocalVideo | 解除绑定本地视频画布 |
| SetupLocalScreen | 设置屏幕共享本地视图 该方法设置屏幕共享本地视图信息。应用通过调用此接口绑定本地屏幕共享流的显示视图 VideoCanvas 。 在应用开发中,通常在初始化后调用该方法进行本地屏幕共享设置,然后再加入房间。退出房间后,绑定仍然有效, 可调用 RemoveLocalScreen 解除绑定。 |
| SetLocalScreenRender | 设置屏幕共享本地渲染器 该方法设置屏幕共享本地外部渲染器。应用通过调用此接口绑定本地屏幕共享流的渲染器 IVideoSink 。 在应用开发中,通常在初始化后调用该方法进行本地屏幕共享设置,然后再加入房间。退出房间后,绑定仍然有效, 如果需要解除绑定,可以指定空的 VideoSinkIVideoSink。 |
| RemoveLocalScreen | 清除屏幕共享本地视图 |
| MuteLocalVideoStream | 停止/启动发送本地视频流 该方法停止/启动发送本地视频流;调用该方法后,房间中的其他用户会收到 OnUserMuteVideo 的回调。 |
| StartPreview | 开启本地视频预览 |
| StopPreview | 停止本地视频预览 |
| SwitchCamera | 切换前后摄像头 |
| PushScreenFrame | 发送屏幕共享本地视频数据 |
| StartScreenCaptureByWindowId | 该方法共享一个窗口或该窗口的部分区域。用户需要在该方法中指定想要共享的窗口 id 。 |
| StartScreenCaptureByScreenRect | 通过指定区域共享屏幕,共享一个屏幕或该屏幕的部分区域。用户需要在该方法中指定想要共享的屏幕区域。 |
| UpdateScreenCaptureRegion | 更新屏幕共享区域。 |
| UpdateScreenCaptureParameters | 更新屏幕共享的编码参数配置。 |
| StopScreenCapture | 停止屏幕或者窗口共享。 |
| SetExternalVideoSource | 设置外部视频输入源 |
| PushExternalVideoFrame | 发送外部源视频数据 |
| ReplaceBackground | 开启背景并设置背景模式与分割模式 |
| DisableBackground | 关闭背景 |
| SetLocalVideoMirrorMode | 设置本地视频镜像 |
| GetLocalVideoMirrorMode | 获得当前本地镜像状态 |
| PublishScreen | 发布本地屏幕共享流到房间。 |
| UnpublishScreen | 停止发布本地屏幕共享流到房间。 |
| SetupRemoteVideo | 设置远端视频渲染画布信息 |
| SetRemoteVideoRender | 设置远端视频外部渲染器 |
| RemoveRemoteVideo | 去除特定用户的远端视频,通过用户ID锁定。 |
| RemoveAllRemoteVideo | 去除所有远端视频。 |
| SetupRemoteScreen | 设置屏幕共享远端视图。 |
| SetRemoteScreenRender | 设置屏幕共享远端外部渲染器 |
| RemoveRemoteScreen | 去除特定远端屏幕,通过用户ID锁定。 |
| RemoveAllRemoteScreen | 去除屏幕共享所有远端视图。 |
| SetDefaultMuteAllRemoteVideoStreams | 设置是否默认接收视频流. |
| RemoteFirstVideoFrameRender | 远端首帧视频帧渲染. |
| MuteAllRemoteVideoStreams | 关闭所有远端视频流 |
| UnmuteAllRemoteVideoStreams | 开启所有远端视频流 |
| MuteRemoteVideoStream | 关闭远端视频流 |
| UnmuteRemoteVideoStream | 开启远端视频流 |
| build_video_frame | 根据视频帧参数创建视频帧并返回指针 |
| frame_type | 获取视频帧类型 |
| pixel_format | 获取视频帧格式 |
| timestamp_us | 获取视频帧时间戳 |
| width | 获取视频帧宽度 |
| height | 获取视频帧高度 |
| rotation | 获取视频帧旋转角度 |
| color_space | 获取视频帧颜色空间 |
| number_of_planes | 视频帧颜色 plane 数量 |
| get_plane_data | 获取 plane 数据指针 |
| get_plane_line_size | 获取 plane 中数据行的长度 |
| get_extra_data_info | 获取扩展数据指针 |
| get_supplementary_info | 获取补充数据指针 |
| get_hwaccel_buffer | 获取本地缓冲区指针 |
| shallow_copy | 浅拷贝视频帧并返回指针 |
| release | 释放视频帧 |
| to_i420 | 视频帧数据转为 YUV I420 格式 |
| 方法 | 描述 |
|---|---|
| SetPublishFallbackOption | 设置发布的音视频流回退选项 |
| SetSubscribeFallbackOption | 设置订阅的音视频流回退选项 |
| SetRemoteUserPriority | 设置用户优先级 |
| 方法 | 描述 |
|---|---|
| SetEncryptInfo | 设置AES加密算法和加密密钥 有四种内置的加密算法,详见 ByteEngineEncryptType |
| SetCustomizeEncryptHandler | 设置自定义加密 需要实现对应的加密/解密方法,详情参考 ByteEngineEncryptType |
| 方法 | 描述 |
|---|---|
| SetRecordingAudioFrameParameters | 设置本地麦克风录制的音频数据回调参数 |
| SetPlaybackAudioFrameParameters | 设置远端所有用户音频数据混音后的音频数据回调参数 |
| SetMixedAudioFrameParameters | 设置本地麦克风录制音频数据和远端所有用户音频数据混音后的音频数据回调参数 |
| RegisterAudioFrameObserver | 注册音频数据回调观察者 |
| RegisterRemoteAudioFrameObserver | 注册音频数据回调观察者 |
| 方法 | 描述 |
|---|---|
| RegisterVideoFrameObserver | 注册视频数据回调观察者 |
| RegisterMetadataObserver | 注册 metadata 观察者,用于接收或发送 metadata,底层通过在视频帧中添加 SEI 数据实现该功能。 注册观察者后,发送的视频帧里面没有 SEI 信息, 会触发 OnReadyToSendMetadata 回调。 注册观察者后,接收的视频帧里面有 SEI 信息,会触发接收 OnMetadataReceived 回调。 |
| 方法 | 描述 |
|---|---|
| EnableAutoPublish | 设置引擎自动发布属性 |
| 方法 | 描述 |
|---|---|
| GetVideoDeviceManager | 创建视频设备管理实例 |
| GetCount | 获取当前系统内视频采集设备数量 |
| GetDevice | 根据索引号,获取设备信息 |
| Release | 释放当前IVideoDeviceCollection对象占用的资源 |
| EnumerateVideoDevices | 获取当前系统视频设备列表 |
| SetDevice | 设置当前视频采集设备 |
| GetDevice | 获取当前SDK正在使用的设备信息 |
| Release | 释放当前IVideoDeviceManager |
| 方法 | 描述 |
|---|---|
| SendDataChannelMessage | 给房间内指定的用户发送消息,返回这次发送消息的编号。 调用该函数后会收到一次 OnDataChannelMessageSendResult 回调,告知发送结果。 |
| SendCustomMessage | 给房间内的所有其他用户发送广播消息。 |
| 方法 | 描述 |
|---|---|
| GetCount | 获取设备列表中设备个数 |
| GetDevice | 根据索引,获取当前设备列表中设备信息 |
| Release | 析构当前对象,释放内存 |
| EnumeratePlaybackDevices | 创建音频播放设备列表,该集合包含你调用本接口时系统中的音频播放设备。如果后续设备有变更,你需要重新调用本接口以获得新的设备列表. |
| EnumerateRecordingDevices | 创建音频采集设备列表,该集合包含你调用本接口时系统中的音频采集设备。如果后续设备有变更,你需要重新调用本接口以获得新的设备列表. |
| SetPlaybackDevice | 设置音频播放设备 |
| SetRecordingDevice | 设置音频采集设备 |
| SetPlaybackDeviceVolume | 设置音频播放设备音量 |
| GetPlaybackDeviceVolume | 获取音频播放设备音量 |
| SetRecordingDeviceVolume | 设置音频采集设备音量 |
| GetRecordingDeviceVolume | 获取音频采集设备音量 |
| SetPlaybackDeviceMute | 设置音频播放设备静音,默认为非静音。 |
| GetPlaybackDeviceMute | 获取音频播放设备静音信息 |
| SetRecordingDeviceMute | 设置音频采集设备静音,默认为非静音 |
| GetRecordingDeviceMute | 获取音频采集设备静音信息 |
| GetPlaybackDevice | 获取当前使用的音频播放设备ID |
| GetPlaybackDeviceInfo | 获取当前音频播放设备信息 |
| GetRecordingDevice | 获取当前音频采集设备ID |
| GetRecordingDeviceInfo | 获取当前音频采集设备信息 |
| StartPlaybackDeviceTest | 启动音频播放设备测试 该方法测试播放设备是否能正常工作。SDK 播放指定的音频文件,测试者如果能听到声音,说明播放设备能正常工作。 |
| StopPlaybackDeviceTest | 停止音频播放设备测试。 |
| StartAudioRecordingDeviceTest | 启动音频采集设备测试。 该方法测试音频采集是否能正常工作,启动测试后,SDK 通过 OnAudioVolumeIndication 回调方法向应用上报音量信息 |
| StopAudioRecordingDeviceTest | 停止音频采集设备测试。 |
| StartAudioDeviceLoopbackTest | 开始音频设备回路测试。 该方法测试音频采集设备和音频播放设备是否能正常工作。一旦测试开始,音频采集设备会采集本地讲话声音 然后使用音频播放设备播放出来,同时 SDK 会通过 OnAudioVolumeIndication 回调向应用程序上报音量信息。 |
| StopAudioDeviceLoopbackTest | 停止音频设备回路测试。 |
| Release | 析构当前对象,释放内存 |
| 回调 | 描述 |
|---|---|
| OnReadyToSendMetadata | 当 SDK 准备发送一个视频帧时,会回调该接口,以确定是否需要在该视频帧中添加 metadata |
| OnMetadataReceived | 当 SDK 收到一个视频帧时,并且其中包含 medatada 时,会回调该接口 |
| 回调 | 描述 |
|---|---|
| OnAudioDeviceRecordStart | 通知上层应用开启音频采集设备 |
| OnAudioDeviceRecordStop | 通知上层应用关闭音频采集设备 |
| OnAudioDevicePlayoutStart | 通知上层应用开启音频播放设备 |
| OnAudioDevicePlayoutStop | 通知上层应用关闭音频播放设备 |
| 回调 | 描述 |
|---|---|
| OnRecordAudioFrame | 返回麦克风录制的音频数据 |
| OnPlaybackAudioFrame | 返回远端所有用户混音后的音频数据 |
| OnMixedAudioFrame | 返回本地麦克风录制和远端所有用户混音后的音频数据 |
| OnRemoteAudioFrame | 获得单个流的音频数据 |
| 回调 | 描述 |
|---|---|
| OnLocalScreenFrame | 本地屏幕共享流数据回调 |
| OnLocalVideoFrame | 本地视频流数据回调 |
| OnRemoteScreenFrame | 远端屏幕共享流数据回调 |
| OnRemoteVideoFrame | 远端视频数据回调 |
| OnFrame | 视频帧回调 |
| OnRtcStats | 用户加入房间成功后,每 2s 会收到一次房间内统计信息的回调。 |
| OnMuteAllRemoteVideo | 当某个用户开启/关闭远端所有用户视频时回调该事件。 |
| OnFirstLocalVideoFrame | 收到第一帧本地视频画面时回调该事件。 |
| OnFirstLocalScreenFrame | 当收到本地屏幕共享流第一帧时回调该事件。 |
| OnFirstRemoteVideoDecoded | 当远端视频第一帧视频被解码时回调该事件。 |
| OnVideoSizeChanged | 本地或远端视频大小或旋转信息发生改变回调。 |
| OnFirstRemoteVideoFrame | 收到远端流后解码第一帧时回调该事件。 |
| OnFirstRemoteScreenFrame | 收到远端屏幕共享流后解码第一帧时回调该事件。 |
| OnUserMuteVideo | 远端用户暂停/恢复发送视频流时回调该事件,当远端用户调用 MuteLocalVideoStream 时,其他用户会触发此回调。 |
| OnUserEnableLocalVideo | 远端用户开启/关闭本地视频采集时回调该事件,当远端用户调用 EnableLocalVideo 时,其他用户会触发此回调。 |
| OnLocalVideoStats | 通话中本地视频流的统计信息回调。 |
| OnRemoteVideoStats | 通话中远端视频流的统计信息回调。 |
| OnLocalVideoStateChanged | 本地视频的状态发生改变时,该回调返回当前的本地视频状态。 |
| OnRemoteVideoStateChanged | 远端用户视频状态发生改变时,该回调报告当前的远端视频流状态。 |
| OnMirrorStateChanged | 当本地视频镜像状态改变时回调该事件。默认回调该事件。 |
| 回调 | 描述 |
|---|---|
| OnEncryptData | 自定义加密的方法接口 通过继承并实现该方法,可以扩展传输过程中的加密方法,详见 SetCustomizeEncryptHandler |
| OnDecryptData | 自定义解密的方法接口 通过继承并实现该方法,可以扩展传输过程中的解密方法,详见 SetCustomizeEncryptHandler |
| 回调 | 描述 |
|---|---|
| OnStart | 启动渲染器。 |
| OnStop | 停止渲染器。 |
| Release | 释放渲染器。 |
| 回调 | 描述 |
|---|---|
| OnJoinChannelSuccess | 加入房间成功回调。此回调事件表示本地用户成功加入了指定的房间。 用户调用 JoinChannel 方法加入房间,首次加入房间成功后 SDK 通过此回调事件通知用户加入房间成功。此回调事件在用户调用 JoinChannel 方法加入房间到用户调用 LeaveChannel 方法离开房间期间至多回调一次。 |
| OnRejoinChannelSuccess | 重新加入房间成功回调。此回调事件表示本地用户成功重连入房间。 本地用户加入房间成功后,在本地网络状况不佳的情况下,SDK 可能会与服务器失去连接。此时 SDK 将会自动重连,并在重连成功通过此回调事件通知用户重连成功。 |
| OnLeaveChannel | 离开房间成功回调。 用户调用 LeaveChannel 方法后,SDK 会停止所有的发布订阅流,并释放所有通话相关的音视频资源。SDK 完成所有的资源释放后通过此回调通知用户。 离开房间结束通话后,如果 App 需要使用系统音视频设备,则建议在收到此回调后再初始化音视频设备,否则可能由于 SDK 占用了导致 App 初始化音视频设备失败。 |
| OnChannelWarning | SDK 发生警告回调。 SDK 内部遇到可恢复错误时,在尝试自动恢复的同时,会通过此回调通知用户。此回调事件仅用做通知。 |
| OnChannelError | SDK 发生错误回调。 SDK 内部遇到不可恢复错误时,会通过此回调通知 App,需要 App 根据错误码进行操作或提示用户。 |
| OnUserJoined | 远端用户加入房间回调。 此回调用于提示房间中有新用户加入。如果本地用户已经在房间中,有新的远端用户加入时,SDK 通过此回调方法通知房间中有新用户加入;如果用户加入房间前,房间中已有其他用户,加入房间后用户也会收到这些已在房间中的远端用户的加入房间回调。 回调的具体触发时机如下: 1.远端的房间模式为通信模式的用户或房间模式为其他模式的主播、观众角色的用户,调用 JoinChannel 方法加入房间。 2.远端的房间模式为通信模式的用户或房间模式为其他模式的主播、观众角色的用户,在断网后重连入房间。 3.远端已在房间中的房间模式为直播、游戏或云游戏模式的静默观众角色的用户,调用 SetClientRole 方法将用户角色切换至主播或观众。 4.本地用户加入房间时,会收到已在房间中的远端的房间模式为通信模式的用户或房间模式为其他模式的主播、观众角色的用户的加入房间回调。 |
| OnUserOffline | 远端用户离开房间回调。 此回调用于提示房间中有远端用户离开。用户离开房间的原因有两个,即用户主动调用 LeaveChannel 方法离开房间和超时掉线。 回调的具体触发时机如下: 1.远端的房间模式为通信模式的用户或房间模式为其他模式的主播、观众角色的用户,调用 LeaveChannel 方法离开房间。用户离开的原因为 USER_OFFLINE_QUIT。 2.远端已在房间中的房间模式为直播、游戏或云游戏模式的主播、观众角色的用户调用 SetClientRole 方法将用户角色切换至静默观众。用户离开的原因为 USER_OFFLINE_QUIT。 3.远端的房间模式为通信模式的用户或房间模式为其他模式的主播、观众角色的用户,断网且一直未恢复。用户离开的原因为 USER_OFFLINE_DROPPED。 |
| OnStreamRemove | 房间内远端流移除回调。 房间内的远端用户停止发布音视频流时,本地用户会收到此回调通知。 |
| OnStreamAdd | 房间内新流发布回调。 房间内的远端用户发布新的音视频流时,本地用户会收到此回调通知。 |
| 回调 | 描述 |
|---|---|
| OnAudioQuality | 当收到音频质量信息的时候回调该事件 |
| 回调 | 描述 |
|---|---|
| OnAudioVolumeIndication | 提示房间内谁正在说话以及说话者音量的回调 |
| OnUserMuteAudio | 远端用户将其本地音频流静音时,房间内其他人会收到这个回调。 该回调由远端用户调用 MuteLocalAudioStream 方法触发。 |
| OnUserEnableLocalAudio | 远端用户开启/关闭音频设备采集时,房间内其他人会收到这个回调。 该回调由远端用户调用 EnableLocalAudio 方法触发。 |
| OnFirstLocalAudioFrame | 当收到本地第一帧音频的时候上报该事件 |
| OnFirstRemoteAudioFrame | 当收到远端流的第一帧音频的时候上报该事件 |
| OnLocalAudioStateChanged | 本地音频的状态发生改变时,该回调通知当前的本地音频状态。 |
| OnRemoteAudioStateChanged | 远端用户音频状态发生改变时,该回调通知当前的远端音频流状态。 |
| 回调 | 描述 |
|---|---|
| OnNetworkQuality | 通话中用户的媒体流网络上下行质量报告回调。加入房间成功后,每隔 2 秒会触发此回调,通知房间内用户与媒体服务器之间数据交互的网络质量。 |
| OnConnectionLost | SDK 与信令服务器连接断开回调。当 SDK 与信令服务器的网络连接断开超过 10 秒时回调该事件。 |
| OnConnectionInterrupted | SDK 与信令服务器连接中断回调。当 SDK 检测到与信令服务器的网络连接中断时回调该事件。 |
| OnLogReport | 端监控日志回调。当产生一个端监控事件时触发该回调。 |
| OnConnecting | SDK 正在连接信令服务器回调。开始建连时触发。 |
| OnReconnecting | SDK 正在重新连接信令服务器回调。开始重连时触发。 |
| OnConnected | SDK 已经连接上信令服务器回调。连接完成时触发。 |
| OnDisconnected | SDK 与信令服务器连接断开回调。连接断开时触发。 |
| OnConnectionStateChanged | SDK 与信令服务器连接状态改变回调。连接状态改变时触发。 |
| OnNetworkTypeChanged | SDK 当前网络连接类型改变回调。当 SDK 的当前网络连接类型发生改变时回调该事件。 |
| OnMediaDeviceStateChanged | 媒体设备开启、停止状态回调 |
| OnMediaDeviceNotification | 媒体设备事件回调。 |
| 回调 | 描述 |
|---|---|
| OnLocalAudioStats | 通话中本地音频流的统计信息回调。 该回调描述本地设备发送音频流的统计信息,每 2 秒触发一次。 |
| OnRemoteAudioStats | 通话中远端音频流的统计信息回调。 该回调描述远端用户在通话中端到端的音频流状态,针对每个远端用户/主播每 2 秒触发一次。如果远端同时存在多个用户/主播,该回调每 2 秒会被触发多次。 |
| 回调 | 描述 |
|---|---|
| OnRemoteStreamSwitch | 收到远端流回退或恢复时回调该事件。 |
| 回调 | 描述 |
|---|---|
| OnCustomMessage | 广播消息回调。接收到房间内的广播消息时触发。 |
| OnDataChannelMessageReceived | 点对点消息回调。接收到同一房间内 uid 所属用户发来消息时触发。 |
| OnDataChannelMessageSendResult | 点对点消息发送结果回调。当调用 SendDataChannelMessage 函数发送消息后,回调此条消息的发送结果(反馈)。 |
| 回调 | 描述 |
|---|---|
| OnWarning | 当内部发生警告事件时触发该回调 |
| 回调 | 描述 |
|---|---|
| OnError | 当内部发生不可逆转错误时触发该回调 |
| 回调 | 描述 |
|---|---|
| OnAudioMixingFinished | 本地音乐文件播放已结束回调。 当调用 StartAudioMixing 启动的混音文件播放结束后,会触发该回调。 |
| OnAudioMixingStateChanged | 音频混音文件播放状态改变时回调。此回调会被触发的时机汇总如下: + 当调用 StartAudioMixing 方法成功后, 会触发该 state 值为 kAudioMixingStatePlaying 回调; 否则触发 state 值为 kAudioMixingStateFailed 的回调。 + 当调用 ResumeAudioMixing 方法恢复播放成功后, 会触发该 state 值为 kAudioMixingStatePlaying 回调; 否则触发 state 值为 kAudioMixingStateFailed 的回调。 + 当调用 PauseAudioMixing 方法暂停播放后, 会触发该 state 值为 kAudioMixingStatePlaying 回调; 否则触发 state 值为 kAudioMixingStateFailed 的回调。 + 当调用 StopAudioMixing 方法暂停止播放后, 会触发该 state 值为 kAudioMixingStatePlaying 回调; 否则触发 state 值为 kAudioMixingStateFailed 的回调。 |
| OnAudioEffectFinished | 本地音效文件播放已结束回调。 当调用 PlayEffect 方法开始播放指定音效文件, 音效文件播放结束后, 应用会收到该回调。 |