类型: class
API
| 名称 | 描述 |
|---|---|
| createRTCRoom() | 创建房间实例 |
| getRoomId() | 获取房间 ID |
| destroy() | 退出并销毁房间。 |
| joinRoom() | 加入房间。 |
| leaveRoom() | 离开房间。 |
| setUserVisibility() | 设置用户可见性。未调用该接口前,本地用户默认对他人可见。 |
| setMultiDeviceAVSync() | 设置发流端音画同步。 |
| updateToken() | 更新 Token。 Token 中同时包含进房、发布和订阅权限,各权限有一定的有效期,并且到期前 30 秒会触发回调,提示用户更新 Token 相关权限。此时需要重新获取 Token,并调用此方法更新 Token,以保证通话的正常进行。 |
| setRemoteVideoConfig() | 设置期望订阅的远端视频流的参数。 |
| publishStream() | 在当前所在房间内发布本地通过摄像头/麦克风采集的媒体流 |
| unpublishStream() | 停止将本地摄像头/麦克风采集的媒体流发布到当前所在房间中 |
| publishScreen() | 在当前所在房间内发布本地屏幕共享音视频流 |
| unpublishScreen() | 停止将本地屏幕共享音视频流发布到当前所在房间中 |
| subscribeStream() | 订阅房间内指定的通过摄像头/麦克风采集的媒体流,或更新对指定远端用户的订阅选项 |
| unsubscribeStream() | 取消订阅房间内指定的通过摄像头/麦克风采集的媒体流。该方法对自动订阅和手动订阅模式均适用。 |
| subscribeAllStreams() | 订阅房间内所有通过摄像头/麦克风采集的媒体流,或更新订阅选项。 |
| unsubscribeAllStreams() | 取消订阅房间内所有的通过摄像头/麦克风采集的媒体流。 |
| subscribeScreen() | 订阅房间内指定的远端屏幕共享音视频流,或更新对指定远端用户的订阅选项 |
| unsubscribeScreen() | 取消订阅房间内指定的远端屏幕共享音视频流。 |
| pauseAllSubscribedStream() | 暂停接收来自远端的媒体流。 |
| resumeAllSubscribedStream() | 恢复接收来自远端的媒体流 |
| sendUserMessage() | 给房间内指定的用户发送点对点文本消息 |
| sendUserBinaryMessage() | 给房间内指定的用户发送点对点二进制消息。 |
| sendRoomMessage() | 给房间内的所有其他用户群发文本消息。 |
| sendRoomBinaryMessage() | 给房间内的所有其他用户群发二进制消息。 |
| startForwardStreamToRooms() | 开始跨房间转发媒体流。 |
| updateForwardStreamToRooms() | 更新跨房间媒体流转发信息。 |
| stopForwardStreamToRooms() | 停止跨房间媒体流转发。 |
| pauseForwardStreamToAllRooms() | 暂停跨房间媒体流转发。 |
| resumeForwardStreamToAllRooms() | 恢复跨房间媒体流转发。 |
| enableRangeAudio() | 开启/关闭范围语音功能。 |
| updateReceiveRange() | 更新本地用户的音频收听范围。 |
| updateRangePosition() | 更新本地用户在房间内空间直角坐标系中的位置坐标。 |
| setAttenuationModel() | 设置范围语音的音量衰减模式。 |
| setNoAttenuationFlags() | 添加标签组,用于标记相互之间通话不衰减的用户组。 在同一个 RTC 房间中,如果多个用户的标签组之间有交集,那么,他们之间互相通话时,通话不衰减。 比如,用户身处多个队伍,队伍成员间通话不衰减。那么,可以为每个队伍绑定专属标签,每个用户的标签组包含用户所属各个队伍的标签。 |
| enableSpatialAudio() | 开启/关闭空间音频功能。 |
| updateSpatialPosition() | 更新本地用户在房间内空间直角坐标系中的位置坐标。 |
| updateSelfOrientation() | 更新本地用户在空间音频坐标系下的朝向。 |
| disableRemoteOrientation() | 参与通话的各端调用本接口后,将忽略远端用户的朝向,认为所有远端用户都面向本地用户。 |
| updateListenerPosition() | 更新在房间内收听音频时的位置。 通过此接口,你可以设定本地发声位置和收听位置不同。 |
| updateListenerOrientation() | 更新在房间内收听音频时的朝向。 通过此接口,你可以设定本地用户的发声朝向和收听朝向不同。 |
| setRemoteRoomAudioPlaybackVolume() | 调节某个房间内所有远端用户的音频播放音量。 |
创建房间实例
类型
(room_id: string) => 0 | -1
ts注意
参数
room_id
类型: string
标识通话房间的房间 ID,最大长度为 128 字节的非空字符串。支持的字符集范围为:
• 26个大写字母 A ~ Z
• 26个小写字母 a ~ z
• 10个数字 0 ~ 9
• 下划线 "_", at 符 "@", 减号 "-"
多房间模式下,调用创建房间接口后,请勿调用同样的 roomID 创建房间,否则会导致创建房间失败。
返回值
0: 成功-1: 失败获取房间 ID
类型
() => string
ts返回值
类型: string
房间 ID
退出并销毁房间。
类型
() => number
ts注意
关于创建房间,参见 createRTCRoom。
返回值
类型: number
0: 成功-1: 失败加入房间。
类型
(token: string, user_info: UserInfo, config?: RTCRoomConfig) => number
ts注意
onRoomStateChanged 回调通知。参数
token
类型: string
动态密钥。用于对进房用户进行鉴权验证。
进入房间需要携带 Token。测试时可使用控制台生成临时 Token,正式上线需要使用密钥 SDK 在你的服务端生成并下发 Token。Token 有效期及生成方式参看使用 Token 完成鉴权。
使用不同 AppID 的 App 是不能互通的。
请务必保证生成 Token 使用的 AppID 和创建引擎时使用的 AppID 相同,否则会导致加入房间失败。具体失败原因会通过 onRoomStateChanged 回调告知。
user_info
类型: UserInfo
用户信息
config
类型: RTCRoomConfig
房间参数配置,设置房间模式以及是否自动发布或订阅流。
返回值
类型: number
离开房间。
类型
() => number
ts注意
onLeaveRoom 回调通知。+ 调用 setUserVisibility 将自身设为可见的用户离开房间后,房间内其他用户会收到 onUserLeave 回调通知。onLeaveRoom 回调。返回值
类型: number
0: 成功-1: 失败设置用户可见性。未调用该接口前,本地用户默认对他人可见。
类型
(enable: Boolean) => number
ts注意
WARNING_CODE_PUBLISH_STREAM_FORBIDEN 警告。参数
enable
类型: Boolean
设置用户是否对房间内其他用户可见:
+ true: 可以在房间内发布音视频流,房间中的其他用户将收到用户的行为通知,例如进房、开启视频采集和退房。
+ false: 不可以在房间内发布音视频流,房间中的其他用户不会收到用户的行为通知,例如进房、开启视频采集和退房。
返回值
类型: number
设置发流端音画同步。
类型
(audio_user_id: string) => number
ts注意
audioUserId 即可;如需更换同步视频源,需先解除当前的同步关系,后在新视频源端开启同步。参数
audio_user_id
类型: string
音频发送端的用户 ID,将该参数设为空则可解除当前音视频的同步关系。
返回值
类型: number
方法调用结果:
更新 Token。
Token 中同时包含进房、发布和订阅权限,各权限有一定的有效期,并且到期前 30 秒会触发回调,提示用户更新 Token 相关权限。此时需要重新获取 Token,并调用此方法更新 Token,以保证通话的正常进行。
类型
(token: string) => number
ts参数
token
类型: string
重新获取的有效 Token。
如果传入的 Token 无效,回调错误码为 ErrorCode 中的 -1010 提示传入的 Token 无效。
返回值
类型: number
设置期望订阅的远端视频流的参数。
类型
(user_id: string, remote_video_config?: RemoteVideoConfig) => number
ts注意
roomConfig 中的 remoteVideoConfig 进行设置。参数
user_id
类型: string
期望配置订阅参数的远端视频流发布用户的 ID。
remote_video_config
期望配置的远端视频流参数。
返回值
类型: number
0: 成功-1: 失败在当前所在房间内发布本地通过摄像头/麦克风采集的媒体流
类型
(type: MediaStreamType) => number
ts注意
参数
type
类型: MediaStreamType
媒体流类型,用于指定发布音频/视频
返回值
类型: number
0: 成功-1: 失败停止将本地摄像头/麦克风采集的媒体流发布到当前所在房间中
类型
(type: MediaStreamType) => number
ts注意
参数
type
类型: MediaStreamType
媒体流类型,用于指定停止发布音频/视频
返回值
类型: number
0: 成功-1: 失败在当前所在房间内发布本地屏幕共享音视频流
类型
(type: MediaStreamType) => number
ts注意
参数
type
类型: MediaStreamType
媒体流类型,用于指定发布屏幕音频/视频
返回值
类型: number
0: 成功-1: 失败停止将本地屏幕共享音视频流发布到当前所在房间中
类型
(type: MediaStreamType) => number
ts注意
参数
type
类型: MediaStreamType
媒体流类型,用于指定停止发布屏幕音频/视频
返回值
类型: number
0: 成功-1: 失败订阅房间内指定的通过摄像头/麦克风采集的媒体流,或更新对指定远端用户的订阅选项
类型
(user_id: string, type: MediaStreamType) => number
ts注意
参数
user_id
类型: string
指定订阅的远端发布音视频流的用户 ID。
type
类型: MediaStreamType
媒体流类型,用于指定订阅音频/视频。
返回值
类型: number
0: 成功-1: 失败取消订阅房间内指定的通过摄像头/麦克风采集的媒体流。该方法对自动订阅和手动订阅模式均适用。
类型
(user_id: string, type: MediaStreamType) => number
ts注意
参数
user_id
类型: string
指定取消订阅的远端发布音视频流的用户 ID。
type
类型: MediaStreamType
媒体流类型,用于指定取消订阅音频/视频。
返回值
类型: number
0: 成功-1: 失败订阅房间内所有通过摄像头/麦克风采集的媒体流,或更新订阅选项。
类型
(type: MediaStreamType) => number
ts注意
参数
type
类型: MediaStreamType
媒体流类型,用于指定订阅音频/视频。
返回值
类型: number
0: 成功-1: 失败取消订阅房间内所有的通过摄像头/麦克风采集的媒体流。
类型
(type: MediaStreamType) => number
ts注意
参数
type
类型: MediaStreamType
媒体流类型,用于指定取消订阅音频/视频。
返回值
类型: number
0: 成功-1: 失败订阅房间内指定的远端屏幕共享音视频流,或更新对指定远端用户的订阅选项
类型
(user_id: string, type: MediaStreamType) => number
ts注意
参数
user_id
类型: string
指定订阅的远端发布屏幕流的用户 ID。
type
类型: MediaStreamType
媒体流类型,用于指定订阅音频/视频。
返回值
类型: number
0: 成功-1: 失败取消订阅房间内指定的远端屏幕共享音视频流。
类型
(user_id: string, type: MediaStreamType) => number
ts注意
参数
user_id
类型: string
指定取消订阅的远端发布屏幕流的用户 ID。
type
类型: MediaStreamType
媒体流类型,用于指定取消订阅音频/视频。
返回值
类型: number
0: 成功-1: 失败暂停接收来自远端的媒体流。
类型
(media_type: PauseResumeControlMediaType) => number
ts注意
参数
media_type
类型: PauseResumeControlMediaType
媒体流类型,指定需要暂停接收音频还是视频流
返回值
类型: number
0: 成功-1: 失败恢复接收来自远端的媒体流
类型
(media_type: PauseResumeControlMediaType) => number
ts注意
参数
media_type
类型: PauseResumeControlMediaType
媒体流类型,指定需要暂停接收音频还是视频流
返回值
类型: number
0: 成功-1: 失败给房间内指定的用户发送点对点文本消息
类型
(uid: string, message: string, config: MessageConfig) => number
ts注意
参数
uid
类型: string
消息接收用户的 ID
message
类型: string
发送的文本消息内容
消息不超过 64 KB。
config
类型: MessageConfig
消息发送的可靠/有序类型
返回值
类型: number
0: 成功-1: 失败给房间内指定的用户发送点对点二进制消息。
类型
(uid: string, length: number, message: Uint8Array, config: MessageConfig) => number
ts注意
参数
uid
类型: string
消息接收用户的 ID
length
类型: number
二进制字符串的长度
message
类型: Uint8Array
发送的二进制消息内容
消息不超过 46KB。
config
类型: MessageConfig
消息类型
返回值
类型: number
0: 成功。这次发送消息的编号,从 1 开始递增。
-1: 失败给房间内的所有其他用户群发文本消息。
类型
(message: string) => number
ts注意
参数
message
类型: string
发送的文本消息内容
消息不超过 64 KB。
返回值
类型: number
0: 成功。这次发送消息的编号,从 1 开始递增。-1: 失败给房间内的所有其他用户群发二进制消息。
类型
(size: number, message: Uint8Array) => number
ts注意
参数
size
类型: number
发送的二进制消息长度
message
类型: Uint8Array
发送的二进制消息内容,消息不超过 46 KB。
返回值
类型: number
0: 成功。这次发送消息的编号,从 1 开始递增。-1: 失败开始跨房间转发媒体流。
类型
(configuration: ForwardStreamConfiguration) => number
ts注意
参数
configuration
类型: ForwardStreamConfiguration
跨房间媒体流转发指定房间的信息。
返回值
类型: number
0: 成功-1: 失败更新跨房间媒体流转发信息。
类型
(configuration: ForwardStreamConfiguration) => number
ts注意
参数
configuration
类型: ForwardStreamConfiguration
跨房间媒体流转发目标房间信息。
返回值
类型: number
0: 成功-1: 失败停止跨房间媒体流转发。
类型
() => number
ts注意
返回值
类型: number
0: 成功-1: 失败暂停跨房间媒体流转发。
类型
() => number
ts注意
返回值
类型: number
0: 成功-1: 失败恢复跨房间媒体流转发。
类型
() => number
ts注意
目标房间中的用户将接收到本地用户进房 onUserJoined 和发布 onUserPublishStream/onUserPublishScreen 的回调。
返回值
类型: number
0: 成功-1: 失败开启/关闭范围语音功能。
类型
(enable: boolean) => number
ts注意
参数
enable
类型: boolean
是否开启范围语音功能:
1. true 表示开启,
2. false 表示关闭
返回值
类型: number
0: 成功-1: 失败更新本地用户的音频收听范围。
类型
(range: ReceiveRange) => number
ts参数
range
类型: ReceiveRange
音频收听范围
返回值
类型: number
方法调用结果:
0:成功;!0: 失败。更新本地用户在房间内空间直角坐标系中的位置坐标。
类型
(pos: Position) => number
ts注意
调用该接口更新坐标后,你需调用 enableRangeAudio 开启范围语音功能以收听范围语音效果。
参数
pos
类型: Position
三维坐标的值,默认为 [0, 0, 0]
返回值
类型: number
方法调用结果:
设置范围语音的音量衰减模式。
类型
(type: AttenuationType, coefficient: number) => number
ts注意
音量衰减范围通过 updateReceiveRange 进行设置。
参数
type
类型: AttenuationType
音量衰减模式。默认为线性衰减。
coefficient
类型: number
指数衰减模式下的音量衰减系数,默认值为 1。范围 [0.1,100],推荐设置为 50。数值越大,音量的衰减速度越快。
返回值
类型: number
调用是否成功
0:调用成功-1:调用失败。原因为在调用 enableRangeAudio 开启范围语音前或进房前调用本接口添加标签组,用于标记相互之间通话不衰减的用户组。
在同一个 RTC 房间中,如果多个用户的标签组之间有交集,那么,他们之间互相通话时,通话不衰减。
比如,用户身处多个队伍,队伍成员间通话不衰减。那么,可以为每个队伍绑定专属标签,每个用户的标签组包含用户所属各个队伍的标签。
类型
(flags?: string[]) => any
ts参数
flags
类型: string[]
值: ' []'
标签组
开启/关闭空间音频功能。
类型
(enable: boolean) => number
ts注意
该方法仅开启空间音频功能,你须调用 updateSpatialPosition 设置自身位置坐标后方可收听空间音频效果。空间音频相关 API 和调用时序详见空间音频。
参数
enable
类型: boolean
是否开启空间音频功能:
+ true:开启
+ false:关闭(默认)
返回值
类型: number
0:支持空间音频 -1:不支持
更新本地用户在房间内空间直角坐标系中的位置坐标。
类型
(pos: Position) => number
ts注意
调用该接口更新坐标前,你需调用 enableSpatialAudio 开启空间音频功能。 空间音频相关 API 和调用时序详见空间音频。
参数
pos
类型: Position
三维坐标的值,默认为 [0, 0, 0]。
返回值
类型: number
0: 成功-1: 失败更新本地用户在空间音频坐标系下的朝向。
类型
(orientation: HumanOrientation) => number
ts注意
参数
orientation
类型: HumanOrientation
自身朝向信息
返回值
类型: number
0: 成功-1: 失败参与通话的各端调用本接口后,将忽略远端用户的朝向,认为所有远端用户都面向本地用户。
类型
() => number
ts注意
返回值
类型: number
0: 成功-1: 失败更新在房间内收听音频时的位置。
通过此接口,你可以设定本地发声位置和收听位置不同。
类型
(pos: Position) => number
ts注意
参数
pos
类型: Position
空间直角坐标系下的坐标值。
如果未调用此接口设定收听位置,那么默认值为通过 updateSpatialPosition 设定的值。
返回值
类型: number
0: 成功!0: 失败更新在房间内收听音频时的朝向。
通过此接口,你可以设定本地用户的发声朝向和收听朝向不同。
类型
(orientation: HumanOrientation) => number
ts注意
空间音频相关 API 和调用时序详见空间音频。
参数
orientation
类型: HumanOrientation
自身朝向信息
如果未调用此接口设定收听朝向,那么默认值为通过 updateSelfOrientation 设定的值。
返回值
类型: number
0: 成功!0: 失败调节某个房间内所有远端用户的音频播放音量。
类型
(volume: number) => any
ts注意
假设某远端用户 A 始终在被调节的目标用户范围内,
参数
volume
类型: number
音频播放音量和原始音量的比值,范围是 [0, 400],单位为 %,自带溢出保护。
为保证更好的通话质量,建议将 volume 值设为 [0,100]。
+ 0: 静音
+ 100: 原始音量,默认值
+ 400: 最大可为原始音量的 4 倍(自带溢出保护)
类型: class
API
创建引擎对象
类型
(app_id: string, document_path: string, parameters: string) => number
ts注意
RTCVideo 的生命周期,即 handler 必须在调用 createRTCVideo 之前创建,在调用 destroyRTCVideo 之后销毁。参数
app_id
类型: string
每个应用的唯一标识符,由 RTC 控制台随机生成的。不同的 AppId 生成的实例在 RTC 中进行音视频通话完全独立,无法互通。
document_path
类型: string
存放日志路径。指向一个可写文件夹的绝对路径。推荐为当前应用的子目录。你可以通过 Electron 提供的 app.getPath() 获取到当前应用的目录路径。
parameters
类型: string
私有参数。如需使用请联系技术支持人员。
返回值
类型: number
0: 成功-1: 失败创建房间
类型
(room_id: string) => veRTCRoom
ts注意
多次调用此方法以创建多个 veRTCRoom 实例。分别调用各实例中的 joinRoom 方法,同时加入多个房间。多房间模式下,用户可以同时订阅各房间的音视频流。
参数
room_id
类型: string
标识通话房间的房间 ID,最大长度为 128 字节的非空字符串。支持的字符集范围为:
• 26个大写字母 A ~ Z
• 26个小写字母 a ~ z
• 10个数字 0 ~ 9
• 下划线 "_", at 符 "@", 减号 "-"
请勿使用同样的 roomId 创建多个房间,否则后创建的房间实例会替换先创建的房间实例。
返回值
类型: veRTCRoom
0: 成功-1: 失败销毁引擎实例对象
类型
() => number
ts注意
RTCVideo 实例相关的业务场景全部结束后,才调用此方法RTCVideo 实例相关的内存,并且停止与媒体服务器的任何交互返回值
类型: number
0: 成功-1: 失败本次通话质量打分评价
类型
(types?: ProblemFeedbackOption[], problem_desc?: string) => number
ts注意
参数
types
类型: ProblemFeedbackOption[]
值: ' []'
反馈问题类型
problem_desc
类型: string
值: ' ""'
上报的数据。JSON 格式,必须包含以下 4 个字段:
返回值
类型: number
-1: 上报失败,还没加入过房间-2: 上报失败,传入 JSON 解析失败-3: 上报失败,传入 JSON 字段缺失获取错误码的描述
类型
(code: number) => string
ts注意
该接口是通用功能,调用时不需要依赖引擎对象。
参数
code
类型: number
需要获取描述的错误码
返回值
类型: string
错误码的描述
设置业务标识参数
类型
(business_id: string) => number
ts注意
可通过 businessId 区分不同的业务场景。businessId 由客户自定义,相当于一个“标签”,可以分担和细化现在 AppId 的逻辑划分的功能,但不需要鉴权。
参数
business_id
类型: string
用户设置的自己的 business_id 值。business_id 相当于一个 sub AppId,可以分担和细化现在 AppId 的逻辑划分的功能, 但不需要鉴权。business_id 只是一个标签,颗粒度需要用户自定义。
返回值
类型: number
@。设置传输时使用内置加密的方式
类型
(encrypt_type: number, key: string) => number
ts注意
该方法必须在进房之前调用,可重复调用,以最后调用的参数作为生效参数。
参数
encrypt_type
类型: number
加密算法
0: 不使用内置加密1:AES-128-CBC 加密算法2:AES-256-CBC 加密算法3:AES-128-ECB 加密算法4:AES-256-ECB 加密算法key
类型: string
加密密钥,长度限制为 36 位,超出部分将会被截断
返回值
类型: number
0: 成功-1: 失败开启内部音频采集。默认为关闭状态。
类型
() => number
ts注意
返回值
类型: number
关闭内部音频采集。默认为关闭状态。
类型
() => number
ts注意
返回值
类型: number
获取当前系统内音频播放设备列表。如果后续设备有变更,你会收到 onAudioDeviceStateChanged] 回调通知,然后需要重新调用本接口以获得新的设备列表。
类型
() => { device_name: string; device_id: string;}[]
ts返回值
类型: { device_name: string; device_id: string; }[]
包含系统中所有音频播放设备的列表和相关信息
获取当前系统内音频采集设备列表。如果后续设备有变更,你需要重新调用本接口以获得新的设备列表。
类型
() => { device_name: string; device_id: string;}[]
ts返回值
类型: { device_name: string; device_id: string; }[]
包含系统中所有音频采集设备列表和相关信息
设置音频播放设备。
类型
(device_id: string) => number
ts注意
当你调用 followSystemPlaybackDevice 设置音频播放设备跟随系统后,将无法调用此接口设置音频播放设备。
参数
device_id
类型: string
音频播放设备 ID,可通过 enumerateAudioPlaybackDevices 获取。
返回值
类型: number
方法调用结果
设置音频采集设备。
类型
(device_id: string) => number
ts注意
当你调用 followSystemCaptureDevice 设置音频采集设备跟随系统后,将无法调用此接口设置音频采集设备。
参数
device_id
类型: string
音频采集设备 ID,可通过 enumerateAudioPlaybackDevices 获取。
返回值
类型: number
方法调用结果
获取当前音频播放设备 ID。
类型
() => string
ts返回值
类型: string
当前音频播放设备 ID
获取当前音频采集设备 ID。
类型
() => string
ts返回值
类型: string
当前音频采集设备 ID
设置当前音频播放设备音量
类型
(volume: number) => number
ts参数
volume
类型: number
音频播放设备音量,取值范围为 [0,255], 超出此范围设置无效。
+ [0,25] 接近无声;
+ [25,75] 为低音量;
+ [76,204] 为中音量;
+ [205,255] 为高音量。
返回值
类型: number
方法调用结果
获取当前音频播放设备音量
类型
() => number
ts返回值
类型: number
音频播放设备音量,范围应在 [0,255] 内。
设置当前音频采集设备音量
类型
(volume: number) => number
ts参数
volume
类型: number
音频采集设备音量,取值范围为 [0,255], 超出此范围设置无效。
+ [0,25] 接近无声;
+ [25,75] 为低音量;
+ [76,204] 为中音量;
+ [205,255] 为高音量。
返回值
类型: number
方法调用结果
获取当前音频采集设备音量
类型
() => number
ts返回值
类型: number
范围应在 [0,255] 内。
设置当前音频播放设备静音状态,默认为非静音。
类型
(mute: boolean) => number
ts参数
mute
类型: boolean
返回值
类型: number
方法调用结果
获取当前音频播放设备是否静音的信息。
类型
() => boolean
ts返回值
类型: boolean
mute
设置当前音频采集设备静音状态,默认为非静音。
类型
(mute: boolean) => number
ts参数
mute
类型: boolean
返回值
类型: number
方法调用结果
获取当前音频采集设备是否静音的信息。
类型
() => boolean
ts返回值
类型: boolean
调节音频采集音量
类型
(index: number, volume: number) => number
ts注意
在开启音频采集前后,你都可以使用此接口设定采集音量。
参数
index
类型: number
流索引,指定调节主流还是调节屏幕流的音量
volume
类型: number
采集的音量值和原始音量的比值,范围是 [0, 400],单位为 %,自带溢出保护。
只改变音频数据的音量信息,不涉及本端硬件的音量调节。
为保证更好的通话质量,建议将 volume 值设为 [0,100]。
+ 0:静音
+ 100:原始音量
+ 400: 最大可为原始音量的 4 倍(自带溢出保护)
返回值
类型: number
调节本地播放的所有远端用户混音后的音量。播放音频前或播放音频时,你都可以使用此接口设定播放音量。
类型
(volume: number) => number
ts参数
volume
类型: number
音频播放音量,取值范围: [0,400]。
只改变音频数据的音量信息,不涉及本端硬件的音量调节。
为保证更好的通话质量,建议将 volume 值设为 [0,100]。
+ 0: 静音
+ 100: 原始音量
+ 400: 最大可为原始音量的 4 倍(自带溢出保护)
返回值
类型: number
调节来自远端用户的音频播放音量
类型
(room_id: string, user_id: string, volume: number) => number
ts参数
room_id
类型: string
音频来源用户所在的房间 ID
user_id
类型: string
音频来源的远端用户 ID
volume
类型: number
播放音量
只改变音频数据的音量信息,不涉及本端硬件的音量调节。
取值范围: [0,400]
返回值
类型: number
停止音频播放设备测试。
类型
() => number
ts注意
调用 startAudioPlaybackDeviceTest 后,需调用本方法停止测试。
返回值
类型: number
方法调用结果
0:成功< 0:失败设置音质档位。
类型
(audio_profile: number) => number
ts注意
参数
audio_profile
类型: number
音质档位
+ 0: 默认音质,服务器下发或客户端已设置的 RoomProfileType 的音质配置
+ 1: 流畅音质,单声道,采样率为 16 kHz,编码码率为 32 Kbps。流畅优先、低功耗、低流量消耗,适用于大部分游戏场景,如小队语音、组队语音、国战语音等。
+ 2: 单声道标准音质。采样率为 24 kHz,编码码率为 48 kbps。适用于对音质有一定要求的场景,同时延时、功耗和流量消耗相对适中,适合教育场景和狼人杀等游戏。
+ 3: 双声道音乐音质。采样率为 48kHz,编码码率为 128 kbps。超高音质,同时延时、功耗和流量消耗相对较大,适用于连麦 PK 等音乐场景。游戏场景不建议使用。
+ 4: 双声道标准音质。采样率为 48 KHz,编码码率最大值为 80 Kbps。
+ 5: 单声道音乐音质。采样率为 48 kHz,编码码率最大值为 64 Kbps
返回值
类型: number
0:成功!0:失败启动音频播放设备测试。 该方法测试播放设备是否能正常工作。SDK 播放指定的音频文件,测试者如果能听到声音,说明播放设备能正常工作。
类型
(test_audio_file_path: string, interval: number) => number
ts注意
参数
test_audio_file_path
类型: string
音频文件的绝对路径,路径字符串使用 UTF-8 编码格式,支持以下音频格式: mp3,aac,m4a,3gp,wav。
interval
类型: number
设置 onAudioPlaybackDeviceTestVolume 音量回调的时间间隔,推荐设置为 200 毫秒或以上。单位为毫秒。最小值为 10 毫秒。
返回值
类型: number
方法调用结果
开始音频设备回路测试。
类型
(config: EchoTestConfig, play_delay_time: number) => number
ts注意
kWarningCodeInEchoTestMode。参数
config
类型: EchoTestConfig
回路测试参数设置
play_delay_time
类型: number
音视频延迟播放的时间间隔,用于指定在开始检测多长时间后期望收到回放。取值范围为 [2,10],单位为秒,默认为 2 秒。
返回值
类型: number
方法调用结果:
停止音频设备回路测试。
类型
() => number
ts注意
返回值
类型: number
方法调用结果
尝试初始化音频播放设备,可检测出设备不存在、权限被拒绝/禁用等异常问题。
类型
(device_id: string) => number
ts注意
参数
device_id
类型: string
设备索引号
返回值
类型: number
设备状态错误码
尝试初始化音频播放设备,可检测出设备不存在、权限被拒绝/禁用等异常问题。
类型
(device_id: string) => number
ts注意
参数
device_id
类型: string
设备索引号
返回值
类型: number
设备状态错误码
启用音频信息提示。
类型
(config: AudioPropertiesConfig) => number
ts注意
开启提示后,你可以:
参数
config
音频属性信息提示的相关配置。
返回值
类型: number
开启/关闭音量均衡功能。
类型
(enable_vad: boolean) => number
ts注意
开启音量均衡功能后,人声的响度会调整为 -16lufs。如果已调用 setAudioMixingLoudness 传入了混音音乐的原始响度,此音乐播放时,响度会调整为 -20lufs。(Linux 不支持)
参数
enable_vad
类型: boolean
是否开启音量均衡功能:
返回值
类型: number
开启内部视频采集。默认为关闭状态。
类型
() => number
ts注意
返回值
类型: number
0:成功!0:失败关闭内部视频采集。默认为关闭状态。
类型
() => number
ts注意
返回值
类型: number
获取当前系统内视频采集设备列表。
类型
() => { device_name: string; device_id: string;}[]
ts返回值
类型: { device_name: string; device_id: string; }[]
包含系统中所有视频采集设备的列表和相关信息
设置音频播放路由是否跟随系统。
类型
(followed: boolean) => number
ts参数
followed
类型: boolean
音频播放路由是否跟随系统
+ true: 跟随。默认值。此时,调用 setAudioPlaybackDevice 会失败。
+ false: 不跟随系统。此时,可以调用 setAudioPlaybackDevice 进行设置。
返回值
类型: number
设置音频采集路由是否跟随系统。
类型
(followed: boolean) => number
ts参数
followed
类型: boolean
音频采集路由是否跟随系统
+ true: 跟随。默认值。此时,调用 setAudioCaptureDevice 会失败。
+ false: 不跟随系统。此时,可以调用 setAudioCaptureDevice 进行设置。
返回值
类型: number
设置当前视频采集设备
类型
(device_id: string) => number
ts参数
device_id
类型: string
视频设备 ID,可以通过 EnumerateVideoCaptureDevices 获取
返回值
类型: number
获取当前 SDK 正在使用的视频采集设备 ID
类型
() => string
ts返回值
类型: string
当前 SDK 正在使用的视频采集设备 ID
视频发布端设置期望发布的最大分辨率视频流参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等。
类型
(solutions: VideoEncoderConfig[]) => number
ts注意
参数
solutions
类型: VideoEncoderConfig[]
视频参数数组首地址。要推送的多路视频流的参数需注意,所设置的分辨率是各路流的最大分辨率。 最多支持 3 路参数。当设置了多路参数时,分辨率和帧率必须是依次减小,从大到小排列的。 最大分辨率没有限制。但是如果设置的分辨率无法编码,就会导致编码推流失败。
返回值
类型: number
视频发布端设置期望发布的最大分辨率视频流参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等。
类型
(max_solution: VideoEncoderConfig) => any
ts注意
参数
max_solution
期望发布的最大分辨率视频流参数。
返回值
为采集到的视频流开启镜像
类型
(mirror_type: MirrorType) => number
ts注意
| 前置摄像头 | 后置摄像头 | 自定义采集视频源 | 桌面端摄像头 | |
|---|---|---|---|---|
| 移动端 | 本地预览镜像,编码传输不镜像 | 本地预览不镜像,编码传输不镜像 | 本地预览不镜像,编码传输不镜像 | / |
| 桌面端 | / | / | 本地预览不镜像,编码传输不镜像 | 本地预览镜像,编码传输不镜像 |
参数
room_id
类型: MirrorType
房间 ID
返回值
类型: number
该方法设置视频流发布端是否开启发布多路编码参数不同的视频流的模式。
类型
(enabled: boolean) => number
ts注意
参数
enabled
类型: boolean
是否开启推送多路视频流模式:
+ True:开启
+ False:关闭(默认)
返回值
类型: number
视频特效许可证检查
类型
(license_path: string, algo_model_dir: string) => number
ts注意
开始使用视频特效前,你必须先调用这个方法进行许可证验证
参数
license_path
类型: string
许可证文件绝对路径
algo_model_dir
类型: string
算法模型绝对路径,即存放特效 SDK 所有算法模型的目录。
返回值
类型: number
0: 调用成功1000: 未集成 CV SDK1001: 本版本不支持 CV 功能<0: 调用失败,具体错误码请参考 错误码表。从 CV SDK 获取授权消息,用于获取在线许可证。
类型
() => string
ts注意
返回值
类型: string
授权消息字符串
开启高级美颜、滤镜等视频特效。
类型
() => number
ts注意
返回值
类型: number
关闭视频特效。
类型
() => number
ts注意
调用 enableVideoEffect 开启视频特效。
返回值
类型: number
开启/关闭基础美颜
类型
(enabled: boolean) => number
ts注意
参数
enabled
类型: boolean
是否开启基础美颜强度,true: 开启,false: 关闭
返回值
类型: number
调整基础美颜强度
类型
(beauty_mode: EffectBeautyMode, intensity: number) => number
ts注意
参数
beauty_mode
类型: EffectBeautyMode
基础美颜模式
intensity
类型: number
美颜强度,取值范围为 [0,1]。强度为 0 表示关闭,默认强度为 0.5。
返回值
类型: number
0: 调用成功-1000: 未集成 CV SDK-1001: 本版本不支持 CV 功能<0: 调用失败,具体错误码请参考 错误码表。设置视频特效素材包,支持同时设置多个素材包
类型
(effect_node_paths: string[] | null) => number
ts参数
effect_node_paths
类型: string[]
特效素材包路径数组。取消当前视频特效,将此参数设置为 null。
返回值
类型: number
设置特效强度
类型
(effectNodePath: string, nodeKey: string, nodeValue: number) => number
ts参数
effectNodePath
类型: string
特效素材包路径
nodeKey
类型: string
需要设置的素材 key 名称,取值请参考 素材 key 对应说明。
nodeValue
类型: number
需要设置的强度值 取值范围 [0,1],超出范围时设置无效。
返回值
类型: number
设置颜色滤镜
类型
(res_path: string) => number
ts参数
res_path
类型: string
滤镜资源包绝对路径。
返回值
类型: number
设置已启用颜色滤镜的强度
类型
(intensity: number) => number
ts参数
intensity
类型: number
滤镜强度。取值范围 [0,1],超出范围时设置无效。
返回值
类型: number
开启转推直播,并设置合流的视频视图布局和音频属性。
类型
(task_id: string, param: ITranscoderParam) => number
ts注意
参数
task_id
类型: string
转推直播任务 ID。你可以在同一房间内发起多个转推直播任务,并用不同的任务 ID 加以区。当你需要发起多个转推直播任务时,应使用多个 ID;当你仅需发起一个转推直播任务时,建议使用空字符串。
param
类型: ITranscoderParam
转推直播配置参数
返回值
类型: number
停止转推直播。
类型
(task_id: string) => number
ts注意
参数
task_id
类型: string
转推直播任务 ID。指定想要停止的转推直播任务。
返回值
类型: number
更新转推直播参数。
类型
(task_id: string, param: ITranscoderParam) => number
ts注意
参数
task_id
类型: string
转推直播任务 ID。指定想要更新参数设置的转推直播任务。
param
类型: ITranscoderParam
转推直播配置参数。除特殊说明外,均支持过程中更新。
调用时,结构体中没有传入值的属性,会被更新为默认值。
返回值
类型: number
新增单流转推直播任务。
类型
(task_id: string, param: PushSingleStreamParam) => number
ts注意
onStreamPushEvent 回调。stopPushStreamToCDN 停止任务。参数
task_id
类型: string
任务 ID。你可以发起多个转推直播任务,并用不同的任务 ID 加以区分。当你需要发起多个转推直播任务时,应使用多个 ID;当你仅需发起一个转推直播任务时,建议使用空字符串。
param
转推直播配置参数
返回值
类型: number
停止转推直播。
类型
(task_id: string) => number
ts注意
关于启动转推直播,参看 startPushStreamToCDN 和 startPushSingleStreamToCDN。
参数
task_id
类型: string
转推直播任务 ID。指定想要停止的转推直播任务。
返回值
类型: number
为指定公共流绑定自定义渲染器。
类型
(stream_id: string, video_sink?: null) => number
ts注意
详见自定义视频渲染。
参数
stream_id
类型: string
公共流 ID
video_sink
类型: null
绑定自定义视频渲染器时无需传入本参数。要求视频帧编码格式为 YUV I420。需要释放渲染器资源时,将 videoSink 设置为 null。
返回值
类型: number
支持根据业务场景,设置通话中的音频降噪模式。
类型
(ans_mode: AnsMode) => any
ts注意
该接口可重复调用,仅最后一次调用生效。
参数
ans_Mode
类型: AnsMode
降噪模式。
设置远端视频超分模式。
类型
(stream_key: RemoteStreamKey, mode: VideoSuperResolutionMode) => number
ts注意
参数
stream_key
类型: RemoteStreamKey
远端流信息,用于指定需要设置超分的视频流来源及属性。
mode
超分模式。
返回值
类型: number
0: RETURN_STATUS_SUCCESS,SDK 调用成功,并不代表超分模式实际状态,需要根据回调 onRemoteVideoSuperResolutionModeChanged 判断实际状态。-1: RETURN_STATUS_NATIVE_IN_VALID,native library 未加载。-2: RETURN_STATUS_PARAMETER_ERR,参数非法,指针为空或字符串为空。-9: RETURN_STATUS_SCREEN_NOT_SUPPORT,不支持对屏幕流开启超分。截取本地视频画面
类型
(streamIndex: StreamIndex) => number
ts注意
参数
streamIndex
类型: StreamIndex
截图的视频流的属性,为主流还是屏幕流。
返回值
类型: number
本地截图任务的编号,从 1 开始递增。 调用成功后通过 onTakeLocalSnapshotResult 回调快照文件。
截取远端视频画面
类型
(streamKey: RemoteStreamKey) => number
ts注意
参数
streamKey
类型: RemoteStreamKey
截图的视频流
返回值
类型: number
本地截图任务的编号,从 1 开始递增。 调用成功后通过 onTakeLocalSnapshotResult 回调快照文件。
通过 NTP 协议,获取网络时间。
类型
() => number
ts注意
0。同步完成后,会收到 onNetworkTimeSynchronized,此后,再次调用此 API,即可获取准确的网络时间。返回值
类型: number
发送音频流同步信息。将消息通过音频流发送到远端,并实现与音频流同步。
类型
(data: Uint8Array, config: StreamSycnInfoConfig) => number
ts注意
参数
data
类型: Uint8Array
消息内容。
config
音频流同步信息的相关配置。
返回值
类型: number
>= 0: 消息发送成功。返回成功发送的次数。-1: 消息发送失败。消息长度大于 255 字节。-2: 消息发送失败。传入的消息内容为空。-3: 消息发送失败。通过屏幕流进行消息同步时,此屏幕流还未发布。-4: 消息发送失败。通过用麦克风或自定义设备采集到的音频流进行消息同步时,此音频流还未发布,详见错误码 ErrorCode。开启云代理
类型
(cloud_proxies?: CloudProxyInfo[]) => number
ts注意
参数
cloud_proxies
类型: CloudProxyInfo[]
值: ' []'
云代理服务器信息列表。
返回值
类型: number
关闭云代理
类型
() => any
ts注意
要开启云代理,调用 startCloudProxy。
发布一路公共流。
类型
(stream_id: string, public_stream_param: IPublicStreamParam) => number
ts注意
appID 的用户,可以调用 startPlayPublicStream 获取和播放指定的公共流。updatePublicStreamParam 接口。stopPushPublicStream 停止发布公共流。参数
stream_id
类型: string
公共流 ID。
public_stream_param
公共流参数。
一路公共流可以包含多路房间内的媒体流,按照指定的布局方式进行聚合。
如果指定的媒体流还未发布,则公共流将在指定流开始发布后实时更新。
返回值
类型: number
onPushPublicStreamResult 回调。停止发布当前用户发布的公共流
类型
(stream_id: string) => number
ts注意
关于发布公共流,查看 startPushPublicStream。
参数
stream_id
类型: string
公共流 ID
指定的流必须为当前用户所发布。
返回值
类型: number
更新公共流参数
类型
(stream_id: string, param: IPublicStreamParam) => number
ts注意
关于发布公共流,查看 startPushPublicStream。
参数
stream_id
类型: string
公共流 ID
param
公共流参数。
指定的流必须为当前用户所发布的。
返回值
类型: number
订阅指定公共流。无论用户是否在房间内,都可以调用本接口获取和播放指定的公共流。
类型
(stream_id: string) => number
ts注意
setupPublicStreamVideo 绑定内部渲染视图:setPublicStreamVideoSink 绑定自定义渲染视图:onFirstPublicStreamVideoFrameDecoded 和 onFirstPublicStreamAudioFrame 回调公共流的视频和音频首帧解码情况。onPublicStreamSEIMessageReceived 回调公共流中包含的 SEI 信息。stopPlayPublicStream 接口取消订阅公共流。参数
stream_id
类型: string
公共流 ID,如果指定流暂未发布,则本地客户端将在其开始发布后接收到流数据。
返回值
类型: number
onPlayPublicStreamResult 回调。取消订阅指定公共流
类型
(stream_id: string) => number
ts注意
关于订阅公共流,查看 startPlayPublicStream。
参数
stream_id
类型: string
公共流 ID
返回值
类型: number
在屏幕共享时,开始使用 RTC SDK 内部采集方式,采集屏幕音频
类型
(device_id?: string) => number
ts注意
参数
device_id
类型: string
设备 ID。Mac下需要传入虚拟的声卡id,windows 下不用传入
返回值
类型: number
0:成功!0:失败采集屏幕视频流,用于共享。屏幕视频流包括:屏幕上显示的内容,应用窗口中显示的内容,或虚拟屏幕中显示的内容。其中,虚拟屏幕中显示的内容仅在 Windows 平台上支持。
类型
(info: ScreenCaptureSourceInfo, params: ScreenCaptureParameters) => number
ts注意
onLocalScreenFrame 本地屏幕视频回调事件。参数
info
待共享的屏幕源,你可以调用 getScreenCaptureSourceList 获得所有可以共享的屏幕源。
params
共享参数
返回值
类型: number
在屏幕共享时,停止使用 RTC SDK 内部采集方式,采集屏幕音频。
类型
() => number
ts注意
要开始屏幕音频内部采集,调用 startScreenAudioCapture。
返回值
类型: number
停止屏幕视频流采集。
类型
() => number
ts注意
返回值
类型: number
更新屏幕共享区域。
类型
(region_rect?: Rectangle) => number
ts注意
调用此接口前,必须已通过调用 startScreenVideoCapture 开启了内部屏幕流采集。
参数
region_rect
类型: Rectangle
值: ' { x: 0, y: 0, width: 0, height: 0 }'
此参数描述了调用此接口后的采集区域,和 startScreenVideoCapture 中 source_info 设定区域的相对关系。
返回值
类型: number
通过 RTC SDK 提供的采集模块采集屏幕视频流时,更新边框高亮设置。默认展示表框。
类型
(highlight_config?: HighlightConfig) => number
ts注意
调用此接口前,必须已通过调用 startScreenVideoCapture 开启了内部屏幕流采集。
参数
highlight_config
类型: HighlightConfig
值: ' { enable_highlight: true, border_color: 0xff29cca3, border_width: 4, }'
边框高亮设置
返回值
类型: number
通过 RTC SDK 提供的采集模块采集屏幕视频流时,更新对鼠标的处理设置。默认采集鼠标。
类型
(state?: MouseCursorCaptureState) => number
ts注意
调用此接口前,必须已通过调用 startScreenVideoCapture 开启了内部屏幕流采集。
参数
state
值: ' MouseCursorCaptureState.kMouseCursorCaptureStateOn'
内部采集屏幕视频流时,是否采集鼠标信息
返回值
类型: number
通过 RTC SDK 提供的采集模块采集屏幕视频流时,设置需要过滤的窗口。
类型
(screen_filter_config?: number[]) => number
ts注意
参数
screen_filter_config
类型: number[]
值: ' []'
窗口过滤设置
返回值
类型: number
在屏幕共享时,设置屏幕音频流的声道数
类型
(channel: AudioChannel) => any
ts注意
当你调用 setScreenAudioStreamIndex 并设置屏幕音频流和麦克风音频流混流时,此接口不生效,音频通道数由 setAudioProfile 控制。
参数
channel
类型: AudioChannel
声道数
获取屏幕采集对象列表。
类型
() => ScreenCaptureSourceInfo[]
ts注意
不同的平台上,对最小化的窗口的处理方式不同:在 Windows 平台上,最小化的窗口也会包含在返回列表中;在 macOS 和 Linux 平台上,最小化的窗口不会包含在返回列表中。
返回值
类型: ScreenCaptureSourceInfo[]
屏幕采集对象列表,包括应用窗口和屏幕。由用户选择其中一个共享对象,并在调用 startScreenVideoCapture 时作为参数传给 RTC SDK。
获取共享对象缩略图
类型
(type: ScreenCaptureSourceType, source_id: number, max_width: number, max_height: number) => ThumbnailInfo
ts参数
type
屏幕采集对象的类型
source_id
类型: number
屏幕共享对象的 ID,可通过 getScreenCaptureSourceList 枚举共享对象列表中获取。
max_width
类型: number
最大宽度。保持采集对象本身的宽高比不变,将缩略图缩放到指定范围内的最大宽高。如果给出的尺寸与共享对象比例不同,得到的缩略图会有黑边。
max_height
类型: number
最大高度。参见 maxWidth 的说明。
返回值
类型: ThumbnailInfo
共享对象缩略图
获取应用窗体所属应用的图标。
类型
(source_id: number, max_width: number, max_height: number) => AppIconInfo
ts参数
source_id
类型: number
屏幕共享对象的 ID,可通过 getScreenCaptureSourceList 枚举共享对象列表中获取。
max_width
类型: number
最大宽度。返回的图标将是宽高相等的,输入宽高不等时,取二者较小值。宽高范围为 [32,256],超出该范围将返回 nullptr,默认输出 100 x 100 的图像。
max_height
类型: number
最大高度。参见 maxWidth 的说明。
返回值
类型: AppIconInfo
应用窗体所属应用的图标。当屏幕共享对象为应用窗体时有效,否则返回 nullptr。
在屏幕共享时,设置屏幕音频流和麦克风采集到的音频流的混流方式
类型
(index: number) => number
ts注意
你应该在 publishScreen 之前,调用此方法。否则,你将收到 onWarning 的报错:kWarningCodeSetScreenAudioStreamIndexFailed`
参数
index
类型: number
混流方式
0: 将屏幕音频流和麦克风采集到的音频流混流 1: 将屏幕音频流和麦克风采集到的音频流分为两路音频流返回值
类型: number
为发布的屏幕共享视频流设置期望的编码参数,包括分辨率、帧率、码率、网络不佳时的回退策略等。
类型
(screen_solution: ScreenVideoEncoderConfig) => number
ts注意
调用该方法之前,屏幕共享视频流默认的编码参数为:分辨率 1920px × 1080px,帧率 15fps。
参数
screen_solution
屏幕共享视频流参数。
返回值
类型: number
必须先登录,才能发送房间外点对点消息和向应用服务器发送消息
类型
(token: string, uid: string) => number
ts注意
参数
token
类型: string
动态密钥。 用户登录必须携带的 Token,用于鉴权验证。 本 Token 与加入房间时必须携带的 Token 不同。测试时可使用控制台生成临时 Token,正式上线需要使用密钥 SDK 在你的服务端生成并下发 Token。
uid
类型: string
用户 ID 用户 ID 在 appid 的维度下是唯一的。
返回值
类型: number
0:成功-1:失败。无效参数-2:无效调用。用户已经登录。成功登录后再次调用本接口将收到此返回值调用本接口登出后,无法调用房间外消息以及端到服务器消息相关的方法或收到相关回调。
类型
() => number
ts注意
返回值
类型: number
更新用户用于登录的 Token。
类型
(token: string) => number
ts注意
参数
token
类型: string
Token 有一定的有效期,当 Token 过期时,需调用此方法更新登录的 Token 信息。
返回值
类型: number
设置业务服务器参数。
类型
(signature: string, url: string) => number
ts注意
参数
signature
类型: string
动态签名 业务服务器会使用该签名对请求进行鉴权验证。
url
类型: string
业务服务器的地址
返回值
类型: number
查询对端用户或本端用户的登录状态
类型
(peer_user_id: string) => number
ts注意
参数
peer_user_id
类型: string
需要查询的用户 ID
返回值
类型: number
给房间外指定的用户发送文本消息(P2P)
类型
(uid: string, message: string, config: MessageConfig) => number
ts注意
参数
uid
类型: string
消息接收用户的 ID
message
类型: string
发送的文本消息内容,消息不超过 64 KB。
config
类型: MessageConfig
消息类型
返回值
类型: number
>0:发送成功,返回这次发送消息的编号,从 1 开始递增-1:发送失败,RtcEngine 实例未创建-2:发送失败,uid 为空给房间外指定的用户发送二进制消息(P2P)
类型
(uid: string, length: number, message: Uint8Array, config: MessageConfig) => number
ts注意
参数
uid
类型: string
消息接收用户的 ID
length
类型: number
二进制字符串的长度
message
类型: Uint8Array
发送的二进制消息内容,每条消息不超过 64 KB。
config
类型: MessageConfig
消息类型
返回值
类型: number
>0:发送成功,返回这次发送消息的编号,从 1 开始递增-1:发送失败,RtcEngine 实例未创建-2:发送失败,uid 为空客户端给业务服务器发送文本消息(P2Server)
类型
(message: string) => number
ts注意
参数
message
类型: string
发送的文本消息内容,消息不超过 64 KB。
返回值
类型: number
>0:发送成功,返回这次发送消息的编号,从 1 开始递增-1:发送失败,Video 实例未创建客户端给业务服务器发送二进制消息(P2Server)
类型
(length: number, message: Uint8Array) => number
ts注意
参数
length
类型: number
二进制字符串的长度
message
类型: Uint8Array
发送的二进制消息内容,消息不超过 46KB。
返回值
类型: number
>0:发送成功,返回这次发送消息的编号,从 1 开始递增-1:发送失败,RtcEngine 实例未创建通过视频帧发送 SEI 数据。
类型
(stream_index: number, message: Uint8Array, repeat_count: number, mode: SEICountPerFrame) => number
ts注意
参数
stream_index
类型: number
媒体流类型
message
类型: Uint8Array
SEI 消息。超过 4KB 的消息会被丢弃。
repeat_count
类型: number
消息发送重复次数。取值范围是 [0, max{29, %{视频帧率}-1}]。推荐范围 [2,4]。
调用此接口后,这些 SEI 数据会添加到从当前视频帧开始的连续 %{repeat_count} 个视频帧中。
mode
类型: SEICountPerFrame
返回值
类型: number
设置 RTC SDK 内部采集时的视频采集参数。指定视频采集参数包括模式、分辨率、帧率。
类型
(config?: VideoCaptureConfig) => number
ts注意
参数
config
类型: VideoCaptureConfig
视频采集参数
返回值
类型: number
方法调用结果:
0:成功
!0:失败
开始播放音乐文件及混音
类型
(id: number, file_path: string, mixing_config: AudioMixingConfig) => number
ts注意
参数
id
类型: number
混音 ID,用于标识混音,请保证混音 ID 唯一性。 如果已经通过 preloadAudioMixing 将音效加载至内存,确保此处的 ID 与 preloadAudioMixing 设置的 ID 相同。 如果使用相同的 ID 重复调用本方法,前一次混音会停止,后一次混音开始,且 SDK 会使用 onAudioMixingStateChanged 回调通知前一次混音已停止。
file_path
类型: string
用于混音文件路径。
支持在线文件的 URL、和本地文件的绝对路径。对于在线文件的 URL,仅支持 https 协议。
推荐的音频文件采样率:8KHz、16KHz、22.05KHz、44.1KHz、48KHz。
不同平台支持的本地音频文件格式:
| mp3 | mp4 | aac | m4a | 3gp | wav | ogg | ts | wma | |
|---|---|---|---|---|---|---|---|---|---|
| macOS | Y | Y | Y | Y | Y | Y | |||
| Windows | Y | Y | Y | Y | Y | Y | Y | Y | |
| Linux | Y |
| mp3 | mp4 | aac | m4a | 3gp | wav | ogg | ts | wma | |
|---|---|---|---|---|---|---|---|---|---|
| macOS | Y | Y | Y | Y | |||||
| Windows | Y | Y | Y | Y | Y | Y | Y |
mixing_config
混音配置,设置混音的播放次数、是否本地播放混音、以及是否将混音发送至远端
返回值
类型: number
停止播放音乐文件及混音
类型
(id: number) => number
ts注意
参数
id
类型: number
混音 ID
返回值
类型: number
暂停播放音乐文件及混音
类型
(id: number) => number
ts注意
参数
id
类型: number
混音 ID
返回值
类型: number
恢复播放音乐文件及混音
类型
(id: number) => number
ts注意
参数
id
类型: number
混音 ID
返回值
类型: number
预加载指定音乐文件到内存中,以避免频繁播放同一文件时的重复加载,减少 CPU 占用。
类型
(id: number, file_path: string) => number
ts注意
参数
id
类型: number
混音 ID 应用调用者维护,请保证唯一性。 如果使用相同的 ID 调用本方法,后一次会覆盖前一次。 如果先调用 startAudioMixing ,再使用相同的 ID 调用本方法 ,会先回调 onAudioMixingStateChanged 上一个混音停止,然后加载后一个混音。 使用一个 ID 调用本方法预加载 A.mp3 后,如果需要使用相同的 ID 调用 startAudioMixing 播放 B.mp3,请先调用 unloadAudioMixing 卸载 A.mp3 ,否则会报错 kAudioMixingErrorLoadConflict。
file_path
类型: string
指定需要混音的本地文件的绝对路径,支持音频文件格式有: mp3,aac,m4a,3gp,wav。 预加载的文件长度不得超过 20s。
返回值
类型: number
卸载指定音乐文件
类型
(id: number) => number
ts注意
不论音乐文件是否播放,调用本方法卸载该文件后,SDK 会回调通知混音已停止,见 onAudioMixingStateChanged。
参数
id
类型: number
混音 ID
返回值
类型: number
调节音乐文件在本地和远端播放的音量大小
类型
(id: number, volume: number, type: number) => number
ts注意
参数
id
类型: number
混音 ID
volume
类型: number
音乐文件播放音量范围为 0~400。
type
类型: number
混音播放类型 设置音乐文件是否本地播放、以及是否发送到远端,由此控制音乐文件本地或远端播放的音量
+ 0: 仅本地播放
+ 1: 仅发送到远端
+ 2: 在本地播放并发送到远端
返回值
类型: number
获取音乐文件时长
类型
(id: number) => number
ts注意
调用本方法获取音乐文件时长前,需要先调用 preloadAudioMixing 或 startAudioMixing。
参数
id
类型: number
混音 ID
返回值
类型: number
>0: 成功, 音乐文件时长,单位为毫秒。<0: 失败获取音乐文件播放进度
类型
(id: number) => number
ts注意
调用本方法获取音乐文件播放进度前,需要先调用 startAudioMixing 开始播放音乐文件。
参数
id
类型: number
混音 ID
返回值
类型: number
>0: 成功, 音乐文件播放进度,单位为毫秒。<0: 失败设置音乐文件的播放位置
类型
(id: number, pos: number) => number
ts注意
在播放在线文件时,调用此接口可能造成播放延迟的现象。
参数
id
类型: number
混音 ID
pos
类型: number
音频文件起始播放位置,单位为毫秒。
你可以通过 getAudioMixingDuration 获取音频文件总时长,position 的值应小于音频文件总时长。
返回值
类型: number
获取混音音频文件的实际播放时长(单位:毫秒)。
类型
(mix_id: number) => any
ts注意
参数
mix_id
类型: number
混音 ID
返回值
> 0: 实际播放时长。< 0: 失败设置当前音频文件的声道模式
类型
(id: number, mode: AudioMixingDualMonoMode) => number
ts注意
调用本方法设置音频文件的声道模式前,需要先调用 startAudioMixing 开始播放音频文件。
参数
id
类型: number
混音 ID
mode
声道模式。默认的声道模式和源文件一致,详见 AudioMixingDualMonoMode。
返回值
类型: number
开启本地播放音乐文件变调功能,多用于 K 歌场景。
类型
(id: number, pitch: number) => number
ts注意
本方法需要在调用 startAudioMixing 开始播放音频文件后、调用 stopAudioMixing 停止播放音频文件前使用,否则会触发 onAudioMixingStateChanged 回调报错
参数
id
类型: number
混音 ID
pitch
类型: number
相对于音乐文件原始音调的升高/降低值,取值范围[-12,12],默认值为 0,即不做调整。
取值范围内每相邻两个值的音高距离相差半音,正值表示升调,负值表示降调,设置的绝对值越大表示音调升高或降低越多。
超出取值范围则设置失败,并且会触发 onAudioMixingStateChanged 回调,提示 AudioMixingState 状态为 AUDIO_MIXING_STATE_FAILED 混音播放失败,AudioMixingError 错误码为 AUDIO_MIXING_ERROR_ID_TYPE_INVALID_PITCH 设置混音文件音调不合法
返回值
类型: number
设置混音时音频文件的播放速度
类型
(id: number, speed: number) => number
ts注意
参数
id
类型: number
混音 ID
speed
类型: number
播放速度与原始文件速度的比例,单位:%,取值范围为 [50,200],默认值为 100。
超出取值范围则设置失败,你会收到 onAudioMixingStateChanged 回调,提示 AudioMixingState 状态为 kAudioMixingStateFailed 混音播放失败,AudioMixingError 错误码为 kAudioMixingErrorInValidPlaybackSpeed 设置混音文件的播放速度不合法。
返回值
类型: number
如果你需要使用 enableVocalInstrumentBalance 对混音使音频文件/PCM 音频数据进行音量调整,你必须通过此接口传入其原始响度。
类型
(id: number, loudness: number) => number
ts注意
建议在 startAudioMixing 开始播放音频文件之前调用该接口,以免播放过程中的音量突变导致听感体验下降。
参数
id
类型: number
混音 ID
loudness
类型: number
原始响度,单位:lufs,取值范围为 [-70.0, 0.0]。
当设置的值小于 -70.0lufs 时,则默认调整为 -70.0lufs,大于 0.0lufs 时,则不对该响度做音均衡处理。默认值为 1.0lufs,即不做处理。
返回值
类型: number
设置混音时音频文件播放进度回调的间隔
类型
(id: number, interval: number) => number
ts注意
本方法需要在调用 startAudioMixing 开始播放音频文件后、调用 stopAudioMixing 停止播放音频文件前使用,否则会触发 onAudioMixingStateChanged 回调报错。 若想在音乐文件开始播放前设置播放进度回调间隔,你需调用 startAudioMixing 在 AudioMixingConfig 中设置时间间隔,开始播放后可以通过此接口更新回调间隔。
参数
id
类型: number
混音 ID。可以通过多次调用本接口传入不同的 ID 对多个 ID 进行间隔设置。
interval
类型: number
音频文件播放进度回调的时间间隔,单位毫秒。
• interval 的值为大于 0 的 10 的倍数,当设置的值不能被 10 整除时,则默认向上取整 10,如设为 52ms 时会默认调整为 60ms。设置完成后 SDK 将会按照设置的时间间隔触发 onAudioMixingPlayingProgress 回调。
• interval 的值小于等于 0 时,不会触发进度回调。
返回值
类型: number
获取当前音频文件的音轨索引
类型
(id: number) => number
ts注意
调用本方法获取音频文件的音轨前,需要先调用 startAudioMixing 开始播放音频文件。
参数
id
类型: number
混音 ID
返回值
类型: number
指定当前音频文件的播放音轨
类型
(id: number, audio_track_index: number) => number
ts注意
调用本方法设置音频文件的音轨前,需要先调用 startAudioMixing 开始播放音频文件。
参数
id
类型: number
混音 ID
audio_track_index
类型: number
指定的播放音轨
设置的参数值需要小于或等于 getAudioTrackCount 的返回值
返回值
类型: number
开启本地语音变调功能,多用于 K 歌场景。使用该方法,你可以对本地语音的音调进行升调或降调等调整。
类型
(pitch: number) => number
ts参数
pitch
类型: number
相对于语音原始音调的升高/降低值,取值范围[-12,12],默认值为 0,即不做调整。
取值范围内每相邻两个值的音高距离相差半音,正值表示升调,负值表示降调,设置的绝对值越大表示音调升高或降低越多。
超出取值范围则设置失败,并且会触发 onWarning 回调,提示码为 WARNING_CODE_SET_SCREEN_STREAM_INVALID_VOICE_PITCH 设置语音音调不合法
返回值
类型: number
该方法将通话过程中的音视频数据录制到本地的文件中。
类型
(type: StreamIndex, config: RecordingConfig, recording_type: RecordingType) => number
ts注意
参数
type
类型: StreamIndex
流属性,指定录制主流还是屏幕流
config
类型: RecordingConfig
本地录制参数配置
recording_type
类型: RecordingType
录制存储文件格式
返回值
类型: number
停止本地录制
类型
(type: number) => number
ts注意
参数
type
类型: number
流属性,指定停止主流或者屏幕流录制
返回值
类型: number
设置发布的音视频流回退选项 。你可以调用这个接口来设置网络情况不佳或设备性能不足时只发送小流,以保证通话质量。
类型
(option: number) => number
ts注意
参数
option
类型: number
本地发布的音视频流回退选项
返回值
类型: number
设置订阅的音视频流回退选项。 你可以通过调用该接口来设置网络情况不佳或性能不足时只订阅小流或音频流,以保证通话质量。
类型
(option: number) => number
ts注意
参数
option
类型: number
远端订阅流回退处理选项
0: 关闭订阅音视频流时的性能回退功能 1: 只接收视频小流2: 先尝试只接收视频小流;如果网络环境无法显示视频,则再回退到只接收远端订阅的音频流返回值
类型: number
方法调用结果
设置用户优先级
类型
(room_id: string, user_id: string, priority: RemoteUserPriority) => number
ts注意
参数
room_id
类型: string
房间 ID
user_id
类型: string
远端用户的 ID
priority
远端用户的需求优先级
返回值
类型: number
开启通话前网络探测
类型
(is_test_uplink: boolean, expected_uplink_bitrate: number, is_test_downlink: boolean, expected_downlink_biterate: number) => number
ts注意
参数
is_test_uplink
类型: boolean
是否探测上行带宽
expected_uplink_bitrate
类型: number
期望上行带宽,单位:kbps范围为 {0, [100-10000]},其中, 0 表示由 SDK 指定最高码率。
is_test_downlink
类型: boolean
是否探测下行带宽
expected_downlink_biterate
类型: number
期望下行带宽,单位:kbps范围为 {0, [100-10000]},其中, 0 表示由 SDK 指定最高码率。
返回值
类型: number
false,或期望带宽超过了范围 [100,10000]停止通话前网络探测
类型
() => number
ts注意
调用本接口后,会收到一次 onNetworkDetectionStopped 回调通知探测停止。
返回值
类型: number
关闭虚拟背景。
类型
() => number
ts注意
调用 enableVirtualBackground 开启虚拟背景后,可以调用此接口关闭虚拟背景。
返回值
类型: number
0: 调用成功。–1000: 未集成特效 SDK。–1001: 特效 SDK 不支持该功能。–1002: 特效 SDK 版本不兼容。< 0: 调用失败,错误码对应具体描述参看 错误码表。开启人脸识别功能,并设置人脸检测结果回调观察者。
类型
(interval_ms: number, faceModelPath: string) => number
ts注意
此观察者后,你会周期性收到 onFaceDetectResult 回调。
参数
interval_ms
类型: number
两次回调之间的最小时间间隔,必须大于 0,单位为毫秒。实际收到回调的时间间隔大于 interval_ms,小于 interval_ms+视频采集帧间隔。
faceModelPath
类型: string
人脸检测算法模型文件路径,一般为 ttfacemodel 文件夹中 tt_face_vXXX.model 文件的绝对路径。
返回值
类型: number
0: 调用成功。–1000: 未集成特效 SDK。–1001: 特效 SDK 不支持该功能。–1002: 特效 SDK 版本不兼容。-1004: 初始化中,初始化完成后启动此功能。<0: 调用失败,错误码对应具体描述参看 错误码表。关闭人脸识别功能。
类型
() => number
ts返回值
类型: number
0: 调用成功。–1000: 未集成特效 SDK。–1001: 特效 SDK 不支持该功能。–1002: 特效 SDK 版本不兼容。<0: 调用失败,错误码对应具体描述参看 错误码表。在指定视频流上添加水印。
类型
(stream_index: number, image_path: string, config: RTCWatermarkConfig) => any
ts注意
参数
stream_index
类型: number
需要添加水印的视频流属性。
image_path
类型: string
水印图片路径,支持本地文件绝对路径和Asset 资源路径(/assets/xx.png),长度限制为 512 字节。
水印图片为 PNG 或 JPG 格式。
config
水印参数
返回值
移除指定视频流的水印。
类型
(stream_index: number) => any
ts参数
stream_index
类型: number
需要移除水印的视频流属性,参看 StreamIndex。
返回值
设置本地视频渲染时使用的视图,并设置渲染模式。
类型
(view: HTMLDivElement, render_options?: RenderOptions) => number
ts注意
如果需要解除绑定,调用 removeLocalVideo。
参数
view
类型: HTMLDivElement
视图
room_id
类型: RenderOptions
值: ' { render_mode: RenderMode.FIT, mirror: false, }'
房间 ID
返回值
类型: number
0:成功-1: 失败解绑本地视频流已绑定的渲染视图
类型
() => number
ts返回值
类型: number
0:成功-1: 失败为远端视频流绑定本地渲染视图,并设置渲染模式。
类型
(user_id: string, room_id: string, view: HTMLDivElement, render_options?: RenderOptions) => number
ts注意
removeRemoteVideo 或 removeAllRemoteVideo。参数
user_id
类型: string
远端用户 ID
room_id
类型: string
房间 ID
view
类型: HTMLDivElement
视图
render_options
类型: RenderOptions
值: ' { render_mode: RenderMode.FIT, mirror: false, }'
渲染选项
返回值
类型: number
0:成功-1: 失败解绑指定远端视频流已绑定的本地视图
类型
(user_id: string, room_id: string) => number
ts注意
停止接收远端视频流时应解绑视图
参数
user_id
类型: string
远端用户 ID
room_id
类型: string
房间 ID
返回值
类型: number
0:成功-1: 失败解绑所有已绑定本地视图的指定远端视频流
类型
(room_id: string) => number
ts注意
停止接收远端视频流时应解绑视图
参数
room_id
类型: string
房间 ID
返回值
类型: number
0:成功-1: 失败为本地屏幕共享流绑定视图,实现预览
类型
(view: HTMLDivElement, render_options?: RenderOptions) => number
ts注意
removeLocalScreen。参数
view
类型: HTMLDivElement
视图
room_id
类型: RenderOptions
值: ' { render_mode: RenderMode.FIT, mirror: false, }'
房间 ID
返回值
类型: number
0:成功-1: 失败解绑屏幕共享流已绑定的视图
类型
() => number
ts注意
本地停止屏幕共享时解绑视图
返回值
类型: number
0:成功
!0: 失败
为远端屏幕共享流绑定本地视图
类型
(user_id: string, room_id: string, view: HTMLDivElement, render_options?: RenderOptions) => number
ts注意
removeRemoteScreen。参数
user_id
类型: string
远端用户 ID
room_id
类型: string
房间 ID
view
类型: HTMLDivElement
视图
render_options
类型: RenderOptions
值: ' { render_mode: RenderMode.FIT, mirror: false, }'
渲染选项
返回值
类型: number
0:成功
-1: 失败
解绑远端屏幕共享流已绑定的本地视图
类型
(user_id: string, room_id: string) => number
ts注意
停止接收屏幕共享流时应解绑视图
参数
user_id
类型: string
远端用户 ID
room_id
类型: string
房间 ID
返回值
类型: number
0:成功-1: 失败为公共流绑定本地视图
类型
(stream_id: string, view: HTMLDivElement, renderOptions?: RenderOptions) => number
ts注意
removePublicStreamVideo。参数
stream_id
类型: string
公共流 ID
view
类型: HTMLDivElement
视图
renderOptions
类型: RenderOptions
值: ' { render_mode: RenderMode.FIT, mirror: false, }'
渲染选项
返回值
类型: number
0:成功-1: 失败为公共流解绑本地视图
类型
(streamId: string) => number
ts注意
停止接收公共流时解绑视图。
参数
streamId
类型: string
公共流 ID
返回值
类型: number
0:成功-1: 失败播放歌曲。
类型
(music_id: string, track_type: AudioTrackType, play_type: AudioPlayType) => number
ts注意
参数
music_id
类型: string
音乐 ID。
若同一 music_id 的歌曲正在播放,再次调用接口会从开始位置重新播放。若 music_id 对应的音频文件不存在会触发报错。
track_type
类型: AudioTrackType
原唱伴唱类型。
play_type
类型: AudioPlayType
音乐播放类型。
返回值
类型: number
0:成功-1: 失败暂停播放歌曲。
类型
(music_id: string) => number
ts注意
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
0:成功<0: 失败继续播放歌曲。
类型
(music_id: string) => number
ts注意
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
0:成功<0: 失败停止播放歌曲。
类型
(music_id: string) => number
ts注意
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
0:成功<0: 失败设置音乐文件的起始播放位置。
类型
(music_id: string, position: number) => number
ts注意
参数
music_id
类型: string
音乐 ID。
position
类型: number
音乐起始位置,单位为毫秒,取值小于音乐文件总时长。
返回值
类型: number
0:成功<0: 失败设置歌曲播放音量,只能在开始播放后进行设置。
类型
(music_id: string, volume: number) => number
ts注意
参数
music_id
类型: string
音乐 ID。
volume
类型: number
歌曲播放音量,调节范围:[0,400]。
+ 0:静音。
+ 100:原始音量。
+ 400: 原始音量的 4 倍(自带溢出保护)。
返回值
类型: number
0:成功<0: 失败切换歌曲原唱伴唱。
类型
(music_id: string) => number
ts注意
调用本接口时音乐必须处于播放中状态。
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
0:成功<0: 失败对播放中的音乐设置升降调信息。
类型
(music_id: string, pitch: number) => number
ts注意
参数
music_id
类型: string
音乐 ID。
pitch
类型: number
相对于音乐文件原始音调的升高/降低值,取值范围 [-12,12],默认值为 0,即不做调整。
取值范围内每相邻两个值的音高距离相差半音,正值表示升调,负值表示降调,设置的绝对值越大表示音调升高或降低越多。
返回值
类型: number
0:成功<0: 失败设置歌曲文件最大占用的本地缓存。
类型
(max_cache_size_MB: number) => number
ts参数
max_cache_size_MB
类型: number
本地缓存,单位 MB。
设置值小于等于 0 时,使用默认值 1024 MB。
返回值
类型: number
0:成功<0: 失败获取歌曲列表。
类型
(page_num: number, page_size: number, filters: number) => number
ts注意
调用接口后,你会收到 onMusicListResult 回调歌曲列表。
参数
page_num
类型: number
页码,默认从 1 开始。
page_size
类型: number
每页显示歌曲的最大数量,取值范围 [1,99]。
filters
类型: number
歌曲过滤方式。多个过滤方式可以按位或组合。
+ 0: 不过滤。
+ 1<<0: 过滤没有歌词的歌曲。
+ 1<<1: 过滤不支持打分的歌曲。
+ 1<<2: 过滤不支持伴唱切换的歌曲。
+ 1<<3: 过滤没有高潮片段的歌曲。
返回值
类型: number
0:成功<0: 失败根据关键词搜索歌曲。
类型
(key_world: string, page_num: number, page_size: number, filters: number) => number
ts注意
调用接口后,你会收到 onSearchMusicResult 回调歌曲列表。
参数
key_world
类型: string
关键词,字符串长度最大为 20 个字符。
page_num
类型: number
页码,默认从 1 开始。
page_size
类型: number
每页显示歌曲的最大数量,取值范围 [1,99]。
filters
类型: number
歌曲过滤方式。多个过滤方式可以按位或组合。
+ 0: 不过滤。
+ 1<<0: 过滤没有歌词的歌曲。
+ 1<<1: 过滤不支持打分的歌曲。
+ 1<<2: 过滤不支持伴唱切换的歌曲。
+ 1<<3: 过滤没有高潮片段的歌曲。
返回值
类型: number
0:成功<0: 失败根据热榜类别获取每个榜单的歌曲列表。
类型
(hot_types: number, filters: number) => number
ts注意
调用接口后,你会收到 onHotMusicResult 回调歌曲列表。
参数
hot_types
类型: number
热榜类别。多个热榜类别可以按位或组合。
+ 1<<0: 火山内容中心热歌榜。
+ 1<<1: 项目热歌榜。
filters
类型: number
歌曲过滤方式。多个过滤方式可以按位或组合。
+ 0: 不过滤。
+ 1<<0: 过滤没有歌词的歌曲。
+ 1<<1: 过滤不支持打分的歌曲。
+ 1<<2: 过滤不支持伴唱切换的歌曲。
+ 1<<3: 过滤没有高潮片段的歌曲。
返回值
类型: number
0:成功<0: 失败获取音乐详细信息。
类型
(music_id: string) => number
ts注意
调用接口后,你会收到 onMusicDetailResult 回调。
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
0:成功<0: 失败下载音乐。
类型
(music_id: string) => number
ts注意
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
下载任务 ID。
下载歌词。
类型
(music_id: string, type: DownloadLyricType) => number
ts注意
参数
music_id
类型: string
音乐 ID。
type
歌词文件类型。
返回值
类型: number
下载任务 ID。
下载 MIDI 文件。
类型
(music_id: string) => number
ts注意
参数
music_id
类型: string
音乐 ID。
返回值
类型: number
下载任务 ID。
取消下载任务。
类型
(download_id: string) => number
ts参数
download_id
类型: string
下载任务 ID。
返回值
类型: number
0:成功<0: 失败清除当前音乐缓存文件,包括音乐音频和歌词。
类型
() => number
ts返回值
类型: number
0: Success<0: Failure.初始化 K 歌评分。
类型
(sing_scoring_appkey: string, sing_scoring_token: string) => number
ts注意
输入正确的鉴权信息才可以使用 K 歌评分相关的功能,鉴权方式为离线鉴权,根据包名(bundleID)绑定 Appkey 及 Token,K 歌评分密钥请联系技术支持同学申请。
参数
sing_scoring_appkey
类型: string
K 歌评分密钥,用于鉴权验证 K 歌功能是否开通。
sing_scoring_token
类型: string
K 歌评分密钥,用于鉴权验证 K 歌功能是否开通。
返回值
类型: number
0: 成功。<0: 失败。设置 K 歌评分参数。
类型
(config: SingScoringConfig) => number
ts参数
config
K 歌评分的各项参数
返回值
类型: number
0:配置成功。-1:接口调用失败。-2:未集成 K 歌评分模块。开始 K 歌评分。
类型
(position: number, scoring_info_interval: number) => any
ts注意
参数
position
类型: number
开始评分时,音乐的播放进度,单位:ms。
scoring_info_interval
类型: number
实时回调的时间间隔,单位:ms;默认 50 ms。最低间隔为 20 ms。
返回值
0: 成功。<0: 失败。停止 K 歌评分。
类型
() => number
ts返回值
类型: number
0: 成功。<0: 失败。获取上一句的演唱评分。
类型
() => number
ts注意
调用 startSingScoring 开始评分后可以调用该接口。
返回值
类型: number
<0:获取评分失败。>=0:上一句歌词的演唱评分。获取当前演唱总分。
类型
() => number
ts注意
调用 startSingScoring 开始评分后可以调用该接口。
返回值
类型: number
<0:获取总分失败。>=0:当前演唱总分。获取当前演唱歌曲的平均分。
类型
() => number
ts返回值
类型: number
<0:获取平均分失败。>=0:当前演唱平均分。设置本地采集语音的均衡效果。包含内部采集和外部采集,但不包含混音音频文件。
类型
(config: VoiceEqualizationConfig) => number
ts注意
根据奈奎斯特采样率,音频采样率必须大于等于设置的中心频率的两倍,否则,设置不生效。
参数
config
语音均衡效果
返回值
类型: number
0: 成功。<0: 失败。设置本地采集语音的均衡效果。包含内部采集和外部采集,但不包含混音音频文件。
类型
(param?: VoiceReverbConfig) => number
ts注意
根据奈奎斯特采样率,音频采样率必须大于等于设置的中心频率的两倍,否则,设置不生效。
参数
param
语音均衡效果
返回值
类型: number
0: 成功。<0: 失败。开启本地音效混响效果
类型
(enable: boolean) => number
ts注意
调用 setLocalVoiceReverbParam 设置混响效果。
参数
enable
类型: boolean
是否开启
返回值
类型: number
0: 成功。<0: 失败。开启录制语音通话,生成本地文件。
类型
(config: AudioRecordingConfig) => number
ts注意
参数
config
录制参数
返回值
类型: number
0: 正常-2: 参数设置异常-3: 当前版本 SDK 不支持该特性,请联系技术支持人员停止音频文件录制
类型
() => number
ts注意
调用 startAudioRecording 开启本地录制。
返回值
类型: number
停止播放所有音频文件及混音。
类型
() => any
ts注意
onAudioMixingStateChanged 回调,通知已停止播放和混音。返回值
0: 成功。<0: 失败。暂停播放所有音频文件及混音。
类型
() => any
ts注意
onAudioMixingStateChanged 回调,通知已暂停播放和混音。返回值
0: 成功。<0: 失败。恢复播放所有音频文件及混音。
类型
() => any
ts注意
onAudioMixingStateChanged 回调,通知已恢复播放和混音。返回值
0: 成功。<0: 失败。static getSDKVersion() 获取当前 SDK 版本信息
类型
() => string
ts返回值
类型: string
当前 SDK 版本信息
static getCurrentProcessId() 获取加载引擎进程的 ID 方便调试
类型
() => string
ts返回值
类型: string
进程的 ID