| 方法 | 描述 |
|---|---|
| CreateRtcEngine | 创建 RTCEngine 实例。 如果当前线程中未创建引擎实例,那么你必须先使用此方法,以使用 RTC 提供的各种音视频能力。 如果当前线程中已创建了引擎实例,再次调用此方法时,会创建另一个独立的引擎实例。 |
| DestroyRtcEngine | 销毁由 CreateRtcEngine 创建的 RTCEngine 实例,并释放所有相关资源。 |
| GetSDKVersion | 获取当前 SDK 版本信息。 |
| Feedback | 本次通话质量打分评价 |
| GetErrorDescription | 获取错误码的描述 |
| SetBusinessId | 设置业务标识参数 可通过 businessId 区分不同的业务场景。businessId 由客户自定义,相当于一个“标签”,可以分担和细化现在 AppId 的逻辑划分的功能,但不需要鉴权。 |
| SetRuntimeParameters | 设置运行时的参数 |
| 方法 | 描述 |
|---|---|
| JoinRoom | 创建/加入房间:房间不存在时即创建房间;房间存在时即加入这个房间。 同一房间内的用户间可以相互通话。 进房后重复调用无效,用户必须调用 LeaveRoom 退出当前房间后,才能加入下一个房间。 |
| PublishStream | 在当前所在房间内发布本地通过摄像头/麦克风采集的媒体流 |
| UnpublishStream | 停止将本地摄像头/麦克风采集的媒体流发布到当前所在房间中 |
| 方法 | 描述 |
|---|---|
| BuildAudioFrame | 创建 IAudioFrame |
| SetPlaybackVolume | 调节本地播放的所有远端用户混音后的音量 |
| StartAudioCapture | 开启内部音频采集。默认为关闭状态。 内部采集是指:使用 RTC SDK 内置的视频采集机制进行视频采集。 调用该方法开启后,本地用户会收到 OnAudioDeviceStateChanged 的回调。 非隐身用户进房后调用该方法,房间中的其他用户会收到 OnUserStartAudioCapture 的回调。 |
| StopAudioCapture | 立即关闭内部音频采集。默认为关闭状态。 内部采集是指:使用 RTC SDK 内置的视频采集机制进行视频采集。 调用该方法,本地用户会收到 OnAudioDeviceStateChanged 的回调。 非隐身用户进房后调用该方法后,房间中的其他用户会收到 OnUserStopAudioCapture 的回调。 |
| SetAudioProfile | 设置音质档位。你应根据业务场景需要选择适合的音质档位。 |
| GetAudioDeviceManager | 设备音频管理接口创建 |
| GetPositionAudioRender | 获取位置音频接口实例,包括范围语音、空间语音等和位置相关的音频接口。 |
| EnableAudioPropertiesReport | 启用音频信息提示。 |
| SendStreamSyncInfo | 发送音频流同步信息。将消息通过音频流发送到远端,并实现与音频流同步,该接口调用成功后,远端用户会收到 OnStreamSyncInfoReceived 回调。 |
| EnableAudioSpatialRender | 开启或关闭空间音频效果。 |
| UpdatePosition | 更新自己的位置坐标。 |
| UpdateSelfOrientation | 更新自己的朝向。本地朝向的设置只影响本地听到的音频效果,不影响本地发出的音频效果。 |
| SetLocalVoicePitch | 开启本地语音变调功能,多用于 K 歌场景。 使用该方法,你可以对本地语音的音调进行升调或降调等调整。 |
| EnableVocalInstrumentBalance | 开启/关闭音量均衡功能。 开启音量均衡功能后,人声的响度会调整为 -16lufs。如果已调用 SetAudioMixingLoudness 传入了混音音乐的原始响度,此音乐播放时,响度会调整为 -20lufs。 |
| EnablePlaybackDucking | 打开/关闭音量闪避功能,适用于“一起看”等场景。 开启该功能后,当检测到远端人声时,本地的媒体播放音量会自动减弱,从而保证远端人声的清晰可辨;当远端人声消失时,本地媒体音量会恢复到闪避前的音量水平。 |
| 方法 | 描述 |
|---|---|
| GetCount | 获取当前系统内音视频设备数量 |
| GetDevice | 根据索引号,获取设备信息 |
| Release | 释放当前 IDeviceCollection 对象占用的资源。 |
| EnumerateVideoCaptureDevices | 获取当前系统内视频采集设备列表。 |
| SetVideoCaptureDevice | 设置当前视频采集设备 |
| GetVideoCaptureDevice | 获取当前 SDK 正在使用的视频采集设备信息 |
| GetVideoDeviceManager | 创建视频设备管理实例 |
| BuildVideoFrame | 创建 IVideoFrame |
| StartVideoCapture | 立即开启内部视频采集。默认为关闭状态。 内部视频采集指:使用 RTC SDK 内置视频采集模块,进行采集。 调用该方法后,本地用户会收到 OnVideoDeviceStateChanged 的回调。 本地用户在非隐身状态下调用该方法后,房间中的其他用户会收到 OnUserStartVideoCapture 的回调。 |
| StopVideoCapture | 立即关闭内部视频采集。默认为关闭状态。 内部视频采集指:使用 RTC SDK 内置视频采集模块,进行采集。 调用该方法后,本地用户会收到 OnVideoDeviceStateChanged 的回调。 非隐身用户进房后调用该方法,房间中的其他用户会收到 OnUserStopVideoCapture 的回调。 |
| SetVideoCaptureConfig | 设置 RTC SDK 内部采集时的视频采集参数。 如果你的项目使用了 SDK 内部采集模块,可以通过本接口指定视频采集参数,包括模式、分辨率、帧率。 |
| SetLocalVideoCanvas | 设置本地视频渲染时,使用的视图,并设置渲染模式。 |
| UpdateLocalVideoCanvas | 修改本地视频渲染模式和背景色。 |
| SetRemoteStreamVideoCanvas | 设置渲染指定视频流 stream_key 时,使用的视图和渲染模式。 如果需要解除某个用户的绑定视图,你可以把 canvas 设置为空。 |
| UpdateRemoteStreamVideoCanvas | 修改远端视频渲染模式和背景色。 |
| EnableSimulcastMode | 该方法设置视频流发布端是否开启发布多路编码参数不同的视频流的模式。 |
| SetVideoEncoderConfig | 视频发布端设置期望发布的最大分辨率视频流参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等。 该接口支持设置一路视频流参数,设置多路参数请使用重载 API:SetVideoEncoderConfig。 |
| SetVideoEncoderConfig | 视频发布端设置推送多路流时各路流的参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等。 |
| SetLocalVideoMirrorType | 为采集到的视频流开启镜像 |
| RegisterRemoteEncodedVideoFrameObserver | 注册远端编码后视频数据回調。 完成注册后,当 SDK 监测到远端编码后视频帧时,会触发 OnRemoteEncodedVideoFrame 回调 |
| SetExternalVideoEncoderEventHandler | 注册自定义编码帧推送事件回调 |
| PushExternalEncodedVideoFrame | 推送自定义编码后的视频流 |
| SetVideoDecoderConfig | 在订阅远端视频流之前,设置远端视频数据解码方式 |
| RequestRemoteVideoKeyFrame | 在订阅远端视频流之后,向远端请求关键帧 |
| 方法 | 描述 |
|---|---|
| PushScreenFrame | 推送屏幕视频帧 |
| UpdateScreenCaptureRegion | 通过 RTC SDK 提供的采集模块采集屏幕视频流时,更新采集区域。 |
| StartScreenVideoCapture | 采集屏幕视频流,用于共享。屏幕视频流包括:屏幕上显示的内容,应用窗口中显示的内容,或虚拟屏幕中显示的内容。 其中,虚拟屏幕中显示的内容仅在 Windows 平台上支持。 |
| StopScreenVideoCapture | 停止屏幕视频流采集。 |
| UpdateScreenCaptureHighlightConfig | 通过 RTC SDK 提供的采集模块采集屏幕视频流时,更新边框高亮设置。默认展示表框。 |
| UpdateScreenCaptureMouseCursor | 通过 RTC SDK 提供的采集模块采集屏幕视频流时,更新对鼠标的处理设置。默认采集鼠标。 |
| UpdateScreenCaptureFilterConfig | 通过 RTC SDK 提供的采集模块采集屏幕视频流时,设置需要过滤的窗口。 |
| GetScreenCaptureSourceList | 获取共享对象(应用窗口和桌面)列表, 使用完之后需要调用对应的release接口释放 |
| GetThumbnail | 获取共享对象缩略图 |
| SetScreenAudioSourceType | 在屏幕共享时,设置屏幕音频的采集方式(内部采集/自定义采集) |
| SetScreenAudioStreamIndex | 在屏幕共享时,设置屏幕音频流和麦克风采集到的音频流的混流方式 |
| StartScreenAudioCapture | 在屏幕共享时,开始使用 RTC SDK 内部采集方式,采集屏幕音频 |
| StopScreenAudioCapture | 在屏幕共享时,停止使用 RTC SDK 内部采集方式,采集屏幕音频。 |
| PushScreenAudioFrame | 使用自定义采集方式,采集屏幕共享时的屏幕音频时,将音频帧推送至 RTC SDK 处进行编码等处理。 |
| PublishScreen | 在当前所在房间内发布本地屏幕共享音视频流 |
| UnpublishScreen | 停止将本地屏幕共享音视频流发布到当前所在房间中 |
| 方法 | 描述 |
|---|---|
| Login | 必须先登录注册一个 uid,才能发送房间外消息和向业务服务器发送消息 |
| Logout | 调用本接口登出后,无法调用房间外消息以及端到服务器消息相关的方法或收到相关回调。 |
| UpdateLoginToken | 更新用户用于登录的 Token Token 有一定的有效期,当 Token 过期时,需调用此方法更新登录的 Token 信息。 调用 Login 方法登录时,如果使用了过期的 Token 将导致登录失败,并会收到 OnLoginResult 回调通知,错误码为 kLoginErrorCodeInvalidToken。此时需要重新获取 Token,并调用此方法更新 Token。 |
| SetServerParams | 设置业务服务器参数 客户端调用 SendServerMessage 或 SendServerBinaryMessage 发送消息给业务服务器之前,必须设置有效签名和业务服务器地址。 |
| GetPeerOnlineStatus | 查询对端用户或本端用户的登录状态 |
| SendUserMessageOutsideRoom | 给房间外指定的用户发送文本消息(P2P) |
| SendUserBinaryMessageOutsideRoom | 给房间外指定的用户发送二进制消息(P2P) |
| SendServerMessage | 客户端给业务服务器发送文本消息(P2Server) |
| SendServerBinaryMessage | 客户端给业务服务器发送二进制消息(P2Server) |
| SendSEIMessage | 在视频通信时,通过视频帧发送 SEI 数据。 |
| 方法 | 描述 |
|---|---|
| StartAudioMixing | 开始播放音频文件。 可以通过传入不同的 ID 和 filepath 多次调用本方法,以实现同时播放多个混音文件,实现混音叠加。 |
| StopAudioMixing | 停止播放音乐文件及混音 |
| PauseAudioMixing | 暂停播放音乐文件及混音 |
| ResumeAudioMixing | 恢复播放音乐文件及混音 |
| PreloadAudioMixing | 预加载指定音频文件到内存中,以避免频繁播放时的重复加载。 |
| UnloadAudioMixing | 卸载指定音乐文件 |
| SetAudioMixingVolume | 调节混音的音量大小,包括音频文件混音和 PCM 混音。 |
| GetAudioMixingDuration | 获取音乐文件时长 |
| GetAudioMixingCurrentPosition | 获取音乐文件播放进度 |
| SetAudioMixingPosition | 设置音频文件的起始播放位置 |
| SetAudioMixingDualMonoMode | 设置当前音频文件的声道模式 |
| EnableAudioMixingFrame | 启动外部音频流混音 启动 PCM 音频数据混音。 要实现多个 PCM 音频数据混音,多次调用本方法,并传入不同的 mix_id。 |
| DisableAudioMixingFrame | 关闭 PCM 混音 |
| PushAudioMixingFrame | 推送 PCM 音频帧数据用于混音 |
| GetAudioMixingManager | 混音管理接口创建 |
| SetAudioMixingProgressInterval | 设置混音时音频文件播放进度回调的间隔 |
| SelectAudioTrack | 指定当前音频文件的播放音轨 |
| SetAudioMixingPitch | 开启本地播放音乐文件变调功能,多用于 K 歌场景。 使用该方法,你可以对本地播放音乐文件的音调进行升调或降调等调整。 |
| SetAudioMixingLoudness | 如果你需要使用 EnableVocalInstrumentBalance 对混音使音频文件/PCM 音频数据进行音量调整,你必须通过此接口传入其原始响度。 |
| SetAudioMixingPlaybackSpeed | 设置混音时音频文件的播放速度 |
| 方法 | 描述 |
|---|---|
| SetVoiceChangerType | 设置变声特效类型 |
| SetVoiceReverbType | 设置混响特效类型 |
| 方法 | 描述 |
|---|---|
| StartPushPublicStream | 发布一路公共流 公共流是指不属于任何房间,也不属于任何用户的媒体流。使用同一 appID 的用户,可以调用 StartPlayPublicStream 获取和播放指定的公共流。 |
| StopPushPublicStream | 停止发布当前用户发布的公共流 关于发布公共流,查看 StartPushPublicStream。 |
| UpdatePublicStreamParam | 更新公共流参数 关于发布公共流,查看 StartPushPublicStream。 |
| StartPlayPublicStream | 订阅指定公共流 无论用户是否在房间内,都可以调用本接口获取和播放指定的公共流。 |
| StopPlayPublicStream | 取消订阅指定公共流 关于订阅公共流,查看 StartPlayPublicStream。 |
| SetPublicStreamVideoCanvas | 为指定公共流绑定内部渲染视图 |
| SetPublicStreamVideoSink | 为指定公共流绑定自定义渲染器。详见自定义视频渲染。 |
| 方法 | 描述 |
|---|---|
| SetVideoSourceType | 设置向 SDK 输入的视频源 默认使用内部采集。内部采集指:使用 RTC SDK 内置的视频采集机制进行视频采集。 |
| SetLocalVideoSink | 将本地视频流与自定义渲染器绑定。 |
| SetRemoteVideoSink | 将远端视频流与自定义渲染器绑定。 |
| PushExternalVideoFrame | 发送外部源视频数据 |
| PushExternalVideoFrame | 发送外部源视频数据 |
| 方法 | 描述 |
|---|---|
| CheckLicense | 视频特效许可证检查 |
| GetAuthMessage | 从特效 SDK 获取授权消息,用于获取在线许可证。 |
| FreeAuthMessage | 使用完授权消息字符串后,释放内存。 |
| EnableEffect | 开启关闭视频特效 |
| SetAlgoModelPath | 设置视频特效算法模型路径 |
| SetEffectNodes | 设置视频特效素材包 |
| UpdateNode | 设置特效强度 |
| SetColorFilter | 设置颜色滤镜 |
| SetColorFilterIntensity | 设置已启用颜色滤镜的强度 |
| InitVirtualBackground | 虚拟背景功能初始化。 |
| EnableVirtualBackground | 开启虚拟背景。 |
| DisableVirtualBackground | 关闭虚拟背景。 |
| RegisterFaceDetectionObserver | 注册人脸检测结果回调观察者 注册此观察者后,你会周期性收到 OnFaceDetectResult 回调。 |
| 方法 | 描述 |
|---|---|
| RegisterLocalVideoProcessor | 设置自定义视频前处理器。 使用这个视频前处理器,你可以调用 ProcessVideoFrame 对 RTC SDK 采集得到的视频帧进行前处理,并将处理后的视频帧用于 RTC 音视频通信。 |
| ProcessVideoFrame | 获取 RTC SDK 采集得到的视频帧,根据 RegisterLocalVideoProcessor 设置的视频前处理器,进行视频前处理,最终将处理后的视频帧给到 RTC SDK 用于编码传输。 |
| 方法 | 描述 |
|---|---|
| RegisterVideoFrameObserver | 注册视频数据回调观察者 |
| RegisterLocalEncodedVideoFrameObserver | 注册本地视频帧监测器。 无论使用内部采集还是自定义采集,调用该方法后,SDK 每监测到一帧本地视频帧时,都会将视频帧信息通过 OnLocalEncodedVideoFrame 回调给用户 |
| 方法 | 描述 |
|---|---|
| ExpectedMixingType | 获取合流类型 |
| Uri | 获取推流地址 |
| AudioParam | 获取合流音频参数 |
| VideoParam | 获取合流视频参数 |
| LayoutRegionByIndex | 获取合流视窗布局信息 |
| AppData | 获取 SEI 信息 |
| SetExpectedMixingType | 设置合流类型 |
| SetUri | 设置推流地址 |
| SetAudioParam | 设置音频参数 |
| SetVideoParam | 设置视频参数 |
| SetLayoutParam | 设置合流布局参数 |
| Inflatten | 将输入的 json 格式的字符串转成 ITranscoderParam 结构体 |
| 方法 | 描述 |
|---|---|
| EnableExternalAudioDevice | 启用自定义音频采集渲染 |
| DisableExternalAudioDevice | 禁用自定义音频采集和渲染。 |
| PushExternalAudioFrame | 推送自定义音频数据。 |
| PullExternalAudioFrame | 拉取远端音频数据。使用 EnableExternalAudioDevice 启用自定义音频采集渲染后,可以使用本方法拉取远端音频数据。 |
| 方法 | 描述 |
|---|---|
| EnableAudioFrameCallback | 开启音频回调 |
| DisableAudioFrameCallback | 关闭音频回调 |
| RegisterAudioFrameObserver | 注册音频数据回调观察者。 |
| 方法 | 描述 |
|---|---|
| RegisterLocalAudioProcessor | 设置自定义音频处理器。 使用该处理器,你可以调用 ProcessAudioFrame 对 RTC SDK 采集得到的音频帧进行自定义处理,并将处理后的音频帧用于 RTC 音视频通信。 SDK 只持有 processor 的弱引用,你应保证其生命周期。 |
| 方法 | 描述 |
|---|---|
| SetPublishFallbackOption | 设置发布的音视频流的回退选项。 你可以调用该接口设置网络不佳或设备性能不足时从大流起进行降级处理,以保证通话质量。 |
| SetSubscribeFallbackOption | 设置订阅的音视频流的回退选项。 你可调用该接口设置网络不佳或设备性能不足时允许订阅流进行降级或只订阅音频流,以保证通话流畅。 |
| SetRemoteUserPriority | 设置用户优先级 |
| 方法 | 描述 |
|---|---|
| SetEncryptInfo | 设置传输时使用内置加密的方式 |
| SetCustomizeEncryptHandler | 设置自定义加密 需要实现对应的加密/解密方法,详情参考 EncryptType 。 |
| 方法 | 描述 |
|---|---|
| CreateRtcRoom | 创建房间 多次调用此方法以创建多个 IRTCRoom 实例。分别调用各 IRTCRoom 实例中的 JoinRoom 方法,同时加入多个房间。多房间模式下,用户可以同时订阅各房间的音视频流。 |
| SetUserVisibility | 设置用户可见性。默认可见。 |
| JoinRoom | 创建/加入房间:房间不存在时即创建房间;房间存在时,未加入房间的用户可加入这个房间。 同一房间内的用户间可以相互通话。 进房后重复调用无效,用户必须调用 LeaveRoom 退出当前房间后,才能加入下一个房间。 |
| LeaveRoom | 离开房间。 用户调用此方法离开房间,结束通话过程,释放所有通话相关的资源。 加入房间后,必须调用此方法结束通话,否则无法开始下一次通话。无论当前是否在房间内,都可以调用此方法。重复调用此方法没有负面影响。 此方法是异步操作,调用返回时并没有真正退出房间。真正退出房间后,本地会收到 OnLeaveRoom 回调通知。 |
| UpdateToken | 更新 Token。 用于加入房间的 Token 有一定的有效期。在 Token 过期前 30 秒,会收到 OnTokenWillExpire 回调,此时需要重新获取 Token,并调用此方法更新 Token,否则用户将因为 Token 过期被移出房间。 调用 JoinRoom 方法加入房间或断网重连进入房间时,如果 Token 过期或无效,将导致加入房间失败,并会收到 OnJoinRoomResult 回调通知,回调错误码为 ErrorCode 中的 ERROR_CODE_INVALID_TOKEN。此时需要重新获取 Token,并调用此方法更新 Token。 更新 Token 后,SDK 会自动加入房间。 |
| SendUserMessage | 给房间内指定的用户发送文本消息(P2P) |
| SendUserBinaryMessage | 给房间内指定的用户发送二进制消息(P2P) |
| SendRoomMessage | 给房间内的所有其他用户发送广播消息。 |
| SendRoomBinaryMessage | 给房间内的所有其他用户发送广播消息。 |
| PublishStream | 在当前所在房间内发布本地通过摄像头/麦克风采集的媒体流 |
| UnpublishStream | 停止将本地摄像头/麦克风采集的媒体流发布到当前所在房间中 |
| PublishScreen | 在当前所在房间内发布本地屏幕共享音视频流 |
| UnpublishScreen | 停止将本地屏幕共享音视频流发布到当前所在房间中 |
| SubscribeStream | 订阅房间内指定的通过摄像头/麦克风采集的媒体流。 该方法对自动订阅和手动订阅模式均适用。 |
| UnsubscribeStream | 取消订阅房间内指定的通过摄像头/麦克风采集的媒体流。 该方法对自动订阅和手动订阅模式均适用。 |
| SubscribeScreen | 订阅房间内指定的远端屏幕共享音视频流。 该方法对自动订阅和手动订阅模式均适用。 |
| UnsubscribeScreen | 取消订阅房间内指定的远端屏幕共享音视频流。 该方法对自动订阅和手动订阅模式均适用。 |
| Unsubscribe | 停止订阅指定的房间内远端音视频流。 关闭自动订阅功能,使用手动订阅模式时用户调用此方法停止订阅已订阅的音视频流。 此方法仅在关闭自动订阅功能时生效。用户需在加入房间时设置 config 关闭自动订阅功能以使用手动订阅模式。 |
| SetRemoteAudioPlaybackVolume | 调节来自远端用户的音频播放音量 |
| PauseAllSubscribedStream | 暂停接收来自远端的媒体流。 |
| ResumeAllSubscribedStream | 恢复接收来自远端的媒体流 |
| StartLiveTranscoding | 新增转推直播任务,并设置合流的视频视图布局和音频属性。 同一个任务中转推多路直播流时,SDK 会先将多路流合成一路流,然后再进行转推。 |
| StopLiveTranscoding | 停止转推直播。 关于启动转推直播,参看 StartLiveTranscoding。 |
| UpdateLiveTranscoding | 更新转推直播参数。 使用 StartLiveTranscoding 启用转推直播功能后,使用此方法更新功能配置参数。 |
| StartForwardStreamToRooms | 开始跨房间转发媒体流。 在用户进入房间后调用本接口,实现向多个房间转发媒体流,适用于跨房间连麦等场景。 |
| UpdateForwardStreamToRooms | 更新跨房间媒体流转发信息。 通过 StartForwardStreamToRooms 发起媒体流转发后,可调用本方法增加或者减少目标房间,或更新房间密钥。 调用本方法增加或删减房间后,将在本端触发 OnForwardStreamStateChanged 回调,包含发生了变动的目标房间中媒体流转发状态。 |
| StopForwardStreamToRooms | 停止跨房间媒体流转发。 通过 StartForwardStreamToRooms 发起媒体流转发后,可调用本方法停止向所有目标房间转发媒体流。 |
| PauseForwardStreamToAllRooms | 暂停跨房间媒体流转发。 通过 StartForwardStreamToRooms 发起媒体流转发后,可调用本方法暂停向所有目标房间转发媒体流。 调用本方法暂停向所有目标房间转发后,你可以随时调用 ResumeForwardStreamToAllRooms 快速恢复转发。 |
| ResumeForwardStreamToAllRooms | 恢复跨房间媒体流转发。 调用 PauseForwardStreamToAllRooms 暂停转发之后,调用本方法恢复向所有目标房间转发媒体流。 |
| 方法 | 描述 |
|---|---|
| StartASR | 开启自动语音识别服务。该方法将识别后的用户语音转化成文字,并通过 OnMessage 事件回调给用户。 |
| StopASR | 关闭语音识别服务 |
| 方法 | 描述 |
|---|---|
| StartFileRecording | 该方法将通话过程中的音视频数据录制到本地的文件中。 |
| StopFileRecording | 停止本地录制 |
| 方法 | 描述 |
|---|---|
| StartNetworkDetection | 开启通话前网络探测 |
| StopNetworkDetection | 停止通话前网络探测 |
| 方法 | 描述 |
|---|---|
| EnumerateAudioPlaybackDevices | 获取当前系统内音频播放设备列表。如果后续设备有变更,你会收到 OnMediaDeviceStateChanged 回调通知,然后需要重新调用本接口以获得新的设备列表。 |
| EnumerateAudioCaptureDevices | 获取当前系统内音频采集设备列表。如果后续设备有变更,你需要重新调用本接口以获得新的设备列表。 |
| FollowSystemPlaybackDevice | 设置音频播放路由是否跟随系统。 |
| FollowSystemCaptureDevice | 设置音频采集路由是否跟随系统。 |
| SetAudioPlaybackDevice | 设置音频播放设备。 |
| SetAudioCaptureDevice | 设置音频采集设备。 |
| SetAudioPlaybackDeviceVolume | 设置当前音频播放设备音量 |
| GetAudioPlaybackDeviceVolume | 获取当前音频播放设备音量 |
| SetAudioCaptureDeviceVolume | 设置当前音频采集设备音量 |
| GetAudioCaptureDeviceVolume | 获取当前音频采集设备音量 |
| SetAudioPlaybackDeviceMute | 设置当前音频播放设备静音状态,默认为非静音。 |
| GetAudioPlaybackDeviceMute | 获取当前音频播放设备是否静音的信息。 |
| SetAudioCaptureDeviceMute | 设置当前音频采集设备静音状态,默认为非静音。 |
| GetAudioCaptureDeviceMute | 获取当前音频采集设备是否静音的信息。 |
| GetAudioPlaybackDevice | 获取当前音频播放设备 ID。 |
| GetAudioCaptureDevice | 获取当前音频采集设备 ID。 |
| StartAudioPlaybackDeviceTest | 启动音频播放设备测试。 该方法测试播放设备是否能正常工作。SDK 播放指定的音频文件,测试者如果能听到声音,说明播放设备能正常工作。 |
| StopAudioPlaybackDeviceTest | 停止音频播放设备测试。 |
| StartAudioCaptureDeviceTest | 启动音频采集设备测试。 该方法测试音频采集设备是否能正常工作。启动测试后,会收到 OnLocalAudioPropertiesReport 回调上报的音量信息。 |
| StopAudioCaptureDeviceTest | 停止音频采集设备测试。 |
| StartAudioDeviceLoopbackTest | 开始音频设备回路测试。 该方法测试音频采集设备和音频播放设备是否能正常工作。一旦测试开始,音频采集设备会采集本地声音 并通过音频播放设备播放出来,同时用户 App 会收到 OnLocalAudioPropertiesReport回调上报的音量信息。 |
| StopAudioDeviceLoopbackTest | 停止音频设备回路测试。 |
| InitAudioPlaybackDeviceForTest | 尝试初始化音频播放设备,可检测出设备不存在、权限被拒绝/禁用等异常问题。 |
| InitAudioCaptureDeviceForTest | 尝试初始化音频采集设备,可检测设备不存在、权限被拒绝/禁用等异常问题。 |
| 方法 | 描述 |
|---|---|
| SetCaptureVolume | 调节音频采集音量 |
| 回调 | 描述 |
|---|---|
| OnLogReport | 端监控日志回调。当产生一个端监控事件时触发该回调。 |
| OnSysStats | 周期性(2s)地发出回调,报告当前cpu与memory使用率 |
| OnWarning | 当内部发生警告事件时触发该回调 |
| OnError | 当 SDK 内部发生不可逆转错误时触发该回调。 |
| 回调 | 描述 |
|---|---|
| OnJoinRoomResult | 首次加入房间/重连加入房间的回调。此回调表示用户调用 JoinRoom 的结果,根据错误码判断成功/失败以及区别是否为重连。 |
| OnLeaveRoom | 离开房间回调。 用户调用 LeaveRoom 方法后,SDK 会停止所有的发布订阅流,并在释放所有与通话相关的音视频资源后,通过此回调通知用户离开房间成功。 |
| OnRoomWarning | SDK 发生警告回调。 SDK 内部遇到可恢复错误时,在尝试自动恢复的同时,会通过此回调通知用户。此回调事件仅用作通知。 |
| OnUserPublishStream | 房间内新增远端摄像头/麦克风采集的媒体流的回调。 |
| OnUserUnPublishStream | 房间内远端摄像头/麦克风采集的媒体流移除的回调。 |
| OnUserPublishScreen | 房间内新增远端屏幕共享音视频流的回调。 |
| OnUserUnPublishScreen | 房间内远端屏幕共享音视频流移除的回调。 |
| OnStreamSubscribed | 关于订阅媒体流状态改变的回调 |
| OnRoomError | SDK 发生错误回调。 SDK 内部遇到不可恢复错误时,会通过此回调通知 App,需要 App 根据错误码进行操作或提示用户。 |
| OnUserJoined | 远端可见用户加入房间,或房内隐身用户切换为可见的回调。 1. 远端用户调用 SetUserVisibility 方法将自身设为可见后加入房间时,房间内其他用户将收到该事件。 2. 远端可见用户断网后重新连入房间时,房间内其他用户将收到该事件。 3. 房间内隐身远端用户调用 SetUserVisibility 方法切换至可见时,房间内其他用户将收到该事件。 4. 新进房用户会收到进房前已在房内的可见用户的进房回调通知。 |
| OnUserLeave | 远端用户离开房间,或切至不可见时,本地用户会收到此事件 |
| OnAudioFrameSendStateChanged | 音频首帧发送状态改变回调 |
| OnVideoFrameSendStateChanged | 视频首帧发送状态改变回调 |
| OnScreenVideoFrameSendStateChanged | 屏幕共享流视频首帧发送状态改变回调 |
| OnAudioFramePlayStateChanged | 音频首帧播放状态改变回调 |
| OnVideoFramePlayStateChanged | 视频首帧播放状态改变回调 |
| OnScreenVideoFramePlayStateChanged | 屏幕共享流视频首帧播放状态改变回调 |
| OnNetworkQuality | 加入房间后, 以 2 秒 1 次的频率,报告用户的网络质量信息 |
| OnNetworkTypeChanged | SDK 当前网络连接类型改变回调。当 SDK 的当前网络连接类型发生改变时回调该事件。 |
| OnConnectionStateChanged | SDK 与信令服务器连接状态改变回调。连接状态改变时触发。 |
| 回调 | 描述 |
|---|---|
| OnRemoteAudioPropertiesReport | 远端用户进房后,本地调用 EnableAudioPropertiesReport,根据设置的 interval 值,本地会周期性地收到此回调,了解订阅的远端用户的音频信息。 远端用户的音频包括使用 RTC SDK 内部机制/自定义机制采集的麦克风音频和屏幕音频。 |
| OnLocalAudioPropertiesReport | 调用 EnableAudioPropertiesReport 后,根据设置的 interval 值,你会周期性地收到此回调,了解本地音频的相关信息。 本地音频包括使用 RTC SDK 内部机制采集的麦克风音频和屏幕音频。 |
| OnStreamSyncInfoReceived | 音频流同步信息回调。可以通过此回调,在远端用户调用 SendStreamSyncInfo 发送音频流同步消息后,收到远端发送的音频流同步信息。 |
| OnLocalAudioPropertiesReport | 调用 EnableAudioPropertiesReport 后,根据设置的 interval 值,你会周期性地收到此回调,了解本地音频的相关信息。 本地音频包括使用 RTC SDK 内部机制采集的麦克风音频和屏幕音频。 |
| 回调 | 描述 |
|---|---|
| OnSEIMessageReceived | 收到通过 SendSEIMessage 发送的带有 SEI 消息的视频帧时,收到此回调 |
| OnStart | 提示自定义编码帧可以开始推送的回调。 收到该回调后,你即可调用 PushExternalEncodedVideoFrame 向 SDK 推送自定义编码视频帧 |
| OnStop | 当收到该回调时,你需停止向 SDK 推送自定义编码视频帧 |
| OnRateUpdate | 当自定义编码流的帧率或码率发生变化时,触发该回调 |
| OnRequestKeyFrame | 提示流发布端需重新生成关键帧的回调 |
| OnLocalScreenFrame | 获取采集成功的本地屏幕视频帧,用于自定义处理或渲染。 |
| OnLocalVideoFrame | 获取采集成功的本地摄像头流视频帧,用于自定义处理或渲染。 |
| OnRemoteScreenFrame | 获取采集成功的远端屏幕视频帧,用于自定义处理或渲染。 |
| OnRemoteVideoFrame | 获取采集成功的远端摄像头流视频帧,用于自定义处理或渲染。 |
| OnFirstLocalVideoFrameCaptured | RTC SDK 在本地完成第一帧视频帧或屏幕视频帧采集时,收到此回调。 |
| OnLocalVideoSizeChanged | 本地视频大小或旋转配置发生改变时,收到此回调。 |
| OnRemoteVideoSizeChanged | 远端视频大小或旋转配置发生改变时,房间内订阅此视频流的用户会收到此回调。 |
| OnFirstRemoteVideoFrameRendered | SDK 内部渲染成功远端视频流首帧后,收到此回调。 |
| OnLocalVideoStateChanged | 本地视频流的状态发生改变时,收到该事件。 |
| OnRemoteVideoStateChanged | 远端视频流的状态发生改变时,房间内订阅此流的用户会收到该事件。 |
| OnVideoStreamBanned | 通过调用服务端 MuteUser/UnmuteUser 方法禁用/解禁指定房间内指定用户视频流的发送时,触发此回调。 |
| 回调 | 描述 |
|---|---|
| OnLoginResult | 登录结果回调 |
| OnLogout | 登出结果回调 |
| OnServerParamsSetResult | 设置业务服务器参数的返回结果 |
| OnGetPeerOnlineStatus | 查询对端或本端用户登录状态的返回结果 |
| OnUserMessageReceivedOutsideRoom | 收到房间外用户调用 SendUserMessageOutsideRoom 发来的文本消息时,会收到此回调 |
| OnUserBinaryMessageReceivedOutsideRoom | 收到房间外用户调用 SendUserBinaryMessageOutsideRoom 发来的二进制消息时,会收到此回调 |
| OnUserMessageSendResultOutsideRoom | 给房间外指定的用户发送消息的回调 |
| OnServerMessageSendResult | 给业务服务器发送消息的回调 |
| OnRoomMessageReceived | 接收到房间内广播消息的回调。 |
| OnRoomBinaryMessageReceived | 接收到房间内二进制广播消息的回调。 |
| OnUserMessageReceived | 收到来自房间中其他用户发来的文本消息时(P2P),会收到此回调。 |
| OnUserBinaryMessageReceived | 单个用户接收到同一房间内其他 uid 所属用户发来二进制消息的回调(P2P)。 |
| OnUserMessageSendResult | 向房间内单个用户发送文本或二进制消息后(P2P),消息发送方会收到该消息发送结果回调。 |
| OnRoomMessageSendResult | 当调用 SendRoomMessage 函数发送消息后,回调此条消息的发送结果(反馈)。 |
| 回调 | 描述 |
|---|---|
| OnAudioMixingStateChanged | 音频混音文件播放状态改变时回调 |
| OnAudioMixingPlayingProgress | 混音音频文件播放进度回调 |
| 回调 | 描述 |
|---|---|
| ~ILocalEncodedVideoFrameObserver | 析构函数 |
| 回调 | 描述 |
|---|---|
| OnPushPublicStreamResult | 公共流发布结果回调。 调用 StartPushPublicStream 接口发布公共流后,启动结果通过此回调方法通知用户。 |
| OnPlayPublicStreamResult | 订阅公共流的结果回调 通过 StartPlayPublicStream 订阅公共流后,可以通过本回调获取订阅结果。 |
| OnPublicStreamSEIMessageReceived | 回调公共流中包含的 SEI 信息 通过 StartPlayPublicStream 开始播放公共流后,可以通过本回调获取公共流中包含的 SEI 信息。 |
| OnFirstPublicStreamVideoFrameDecoded | 公共流的首帧视频解码成功 关于订阅公共流,详见 StartPlayPublicStream。 |
| OnFirstPublicStreamAudioFrame | 公共流的音频首帧解码成功 关于订阅公共流,详见 StartPlayPublicStream。 |
| 回调 | 描述 |
|---|---|
| OnFaceDetectResult | 特效 SDK 进行人脸检测结果的回调。 调用 RegisterFaceDetectionObserver 注册了 IFaceDetectionObserver,并使用 RTC SDK 中包含的特效 SDK 进行视频特效处理时,你会收到此回调。 |
| 回调 | 描述 |
|---|---|
| OnLocalEncodedVideoFrame | 调用 RegisterLocalEncodedVideoFrameObserver 后,SDK 每次使用内部采集,采集到一帧视频帧,或收到一帧外部视频帧时,都会回调该事件。 |
| OnRemoteEncodedVideoFrame | 调用 RegisterRemoteEncodedVideoFrameObserver 后,SDK 监测到远端编码后视频数据时,触发该回调 |
| 回调 | 描述 |
|---|---|
| OnStreamMixingEvent | 转推直播状态回调 |
| OnStreamMixingVideoFrame | 合流视频回调,运行在视频回调线程 |
| OnStreamMixingAudioFrame | 合流音频回调,运行在音频回调线程 |
| OnStreamMixingDataFrame | 视频 SEI 帧回调,运行在视频回调线程 |
| 回调 | 描述 |
|---|---|
| OnRecordAudioFrame | 返回麦克风录制的音频数据 |
| OnPlaybackAudioFrame | 返回订阅的所有远端用户混音后的音频数据 |
| OnRemoteUserAudioFrame | 返回远端单个用户的音频数据 |
| OnMixedAudioFrame | 返回本地麦克风录制和订阅的所有远端用户混音后的音频数据 |
| OnRecordScreenAudioFrame | 返回本地屏幕录制的音频数据 |
| 回调 | 描述 |
|---|---|
| OnPerformanceAlarms | 本地未开启发布性能回退,检测到设备性能不足时,收到此回调。 本地开启发布性能回退,因设备性能/网络原因,造成发布性能回退/恢复时,收到此回调。 |
| OnSimulcastSubscribeFallback | 因发布/订阅性能回退或退出回退状态,订阅的音视频流,发生流的切换时,收到该回调。 |
| 回调 | 描述 |
|---|---|
| OnUserStartVideoCapture | 房间内的可见用户调用 StartVideoCapture 开启内部视频采集时,房间内其他用户会收到此回调。 |
| OnUserStopVideoCapture | 房间内的可见用户调用 StopVideoCapture 关闭内部视频采集时,房间内其他用户会收到此回调。 |
| 回调 | 描述 |
|---|---|
| OnEncryptData | 自定义加密。 使用设定的自定义加密方式,对传输前的音视频帧数据进行加密。 |
| OnDecryptData | 自定义解密。 对自定义加密后的音视频帧数据进行解密。关于自定义加密,参看 OnEncryptData。 |
| 回调 | 描述 |
|---|---|
| OnForwardStreamStateChanged | 跨房间媒体流转发状态和错误回调 |
| OnForwardStreamEvent | 跨房间媒体流转发事件回调 |
| OnFirstRemoteVideoFrameDecoded | SDK 接收并解码远端视频流首帧后,收到此回调。 |
| OnTokenWillExpire | Token 过期前 30 秒将触发该回调。 调用 UpdateToken 更新 Token。否则 Token 过期后,用户将被移出房间无法继续进行音视频通话。 |
| 回调 | 描述 |
|---|---|
| OnRecordingStateUpdate | 获取本地录制状态回调。 该回调由 StartFileRecording 或 StopFileRecording 触发。 |
| OnRecordingProgressUpdate | 本地录制进度回调。 该回调由 StartFileRecording 触发,录制状态正常时,系统每秒钟都会通过该回调提示录制进度。 |
| 回调 | 描述 |
|---|---|
| OnNetworkDetectionResult | 通话前网络探测结果 |
| OnNetworkDetectionStopped | 通话前网络探测结束 以下情况将停止探测并收到本一次本回调: 1. 当调用 StopNetworkDetection 接口停止探测后,会收到一次该回调; 2. 当收到远端/本端音频首帧后,停止探测; 3. 当探测超过3分钟后,停止探测; 4. 当探测链路断开一定时间之后,停止探测。 |
| 回调 | 描述 |
|---|---|
| OnUserStartAudioCapture | 房间内的可见用户调用 StartAudioCapture 开启音频采集时,房间内其他用户会收到此回调。 |
| OnUserStopAudioCapture | 房间内的可见用户调用 StopAudioCapture 关闭音频采集时,房间内其他用户会收到此回调。 |
| OnFirstLocalAudioFrame | 本地采集到第一帧音频帧时,收到该回调 |
| OnFirstRemoteAudioFrame | 接收到来自远端某音频流的第一帧时,收到该回调。 |
| OnLocalAudioStateChanged | 本地音频的状态发生改变时,该回调通知当前的本地音频状态。 |
| OnRemoteAudioStateChanged | 用户订阅来自远端的音频流状态发生改变时,会收到此回调,了解当前的远端音频流状态。 |
| OnAudioStreamBanned | 通过调用服务端 MuteUser/UnmuteUser 方法禁用/解禁指定房间内指定用户视音频流的发送时,触发此回调。 |
| 回调 | 描述 |
|---|---|
| OnRoomStats | 房间内通话统计信息回调。 用户进房开始通话后,每 2s 收到一次本回调。 |
| OnLocalStreamStats | 发布流成功后,每隔 2s 收到此回调,了解发布的流在此周期内的网络质量信息。 |
| OnRemoteStreamStats | 每隔 2s 收到此回调,了解订阅的远端用户发布的流在此周期内的网络质量信息。 |
| 回调 | 描述 |
|---|---|
| OnHttpProxyState | HTTP 代理连接状态改变时,收到该回调。 |
| OnHttpsProxyState | HTTPS 代理连接状态改变时,收到该回调。 |
| OnSocks5ProxyState | Socks5 代理状态改变时,收到该回调。 |