IAudioMixingManager

名称 描述
startAudioMixing() 开启混音
stopAudioMixing() 停止播放音频文件
pauseAudioMixing() 暂停播放音频文件
resumeAudioMixing() 恢复播放音频文件
preloadAudioMixing() 预加载指定音频文件到内存中
unloadAudioMixing() 卸载指定音频文件
setAudioMixingVolume() 调节混音的音量大小,包括音频文件混音和 PCM 混音。
getAudioMixingVolume() 获取音频文件的音量
getAudioMixingDuration() 获取音频文件时长
getAudioMixingCurrentPosition() 获取音频文件播放进度
setAudioMixingPosition() 设置音频文件的起始播放位置
enableAudioMixingBuffer() 启动 PCM 音频数据混音
disableAudioMixingBuffer() 关闭 PCM 混音
pushAudioMixingBuffer() 推送 PCM 音频数据用于混音

IEngineEvents

名称 描述
onPlayerEvent() 播放器事件
onUserJoined() 用户加入房间
onUserLeave() 用户离开房间
onConnectionStateChanged() 连接状态发生变化
onStreamAdd() 房间内有新的媒体流发布
onUserMuteAudio() 房间内用户暂停/恢复发送音频流时,房间内其他用户将收到此事件
onUserMuteVideo() 房间内用户暂停/恢复发送视频流时,房间内其他用户将收到此事件
onStreamRemove() 房间内有媒体流停止发送
onVideoFirstFrameRendered() 视频首帧渲染
onVideoFirstFrameDecoded() 视频首帧解码
onAudioFirstFrameDecoded() 音频首帧解码
onMediaDeviceStateChanged() 媒体设备状态改变
onAutoplayFailed() 自动播放失败
onTrackEnded() 断流事件
onRoomMessageReceived() 接收到房间内广播消息的事件。
onRoomBinaryMessageReceived() 接收到房间内二进制广播消息的事件。
onUserMessageReceived() 收到来自房间中其他用户通过 sendUserMessage 发来的点对点文本消息时,会收到此事件
onUserBinaryMessageReceived() 收到来自房间中其他用户通过 sendUserBinaryMessage 发来的点对点二进制消息时,会收到此事件
onRemoteStreamStats() 用户订阅的远端音/视频流统计信息以及网络状况,统计周期为 2s
onLocalStreamStats() 本地音/视频流统计信息以及网络状况,统计周期为 2s
onPublicStreamStats() 用户订阅的公共流统计信息以及网络状况,统计周期为 2s。
onAudioVolumeIndication() 事件频道内所有用户的音量
如果本地用户未进房,则列表中只有 local_user 的音量信息
onAudioPlaybackDeviceChanged() 当使用 setAudioPlaybackDevice 时,会收到此事件
onUserStartAudioCapture() 房间内的可见用户调用 startAudioCapture 开启音频采集时,房间内其他用户会收到此事件。
onUserStopAudioCapture() 房间内的可见用户调用 stopAudioCapture 关闭音频采集时,房间内其他用户会收到此事件。
onUserStartVideoCapture() 房间内的可见用户调用 startVideoCapture 开启内部视频采集时,房间内其他用户会收到此事件。
onUserStopVideoCapture() 房间内的可见用户调用 stopVideoCapture 关闭内部视频采集时,房间内其他用户会收到此事件。
onSEIMessageReceived() 接收到包含 SEI 数据的视频帧事件
onAutoSubscribeResult() 如果开启了自动订阅,订阅成功或者失败后可以收到此事件
onAutoPublishResult() 如果开启了自动发布,发布成功或者失败后可以收到此事件
onAutoplayFailed() 自动播放失败
onLiveTranscodingResult() 转推直播结果事件
onError() 当 SDK 内部发生不可逆转错误时触发该回调
onAudioMixingStateChanged() 音频混音文件播放状态改变事件
onUserMessageReceivedOutsideRoom() 接收到房间外消息的事件。
onUserBinaryMessageReceivedOutsideRoom() 接收到房间外二进制消息的事件。
onTokenWillExpire()
onCloudProxyConnected() 调用 startCloudProxy 开启云代理,SDK 首次成功连接云代理服务器时,回调此事件。
onPushPublicStreamResult() 公共流发布结果回调。
调用 startPushPublicStream 发布公共流后,结果通过此回调通知用户。
onFirstPublicStreamVideoFrameDecoded() 公共流的视频首帧解码成功。
关于订阅公共流,参看 startPlayPublicStream。
onFirstPublicStreamAudioFrameDecoded() 公共流的音频首帧解码成功。
关于订阅公共流,参看 startPlayPublicStream。
onFirstPublicStreamVideoFrameRendered() 公共流的首帧视频渲染成功。

IRTCEngine

名称 描述
joinRoom() 加入房间。

调用此方法加入房间,同房间内其他用户进行音视频通话。
leaveRoom() 离开房间。

用户调用此方法离开房间,结束通话过程,释放所有通话相关的资源。
destroy() 销毁 createEngine 所创建引擎实例,并释放所有相关资源。
publish() 在当前所在房间内手动开始发布本地音视频流
unpublish() 在当前所在房间内停止发布本地音视频流。
subscribeUserStream() 订阅房间内指定的远端音视频流。

无论自动订阅还是手动订阅模式,你都可以调用此方法按需订阅房间中的音视频流。

该方法也可用于更新已经订阅的流的属性、媒体类型等配置。
unSubscribe() 停止订阅指定的房间内远端音视频流。
无论自动订阅还是手动订阅模式,你都可以调用此方法取消已订阅的音视频流。
updateToken() 更新 Token。

用于加入房间的 Token 有一定的有效期。当 Token 过期时,需要调用此方法更新房间的 Token 信息。
switchMicrophone() 切换内部采集时使用的麦克风
switchCamera() 切换内部采集时使用的摄像头

默认摄像头由浏览器指定。
startVideoCapture() 立即开启内部视频采集。默认为关闭状态。

内部视频采集是指:使用 RTC SDK 内置的视频采集机制进行视频采集。
发布流后调用该方法,房间中的其他用户会收到 onUserStartVideoCapture 的回调。
stopVideoCapture() 关闭内部视频采集。默认为关闭状态。

内部视频采集指:使用 RTC SDK 内置视频采集模块,进行采集。

发布流后调用该方法,房间中的其他用户会收到 onUserStopVideoCapture 的回调。
startAudioCapture() 立即开启内部音频采集。默认为关闭状态。

内部采集是指:使用 RTC SDK 内置的视频采集机制进行视频采集。
发布流后调用该方法,房间中的其他用户会收到 onUserStartAudioCapture 的回调。
stopAudioCapture() 立即关闭内部音频采集。默认为关闭状态。

内部采集是指:使用 RTC SDK 内置的视频采集机制进行视频采集。
调用该方法,本地用户会收到 onUserStopAudioCapture 的回调。
startScreenCapture() 使用内部采集模块,采集当前屏幕视频流,用于共享。
stopScreenCapture() 停止屏幕共享流内部采集。
publishScreen() 发布本地屏幕共享流。
unpublishScreen() 停止发布本地屏幕共享流。
setLocalVideoPlayer() 设置本地视频渲染时,使用的视图,并设置渲染模式。
调用本方法绑定视图以后,你可以通过 onPlayerEvent 来监听播放状态。
你可以通过再次调用本方法,并绑定空视图来解除绑定。
setRemoteVideoPlayer() 设置远端视频渲染时,使用的视图,并设置渲染模式。
建议在收到 onVideoFirstFrameRendered 事件后,调用本方法对远端视频视图进行设置。
你可以通过再次调用本方法,并绑定空视图来解除绑定。
setLocalVideoMirrorType() 是否开启本地视频流镜像模式。
setAudioPlaybackDevice() 设置音频播放设备,例如扬声器或者耳机,默认使用扬声器。
play() 手动开启音视频流播放
进房时未开启自动播放或自动播放失败时,可以调用本方法手动开启音视频流播放。
muteLocalAudio() 控制本地音频流的发送状态:发送/不发送。

非隐身用户使用此方法后,房间中的其他用户会收到回调 onUserMuteAudio。
muteLocalVideo() 控制本地视频流的发送状态:发送/不发送。

无论你使用内部视频采集,还是自定义视频采集,你都应使用此接口启动发送本地视频流。

非隐身用户使用此方法后,房间中的其他用户会收到回调 onUserMuteAudio。
pauseAllSubscribedStream() 暂停接收来自远端的媒体流。
resumeAllSubscribedStream() 恢复接收来自远端的媒体流
sendUserMessage() 给房间内指定的用户发送点对点文本消息。

若消息发送成功,则 userId 所指定的用户会收到 onUserMessageReceived 回调。
sendUserBinaryMessage() 给房间内指定的用户发送点对点二进制消息。

若消息发送成功,则 userId 所指定的用户会收到 onUserBinaryMessageReceived 回调。
sendRoomMessage() 给房间内的所有其他用户群发文本消息。

若消息发送成功,同一房间内的其他用户会收到 onRoomMessageReceived 回调。
sendRoomBinaryMessage() 给房间内的所有其他用户群发二进制消息。

若消息发送成功,同一房间内的其他用户会收到通过 onRoomBinaryMessageReceived 回调发送的消息
sendSEIMessage() 在视频通信时,通过视频帧发送 SEI 数据。
setVideoEncoderConfig() 启动推送多路视频流,设置推送多路流时的各路视频参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等。
setAudioVolumeIndicationInterval() 开启/关闭音量提示。默认关闭。

开启音量提示后,将按设置的时间间隔,收到本地采集音量或订阅的远端用户的音量信息回调。
关于回调的具体信息,参看 onAudioVolumeIndication。
startLiveTranscoding() 开启转推直播,并设置合流的视频视图布局和音频属性。
updateLiveTranscoding() 更新转推直播参数。
使用 startLiveTranscoding 启用转推直播功能后,使用此方法更新功能配置参数。
stopLiveTranscoding() 停止转推直播。
关于启动转推直播,参看 startLiveTranscoding。
setBusinessId() 设置业务标识参数
可通过 businessId 区分不同的业务场景。businessId 由客户自定义,相当于一个“标签”,可以分担和细化现在 AppId 的逻辑划分的功能,但不需要鉴权。
setUserVisibility() 设置用户可见性。默认可见。
setExternalVideoTrack() 使用用户自定义的 videoTrack
请确保在你调用本方法前已调用 setVideoSourceType 设置为自定义视频采集。
setExternalAudioTrack() 使用用户自定义的 audioTrack
使用自定义的 audioTrack 之后, 再开启摄像头,或者切换摄像头时。SDK 会采集新的视频流替换自定义的 audioTrack
setVideoSourceType() 设置向 SDK 输入的视频源
默认使用内部采集。内部采集指:使用 RTC SDK 内置的视频采集机制进行视频采集。
该方法进房前后均可调用。
当你已调用 startVideoCapture 开启内部采集后,再调用此方法切换至自定义采集时,SDK 会自动关闭内部采集。
当你调用此方法开启自定义采集后,想要切换至内部采集,你必须先调用此方法关闭自定义采集,然后调用 startVideoCapture 手动开启内部采集
setAudioSourceType() 设置向 SDK 输入的音频源
默认使用内部采集。内部采集指:使用 RTC SDK 内置的音频采集机制进行音频采集。
该方法进房前后均可调用。
当你已调用 startAudioCapture 开启内部采集后,再调用此方法切换至自定义采集时,SDK 会自动关闭内部采集。
当你调用此方法开启自定义采集后,想要切换至内部采集,你必须先调用此方法关闭自定义采集,然后调用 startAudioCapture 手动开启内部采集
getAudioMixingManager() 混音管理接口创建
setAudioCaptureConfig() 设置 RTC SDK 内部采集时的音频采集参数。默认参数由浏览器决定。
setVideoCaptureConfig() 设置 RTC SDK 内部采集时的视频采集参数。默认参数由浏览器决定。
login() 登录即时消息服务器
调用此方法登录后,可以向同 appID 下其他已登陆用户发送文本或二进制消息。
logout() 调用本接口登出后,无法调用房间外消息以及端到服务器消息相关的方法或收到相关回调。
updateLoginToken() 更新用户用于登录的 Token。Token 有一定的有效期,当 Token 过期时,需调用此方法更新登录的 Token 信息。
getPeerOnlineStatus() 查询对端用户或本端用户的登录状态。在发送房间外消息之前,用户可以通过本接口了解对端用户是否登录,从而决定是否发送消息。也可以通过本接口查询自己查看自己的登录状态。
sendUserMessageOutsideRoom() 给房间外指定的用户发送文本消息(P2P)
sendUserBinaryMessageOutsideRoom() 给房间外指定的用户发送二进制消息(P2P)
setServerParams() 设置业务服务器参数。调用 sendServerMessage 或 sendServerBinaryMessage 发送消息给业务服务器之前,必须需要设置有效签名和业务服务器地址。
sendServerMessage() 客户端给业务服务器发送文本消息(P2Server)
sendServerBinaryMessage() 客户端给业务服务器发送二进制消息(P2Server)
startCloudProxy() 开启云代理
stopCloudProxy() 关闭云代理
startPushPublicStream() 发布一路公共流。
公共流是指不属于任何房间,也不属于任何用户的媒体流。使用同一 appID 的用户,可以调用 startPlayPublicStream 获取和播放指定的公共流。
updatePublicStreamParam() 更新公共流参数。
调用 startPushPublicStream 发布一路公共流。
stopPushPublicStream() 停止发布公共流。
调用 startPushPublicStream 发布一路公共流。
startPlayPublicStream() 订阅指定公共流。
无论用户是否在房间内,都可以调用本接口获取和播放指定的公共流。
stopPlayPublicStream() 取消订阅指定公共流。
关于订阅公共流,查看 startPlayPublicStream:#ByteRTCEngineKit#startPlayPublicStream:。
setPublicStreamVideoPlayer() 为指定公共流设置使用的视图和渲染模式。
defaultTranscoding() 获取合流转推默认参数。

IVERTC

名称 描述
enableDevices() 向用户获取设备权限
getMicrophones() 该方法枚举可用的麦克风。
可以通过该方法获取设备的 deviceId, 可用于 startAudioCapture 方法中指定采集/播放设备。
getCameras() 该方法枚举可用的摄像头等。
可以通过该方法获取设备的 deviceId, 可用于 startVideoCapture 方法中指定采集/播放设备。
getAudioPlayback() 该方法枚举可用的音频输出设备,例如耳机、音箱等。
可以通过该方法获取设备的 deviceId, 可用于 setAudioPlaybackDevice 方法中指定采集/播放设备。
isSupported() 浏览器是否支持
getSupportedCodecs() 获取当前浏览器支持的编解码类型。
若你已开通 vp8 业务,可以在进房前调用该接口查看当前浏览器是否支持 vp8 编码类型
createEngine() 创建引擎对象。
你必须先使用此方法,以使用 RTC 提供的各种音视频能力。
再次调用此方法时,会创建另一个独立的引擎实例。
destroyEngine() 手动销毁通过 createEngine 所创建的引擎对象。
getSdkVersion() 获取 SDK 当前的版本号。
getDevices() 该方法枚举可用的媒体输入和输出设备,比如麦克风、摄像头、耳机等。
可以通过该方法获取设备的 deviceId, 可用于 setAudioPlaybackDevice, startVideoCapture, startAudioCapture 方法中指定采集/播放设备。