AudioEffectPlayerConfig

类型: interface

混音配置

方法描述
type混音播放类型
play_count混音播放次数
+ play_count <= 0: 无限循环
+ play_count == 1: 播放一次(默认)
+ play_count > 1: 播放 play_count 次
pitch与音乐文件原始音调相比的升高/降低值,取值范围为 [-12,12],默认值为 0。每相邻两个值的音高距离相差半音,正值表示升调,负值表示降调。
start_pos混音起始位置。默认值为 0,单位为毫秒。

type

类型: AudioMixingType

混音播放类型

play_count

类型: number

混音播放次数

pitch

类型: number

与音乐文件原始音调相比的升高/降低值,取值范围为 [-12,12],默认值为 0。每相邻两个值的音高距离相差半音,正值表示升调,负值表示降调。

start_pos

类型: number

混音起始位置。默认值为 0,单位为毫秒。

AudioMixingType

类型: enum

混音播放类型

MediaPlayerConfig

类型: interface

混音配置

方法描述
play_count混音播放次数
+ play_count <= 0: 无限循环
+ play_count == 1: 播放一次(默认)
+ play_count > 1: 播放 play_count 次
start_pos混音起始位置。默认值为 0,单位为毫秒。
callback_on_progress_interval设置音频文件混音时,收到 onMediaPlayerPlayingProgress 的间隔。单位毫秒。
+ interval > 0 时,触发回调。实际间隔为 10 的倍数。如果输入数值不能被 10 整除,将自动向上取整。例如传入 52,实际间隔为 60 ms。
+ interval <= 0 时,不会触发回调。
sync_progress_to_record_frame在采集音频数据时,附带本地混音文件播放进度的时间戳。启用此功能会提升远端人声和音频文件混音播放时的同步效果。
auto_play是否自动播放。如果不自动播放,调用 startAudioMixing 播放音乐文件。
type混音播放类型

play_count

类型: number

混音播放次数

start_pos

类型: number

混音起始位置。默认值为 0,单位为毫秒。

callback_on_progress_interval

类型: string

设置音频文件混音时,收到 onMediaPlayerPlayingProgress 的间隔。单位毫秒。

sync_progress_to_record_frame

类型: boolean

在采集音频数据时,附带本地混音文件播放进度的时间戳。启用此功能会提升远端人声和音频文件混音播放时的同步效果。

auto_play

类型: boolean

是否自动播放。如果不自动播放,调用 startAudioMixing 播放音乐文件。

type

类型: AudioMixingType

混音播放类型

AudioMixingDualMonoMode

类型: enum

混音播放声道类型

UserInfo

用户信息

RTCRoomConfig

类型: interface

房间参数配置。房间是 RTC 通话的抽象概念。在同一个房间中的用户可以进行音视频通话。

方法描述
room_profile_type房间模式,默认为普通音视频通话模式,进房后不可更改。
is_auto_publish是否自动发布音视频流,默认为自动发布。
创建和加入多房间时,只能将其中一个房间设置为自动发布。若每个房间均不做设置,则默认在第一个加入的房间内自动发布流。
若调用 setUserVisibility 将自身可见性设为 false,无论是默认的自动发布流还是手动设置的自动发布流都不会进行发布,你需要将自身可见性设为 true 后方可发布。
is_auto_subscribe_audio是否自动订阅音频流,默认为自动订阅。包含主流和屏幕流。
进房后,你可以调用 subscribeStream 修改订阅设置。
is_auto_subscribe_video是否自动订阅主视频流,默认为自动订阅。包含主流和屏幕流。
进房后,你可以调用 subscribeStream 修改订阅设置。
remote_video_config远端视频流参数

room_profile_type

类型: RoomProfileType | undefined

房间模式,默认为普通音视频通话模式,进房后不可更改。

is_auto_publish

类型: boolean | undefined

是否自动发布音视频流,默认为自动发布。
创建和加入多房间时,只能将其中一个房间设置为自动发布。若每个房间均不做设置,则默认在第一个加入的房间内自动发布流。
若调用 setUserVisibility 将自身可见性设为 false,无论是默认的自动发布流还是手动设置的自动发布流都不会进行发布,你需要将自身可见性设为 true 后方可发布。

is_auto_subscribe_audio

类型: boolean | undefined

是否自动订阅音频流,默认为自动订阅。包含主流和屏幕流。
进房后,你可以调用 subscribeStream 修改订阅设置。

is_auto_subscribe_video

类型: boolean | undefined

是否自动订阅主视频流,默认为自动订阅。包含主流和屏幕流。
进房后,你可以调用 subscribeStream 修改订阅设置。

remote_video_config

类型: RemoteVideoConfig | undefined

远端视频流参数

RoomProfileType

类型: enum

房间模式
根据所需场景,选择合适的房间模式,应用不同的音视频算法、视频参数和网络配置
调用 setAudioProfile 改变音频参数配置

RemoteVideoConfig

类型: interface

远端视频帧信息

方法描述
framerate期望订阅的最高帧率,单位:fps,默认值为 0 即满帧订阅,设为大于 0 的值时开始生效。
当发布端帧率低于设定帧率,或订阅端开启性能回退后下行弱网,则帧率会相应下降。
仅码流支持 SVC 分级编码特性时方可生效。
resolution_width视频宽度,单位:px
resolution_height视频高度,单位:px

framerate

类型: number | undefined

期望订阅的最高帧率,单位:fps,默认值为 0 即满帧订阅,设为大于 0 的值时开始生效。
当发布端帧率低于设定帧率,或订阅端开启性能回退后下行弱网,则帧率会相应下降。
仅码流支持 SVC 分级编码特性时方可生效。

resolution_width

类型: number | undefined

视频宽度,单位:px

resolution_height

类型: number | undefined

视频高度,单位:px

MediaStreamType

类型: enum

媒体流类型

PauseResumeControlMediaType

类型: enum

暂停/恢复接收远端的媒体流类型。

MessageConfig

类型: enum

发送消息的可靠有序性

ForwardStreamConfiguration

类型: interface

媒体流跨房间转发的目标房间的相关信息

方法描述
forward_stream_dests目标房间信息,数组中的每个元素包含一个房间的信息。

forward_stream_dests

类型: ForwardStreamInfo[]

目标房间信息,数组中的每个元素包含一个房间的信息。

ForwardStreamInfo

类型: interface

媒体流跨房间转发的目标房间的相关信息

方法描述
token使用转发目标房间 RoomID 和 UserID 生成 Token。
测试时可使用控制台生成临时 Token,正式上线需要使用密钥 SDK 在你的服务端生成并下发 Token。
如果 Token 无效,转发失败。
room_id跨房间转发媒体流过程中目标房间 ID

token

类型: string

使用转发目标房间 RoomID 和 UserID 生成 Token。
测试时可使用控制台生成临时 Token,正式上线需要使用密钥 SDK 在你的服务端生成并下发 Token。
如果 Token 无效,转发失败。

room_id

类型: string

跨房间转发媒体流过程中目标房间 ID

ReceiveRange

本地用户能收听到、且具有衰减效果的音频接收范围

当收听者和声源距离处于 [min, max) 之间时,收听到的音量根据距离呈衰减效果。
超出该值范围的音频将无法收听到。 |

minnumber能够接收语音、并且具有衰减效果的最小距离值,该值须 ≥ 0,但 ≤ max。
Position

本地用户在房间内的位置坐标,需自行建立空间直角坐标系

AttenuationType

类型: enum

空间音频音量随距离衰减模式

HumanOrientation

类型: interface

三维朝向信息,三个向量需要两两垂直。

方法描述
forward正前方朝向,默认值为 {1,0,0},即正前方朝向 x 轴正方向
right正右方朝向,默认值为 {0,1,0},即右手朝向 y 轴正方向
up正上方朝向,默认值为 {0,0,1},即头顶朝向 z 轴正方向

forward

类型: Orientation

正前方朝向,默认值为 {1,0,0},即正前方朝向 x 轴正方向

right

类型: Orientation

正右方朝向,默认值为 {0,1,0},即右手朝向 y 轴正方向

up

类型: Orientation

正上方朝向,默认值为 {0,0,1},即头顶朝向 z 轴正方向

Orientation

类型: interface

方向朝向信息

方法描述
xx 方向向量
yy 方向向量
zz 方向向量

x

类型: number

x 方向向量

y

类型: number

y 方向向量

z

类型: number

z 方向向量

AudioSelectionPriority

类型: enum

音频选路优先级设置

SubtitleConfig

类型: interface

字幕配置信息。

方法描述
mode字幕模式。
target_language目标翻译语言。可点击 语言支持 查看翻译服务最新支持的语种信息。

mode

类型: SubtitleMode

字幕模式。

target_language

类型: string

目标翻译语言。可点击 语言支持 查看翻译服务最新支持的语种信息。

SubtitleMode

类型: enum

字幕模式。

PositionInfo

类型: interface

用户在空间音频坐标系里的位置信息。

方法描述
position用户在空间音频坐标系里的位置,需自行建立空间直角坐标系。
orientation用户在空间音频坐标系里的三维朝向信息。三个向量需要两两垂直。

position

类型: Position

用户在空间音频坐标系里的位置,需自行建立空间直角坐标系。

orientation

类型: HumanOrientation

用户在空间音频坐标系里的三维朝向信息。三个向量需要两两垂直。

ProblemFeedbackOption

类型: enum

反馈信息类型

ProblemFeedbackInfo

类型: interface

音视频质量反馈的信息

方法描述
problem_desc预设问题以外的其他问题的具体描述。
room_info音视频质量反馈的房间信息。

problem_desc

类型: string

预设问题以外的其他问题的具体描述。

room_info

类型: ProblemFeedbackRoomInfo[]

音视频质量反馈的房间信息。

ProblemFeedbackRoomInfo

类型: interface

音视频质量反馈的房间信息

方法描述
room_id房间 ID。
user_id本地用户 ID。

room_id

类型: string

房间 ID。

user_id

类型: string

本地用户 ID。

RTCPluginInfo

类型: interface

插件信息

方法描述
id插件 ID,插件唯一标识
path插件库路径

id

类型: string

插件 ID,插件唯一标识

path

类型: string

插件库路径

RTCPlugin

类型: interface

插件定义

方法描述
id插件 ID,插件唯一标识
setEnabled启用插件
setParameter设置参数

id

类型: string

插件 ID,插件唯一标识

setEnabled

启用插件

setParameter

设置参数

EchoTestConfig

类型: interface

音视频回路测试参数

方法描述
audioPropertiesReportInterval音量信息提示间隔,单位:ms,默认为 100ms
+<= 0: 关闭信息提示
+(0,100]: 开启信息提示,不合法的 interval 值,SDK 自动设置为 100ms
+> 100: 开启信息提示,并将信息提示间隔设置为此值
uid进行音视频通话回路测试的用户 ID
roomId测试用户加入的房间 ID。
token对用户进房时进行鉴权验证的动态密钥,用于保证音视频通话回路测试的安全性。

audioPropertiesReportInterval

类型: number

音量信息提示间隔,单位:ms,默认为 100ms
+<= 0: 关闭信息提示
+(0,100]: 开启信息提示,不合法的 interval 值,SDK 自动设置为 100ms
+> 100: 开启信息提示,并将信息提示间隔设置为此值

uid

类型: string

进行音视频通话回路测试的用户 ID

roomId

类型: string

测试用户加入的房间 ID。

token

类型: string

对用户进房时进行鉴权验证的动态密钥,用于保证音视频通话回路测试的安全性。

AudioPropertiesConfig

类型: interface

音频属性信息提示的相关配置。

方法描述
interval信息提示间隔,单位:ms
+ <= 0: 关闭信息提示
+ (0,100]: 开启信息提示,不合法的 interval 值,SDK 自动设置为 100ms
+ > 100: 开启信息提示,并将信息提示间隔设置为此值
enable_spectrum是否开启音频频谱检测。
enable_vad是否开启人声检测 (VAD)。
local_main_report_mode音量回调配置模式。
audio_report_mode设置 onLocalAudioPropertiesReport 回调中是否包含本地混音音频数据。
默认仅包含本地麦克风采集的音频数据和本地屏幕音频采集数据。
smooth适用于音频属性信息提示的平滑系数。取值范围是 (0.0, 1.0]。
默认值为 1.0,不开启平滑效果;值越小,提示音量平滑效果越明显。如果要开启平滑效果,可以设置为 0.3。

interval

类型: number

信息提示间隔,单位:ms

enable_spectrum

类型: boolean | undefined

是否开启音频频谱检测。

enable_vad

类型: boolean | undefined

是否开启人声检测 (VAD)。

local_main_report_mode

类型: AudioReportMode | undefined

音量回调配置模式。

audio_report_mode

类型: AudioPropertiesMode | undefined

设置 onLocalAudioPropertiesReport 回调中是否包含本地混音音频数据。
默认仅包含本地麦克风采集的音频数据和本地屏幕音频采集数据。

smooth

类型: number | undefined

适用于音频属性信息提示的平滑系数。取值范围是 (0.0, 1.0]。
默认值为 1.0,不开启平滑效果;值越小,提示音量平滑效果越明显。如果要开启平滑效果,可以设置为 0.3。

AudioReportMode

类型: enum

音量回调模式。

AudioPropertiesMode

类型: enum

音频信息提示中是否包含本地混音音频数据。

VideoEncoderConfig

类型: interface

视频流参数

方法描述
width视频宽度,单位:像素
height视频高度,单位:像素
frameRate视频帧率,单位:fps
maxBitrate最大发送编码码率(kbps),建议使用默认的自动码率。
  • -1: 自动码率
  • 0: 不开启上限
  • >0: 填写预估码率

  • 设为 0 则不对视频流进行编码发送。
  • minBitrate视频最小编码码率, 单位 kbps。编码码率不会低于 minBitrate。
    默认值为 0。
    范围:[0, maxBitrate),当 maxBitrate < minBitrate 时,为适配码率模式。
    以下情况,设置本参数无效:
    + 当 maxBitrate 为 0 时,不对视频流进行编码发送。
    + 当 maxBitrate < 0 时,适配码率模式。
    encoderPreference视频编码质量策略

    width

    类型: number

    视频宽度,单位:像素

    height

    类型: number

    视频高度,单位:像素

    frameRate

    类型: number

    视频帧率,单位:fps

    maxBitrate

    类型: number | undefined

    最大发送编码码率(kbps),建议使用默认的自动码率。

  • -1: 自动码率
  • 0: 不开启上限
  • >0: 填写预估码率

  • 设为 0 则不对视频流进行编码发送。

    minBitrate

    类型: number | undefined

    视频最小编码码率, 单位 kbps。编码码率不会低于 minBitrate。
    默认值为 0。
    范围:[0, maxBitrate),当 maxBitrate < minBitrate 时,为适配码率模式。
    以下情况,设置本参数无效:

    • 当 maxBitrate 为 0 时,不对视频流进行编码发送。
    • 当 maxBitrate < 0 时,适配码率模式。

    encoderPreference

    类型: VideoEncodePreference | undefined

    视频编码质量策略

    VideoEncodePreference

    类型: enum

    编码策略偏好

    • 成员

      属性值描述
      kVideoEncodePreferenceDisabled0无偏好。不降低帧率和分辨率。
      kVideoEncodePreferenceFramerate1(默认值)帧率优先。分辨率不变。
      kVideoEncodePreferenceQuality2分辨率优先。
      kVideoEncodePreferenceBalance3平衡帧率与分辨率。
    MirrorType

    类型: enum

    镜像类型

    • 成员

      属性值描述
      kMirrorTypeNone0本地预览和编码传输时均无镜像效果
      kMirrorTypeRender1本地预览时有镜像效果,编码传输时无镜像效果
      kMirrorTypeRenderAndEncoder3本地预览和编码传输时均有镜像效果
    EffectBeautyMode

    类型: enum

    基础美颜模式

    • 成员

      属性值描述
      kEffectBeautyWhite0美白
      kEffectBeautySmooth1磨皮
      kEffectBeautySharpen2锐化
    PushSingleStreamParam

    类型: interface

    单流转推直播配置参数。

    • API
    方法描述
    room_id媒体流所在的房间 ID。必填。
    user_id媒体流所属的用户 ID
    uri推流地址
    is_screen_stream媒体流是否为屏幕流。

    room_id

    类型: string

    媒体流所在的房间 ID。必填。

    user_id

    类型: string

    媒体流所属的用户 ID

    uri

    类型: string

    推流地址

    is_screen_stream

    类型: boolean

    媒体流是否为屏幕流。

    AnsMode

    类型: enum

    • 成员

      属性值描述
      kAnsModeDisable0禁用音频降噪。
      kAnsModeLow1适用于微弱降噪。
      kAnsModeMedium2适用于抑制中度平稳噪音,如空调声、风扇声。
      kAnsModeHigh3适用于抑制嘈杂非平稳噪音,如键盘声、敲击声、碰撞声、动物叫声。
      kAnsModeAutomatic4启用音频降噪能力。具体的降噪算法由 RTC 决定。
    RemoteStreamKey

    类型: interface

    远端流信息

    • API
    方法描述
    room_id媒体流所在房间的房间 ID。
    如果此媒体流是通过 startForwardStreamToRooms 转发到你所在房间的媒体流时,你应将房间 ID 设置为你所在的房间 ID。
    user_id用户 ID
    stream_index流属性,主流或屏幕流。

    room_id

    类型: string

    媒体流所在房间的房间 ID。
    如果此媒体流是通过 startForwardStreamToRooms 转发到你所在房间的媒体流时,你应将房间 ID 设置为你所在的房间 ID。

    user_id

    类型: string

    用户 ID

    stream_index

    类型: StreamIndex

    流属性,主流或屏幕流。

    StreamIndex

    类型: enum

    流属性

    • 成员

      属性值描述
      kStreamIndexMain0主流。包括:通过默认摄像头/麦克风采集到的视频/音频;
      kStreamIndexScreen1屏幕流。
      屏幕共享时共享的视频流,或来自声卡的本地播放音频流。
    VideoSuperResolutionMode

    类型: enum

    超分模式。

    • 成员

      属性值描述
      kVideoSuperResolutionModeOff0关闭超分。
      kVideoSuperResolutionModeOn1开启超分。
    StreamSycnInfoConfig

    类型: interface

    媒体流信息同步的相关配置

    • API
    方法描述
    stream_index流属性,主流或屏幕流。
    repeat_count消息发送的重复次数,取值范围是 [0,25],建议设置为 [3,5]。
    stream_type媒体流信息同步的流类型,

    stream_index

    类型: StreamIndex

    流属性,主流或屏幕流。

    repeat_count

    类型: number

    消息发送的重复次数,取值范围是 [0,25],建议设置为 [3,5]。

    stream_type

    类型: SyncInfoStreamType

    值: 0

    媒体流信息同步的流类型,

    CloudProxyInfo

    类型: interface

    云代理信息

    • API
    方法描述
    cloud_proxy_ip云代理服务器 IP
    cloud_proxy_port云代理服务器端口

    cloud_proxy_ip

    类型: string

    云代理服务器 IP

    cloud_proxy_port

    类型: number

    云代理服务器端口

    IPublicStreamParam

    类型: interface

    公共流参数

    • API
    方法描述
    interpolation_mode补帧模式
    + 0: 补最后一帧
    + 1: 补背景图片,如果没有设置背景图片则补黑帧
    room_id合流房间 ID,必填
    background_image_uri背景图片链接
    video_param公共流视频参数。
    layout_regions公共流视窗布局信息。
    layout_mode公共流的布局模式
    bg_color背景颜色

    interpolation_mode

    类型: number

    补帧模式

    • 0: 补最后一帧
    • 1: 补背景图片,如果没有设置背景图片则补黑帧

    room_id

    类型: string

    合流房间 ID,必填

    background_image_uri

    类型: string

    背景图片链接

    video_param

    类型: PublicStreamVideoParam

    公共流视频参数。

    layout_regions

    类型: PublicStreamLayoutRegion[]

    公共流视窗布局信息。

    layout_mode

    类型: StreamLayoutMode

    公共流的布局模式

    bg_color

    类型: string

    背景颜色

    PublicStreamVideoParam

    类型: interface

    公共流视频编码参数

    • API
    方法描述
    width公共流视频宽度,必填。单位为 px,范围为 [2, 1920],必须是偶数。
    height公共流视频高度,必填。单位为 px,范围为 [16, 1280],必须是偶数。
    fps公共流视频帧率。必填
    范围:[1, 60]
    bitrate_kpbs视频码率,必填
    范围:[1,10000000]
    单位为 bps

    width

    类型: number

    公共流视频宽度,必填。单位为 px,范围为 [2, 1920],必须是偶数。

    height

    类型: number

    公共流视频高度,必填。单位为 px,范围为 [16, 1280],必须是偶数。

    fps

    类型: number

    公共流视频帧率。必填
    范围:[1, 60]

    bitrate_kpbs

    类型: number

    视频码率,必填
    范围:[1,10000000]
    单位为 bps

    PublicStreamLayoutRegion

    类型: interface

    单个视频流在公共流中的布局信息。
    在多路视频流公共流时,你需要设置每一路视频流在公共流中的布局信息。

    • API
    方法描述
    user_id目标公共流用户的 ID, 不能为空
    room_id跨房间订阅流时,目标流所在的房间 ID, 不能为空
    alternate_image_uri背景图片地址
    x用户视频布局相对画布左侧的偏移量,取值的范围为 [0.0, 1.0)。必填。
    y用户视频布局相对画布顶端的偏移量,取值的范围为 [0.0, 1.0)。必填。
    width用户视频宽度相对画布宽度的比例,取值的范围为 (0.0, 1.0]。必填。
    height用户视频高度相对画布高度的比例,取值的范围为 (0.0, 1.0]。必填。
    alpha透明度,取值范围 [0,255], 0 为全透明,255 为不透明
    z_order用户视频布局在画布中的层级,取值范围 [0,100],0(默认)为底层,100 为顶层。
    stream_type必填。媒体流类型:
    + 0: 普通流(默认设置)
    + 1: 屏幕流
    media_type公共流输出类型。
    render_mode渲染时,视频内容缩放模式,必填。
    source_crop支持对每一路参与公共流的视频进行裁剪。

    user_id

    类型: string

    目标公共流用户的 ID, 不能为空

    room_id

    类型: string

    跨房间订阅流时,目标流所在的房间 ID, 不能为空

    alternate_image_uri

    类型: string

    背景图片地址

    x

    类型: number

    用户视频布局相对画布左侧的偏移量,取值的范围为 [0.0, 1.0)。必填。

    y

    类型: number

    用户视频布局相对画布顶端的偏移量,取值的范围为 [0.0, 1.0)。必填。

    width

    类型: number

    用户视频宽度相对画布宽度的比例,取值的范围为 (0.0, 1.0]。必填。

    height

    类型: number

    用户视频高度相对画布高度的比例,取值的范围为 (0.0, 1.0]。必填。

    alpha

    类型: number

    透明度,取值范围 [0,255], 0 为全透明,255 为不透明

    z_order

    类型: number

    用户视频布局在画布中的层级,取值范围 [0,100],0(默认)为底层,100 为顶层。

    stream_type

    类型: number

    必填。媒体流类型:

    • 0: 普通流(默认设置)
    • 1: 屏幕流

    media_type

    类型: TranscoderContentControlType

    公共流输出类型。

    render_mode

    类型: PublicStreamRenderMode

    渲染时,视频内容缩放模式,必填。

    source_crop

    类型: SourceCrop

    支持对每一路参与公共流的视频进行裁剪。

    TranscoderContentControlType

    类型: enum

    合流输出内容类型

    • 成员

      属性值描述
      kHasAudioAndVideo0音视频
      kHasAudioOnly1音频
      kHasVideoOnly2视频
    PublicStreamRenderMode

    类型: enum

    渲染模式

    • 成员

      属性值描述
      kRenderModeHidden1视窗填满优先,默认值。
      视频帧等比缩放,直至视窗被视频填满。如果视频帧长宽比例与视窗不同,视频帧的多出部分将无法显示。
      缩放完成后,视频帧的一边长和视窗的对应边长一致,另一边长大于等于视窗对应边长。
      kRenderModeFit2视频帧内容全部显示优先。
      视频帧等比缩放,直至视频帧能够在视窗上全部显示。如果视频帧长宽比例与视窗不同,视窗上未被视频帧填满区域将被涂黑。
      缩放完成后,视频帧的一边长和视窗的对应边长一致,另一边长小于等于视窗对应边长。
      kRenderModeFill3视频帧自适应画布
      视频帧非等比缩放,直至画布被填满。在此过程中,视频帧的长宽比例可能会发生变化。
    SourceCrop

    类型: interface

    公共流视频裁剪配置

    • API
    方法描述
    LocationX裁剪后得到的视频帧左上角横坐标相对于裁剪前整体画面的归一化比例,取值范围[0.0, 1.0)
    LocationY裁剪后得到的视频帧左上角纵坐标相对于裁剪前整体画面的归一化比例,取值范围[0.0, 1.0)
    WidthProportion裁剪后得到的视频帧宽度相对于裁剪前整体画面的归一化比例,取值范围(0.0, 1.0]
    HeightProportion裁剪后得到的视频帧高度相对于裁剪前整体画面的归一化比例,取值范围(0.0, 1.0]

    LocationX

    类型: number

    裁剪后得到的视频帧左上角横坐标相对于裁剪前整体画面的归一化比例,取值范围[0.0, 1.0)

    LocationY

    类型: number

    裁剪后得到的视频帧左上角纵坐标相对于裁剪前整体画面的归一化比例,取值范围[0.0, 1.0)

    WidthProportion

    类型: number

    裁剪后得到的视频帧宽度相对于裁剪前整体画面的归一化比例,取值范围(0.0, 1.0]

    HeightProportion

    类型: number

    裁剪后得到的视频帧高度相对于裁剪前整体画面的归一化比例,取值范围(0.0, 1.0]

    StreamLayoutMode

    类型: enum

    公共流的布局模式

    • 成员

      属性值描述
      kLayoutAutoMode0(默认)自动布局
      kLayoutCustomerMode2自定义
    RenderOptions

    类型: interface

    本地渲染选项

    • API
    方法描述
    render_mode渲染时,视频内容缩放模式
    mirror是否镜像渲染

    render_mode

    类型: RenderMode

    渲染时,视频内容缩放模式

    mirror

    类型: boolean

    是否镜像渲染

    RenderMode

    类型: enum

    渲染时,视频内容缩放模式

    • 成员

      属性值描述
      FIT1视频帧内容全部显示优先。
      视频帧等比缩放,直至视频帧能够在视窗上全部显示。如果视频帧长宽比例与视窗不同,视窗上未被视频帧填满区域将被涂黑。
      缩放完成后,视频帧的一边长和视窗的对应边长一致,另一边长小于等于视窗对应边长。
      HIDDEN2视窗填满优先。
      视频帧等比缩放,直至视窗被视频填满。如果视频帧长宽比例与视窗不同,视频帧的多出部分将无法显示。
      缩放完成后,视频帧的一边长和视窗的对应边长一致,另一边长大于等于视窗对应边长。
    PixelFormat

    类型: enum

    视频帧编码格式

    • 成员

      属性值描述
      kI420YUV I420 格式
      kRGBARGBA 格式, 字节序为 R8 G8 B8 A8
    ScreenCaptureSourceInfo

    类型: interface

    屏幕共享对象信息
    startScreenVideoCapture 接口的中的参数类型

    • API
    方法描述
    type共享对象类型,屏幕或应用窗体
    source_id共享对象 ID
    source_name屏幕共享对象的名称
    application共享的应用窗体所属应用的名称
    当共享对象为应用窗体时有效
    primaryMonitor共享的屏幕是否为主屏。
    当共享对象为屏幕时有效
    pid共享的应用窗体所属应用进程的 pid
    当共享对象为应用窗体时有效
    region_rect屏幕共享对象的坐标。多显示器的场景下,屏幕坐标系统以主屏左上角为原点 (0, 0),向右向下扩展。

    type

    类型: ScreenCaptureSourceType

    共享对象类型,屏幕或应用窗体

    source_id

    类型: number

    共享对象 ID

    source_name

    类型: string

    屏幕共享对象的名称

    application

    类型: string

    共享的应用窗体所属应用的名称
    当共享对象为应用窗体时有效

    primaryMonitor

    类型: boolean

    共享的屏幕是否为主屏。
    当共享对象为屏幕时有效

    pid

    类型: number

    共享的应用窗体所属应用进程的 pid
    当共享对象为应用窗体时有效

    region_rect

    类型: Rectangle

    屏幕共享对象的坐标。多显示器的场景下,屏幕坐标系统以主屏左上角为原点 (0, 0),向右向下扩展。

    ScreenCaptureSourceType

    类型: enum

    屏幕采集对象的类型

    • 成员

      属性值描述
      kScreenCaptureSourceTypeUnknown0类型未知
      kScreenCaptureSourceTypeWindow1应用程序的窗口
      kScreenCaptureSourceTypeScreen2桌面
    Rectangle

    类型: interface

    矩形区域,用于指定屏幕区域

    • 对于多屏幕的场景,不同平台的坐标系原点不同:
      • 对于 Windows 平台,屏幕坐标以主屏左上角为原点 (0, 0),向右向下扩展。
        — 对于 Linux 平台,屏幕坐标以 恰好包住所有显示器的矩形区域的左上角 为原点 (0, 0),向右向下扩展。
    • 对于不同平台,窗口区域不同:
      • 对于 Windows 和 macOS 平台,窗口区域包含系统标题栏。
      • 对于 Linux 平台,窗口区域不包含系统标题栏。
    • API
    方法描述
    x矩形区域左上角的 x 坐标
    y矩形区域左上角的 y 坐标
    width矩形宽度
    height矩形高度

    x

    类型: number | undefined

    矩形区域左上角的 x 坐标

    y

    类型: number | undefined

    矩形区域左上角的 y 坐标

    width

    类型: number | undefined

    矩形宽度

    height

    类型: number | undefined

    矩形高度

    ScreenCaptureParameters

    类型: interface

    屏幕共享时,内部采集参数配置

    • API
    方法描述
    region_rect采集区域
    capture_mouse_cursor是否采集鼠标状态
    filter_config屏幕过滤设置,填写不需要采集的窗口 ID
    highlight_config采集区域的边框高亮设置

    region_rect

    类型: Rectangle

    采集区域

    capture_mouse_cursor

    类型: MouseCursorCaptureState | undefined

    是否采集鼠标状态

    filter_config

    类型: number[]

    屏幕过滤设置,填写不需要采集的窗口 ID

    highlight_config

    类型: HighlightConfig

    采集区域的边框高亮设置

    MouseCursorCaptureState

    类型: enum

    内部采集屏幕视频流时,是否采集鼠标信息

    • 成员

      属性值描述
      kMouseCursorCaptureStateOn0采集鼠标信息
      kMouseCursorCaptureStateOff1不采集鼠标信息
    HighlightConfig

    类型: interface

    屏幕共享时的边框高亮设置

    • API
    方法描述
    enable_highlight是否显示高亮边框,默认显示。
    border_color边框的颜色, 颜色格式为十六进制 ARGB: 0xAARRGGBB, 默认为 0xFF29CCA3
    border_width边框的宽度, 单位:像素,默认为: 4

    enable_highlight

    类型: boolean | undefined

    是否显示高亮边框,默认显示。

    border_color

    类型: number | undefined

    边框的颜色, 颜色格式为十六进制 ARGB: 0xAARRGGBB, 默认为 0xFF29CCA3

    border_width

    类型: number | undefined

    边框的宽度, 单位:像素,默认为: 4

    AudioChannel

    类型: enum

    音频声道。

    • 成员

      属性值描述
      kAudioChannelAuto-1默认设置。
      kAudioChannelMono1单声道
      kAudioChannelStereo2双声道
    ThumbnailInfo

    类型: interface

    屏幕共享对象缩略图
    调用 getThumbnail 后返回本对象

    • API
    方法描述
    width宽度,单位:像素
    height高度,单位:像素
    data数据,采用 base64 编码的 png 字符串

    width

    类型: number

    宽度,单位:像素

    height

    类型: number

    高度,单位:像素

    data

    类型: string

    数据,采用 base64 编码的 png 字符串

    AppIconInfo

    类型: interface

    共享窗体的图标信息
    调用 getWindowAppIcon 后返回本对象

    • API
    方法描述
    width宽度,单位:像素
    height高度,单位:像素
    data数据,采用 base64 编码的 png 字符串

    width

    类型: number

    宽度,单位:像素

    height

    类型: number

    高度,单位:像素

    data

    类型: string

    数据,采用 base64 编码的 png 字符串

    ScreenVideoEncoderConfig

    类型: interface

    屏幕编码配置。参考 设置视频发布参数。

    • API
    方法描述
    width视频宽度,单位:像素。
    height视频高度,单位:像素。
    frameRate视频帧率,单位:fps。
    maxBitrate最大编码码率,使用 SDK 内部采集时可选设置,自定义采集时必须设置,单位:kbps。
    设为 -1 即适配码率模式,系统将根据输入的分辨率和帧率自动计算适用的码率。
    设为 0 则不对视频流进行编码发送。
    3.44 及以上版本,内部采集时默认值为 -1,3.44 以前版本无默认值,需手动设置。
    minBitrate最小编码码率,使用 SDK 内部采集时可选设置,自定义采集时必须设置,单位:kbps。
    最小编码码率必须小于或等于最大编码,否则不对视频流进行编码发送。
    encoderPreference屏幕流编码模式。

    width

    类型: number

    视频宽度,单位:像素。

    height

    类型: number

    视频高度,单位:像素。

    frameRate

    类型: number

    视频帧率,单位:fps。

    maxBitrate

    类型: number | undefined

    最大编码码率,使用 SDK 内部采集时可选设置,自定义采集时必须设置,单位:kbps。
    设为 -1 即适配码率模式,系统将根据输入的分辨率和帧率自动计算适用的码率。
    设为 0 则不对视频流进行编码发送。
    3.44 及以上版本,内部采集时默认值为 -1,3.44 以前版本无默认值,需手动设置。

    minBitrate

    类型: number | undefined

    最小编码码率,使用 SDK 内部采集时可选设置,自定义采集时必须设置,单位:kbps。
    最小编码码率必须小于或等于最大编码,否则不对视频流进行编码发送。

    encoderPreference

    类型: ScreenVideoEncodePreference | undefined

    屏幕流编码模式。

    ScreenVideoEncodePreference

    类型: enum

    屏幕流编码模式。默认采用清晰模式。若在采集时设置 filter_config 排除指定窗口,共享视频时帧率无法达到 30fps。

    • 成员

      属性值描述
      kScreenVideoEncodePreferenceAuto0智能模式。根据屏幕内容智能决策选择流畅模式或清晰模式。
      kScreenVideoEncodePreferenceFramerate1流畅模式,优先保障帧率。适用于共享游戏、视频等动态画面。
      kScreenVideoEncodePreferenceQuality2清晰模式,优先保障分辨率。适用于共享PPT、文档、图片等静态画面。
    SEICountPerFrame

    类型: enum

    SEI 发送模式。

    • 成员

      属性值描述
      kSingleSEIPerFrame0单发模式。即在 1 帧间隔内多次发送 SEI 数据时,多个 SEI 按队列逐帧发送。
      kMultiSEIPerFrame1多发模式。即在 1 帧间隔内多次发送 SEI 数据时,多个 SEI 随下个视频帧同时发送。
    VideoCaptureConfig

    视频采集配置

    • 类型

      {
        capturePreference?: CapturePreference;
        width?: number;
        height?: number;
        frameRate?: number;
      }
      
      ts
    • 成员

      名称类型描述
      capturePreferenceCapturePreference | undefined视频采集模式
      widthnumber | undefined视频采集分辨率的宽度,单位:px。
      heightnumber | undefined视频采集分辨率的高度,单位:px。
      frameRatenumber | undefined视频采集帧率,单位:fps。
    CapturePreference

    类型: enum

    视频采集配置

    • 成员

      属性值描述
      KAuto0(默认)自动设置采集参数。
      SDK在开启采集时根据服务端下发的采集配置结合编码参数设置最佳采集参数。
      KManual1手动设置采集参数,包括采集分辨率、帧率。
      KAutoPerformance2采集参数与编码参数一致,即在 setVideoEncoderConfig 中设置的参数。
    AudioMixingConfig

    类型: interface

    混音配置

    • API
    方法描述
    type混音播放类型
    play_count混音播放次数,
    + play_count <= 0: 无限循环
    + play_count == 1: 播放一次(默认)
    + play_count > 1: 播放 play_count 次
    position混音时音频文件播放进度条位置,参数为整数,单位为毫秒
    callback_on_progress_interval设置音频文件播放进度回调的时间间隔,单位毫秒,并按照设置的值触发 onAudioMixingPlayingProgress 回调,默认不回调。
    该值应为大于 0 的 10 的倍数,当传入的值不能被 10 整除时,则默认向上取整 10,如设为 52ms 时会默认调整为 60ms。
    传入的值小于等于 0 时,不会触发进度回调。
    sync_progress_to_record_frame在采集音频数据时,附带本地混音文件播放进度的时间戳。启用此功能会提升远端人声和音频文件混音播放时的同步效果。

    type

    类型: AudioMixingType

    混音播放类型

    play_count

    类型: number

    混音播放次数,

    • play_count <= 0: 无限循环
    • play_count == 1: 播放一次(默认)
    • play_count > 1: 播放 play_count 次

    position

    类型: number

    混音时音频文件播放进度条位置,参数为整数,单位为毫秒

    callback_on_progress_interval

    类型: number | undefined

    设置音频文件播放进度回调的时间间隔,单位毫秒,并按照设置的值触发 onAudioMixingPlayingProgress 回调,默认不回调。
    该值应为大于 0 的 10 的倍数,当传入的值不能被 10 整除时,则默认向上取整 10,如设为 52ms 时会默认调整为 60ms。
    传入的值小于等于 0 时,不会触发进度回调。

    sync_progress_to_record_frame

    类型: boolean | undefined

    在采集音频数据时,附带本地混音文件播放进度的时间戳。启用此功能会提升远端人声和音频文件混音播放时的同步效果。

    • 注意

      • 仅在单个音频文件混音时使用有效。
      • true 时开启此功能,false 时关闭此功能,默认为关闭。
    RecordingConfig

    类型: interface

    本地录制参数配置

    • API
    方法描述
    dir_path录制文件保存的绝对路径。你需要指定一个有读写权限的合法路径。
    file_type录制存储文件格式
    + aac : 0
    + mp4 : 1

    dir_path

    类型: string

    录制文件保存的绝对路径。你需要指定一个有读写权限的合法路径。

    file_type

    类型: number

    录制存储文件格式

    • aac : 0
    • mp4 : 1
    RecordingType

    类型: enum

    • 成员

      属性值描述
      kRecordAudioOnly0只录制音频
      kRecordVideoOnly1只录制视频
      kRecordVideoAndAudio2同时录制音频和视频
    RemoteUserPriority

    类型: enum

    远端用户优先级,在性能不足需要回退时,会优先回退优先级低的用户的音视频流

    • 成员

      属性值描述
      kRemoteUserPriorityLow0用户优先级为低(默认值)
      kRemoteUserPriorityMedium100用户优先级为正常
      kRemoteUserPriorityHigh200用户优先级为高
    VirtualBackgroundSource

    类型: interface

    虚拟背景对象。

    • API
    方法描述
    source_type虚拟背景类型
    source_path自定义背景图片的绝对路径。
    支持的格式为 jpg、jpeg、png。
    图片分辨率超过 1080P 时,图片会被等比缩放至和视频一致。
    图片和视频宽高比一致时,图片会被直接缩放至和视频一致。
    图片和视频长宽比不一致时,为保证图片内容不变形,图片按短边缩放至与视频帧一致,使图片填满视频帧,对多出的高或宽进行剪裁。
    自定义图片带有局部透明效果时,透明部分由黑色代替。
    source_color纯色背景使用的颜色。

    source_type

    类型: VirtualBackgroundSourceType | undefined

    虚拟背景类型

    source_path

    类型: string

    自定义背景图片的绝对路径。
    支持的格式为 jpg、jpeg、png。
    图片分辨率超过 1080P 时,图片会被等比缩放至和视频一致。
    图片和视频宽高比一致时,图片会被直接缩放至和视频一致。
    图片和视频长宽比不一致时,为保证图片内容不变形,图片按短边缩放至与视频帧一致,使图片填满视频帧,对多出的高或宽进行剪裁。
    自定义图片带有局部透明效果时,透明部分由黑色代替。

    source_color

    类型: number | undefined

    纯色背景使用的颜色。

    VirtualBackgroundSourceType

    类型: enum

    虚拟背景类型。

    • 成员

      属性值描述
      kVirtualBackgroundSourceColor0使用纯色背景替换视频原有背景。
      kVirtualBackgroundSourceImage1使用自定义图片替换视频原有背景。
    RTCWatermarkConfig

    类型: interface

    水印参数

    • API
    方法描述
    visibleInPreview水印是否在视频预览中可见,默认可见。
    positionInLandscapeMode横屏时的水印位置和大小
    positionInPortraitMode视频编码的方向模式为竖屏时的水印位置和大小

    visibleInPreview

    类型: boolean | undefined

    水印是否在视频预览中可见,默认可见。

    positionInLandscapeMode

    类型: ByteWatermark

    横屏时的水印位置和大小

    positionInPortraitMode

    类型: ByteWatermark

    视频编码的方向模式为竖屏时的水印位置和大小

    ByteWatermark

    类型: interface

    水印图片相对视频流的位置和大小。

    • API
    方法描述
    x水印图片相对视频流左上角的横向偏移与视频流宽度的比值,取值范围为 [0,1)。
    y水印图片相对视频流左上角的纵向偏移与视频流高度的比值,取值范围为 [0,1)。
    width水印图片宽度与视频流宽度的比值,取值范围 [0,1)。
    height水印图片高度与视频流高度的比值,取值范围为 [0,1)。

    x

    类型: number

    水印图片相对视频流左上角的横向偏移与视频流宽度的比值,取值范围为 [0,1)。

    y

    类型: number

    水印图片相对视频流左上角的纵向偏移与视频流高度的比值,取值范围为 [0,1)。

    width

    类型: number

    水印图片宽度与视频流宽度的比值,取值范围 [0,1)。

    height

    类型: number

    水印图片高度与视频流高度的比值,取值范围为 [0,1)。

    AudioTrackType

    类型: enum

    原唱伴唱类型。

    • 成员

      属性值描述
      kOriginal1播放原唱。
      kAccompy2播放伴唱。
    AudioPlayType

    类型: enum

    音乐播放类型。

    • 成员

      属性值描述
      kLocal0仅本地播放。
      kRemote1仅远端播放。
      kLocalAndRemote2本地、远端同时播放。
    DownloadLyricType

    类型: enum

    歌词文件类型。

    • 成员

      属性值描述
      kKRC0KRC 歌词文件。
      kLRC1LRC 歌词文件。
    SingScoringConfig

    类型: interface

    K 歌评分配置。

    • API
    方法描述
    sample_rate音频采样率。仅支持 44100 Hz、48000 Hz。
    mode打分维度
    lyrics_filepath歌词文件路径。打分功能仅支持 KRC 歌词文件。
    midi_filepath歌曲 midi 文件路径。

    sample_rate

    类型: AudioSampleRate

    音频采样率。仅支持 44100 Hz、48000 Hz。

    mode

    类型: MulDimSingScoringMode

    值: 0

    打分维度

    lyrics_filepath

    类型: string

    歌词文件路径。打分功能仅支持 KRC 歌词文件。

    midi_filepath

    类型: string

    歌曲 midi 文件路径。

    AudioSampleRate

    类型: enum

    音频采样率,单位为 HZ。

    • 成员

      属性值描述
      kAudioSampleRateAuto-1默认设置。48000Hz。
      kAudioSampleRate800080008000 Hz 采样率
      kAudioSampleRate160001600016000 Hz 采样率
      kAudioSampleRate320003200032000 Hz 采样率
      kAudioSampleRate441004410044100 Hz 采样率
      kAudioSampleRate480004800048000 Hz 采样率
    StandardPitchInfo

    类型: interface

    标准音高数据

    • API
    方法描述
    start_time开始时间,单位 ms。
    duration持续时间,单位 ms。
    pitch音高。

    start_time

    类型: number

    开始时间,单位 ms。

    duration

    类型: number

    持续时间,单位 ms。

    pitch

    类型: number

    音高。

    VoiceEqualizationConfig

    类型: interface

    语音均衡效果。

    • API
    方法描述
    frequency频带。
    gain频带增益(dB)。取值范围是 [-15, 15]。

    frequency

    类型: VoiceEqualizationBandFrequency

    频带。

    gain

    类型: number

    频带增益(dB)。取值范围是 [-15, 15]。

    VoiceEqualizationBandFrequency

    类型: enum

    音频均衡效果。

    • 成员

      属性值描述
      kVoiceEqualizationBandFrequency310中心频率为 31Hz 的频带。
      kVoiceEqualizationBandFrequency621中心频率为 62Hz 的频带。
      kVoiceEqualizationBandFrequency1252中心频率为 125Hz 的频带。
      kVoiceEqualizationBandFrequency2503中心频率为 250Hz 的频带。
      kVoiceEqualizationBandFrequency5004中心频率为 500Hz 的频带。
      kVoiceEqualizationBandFrequency1k5中心频率为 1kHz 的频带。
      kVoiceEqualizationBandFrequency2k6中心频率为 2kHz 的频带。
      kVoiceEqualizationBandFrequency4k7中心频率为 4kHz 的频带。
      kVoiceEqualizationBandFrequency8k8中心频率为 8kHz 的频带。
      kVoiceEqualizationBandFrequency16k9中心频率为 16kHz 的频带。
    VoiceReverbConfig

    类型: interface

    音频混响效果。

    • API
    方法描述
    room_size混响模拟的房间大小,取值范围 [0.0, 100.0]。默认值为 50.0f。房间越大,混响越强。
    decay_time混响的拖尾长度,取值范围 [0.0, 100.0]。默认值为 50.0f。
    damping混响的衰减阻尼大小,取值范围 [0.0, 100.0]。默认值为 50.0f。
    wet_gain早期反射信号强度。取值范围 [-20.0, 10.0],单位为 dB。默认值为 0.0f。
    dry_gain原始信号强度。取值范围 [-20.0, 10.0],单位为 dB。默认值为 0.0f。
    pre_delay早期反射信号的延迟。取值范围 [0.0, 200.0],单位为 ms。默认值为 0.0f。

    room_size

    类型: number

    混响模拟的房间大小,取值范围 [0.0, 100.0]。默认值为 50.0f。房间越大,混响越强。

    decay_time

    类型: number

    混响的拖尾长度,取值范围 [0.0, 100.0]。默认值为 50.0f。

    damping

    类型: number

    混响的衰减阻尼大小,取值范围 [0.0, 100.0]。默认值为 50.0f。

    wet_gain

    类型: number

    早期反射信号强度。取值范围 [-20.0, 10.0],单位为 dB。默认值为 0.0f。

    dry_gain

    类型: number

    原始信号强度。取值范围 [-20.0, 10.0],单位为 dB。默认值为 0.0f。

    pre_delay

    类型: number

    早期反射信号的延迟。取值范围 [0.0, 200.0],单位为 ms。默认值为 0.0f。

    AudioRecordingConfig

    类型: interface

    录音配置

    • API
    方法描述
    absolute_file_name录制文件路径。一个有读写权限的绝对路径,包含文件名和文件后缀。
    frame_source录音内容来源
    默认为 kAudioFrameSourceMixed = 2。
    sample_rate录音采样率
    channel录音音频声道。
    quality录音音质。仅在录制文件格式为 .aac 时可以设置。

    absolute_file_name

    类型: string

    录制文件路径。一个有读写权限的绝对路径,包含文件名和文件后缀。

    • 注意

      录制文件的格式仅支持 .aac 和 .wav。

    frame_source

    类型: AudioFrameSource

    录音内容来源
    默认为 kAudioFrameSourceMixed = 2。

    sample_rate

    类型: AudioSampleRate

    录音采样率

    channel

    类型: AudioChannel

    录音音频声道。

    • 注意

      如果录制时设置的的音频声道数与采集时的音频声道数不同:

      • 如果采集的声道数为 1,录制的声道数为 2,那么,录制的音频为经过单声道数据拷贝后的双声道数据,而不是立体声。
      • 如果采集的声道数为 2,录制的声道数为 1,那么,录制的音频为经过双声道数据混合后的单声道数据。

    quality

    类型: AudioQuality

    录音音质。仅在录制文件格式为 .aac 时可以设置。

    • 注意

      采样率为 32kHz 时,不同音质录制文件(时长为 10min)的大小分别是:

      • 低音质:1.2MB;
      • 【默认】中音质:2MB;
      • 高音质:3.75MB;
      • 超高音质:7.5MB。
    AudioFrameSource

    类型: enum

    音频文件录制内容来源。

    • 成员

      属性值描述
      kAudioFrameSourceMic0本地麦克风采集的音频数据。
      kAudioFrameSourcePlayback1远端所有用户混音后的数据
      kAudioFrameSourceMixed2本地麦克风和所有远端用户音频流的混音后的数据
    AudioQuality

    类型: enum

    音频质量。

    • 成员

      属性值描述
      kAudioQualityLow0低音质
      kAudioQualityMedium1中音质
      kAudioQualityHigh2高音质
      kAudioQualityUltraHigh3超高音质
    VideoRotation

    类型: enum

    视频旋转信息,枚举类型,定义了以 90 度为间隔的四种旋转模式。

    • 成员

      属性值描述
      kVideoRotation00顺时针旋转 0 度
      kVideoRotation9090顺时针旋转 90 度
      kVideoRotation180180顺时针旋转 180 度
      kVideoRotation270270顺时针旋转 270 度
    ZoomConfigType

    类型: enum

    数码变焦参数类型

    • 成员

      属性值描述
      kZoomFocusOffset0设置缩放系数
      kZoomMoveOffset1设置移动步长
    ZoomDirectionType

    类型: enum

    数码变焦操作类型

    • 成员

      属性值描述
      kCameraMoveLeft0相机向左移动
      kCameraMoveRight1相机向右移动
      kCameraMoveUp2相机向上移动
      kCameraMoveDown3相机向下移动
      kCameraZoomOut4相机缩小焦距
      kCameraZoomIn5相机放大焦距
      kCameraReset6恢复到原始画面
    IMixedStreamConfig

    类型: interface

    转推直播配置参数(新)

    • API
    方法描述
    is_support_client_push_stream本端是否具有推流能力。如果需要开启端云一体转推直播功能,你必须确保你的 App 包含 librtmp,具有推流能力。此时,设置该回调为 true
    默认为 false。
    expected_mix_type设置合流类型。本参数不支持过程中更新。
    room_id媒体流所在的房间 ID。必填。
    user_id媒体流所属的用户 ID
    push_url设置推流 CDN 地址。仅支持 RTMP 协议,Url 必须满足正则 /^rtmps?:\/\//
    audio_config音频参数
    video_config视频参数
    client_mix_config设置客户端合流信息
    layout_regions设置视频流合流整体布局信息。必填。
    background_color背景颜色
    user_config_extra_info设置透传的 App 数据

    is_support_client_push_stream

    类型: boolean

    本端是否具有推流能力。如果需要开启端云一体转推直播功能,你必须确保你的 App 包含 librtmp,具有推流能力。此时,设置该回调为 true
    默认为 false。

    expected_mix_type

    类型: MixedStreamType

    设置合流类型。本参数不支持过程中更新。建议设置。

    room_id

    类型: string

    媒体流所在的房间 ID。建议设置。

    user_id

    类型: string

    媒体流所属的用户 ID。建议设置。

    push_url

    类型: string

    设置推流 CDN 地址。仅支持 RTMP 协议,Url 必须满足正则 /^rtmps?:\/\//。建议设置。

    audio_config

    类型: MixedStreamAudioConfig

    音频参数。建议设置。

    video_config

    类型: MixedStreamVideoConfig

    视频参数。建议设置。

    client_mix_config

    类型: MixedStreamClientMixConfig

    设置客户端合流信息

    layout_regions

    类型: MixedStreamLayoutRegionConfig[]

    设置视频流合流整体布局信息。建议设置。

    background_color

    类型: string

    背景颜色。建议设置。

    user_config_extra_info

    类型: string

    设置透传的 App 数据

    MixedStreamType

    类型: enum

    合流类型(新)

    • 成员

      属性值描述
      kMixedStreamTypeByServer0服务端合流
      kMixedStreamTypeByClient1端云一体合流。SDK 智能决策在客户端或服务端完成合流。
      使用前,请联系技术支持同学开通,否则不生效。
    MixedStreamAudioConfig

    类型: interface

    音频合流配置参数(新)。值不合法或未设置时,自动使用默认值。

    • API
    方法描述
    sample_rate音频采样率,单位 Hz。可取 32000 Hz、44100 Hz、48000 Hz,默认值为 48000 Hz。
    channels音频声道数。可取 1(单声道)、2(双声道),默认值为 2。
    bitrate音频码率,单位 Kbps。可取范围 [32, 192],默认值为 64 Kbps。
    audio_profileAAC 编码规格。默认值为 0。
    audio_codec音频编码格式。默认值为 0。

    sample_rate

    类型: 32000 | 44100 | 48000

    音频采样率,单位 Hz。建议设置。可取 32000 Hz、44100 Hz、48000 Hz,默认值为 48000 Hz。

    channels

    类型: 1 | 2

    音频声道数。建议设置。可取 1(单声道)、2(双声道),默认值为 2。

    bitrate

    类型: number

    音频码率,单位 Kbps。建议设置。可取范围 [32, 192],默认值为 64 Kbps。

    audio_profile

    类型: MixedStreamAudioProfile

    AAC 编码规格。建议设置。默认值为 0。

    audio_codec

    类型: MixedStreamAudioCodecType

    值: 0

    音频编码格式。建议设置。默认值为 0。

    MixedStreamAudioProfile

    类型: enum

    AAC 编码规格(新)。

    • 成员

      属性值描述
      kMixedStreamAudioProfileLC0AAC-LC 规格,默认值。
      kMixedStreamAudioProfileHEv11HE-AAC v1 规格。
      kMixedStreamAudioProfileHEv22HE-AAC v2 规格。
    MixedStreamVideoConfig

    类型: interface

    视频合流配置参数(新)。值不合法或未设置时,自动使用默认值。

    • API
    方法描述
    width合流视频宽度。单位为 px,范围为 [2, 1920],必须是偶数。默认值为 360 px。
    设置值为非偶数时,自动向上取偶数。
    height合流视频高度。单位为 px,范围为 [2, 1920],必须是偶数。默认值为 640 px。
    设置值为非偶数时,自动向上取偶数。
    fps合流视频帧率。单位为 FPS,取值范围为 [1,60],默认值为 15 FPS。
    gop视频 I 帧时间间隔。单位为秒,取值范围为 [1, 5],默认值为 2 秒。
    本参数不支持过程中更新。
    bitrate合流视频码率。单位为 Kbps,取值范围为 [1,10000],默认值为自适应模式。
    video_codec视频编码格式。默认值为 0。
    本参数不支持过程中更新。
    enable_Bframe是否在合流中开启 B 帧,仅服务端合流支持:
    + true: 是
    + false: 否

    width

    类型: number

    合流视频宽度。建议设置。单位为 px,范围为 [2, 1920],必须是偶数。默认值为 360 px。
    设置值为非偶数时,自动向上取偶数。

    height

    类型: number

    合流视频高度。建议设置。单位为 px,范围为 [2, 1920],必须是偶数。默认值为 640 px。
    设置值为非偶数时,自动向上取偶数。

    fps

    类型: number

    合流视频帧率。单位为 FPS,取值范围为 [1,60],默认值为 15 FPS。

    gop

    类型: number

    视频 I 帧时间间隔。建议设置。单位为秒,取值范围为 [1, 5],默认值为 2 秒。
    本参数不支持过程中更新。

    bitrate

    类型: number

    合流视频码率。建议设置。单位为 Kbps,取值范围为 [1,10000],默认值为自适应模式。

    video_codec

    类型: MixedStreamVideoCodecType

    视频编码格式。建议设置。默认值为 0。
    本参数不支持过程中更新。

    enable_Bframe

    类型: boolean

    是否在合流中开启 B 帧,仅服务端合流支持:

    • true: 是
    • false: 否
    MixedStreamVideoCodecType

    类型: enum

    视频编码格式(新)。

    • 成员

      属性值描述
      kMixedStreamVideoCodecTypeH2640H.264 格式,默认值。
      kMixedStreamVideoCodecTypeByteVC11ByteVC1 格式。
    MixedStreamClientMixConfig

    类型: interface

    客户端合流参数(新)。

    • API
    方法描述
    use_audio_mixer客户端合流是否使用混音,默认为 true。
    video_format客户端合流回调视频格式。

    use_audio_mixer

    类型: boolean

    客户端合流是否使用混音,默认为 true。

    video_format

    类型: MixedStreamClientMixVideoFormat

    客户端合流回调视频格式。

    MixedStreamClientMixVideoFormat

    类型: enum

    客户端合流回调视频格式(新)。设置为系统不支持的格式时,自动回调系统默认格式。

    • 成员

      属性值描述
      kMixedStreamClientMixVideoFormatI4200YUV I420。Android、Windows 默认回调格式。支持系统:Android、Windows。
      kMixedStreamClientMixVideoFormatTexture2D1OpenGL GL_TEXTURE_2D 格式纹理。支持系统:安卓。
      kMixedStreamClientMixVideoFormatCVPixelBufferBGRA2CVPixelBuffer BGRA。iOS 默认回调格式。支持系统: iOS。
      kMixedStreamClientMixVideoFormatNV123YUV NV12。macOS 默认回调格式。支持系统: macOS。
    MixedStreamLayoutRegionConfig

    类型: interface

    单个图片或视频流在合流中的布局信息(新)。
    开启合流功能后,在多路图片或视频流合流时,你可以设置其中一路流在合流中的预设布局信息。

    • API
    方法描述
    region_id合流用户的 ID。必填。
    room_id图片或视频流所在房间的房间 ID。必填。
    如果此图片或视频流是通过 startForwardStreamToRooms 转发到你所在房间的媒体流时,你应将房间 ID 设置为你所在的房间 ID。
    location_x视频流对应区域左上角的横坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。默认值为 0.0。
    location_y视频流对应区域左上角的纵坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。默认值为 0.0。
    width_proportion视频流对应区域宽度相对整体画面的归一化比例,取值的范围为 [0.0, 1.0]。默认值为 1.0。
    height_proportion视频流对应区域高度相对整体画面的归一化比例,取值的范围为 [0.0, 1.0]。默认值为 1.0。
    alpha透明度,可选范围为 (0.0, 1.0],0.0 为全透明。默认值为 1.0。
    corner_radius圆角半径相对画布宽度的比例。默认值为 0.0。
    z_order用户视频布局在画布中的层级。取值范围为 [0 - 100],0 为底层,值越大越上层。默认值为 0。
    is_local_user是否为本地用户:
    + true: 是
    + false: 否
    stream_type是否为屏幕流:
    media_type合流内容控制。默认值为 kMediaTypeAudioAndVideo。
    render_mode图片或视频流的缩放模式。默认值为 1。
    region_content_type合流布局区域类型。
    image_water_mark图片合流布局区域类型对应的数据。类型为图片时传入图片 RGBA 数据,当类型为视频流时传空。
    image_water_mark_param合流布局区域数据的对应参数。当类型为视频流时传空,类型为图片时传入对应图片的参数。
    spatial_position空间位置。
    apply_spatial_audio是否开启空间音频

    region_id

    类型: string

    合流用户的 ID。建议设置。

    room_id

    类型: string

    图片或视频流所在房间的房间 ID。建议设置。
    如果此图片或视频流是通过 startForwardStreamToRooms 转发到你所在房间的媒体流时,你应将房间 ID 设置为你所在的房间 ID。

    location_x

    类型: number

    视频流对应区域左上角的横坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。默认值为 0.0。建议设置。

    location_y

    类型: number

    视频流对应区域左上角的纵坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。默认值为 0.0。建议设置。

    width_proportion

    类型: number

    视频流对应区域宽度相对整体画面的归一化比例,取值的范围为 [0.0, 1.0]。默认值为 1.0。建议设置。

    height_proportion

    类型: number

    视频流对应区域高度相对整体画面的归一化比例,取值的范围为 [0.0, 1.0]。默认值为 1.0。建议设置。

    alpha

    类型: number

    透明度,可选范围为 (0.0, 1.0],0.0 为全透明。默认值为 1.0。

    corner_radius

    类型: number

    圆角半径相对画布宽度的比例。默认值为 0.0。

    • 注意

      做范围判定时,首先根据画布的宽高,将 width,height,和 corner_radius 分别转换为像素值:width_px,height_px,和 corner_radius_px。然后判定是否满足 corner_radius_px < min(width_px/2, height_px/2):若满足,则设置成功;若不满足,则将 corner_radius_px 设定为 min(width_px/2, height_px/2),然后将 corner_radius 设定为 corner_radius_px 相对画布宽度的比例值。

    z_order

    类型: number

    用户视频布局在画布中的层级。取值范围为 [0 - 100],0 为底层,值越大越上层。默认值为 0。

    is_local_user

    类型: boolean

    是否为本地用户:

    • true: 是
    • false: 否
      客户端合流时,必须为 true。

    stream_type

    类型: MixedStreamVideoType

    是否为屏幕流:

    media_type

    类型: MixedStreamMediaType

    合流内容控制。默认值为 kMediaTypeAudioAndVideo。

    render_mode

    类型: MixedStreamRenderMode

    图片或视频流的缩放模式。默认值为 1。

    region_content_type

    类型: MixedStreamLayoutRegionType

    合流布局区域类型。

    image_water_mark

    类型: Uint8Array

    图片合流布局区域类型对应的数据。类型为图片时传入图片 RGBA 数据,当类型为视频流时传空。

    image_water_mark_param

    类型: MixedStreamLayoutRegionImageWaterMarkConfig

    合流布局区域数据的对应参数。当类型为视频流时传空,类型为图片时传入对应图片的参数。

    spatial_position

    类型: Position

    空间位置。

    apply_spatial_audio

    类型: boolean

    是否开启空间音频

    MixedStreamVideoType

    类型: enum

    region中流的类型属性

    • 成员

      属性值描述
      kMixedStreamVideoTypeMain0主流。包括:
      + 由摄像头/麦克风通过内部采集机制,采集到的流
      + 通过自定义采集,采集到的流。
      kMixedStreamVideoTypeScreen1屏幕流。
    MixedStreamMediaType

    类型: enum

    合流输出内容类型(新)。

    • 成员

      属性值描述
      kMixedStreamMediaTypeAudioAndVideo0输出的混流包含音频和视频
      kMixedStreamMediaTypeAudioOnly1输出的混流只包含音频
      kMixedStreamMediaTypeVideoOnly2输出的混流只包含视频
    MixedStreamRenderMode

    类型: enum

    图片或视频流的缩放模式(新)。

    • 成员

      属性值描述
      kMixedStreamRenderModeHidden1视窗填满优先,默认值。
      视频尺寸等比缩放,直至视窗被填满。当视频尺寸与显示窗口尺寸不一致时,多出的视频将被截掉。
      kMixedStreamRenderModeFit2视频帧内容全部显示优先。
      视频尺寸等比缩放,优先保证视频内容全部显示。当视频尺寸与显示窗口尺寸不一致时,会把窗口未被填满的区域填充成背景颜色。
      kMixedStreamRenderModeAdaptive3视频帧自适应画布。
      视频尺寸非等比例缩放,把窗口充满。在此过程中,视频帧的长宽比例可能会发生变化。
    MixedStreamLayoutRegionType

    类型: enum

    合流布局区域类型(新)。

    • 成员

      属性值描述
      kMixedStreamLayoutRegionTypeVideoStream0合流布局区域类型为视频。
      kMixedStreamLayoutRegionTypeImage1合流布局区域类型为图片。
    MixedStreamLayoutRegionImageWaterMarkConfig

    类型: interface

    图片合流相关参数(新)。

    • API
    方法描述
    image_width原始图片的宽度,单位为 px。
    image_height原始图片的高度,单位为 px。

    image_width

    类型: number

    原始图片的宽度,单位为 px。

    image_height

    类型: number

    原始图片的高度,单位为 px。

    LocalProxyConfiguration

    类型: interface

    本地代理配置详细信息。

    • API
    方法描述
    local_proxy_type本地代理类型
    local_proxy_ip本地代理服务器 IP。
    local_proxy_port本地代理服务器端口。
    local_proxy_username本地代理用户名。
    local_proxy_password本地代理密码。

    local_proxy_type

    类型: LocalProxyType

    本地代理类型

    local_proxy_ip

    类型: string

    本地代理服务器 IP。

    local_proxy_port

    类型: number

    本地代理服务器端口。

    local_proxy_username

    类型: string

    本地代理用户名。

    local_proxy_password

    类型: string

    本地代理密码。

    LocalProxyType

    类型: enum

    本地代理的类型。

    • 成员

      属性值描述
      kLocalProxyTypeSocks51Socks5 代理。选用此代理服务器,需满足 Socks5 协议标准文档的要求。
      kLocalProxyTypeHttpTunnel2Http 隧道代理。
    EarMonitorMode

    类型: enum

    是否开启耳返功能

    • 成员

      属性值描述
      kEarMonitorModeOff0不开启
      kEarMonitorModeOn1开启
    AudioFrameCallbackMethod

    类型: enum

    音频回调方法

    • 成员

      属性值描述
      kAudioFrameCallbackRecord0本地麦克风录制的音频数据回调 onRecordAudioFrame
      kAudioFrameCallbackPlayback1订阅的远端所有用户混音后的音频数据回调 onPlaybackAudioFrame
      kAudioFrameCallbackMixed2本地麦克风录制和订阅的远端所有用户混音后的音频数据回调 onMixedAudioFrame
      kAudioFrameCallbackRemoteUser3订阅的远端每个用户混音前的音频数据回调 onRemoteUserAudioFrame
      kAudioFrameCallbackRecordScreen4本地屏幕录制的音频数据回调 onRecordScreenAudioFrame
    AudioFormat

    类型: interface

    音频格式

    • API
    方法描述
    sample_rate音频采样率
    channel音频声道
    samples_per_call单次回调的音频帧中包含的采样点数。默认值为 0,此时,采样点数取最小值。
    最小值为回调间隔是 0.01s 时的值,即 sampleRate * channel * 0.01s。
    最大值是 2048。超出取值范围时,采样点数取默认值。

    sample_rate

    类型: AudioSampleRate

    音频采样率

    channel

    类型: AudioChannel

    音频声道

    samples_per_call

    类型: number

    单次回调的音频帧中包含的采样点数。默认值为 0,此时,采样点数取最小值。
    最小值为回调间隔是 0.01s 时的值,即 sampleRate * channel * 0.01s。
    最大值是 2048。超出取值范围时,采样点数取默认值。
    该参数仅在设置读写回调时生效,调用 enableAudioFrameCallback 开启只读模式回调时设置该参数不生效。

    AudioAlignmentMode

    类型: enum

    远端音频流精准对齐模式

    • 成员

      属性值描述
      kAudioAlighmentModeOff0不对齐
      kAudioAlighmentModeAudioMixing1远端音频流都对齐伴奏进度同步播放
    LogConfig

    类型: interface

    本地日志参数。

    • API
    方法描述
    log_path日志存储路径,必填。
    log_level日志等级,默认为警告级别,选填。

    log_path

    类型: string

    日志存储路径,必填。

    log_level

    类型: LocalLogLevel

    日志等级,默认为警告级别,选填。

    LocalLogLevel

    类型: enum

    本地日志输出等级。

    • 成员

      属性值描述
      kInfo0信息级别。
      kWarning1(默认值)警告级别。
      kError2错误级别。
      kNone3关闭日志。
    RenderType

    类型: enum

    渲染类型

    • 成员

      属性值描述
      kRenderTypeWebGL1WebGL渲染。
      kRenderTypeSoftware2Software渲染。
    RtcRoomStats

    类型: interface

    通话相关的统计信息

    • API
    方法描述
    txLostrate当前应用的上行丢包率,取值范围为 [0, 1]。
    rxLostrate当前应用的下行丢包率,取值范围为 [0, 1]。
    rtt客户端到服务端数据传输的往返时延(单位 ms)
    duration进房到退房之间累计时长,单位为 s
    tx_bytes本地用户的总发送字节数 (bytes),累计值
    rx_bytes本地用户的总接收字节数 (bytes),累计值
    tx_kbitrate发送码率 (kbps),获取该数据时的瞬时值
    rx_kbitrate接收码率 (kbps),获取该数据时的瞬时值
    rx_audio_kbitrate音频接收码率 (kbps),获取该数据时的瞬时值
    tx_audio_kbitrate音频发送码率 (kbps),获取该数据时的瞬时值
    rx_video_kbitrate视频接收码率 (kbps),获取该数据时的瞬时值
    tx_video_kbitrate视频发送码率 (kbps),获取该数据时的瞬时值
    rx_screen_kbitrate屏幕接收码率,获取该数据时的瞬时值,单位为 Kbps
    tx_screen_kbitrate屏幕发送码率,获取该数据时的瞬时值,单位为 Kbps
    user_count当前房间内的用户人数
    tx_cellular_kbitrate蜂窝路径发送的码率 (kbps),获取该数据时的瞬时值
    rx_cellular_kbitrate蜂窝路径接收码率 (kbps),获取该数据时的瞬时值

    txLostrate

    类型: number

    当前应用的上行丢包率,取值范围为 [0, 1]。

    rxLostrate

    类型: number

    当前应用的下行丢包率,取值范围为 [0, 1]。

    rtt

    类型: number

    客户端到服务端数据传输的往返时延(单位 ms)

    duration

    类型: number

    进房到退房之间累计时长,单位为 s

    tx_bytes

    类型: number

    本地用户的总发送字节数 (bytes),累计值

    rx_bytes

    类型: number

    本地用户的总接收字节数 (bytes),累计值

    tx_kbitrate

    类型: number

    发送码率 (kbps),获取该数据时的瞬时值

    rx_kbitrate

    类型: number

    接收码率 (kbps),获取该数据时的瞬时值

    rx_audio_kbitrate

    类型: number

    音频接收码率 (kbps),获取该数据时的瞬时值

    tx_audio_kbitrate

    类型: number

    音频发送码率 (kbps),获取该数据时的瞬时值

    rx_video_kbitrate

    类型: number

    视频接收码率 (kbps),获取该数据时的瞬时值

    tx_video_kbitrate

    类型: number

    视频发送码率 (kbps),获取该数据时的瞬时值

    rx_screen_kbitrate

    类型: number

    屏幕接收码率,获取该数据时的瞬时值,单位为 Kbps

    tx_screen_kbitrate

    类型: number

    屏幕发送码率,获取该数据时的瞬时值,单位为 Kbps

    user_count

    类型: number

    当前房间内的用户人数

    tx_cellular_kbitrate

    类型: number

    蜂窝路径发送的码率 (kbps),获取该数据时的瞬时值

    rx_cellular_kbitrate

    类型: number

    蜂窝路径接收码率 (kbps),获取该数据时的瞬时值

    UserOfflineReasonType

    类型: enum

    用户离线原因。
    房间内的远端用户离开房间时,本端用户会收到 onUserLeave 回调通知,此枚举类型为回调的用户离线原因。

    • 成员

      属性值描述
      kUserOfflineReasonQuit0远端用户调用 leaveRoom 方法退出房间。
      kUserOfflineReasonDropped1远端用户因网络等原因掉线。
      kUserOfflineReasonSwitchToInvisible2远端用户切换至隐身状态。
      kUserOfflineReasonKickedByAdmin3远端用户被踢出出房间。
      因调用踢出用户的 OpenAPI,远端用户被踢出房间。
    AVSyncState

    类型: enum

    音视频同步状态

    • 成员

      属性值描述
      kAVSyncStateAVStreamSyncBegin0音视频开始同步
      kAVSyncStateAudioStreamRemove1音视频同步过程中音频移除,但不影响当前的同步关系
      kAVSyncStateVdieoStreamRemove2音视频同步过程中视频移除,但不影响当前的同步关系
    LocalStreamStats

    类型: interface

    本地音/视频流统计信息,统计周期为 2s 。
    本地用户发布音/视频流成功后,SDK 会周期性地通过 onLocalStreamStats 通知本地用户发布的音/视频流在此次统计周期内的发送状况。此数据结构即为回调给用户的参数类型。

    • API
    方法描述
    audio_stats本地设备发送音频流的统计信息
    video_stats本地设备发送视频流的统计信息
    is_screen所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。

    audio_stats

    类型: LocalAudioStats

    本地设备发送音频流的统计信息

    video_stats

    类型: LocalVideoStats

    本地设备发送视频流的统计信息

    is_screen

    类型: boolean

    所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。

    LocalAudioStats

    类型: interface

    本地音频流统计信息,统计周期为 2s 。 本地用户发布音频流成功后,SDK 会周期性地通过 onLocalStreamStats 通知用户发布的音频流在此次统计周期内的发送状况。此数据结构即为回调给用户的参数类型。

    • API
    方法描述
    audio_loss_rate音频丢包率。此次统计周期内的音频上行丢包率,单位为 % ,取值范围为 [0, 1]。
    send_kbitrate发送码率。此次统计周期内的音频发送码率,单位为 kbps 。
    record_sample_rate采集采样率。此次统计周期内的音频采集采样率信息,单位为 Hz 。
    stats_interval统计间隔。此次统计周期的间隔,单位为 ms 。
    此字段用于设置回调的统计周期,默认设置为 2s 。
    rtt往返时延。单位为 ms 。
    num_channels音频声道数。
    sent_sample_rate音频发送采样率。此次统计周期内的音频发送采样率信息,单位为 Hz 。
    jitter音频上行网络抖动,单位为 ms 。

    audio_loss_rate

    类型: number

    音频丢包率。此次统计周期内的音频上行丢包率,单位为 % ,取值范围为 [0, 1]。

    send_kbitrate

    类型: number

    发送码率。此次统计周期内的音频发送码率,单位为 kbps 。

    record_sample_rate

    类型: number

    采集采样率。此次统计周期内的音频采集采样率信息,单位为 Hz 。

    stats_interval

    类型: number

    统计间隔。此次统计周期的间隔,单位为 ms 。
    此字段用于设置回调的统计周期,默认设置为 2s 。

    rtt

    类型: number

    往返时延。单位为 ms 。

    num_channels

    类型: number

    音频声道数。

    sent_sample_rate

    类型: number

    音频发送采样率。此次统计周期内的音频发送采样率信息,单位为 Hz 。

    jitter

    类型: number

    音频上行网络抖动,单位为 ms 。

    LocalVideoStats

    类型: interface

    本地视频流统计信息,统计周期为 2s 。
    本地用户发布视频流成功后,SDK 会周期性地通过 onLocalStreamStats 通知用户发布的视频流在此次统计周期内的发送状况。此数据结构即为回调给用户的参数类型。

    • API
    方法描述
    sent_kbitrate发送码率。此次统计周期内的视频发送码率,单位为 kbps 。
    input_frame_rate采集帧率。此次统计周期内的视频采集帧率,单位为 fps 。
    sent_frame_rate发送帧率。此次统计周期内的视频发送帧率,单位为 fps 。
    encoder_output_frame_rate编码器输出帧率。当前编码器在此次统计周期内的输出帧率,单位为 fps 。
    renderer_output_frame_rate本地渲染帧率。此次统计周期内的本地视频渲染帧率,单位为 fps 。
    stats_interval统计间隔。此次统计周期的间隔,单位为 ms 。
    此字段用于设置回调的统计周期,默认设置为 2s 。
    video_loss_rate视频丢包率。此次统计周期内的视频上行丢包率,取值范围为 [0,1] 。
    rtt往返时延,单位为 ms 。
    encoded_bitrate视频编码码率。此次统计周期内的视频编码码率,单位为 kbps 。
    encoded_frame_width实际发送的分辨率最大的视频流的视频编码宽度,单位为 px 。
    encoded_frame_height实际发送的分辨率最大的视频流的视频编码高度,单位为 px 。
    encoded_frame_count此次统计周期内实际发送的分辨率最大的视频流的发送的视频帧总数。
    codec_type视频的编码类型
    is_screen所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。
    jitter视频上行网络抖动,单位为 ms 。
    codec_elapse_per_frame视频编码平均耗时,单位ms。

    sent_kbitrate

    类型: number

    发送码率。此次统计周期内的视频发送码率,单位为 kbps 。

    input_frame_rate

    类型: number

    采集帧率。此次统计周期内的视频采集帧率,单位为 fps 。

    sent_frame_rate

    类型: number

    发送帧率。此次统计周期内的视频发送帧率,单位为 fps 。

    encoder_output_frame_rate

    类型: number

    编码器输出帧率。当前编码器在此次统计周期内的输出帧率,单位为 fps 。

    renderer_output_frame_rate

    类型: number

    本地渲染帧率。此次统计周期内的本地视频渲染帧率,单位为 fps 。

    stats_interval

    类型: number

    统计间隔。此次统计周期的间隔,单位为 ms 。
    此字段用于设置回调的统计周期,默认设置为 2s 。

    video_loss_rate

    类型: number

    视频丢包率。此次统计周期内的视频上行丢包率,取值范围为 [0,1] 。

    rtt

    类型: number

    往返时延,单位为 ms 。

    encoded_bitrate

    类型: number

    视频编码码率。此次统计周期内的视频编码码率,单位为 kbps 。

    encoded_frame_width

    类型: number

    实际发送的分辨率最大的视频流的视频编码宽度,单位为 px 。

    encoded_frame_height

    类型: number

    实际发送的分辨率最大的视频流的视频编码高度,单位为 px 。

    encoded_frame_count

    类型: number

    此次统计周期内实际发送的分辨率最大的视频流的发送的视频帧总数。

    codec_type

    类型: VideoCodecType

    视频的编码类型

    is_screen

    类型: boolean

    所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。

    jitter

    类型: number

    视频上行网络抖动,单位为 ms 。

    codec_elapse_per_frame

    类型: number

    视频编码平均耗时,单位ms。

    VideoCodecType

    类型: enum

    视频的编码类型

    • 成员

      属性值描述
      kVideoCodecUnknown0未知类型
      kVideoCodecH2641标准H264
    RemoteStreamStats

    类型: interface

    用户订阅的远端音/视频流统计信息以及网络状况,统计周期为 2s 。
    订阅远端用户发布音/视频流成功后,SDK 会周期性地通过 onRemoteStreamStats
    通知本地用户订阅的远端音/视频流在此次统计周期内的接收状况。此数据结构即为回调给本地用户的参数类型。

    • API
    方法描述
    uid用户 ID 。音频来源的远端用户 ID 。
    audio_stats远端音频流的统计信息
    video_stats远端视频流的统计信息
    is_screen所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。

    uid

    类型: string

    用户 ID 。音频来源的远端用户 ID 。

    audio_stats

    类型: RemoteAudioStats

    远端音频流的统计信息

    video_stats

    类型: RemoteVideoStats

    远端视频流的统计信息

    is_screen

    类型: boolean

    所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。

    RemoteAudioStats

    类型: interface

    远端音频流统计信息,统计周期为 2s。
    本地用户订阅远端音频流成功后,SDK 会周期性地通过 onRemoteStreamStats 通知本地用户订阅的音频流在此次统计周期内的接收状况。此数据结构即为回调给本地用户的参数类型。

    • API
    方法描述
    audio_loss_rate音频丢包率。统计周期内的音频下行丢包率,取值范围为 [0, 1] 。
    received_kbitrate接收码率。统计周期内的音频接收码率,单位为 kbps 。
    stall_count音频卡顿次数。统计周期内的卡顿次数。
    stall_duration音频卡顿时长。统计周期内的卡顿时长,单位为 ms 。
    e2e_delay用户体验级别的端到端延时。从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为 ms 。
    playout_sample_rate播放采样率。统计周期内的音频播放采样率信息,单位为 Hz 。
    stats_interval统计间隔。此次统计周期的间隔,单位为 ms 。
    rtt客户端到服务端数据传输的往返时延,单位为 ms。
    total_rtt发送端——服务端——接收端全链路数据传输往返时延。单位为 ms 。
    quality远端用户发送的音频流质量。
    + 0: 网络质量未知。
    + 1: 网络质量极好。
    + 2: 主观感觉和 kNetworkQualityExcellent 差不多,但码率可能略低。
    + 3: 主观感受有瑕疵但不影响沟通。
    + 4: 勉强能沟通但不顺畅。
    + 5: 网络质量非常差,基本不能沟通。
    jitter_buffer_delay因引入 jitter buffer 机制导致的延时。单位为 ms 。
    num_channels音频声道数。
    received_sample_rate音频接收采样率。统计周期内接收到的远端音频采样率信息,单位为 Hz 。
    frozen_rate远端用户在加入房间后发生音频卡顿的累计时长占音频总有效时长的百分比。音频有效时长是指远端用户进房发布音频流后,除停止发送音频流和禁用音频模块之外的音频时长。
    concealed_samples音频 PLC 样点总个数。
    concealment_eventPLC 累计次数。
    dec_sample_rate音频解码采样率。统计周期内的音频解码采样率信息,单位为 Hz 。
    dec_duration解码时长。对此次统计周期内接收的远端音频流进行解码的总耗时,单位为 s 。
    jitter音频下行网络抖动,单位为 ms 。

    audio_loss_rate

    类型: number

    音频丢包率。统计周期内的音频下行丢包率,取值范围为 [0, 1] 。

    received_kbitrate

    类型: number

    接收码率。统计周期内的音频接收码率,单位为 kbps 。

    stall_count

    类型: number

    音频卡顿次数。统计周期内的卡顿次数。

    stall_duration

    类型: number

    音频卡顿时长。统计周期内的卡顿时长,单位为 ms 。

    e2e_delay

    类型: number

    用户体验级别的端到端延时。从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为 ms 。

    playout_sample_rate

    类型: number

    播放采样率。统计周期内的音频播放采样率信息,单位为 Hz 。

    stats_interval

    类型: number

    统计间隔。此次统计周期的间隔,单位为 ms 。

    rtt

    类型: number

    客户端到服务端数据传输的往返时延,单位为 ms。

    total_rtt

    类型: number

    发送端——服务端——接收端全链路数据传输往返时延。单位为 ms 。

    quality

    类型: number

    远端用户发送的音频流质量。

    • 0: 网络质量未知。
    • 1: 网络质量极好。
    • 2: 主观感觉和 kNetworkQualityExcellent 差不多,但码率可能略低。
    • 3: 主观感受有瑕疵但不影响沟通。
    • 4: 勉强能沟通但不顺畅。
    • 5: 网络质量非常差,基本不能沟通。

    jitter_buffer_delay

    类型: number

    因引入 jitter buffer 机制导致的延时。单位为 ms 。

    num_channels

    类型: number

    音频声道数。

    received_sample_rate

    类型: number

    音频接收采样率。统计周期内接收到的远端音频采样率信息,单位为 Hz 。

    frozen_rate

    类型: number

    远端用户在加入房间后发生音频卡顿的累计时长占音频总有效时长的百分比。音频有效时长是指远端用户进房发布音频流后,除停止发送音频流和禁用音频模块之外的音频时长。

    concealed_samples

    类型: number

    音频 PLC 样点总个数。

    concealment_event

    类型: number

    PLC 累计次数。

    dec_sample_rate

    类型: number

    音频解码采样率。统计周期内的音频解码采样率信息,单位为 Hz 。

    dec_duration

    类型: number

    解码时长。对此次统计周期内接收的远端音频流进行解码的总耗时,单位为 s 。

    jitter

    类型: number

    音频下行网络抖动,单位为 ms 。

    RemoteVideoStats

    类型: interface

    远端音频流统计信息,统计周期为 2s 。
    本地用户订阅远端音频流成功后,SDK 会周期性地通过 onRemoteStreamStats
    通知本地用户订阅的远端视频流在此次统计周期内的接收状况。此数据结构即为回调给本地用户的参数类型。

    • API
    方法描述
    width视频宽度
    height视频高度
    video_loss_rate视频丢包率。统计周期内的视频下行丢包率,单位为 % ,取值范围:[0,1] 。
    received_kbitrate接收码率。统计周期内的视频接收码率,单位为 kbps 。
    decoder_output_frame_rate解码器输出帧率。统计周期内的视频解码器输出帧率,单位 fps 。
    renderer_output_frame_rate渲染帧率。统计周期内的视频渲染帧率,单位 fps 。
    stall_count卡顿次数。统计周期内的卡顿次数。
    stall_duration卡顿时长。统计周期内的视频卡顿总时长。单位 ms 。
    e2eDelay用户体验级别的端到端延时。从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为 ms 。
    is_screen所属用户的媒体流是否为屏幕流。你可以知道当前数据来自主流还是屏幕流。
    stats_interval统计间隔,此次统计周期的间隔,单位为 ms 。
    rtt往返时延,单位为 ms 。
    frozen_rate远端用户在进房后发生视频卡顿的累计时长占视频总有效时长的百分比(%)。视频有效时长是指远端用户进房发布视频流后,除停止发送视频流和禁用视频模块之外的视频时长。
    codec_type视频的编码类型
    video_index对应多种分辨率的流的下标
    jitter视频下行网络抖动,单位为 ms 。
    codec_elapse_per_frame视频解码平均耗时,单位ms。

    width

    类型: number

    视频宽度

    height

    类型: number

    视频高度

    video_loss_rate

    类型: number

    视频丢包率。统计周期内的视频下行丢包率,单位为 % ,取值范围:[0,1] 。

    received_kbitrate

    类型: number

    接收码率。统计周期内的视频接收码率,单位为 kbps 。

    decoder_output_frame_rate

    类型: number

    解码器输出帧率。统计周期内的视频解码器输出帧率,单位 fps 。

    renderer_output_frame_rate

    类型: number

    渲染帧率。统计周期内的视频渲染帧率,单位 fps 。

    stall_count

    类型: number

    卡顿次数。统计周期内的卡顿次数。

    stall_duration

    类型: number

    卡顿时长。统计周期内的视频卡顿总时长。单位 ms 。

    e2eDelay

    类型: number

    用户体验级别的端到端延时。从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为 ms 。

    is_screen

    类型: number

    所属用户的媒体流是否为屏幕流。你可以知道当前数据来自主流还是屏幕流。

    stats_interval

    类型: number

    统计间隔,此次统计周期的间隔,单位为 ms 。

    • 注意

      此字段用于设置回调的统计周期,目前设置为 2s 。

    rtt

    类型: number

    往返时延,单位为 ms 。

    frozen_rate

    类型: number

    远端用户在进房后发生视频卡顿的累计时长占视频总有效时长的百分比(%)。视频有效时长是指远端用户进房发布视频流后,除停止发送视频流和禁用视频模块之外的视频时长。

    codec_type

    类型: VideoCodecType

    视频的编码类型

    video_index

    类型: number

    对应多种分辨率的流的下标

    jitter

    类型: number

    视频下行网络抖动,单位为 ms 。

    codec_elapse_per_frame

    类型: number

    视频解码平均耗时,单位ms。

    StreamRemoveReason

    类型: enum

    房间内远端流被移除的原因。

    • 成员

      属性值描述
      kStreamRemoveReasonUnpublish0远端用户停止发布流。
      kStreamRemoveReasonPublishFailed1远端用户发布流失败。
      kStreamRemoveReasonKeepLiveFailed2保活失败。
      kStreamRemoveReasonClientDisconnected3远端用户断网。
      kStreamRemoveReasonRepublish4远端用户重新发布流。
      kStreamRemoveReasonOther5其他原因。
    SubscribeState

    类型: enum

    订阅媒体流状态

    • 成员

      属性值描述
      kSubscribeStateSuccess0订阅/取消订阅流成功
      kSubscribeStateFailedNotInRoom1订阅/取消订阅流失败,本地用户未在房间中
      kSubscribeStateFailedStreamNotFound2订阅/取消订阅流失败,房间内未找到指定的音视频流
      kSubscribeStateFailedOverLimit3超过订阅流数上限
    SubscribeConfig

    类型: interface

    手动订阅流的配置信息。

    • API
    方法描述
    is_screen是否是屏幕流,默认为否。
    sub_video是否订阅视频。
    sub_audio是否订阅音频。
    video_index订阅的视频流分辨率下标。
    用户可以通过调用 setVideoEncoderConfig 方法在一路流中发布多个不同分辨率的视频。因此订阅流时,需要指定订阅的具体分辨率。此参数即用于指定需订阅的分辨率的下标,默认值为 0 。
    priority远端用户的需求优先级,0 为默认值。
    + 0: 默认,用户优先级为低
    + 100: 用户优先级为正常
    + 200: 用户优先级为高
    当开启了订阅流回退选项功能(详见 setSubscribeFallbackOption 方法),弱网或性能不足时会优先保证收到的高优先级用户的流的质量。
    svc_layer远端用户的时域分层,0 为默认值。
    仅码流支持 SVC 特性时可以生效。
    framerate期望订阅的最高帧率,单位:fps,默认值为 0,设为大于 0 的值时开始生效。
    当发布端帧率低于设定帧率,或订阅端开启性能回退后下行弱网,则帧率会相应下降。
    仅码流支持 SVC 分级编码特性时方可生效。
    sub_width用户通过指定 UI 对应的最合适的流的宽度,单位:px
    sub_height用户通过指定 UI 对应的最合适的流的高度,单位:px

    is_screen

    类型: boolean

    是否是屏幕流,默认为否。

    sub_video

    类型: boolean

    是否订阅视频。

    sub_audio

    类型: boolean

    是否订阅音频。

    video_index

    类型: number

    订阅的视频流分辨率下标。
    用户可以通过调用 setVideoEncoderConfig 方法在一路流中发布多个不同分辨率的视频。因此订阅流时,需要指定订阅的具体分辨率。此参数即用于指定需订阅的分辨率的下标,默认值为 0 。

    priority

    类型: number

    远端用户的需求优先级,0 为默认值。

    • 0: 默认,用户优先级为低
    • 100: 用户优先级为正常
    • 200: 用户优先级为高
      当开启了订阅流回退选项功能(详见 setSubscribeFallbackOption 方法),弱网或性能不足时会优先保证收到的高优先级用户的流的质量。

    svc_layer

    类型: number

    远端用户的时域分层,0 为默认值。
    仅码流支持 SVC 特性时可以生效。

    framerate

    类型: number

    期望订阅的最高帧率,单位:fps,默认值为 0,设为大于 0 的值时开始生效。
    当发布端帧率低于设定帧率,或订阅端开启性能回退后下行弱网,则帧率会相应下降。
    仅码流支持 SVC 分级编码特性时方可生效。

    sub_width

    类型: number

    用户通过指定 UI 对应的最合适的流的宽度,单位:px

    sub_height

    类型: number

    用户通过指定 UI 对应的最合适的流的高度,单位:px

    ForwardStreamStateInfo

    类型: interface

    跨房间转发媒体流过程中的不同目标房间的状态和错误信息

    • API
    方法描述
    room_id跨房间转发媒体流过程中目标房间 ID
    空字符串代表所有目标房间
    state跨房间转发媒体流过程中该目标房间的状态、
    error跨房间转发媒体流过程中该目标房间抛出的错误码

    room_id

    类型: string

    跨房间转发媒体流过程中目标房间 ID
    空字符串代表所有目标房间

    state

    类型: ForwardStreamState

    跨房间转发媒体流过程中该目标房间的状态、

    error

    类型: ForwardStreamError

    跨房间转发媒体流过程中该目标房间抛出的错误码

    ForwardStreamState

    类型: enum

    跨房间转发媒体流过程中的不同目标房间的状态和错误信息

    • 成员

      属性值描述
      kForwardStreamStateIdle0空闲状态
      + 成功调用 stopForwardStreamToRooms 后,所有目标房间为空闲状态。
      + 成功调用 updateForwardStreamToRooms 减少目标房间后,本次减少的目标房间为空闲状态。
      kForwardStreamStateSuccess1开始转发
      + 调用 startForwardStreamToRooms 成功向所有房间开始转发媒体流后,返回此状态。
      + 调用 updateForwardStreamToRooms 后,成功向新增目标房间开始转发媒体流后,返回此状态。
      kForwardStreamStateFailure2转发失败,失败详情参考 ForwardStreamError
      调用 startForwardStreamToRooms 或 updateForwardStreamToRooms 后,如遇转发失败,返回此状态。
    ForwardStreamEventInfo

    类型: interface

    跨房间转发媒体流过程中的不同目标房间发生的事件

    • API
    方法描述
    room_id跨房间转发媒体流过程中的发生该事件的目标房间 ID
    空字符串代表所有目标房间
    event跨房间转发媒体流过程中该目标房间发生的事件

    room_id

    类型: string

    跨房间转发媒体流过程中的发生该事件的目标房间 ID
    空字符串代表所有目标房间

    event

    类型: ForwardStreamEvent

    跨房间转发媒体流过程中该目标房间发生的事件

    ForwardStreamEvent

    类型: enum

    媒体流跨房间转发事件

    • 成员

      属性值描述
      kForwardStreamEventDisconnected0本端与服务器网络连接断开,暂停转发。
      kForwardStreamEventConnected1本端与服务器网络连接恢复,转发服务连接成功。
      kForwardStreamEventInterrupt2转发中断。转发过程中,如果相同 user_id 的用户进入目标房间,转发中断。
      kForwardStreamEventDstRoomUpdated3目标房间已更新,由 updateForwardStreamToRooms 触发。
      kForwardStreamEventUnExpectAPICall4API 调用时序错误。例如,在调用 startForwardStreamToRooms 之前调用 updateForwardStreamToRooms 。
    NetworkQualityStats

    类型: interface

    上行/下行网络质量

    • API
    方法描述
    uid用户 id
    fraction_lost本端的上行/下行的丢包率,范围 [0.0,1.0]
    当 uid 为本地用户时,代表发布流的上行丢包率。
    当 uid 为远端用户时,代表接收所有订阅流的下行丢包率。
    rtt当 uid 为本地用户时有效,客户端到服务端的往返延时(RTT),单位:ms
    rx_quality下行网络质量分。范围 [0,5],分数越高网络质量越差。
    total_bandwidth本端的音视频 RTP 包 2 秒内的平均传输速率,单位:bps
    当 uid 为本地用户时,代表发送速率。
    当 uid 为远端用户时,代表所有订阅流的接收速率。
    tx_quality上行网络质量分。范围 [0,5],分数越高网络质量越差。

    uid

    类型: string

    用户 id

    fraction_lost

    类型: number

    本端的上行/下行的丢包率,范围 [0.0,1.0]
    当 uid 为本地用户时,代表发布流的上行丢包率。
    当 uid 为远端用户时,代表接收所有订阅流的下行丢包率。

    rtt

    类型: number

    当 uid 为本地用户时有效,客户端到服务端的往返延时(RTT),单位:ms

    rx_quality

    类型: NetworkQuality

    下行网络质量分。范围 [0,5],分数越高网络质量越差。

    total_bandwidth

    类型: number

    本端的音视频 RTP 包 2 秒内的平均传输速率,单位:bps
    当 uid 为本地用户时,代表发送速率。
    当 uid 为远端用户时,代表所有订阅流的接收速率。

    tx_quality

    类型: NetworkQuality

    上行网络质量分。范围 [0,5],分数越高网络质量越差。

    NetworkQuality

    类型: enum

    媒体流网络质量。

    • 成员

      属性值描述
      kNetworkQualityUnknown0网络质量未知。
      kNetworkQualityExcellent1网络质量极好。
      kNetworkQualityGood2主观感觉和 kNetworkQualityExcellent 差不多,但码率可能略低。
      kNetworkQualityPoor3主观感受有瑕疵但不影响沟通。
      kNetworkQualityBad4勉强能沟通但不顺畅。
      kNetworkQualityVbad5网络质量非常差,基本不能沟通。
    SetRoomExtraInfoResult

    类型: enum

    设置房间附加消息结果。

    • 成员

      属性值描述
      kSetRoomExtraInfoSuccess0设置房间附加信息成功
      kSetRoomExtraInfoErrorNotJoinRoom-1设置失败,尚未加入房间
      kSetRoomExtraInfoErrorKeyIsNull-2设置失败,key 指针为空
      kSetRoomExtraInfoErrorValueIsNull-3设置失败,value 指针为空
      kSetRoomExtraInfoResultUnknow-99设置失败,未知错误
      kSetRoomExtraInfoErrorKeyIsEmpty-400设置失败,key 长度为 0
      kSetRoomExtraInfoErrorTooOften-406调用 setRoomExtraInfo 过于频繁,建议不超过 10 次/秒。
      kSetRoomExtraInfoErrorSilentUser-412设置失败,用户已调用 setUserVisibility 将自身设为隐身状态。
      kSetRoomExtraInfoErrorKeyTooLong-413设置失败,Key 长度超过 10 字节
      kSetRoomExtraInfoErrorValueTooLong-414设置失败,value 长度超过 128 字节
      kSetRoomExtraInfoErrorServer-500设置失败,服务器错误
    SubtitleState

    类型: enum

    字幕任务状态。

    • 成员

      属性值描述
      kSubtitleStateStarted0开启字幕。
      kSubtitleStateStoped1关闭字幕。
      kSubtitleStateError2字幕任务出现错误。
    SubtitleMessage

    类型: interface

    字幕具体内容。

    • API
    方法描述
    user_id说话者的用户ID。
    text语音识别或翻译后的文本, 采用 UTF-8 编码。
    sequence语音识别或翻译后形成的文本的序列号,同一发言人的完整发言和不完整发言会按递增顺序单独分别编号。
    definite语音识别出的文本是否为一段完整的一句话。 true 代表是, false 代表不是。

    user_id

    类型: string

    说话者的用户ID。

    text

    类型: string

    语音识别或翻译后的文本, 采用 UTF-8 编码。

    sequence

    类型: number

    语音识别或翻译后形成的文本的序列号,同一发言人的完整发言和不完整发言会按递增顺序单独分别编号。

    definite

    类型: boolean

    语音识别出的文本是否为一段完整的一句话。 true 代表是, false 代表不是。

    MusicInfo

    类型: interface

    歌曲数据。

    • API
    方法描述
    music_id音乐 ID。
    music_name音乐名称。
    singer歌手。
    vendor_id版权商 ID。
    vendor_name版权商名称。
    update_timestamp最新更新时间戳,单位为毫秒。
    poster_url封面地址。
    lyric_status歌词格式类型。
    duration歌曲长度,单位为毫秒。
    enable_score歌曲是否支持打分。
    climax_start_time歌曲高潮片段开始时间,单位为毫秒。
    climax_stop_time歌曲高潮片段停止时间,单位为毫秒。

    music_id

    类型: string

    音乐 ID。

    music_name

    类型: string

    音乐名称。

    singer

    类型: string

    歌手。

    vendor_id

    类型: string

    版权商 ID。

    vendor_name

    类型: string

    版权商名称。

    update_timestamp

    类型: number

    最新更新时间戳,单位为毫秒。

    poster_url

    类型: string

    封面地址。

    lyric_status

    类型: LyricStatus

    歌词格式类型。

    duration

    类型: number

    歌曲长度,单位为毫秒。

    enable_score

    类型: boolean

    歌曲是否支持打分。

    climax_start_time

    类型: number

    歌曲高潮片段开始时间,单位为毫秒。

    climax_stop_time

    类型: number

    歌曲高潮片段停止时间,单位为毫秒。

    LyricStatus

    类型: enum

    歌词格式类型。

    • 成员

      属性值描述
      kNone0无歌词。
      kKRC1KRC 歌词。
      kLRC2LRC 歌词。
      kKRCAndLRC3KRC 歌词和 LRC 歌词均有。
    HotMusicInfo

    类型: interface

    热榜歌曲数据。

    • API
    方法描述
    hot_type热榜类别。多个热榜类别可以按位或组合。
    hot_name热榜名称。
    musics歌曲数据。

    hot_type

    类型: MusicHotType

    热榜类别。多个热榜类别可以按位或组合。

    hot_name

    类型: string

    热榜名称。

    musics

    类型: MusicInfo[]

    歌曲数据。

    MusicHotType

    类型: enum

    热榜类别。

    • 成员

      属性值描述
      kMusicHotTypeContentCenter火山内容中心热歌榜。
      kMusicHotTypeProject项目热歌榜。
    DownloadResult

    类型: interface

    歌曲下载信息。

    • API
    方法描述
    local_file_path文件存放路径。
    music_id音乐 ID。
    type下载文件类型。

    local_file_path

    类型: string

    文件存放路径。

    music_id

    类型: string

    音乐 ID。

    type

    类型: DownloadFileType

    下载文件类型。

    DownloadFileType

    类型: enum

    下载文件类型。

    • 成员

      属性值描述
      kDownloadFileTypeMusic1音频文件。
      kDownloadFileTypeKRC2KRC 歌词文件。
      kDownloadFileTypeLRC3LRC 歌词文件。
      kDownloadFileTypeMIDI4MIDI 文件。
    PlayState

    类型: enum

    音乐播放状态。

    • 成员

      属性值描述
      kPlaying1播放中。
      kPaused2暂停中。
      kStoped3已停止。
      kFailed4播放失败。
      kFinished5播放结束。
    VideoSuperResolutionModeChangedReason

    类型: enum

    超分状态改变原因。

    • 成员

      属性值描述
      kVideoSuperResolutionModeChangedReasonAPIOff0调用 setRemoteVideoSuperResolution 成功关闭超分。
      kVideoSuperResolutionModeChangedReasonAPIOn1调用 setRemoteVideoSuperResolution 成功开启超分。
      kVideoSuperResolutionModeChangedReasonResolutionExceed2开启超分失败,远端视频流的原始视频分辨率超过 640 × 360 px。
      kVideoSuperResolutionModeChangedReasonOverUse3开启超分失败,已对一路远端流开启超分。
      kVideoSuperResolutionModeChangedReasonDeviceNotSupport4设备不支持使用超分辨率。
      kVideoSuperResolutionModeChangedReasonDynamicClose5当前设备性能存在风险,已动态关闭超分。
      kVideoSuperResolutionModeChangedReasonOtherSettingDisabled6超分因其他原因关闭。
      kVideoSuperResolutionModeChangedReasonOtherSettingEnabled7超分因其他原因开启。
      kVideoSuperResolutionModeChangedReasonNoComponent8SDK 没有编译超分组件。
      kVideoSuperResolutionModeChangedReasonStreamNotExist9远端流不存在。房间 ID 或用户 ID 无效,或对方没有发布流。
    RtcUser

    类型: interface

    用户信息

    • API
    方法描述
    user_id用户 id
    meta_data元数据

    user_id

    类型: string

    用户 id

    meta_data

    类型: string

    元数据

    FirstFrameSendState

    类型: enum

    首帧发送状态

    • 成员

      属性值描述
      kFirstFrameSendStateSending0发送中
      kFirstFrameSendStateSent1发送成功
      kFirstFrameSendStateEnd2发送失败
    FirstFramePlayState

    类型: enum

    首帧播放状态

    • 成员

      属性值描述
      kFirstFramePlayStatePlaying0播放中
      kFirstFramePlayStatePlayed1播放成功
      kFirstFramePlayStateEnd2播放失败
    FaceDetectResult

    类型: interface

    人脸检测结果

    • API
    方法描述
    detect_result人脸检测结果
    + 0:检测成功
    + !0:检测失败。详见错误码表。
    face_count检测到的人脸的数量
    rect识别到人脸的矩形框。数组的长度和检测到的人脸数量一致。
    image_width原始图片宽度(px)
    image_height原始图片高度(px)
    frame_timestamp_us进行人脸识别的视频帧的时间戳。

    detect_result

    类型: number

    人脸检测结果

    face_count

    类型: number

    检测到的人脸的数量

    rect

    类型: Rectangle[]

    识别到人脸的矩形框。数组的长度和检测到的人脸数量一致。

    image_width

    类型: number

    原始图片宽度(px)

    image_height

    类型: number

    原始图片高度(px)

    frame_timestamp_us

    类型: number

    进行人脸识别的视频帧的时间戳。

    RTCAudioDeviceType

    类型: enum

    音频设备类型

    • 成员

      属性值描述
      kRTCAudioDeviceTypeUnknown-1未知设备类型
      kRTCAudioDeviceTypeRenderDevice0音频渲染设备
      kRTCAudioDeviceTypeCaptureDevice1音频采集设备
      kRTCAudioDeviceTypeScreenCaptureDevice2屏幕流音频设备
    SingScoringRealtimeInfo

    类型: interface

    实时评分信息。

    • API
    方法描述
    current_position当前播放进度。
    user_pitch演唱者的音高。
    standard_pitch标准音高。
    sentence_index歌词分句索引。
    sentence_score上一句歌词的评分。
    total_score当前演唱的累计分数。
    average_score当前演唱的平均分数。

    current_position

    类型: number

    当前播放进度。

    user_pitch

    类型: number

    演唱者的音高。

    standard_pitch

    类型: number

    标准音高。

    sentence_index

    类型: number

    歌词分句索引。

    sentence_score

    类型: number

    上一句歌词的评分。

    total_score

    类型: number

    当前演唱的累计分数。

    average_score

    类型: number

    当前演唱的平均分数。

    AudioRecordingState

    类型: enum

    录音配置

    • 成员

      属性值描述
      kAudioRecordingStateError0录制异常
      kAudioRecordingStateProcessing1录制进行中
      kAudioRecordingStateSuccess2已结束录制,并且录制文件保存成功。
    DataMessageSourceType

    类型: enum

    SEI 信息来源。

    • 成员

      属性值描述
      kDataMessageSourceTypeDefault0通过客户端或服务端的插入的自定义消息。
      kDataMessageSourceTypeSystem1系统数据,包含音量指示信息。
    HardwareEchoDetectionResult

    类型: enum

    通话前回声检测结果

    • 成员

      属性值描述
      kHardwareEchoDetectionCanceled0主动调用 stopHardwareEchoDetection 结束流程时,未有回声检测结果。
      kHardwareEchoDetectionUnknown1未检测出结果。建议重试,如果仍然失败请联系技术支持协助排查。
      kHardwareEchoDetectionNormal2无回声
      kHardwareEchoDetectionPoor3有回声。可通过 UI 建议用户使用耳机设备入会。
    LocalProxyState

    类型: enum

    本地代理连接状态。

    • 成员

      属性值描述
      kLocalProxyStateInited0TCP 代理服务器连接成功。
      kLocalProxyStateConnected1本地代理连接成功。
      kLocalProxyStateError2本地代理连接出现错误。
    StreamMixingEvent

    类型: enum

    转推直播事件

    • 成员

      属性值描述
      kStreamMixingStart1请求发起转推直播任务
      kStreamMixingStartSuccess2发起转推直播任务成功
      kStreamMixingStartFailed3发起转推直播任务失败
      kStreamMixingUpdate4请求更新转推直播任务配置
      kStreamMixingUpdateSuccess5成功更新转推直播任务配置
      kStreamMixingUpdateFailed6更新转推直播任务配置失败
      kStreamMixingStop7请求结束转推直播任务
      kStreamMixingStopSuccess8结束转推直播任务成功
      kStreamMixingStopFailed9结束转推直播任务失败
      kStreamMixingChangeMixType10更新转推直播任务配置的请求超时
      kStreamMixingFirstAudioFrameByClientMix11得到客户端合流音频首帧
      kStreamMixingFirstVideoFrameByClientMix12收到客户端合流视频首帧
      kStreamMixingUpdateTimeout13更新转推直播任务配置超时
      kStreamMixingStartTimeout14发起转推直播任务配置超时
      kStreamMixingRequestParamError15合流布局参数错误
      kStreamMixingMixImageEvent16合流加图片
    IVideoFrame

    类型: interface

    设置视频帧

    • API
    方法描述
    channel_id房间 ID
    user_id用户 ID
    plane_y视频数据缓冲区 Y
    plane_u视频数据缓冲区 U
    plane_v视频数据缓冲区 V
    width视频分辨率宽度,单位:像素
    height视频分辨率高度,单位:像素
    plane_size_y视频数据缓冲区 Y 大小
    plane_size_u视频数据缓冲区 U 大小
    plane_size_v视频数据缓冲区 V 大小
    format视频帧数据格式
    rotation视频帧旋转角度
    rgba视频数据缓冲区 RGBA
    rgba_size视频数据缓冲区 RGBA 大小
    public_stream_id公共流 ID
    task_id合流任务 ID

    channel_id

    类型: string

    房间 ID

    user_id

    类型: string

    用户 ID

    plane_y

    类型: Uint8Array

    视频数据缓冲区 Y

    plane_u

    类型: Uint8Array

    视频数据缓冲区 U

    plane_v

    类型: Uint8Array

    视频数据缓冲区 V

    width

    类型: number

    视频分辨率宽度,单位:像素

    height

    类型: number

    视频分辨率高度,单位:像素

    plane_size_y

    类型: number

    视频数据缓冲区 Y 大小

    plane_size_u

    类型: number

    视频数据缓冲区 U 大小

    plane_size_v

    类型: number

    视频数据缓冲区 V 大小

    format

    类型: VideoPixelFormat

    视频帧数据格式

    rotation

    类型: number

    视频帧旋转角度

    rgba

    类型: Uint8Array

    视频数据缓冲区 RGBA

    rgba_size

    类型: number

    视频数据缓冲区 RGBA 大小

    public_stream_id

    类型: number

    公共流 ID

    task_id

    类型: string

    合流任务 ID

    VideoPixelFormat

    类型: enum

    视频帧颜色编码格式

    • 成员

      属性值描述
      kVideoPixelFormatUnknown0未知的颜色编码格式
      kVideoPixelFormatI4201YUV I420 格式
      kVideoPixelFormatNV122YUV NV12 格式
      kVideoPixelFormatNV213YUV NV21 格式
      kVideoPixelFormatRGB244RGB 24bit格式,
      kVideoPixelFormatRGBA5RGBA 编码格式
      kVideoPixelFormatARGB6ARGB 编码格式
      kVideoPixelFormatBGRA7BGRA 编码格式
    IAudioFrame

    类型: interface

    设置音频帧

    • API
    方法描述
    frame_type音频帧类型
    channels音频通道数
    双声道的情况下,左右声道的音频帧数据以 LRLRLR 形式排布。
    sample_rate音频采样率
    buffer音频数据内存地址
    render_time_ms音频帧时间戳,单位:毫秒
    mute获取音频静音标志

    frame_type

    类型: AudioFrameType

    值: 0

    音频帧类型

    channels

    类型: number

    音频通道数
    双声道的情况下,左右声道的音频帧数据以 LRLRLR 形式排布。

    sample_rate

    类型: number

    音频采样率

    buffer

    类型: Uint8Array

    音频数据内存地址

    render_time_ms

    类型: number

    音频帧时间戳,单位:毫秒

    mute

    类型: boolean

    获取音频静音标志

    IDataFrame

    类型: interface

    数据帧

    • API
    方法描述
    frame_type数据帧类型
    u8_data数据帧数据
    u64_ts_us数据帧时间戳,单位:微秒

    frame_type

    类型: DataFrameType

    值: 0

    数据帧类型

    u8_data

    类型: Uint8Array

    数据帧数据

    u64_ts_us

    类型: number

    数据帧时间戳,单位:微秒

    VideoFrameInfo

    类型: interface

    视频帧信息

    • API
    方法描述
    width视频帧的宽度(像素)
    height视频帧的高度(像素)
    rotation视频帧顺时针旋转角度。

    width

    类型: number

    视频帧的宽度(像素)

    height

    类型: number

    视频帧的高度(像素)

    rotation

    类型: VideoRotation

    视频帧顺时针旋转角度。

    AudioMixingState

    类型: enum

    音频混音文件播放状态。

    • 成员

      属性值描述
      kAudioMixingStatePreloaded0混音已加载
      kAudioMixingStatePlaying1混音正在播放
      kAudioMixingStatePaused2混音暂停
      kAudioMixingStateStopped3混音停止
      kAudioMixingStateFailed4混音播放失败
      kAudioMixingStateFinished5混音播放结束
    ConnectionState

    类型: enum

    SDK 与信令服务器连接状态。

    • 成员

      属性值描述
      kConnectionStateDisconnected1连接断开。
      kConnectionStateConnecting2首次连接,正在连接中。
      kConnectionStateConnected3涵盖了以下情况:
      + 首次连接时,10秒连接不成功;
      + 连接成功后,断连 10 秒。自动重连中。
      kConnectionStateReconnecting4涵盖了以下情况:
      + 首次连接时,10秒连接不成功;
      + 连接成功后,断连 10 秒。自动重连中。
      kConnectionStateReconnected5连接断开后重连成功。
      kConnectionStateLost6处于 kConnectionStateDisconnected 状态超过 10 秒,且期间重连未成功。SDK 仍将继续尝试重连。
    NetworkType

    类型: enum

    SDK 网络连接类型。

    • 成员

      属性值描述
      kNetworkTypeUnknown-1网络连接类型未知。
      kNetworkTypeDisconnected0网络连接已断开。
      kNetworkTypeLAN1网络连接类型为 LAN 。
      kNetworkTypeWIFI2网络连接类型为 Wi-Fi(包含热点)。
      kNetworkTypeMobile2G3网络连接类型为 2G 移动网络。
      kNetworkTypeMobile3G4网络连接类型为 3G 移动网络。
      kNetworkTypeMobile4G5网络连接类型为 4G 移动网络。
      kNetworkTypeMobile5G6网络连接类型为 5G 移动网络。
    PerformanceAlarmMode

    类型: enum

    是否开启发布性能回退

    • 成员

      属性值描述
      kPerformanceAlarmModeNormal0未开启发布性能回退
      kPerformanceAlarmModeSimulcast1已开启发布性能回退
    PerformanceAlarmReason

    类型: enum

    onPerformanceAlarms 告警的原因

    • 成员

      属性值描述
      kPerformanceAlarmReasonBandwidthFallbacked0网络原因差,造成了发送性能回退。仅在开启发送性能回退时,会收到此原因。
      kPerformanceAlarmReasonBandwidthResumed1网络性能恢复,发送性能回退恢复。仅在开启发送性能回退时,会收到此原因。
      kPerformanceAlarmReasonPerformanceFallbacked2如果未开启发送性能回退,收到此告警时,意味着性能不足;如果开启了发送性能回退,收到此告警时,意味着性能不足,且已发生发送性能回退。
      kPerformanceAlarmReasonPerformanceResumed3如果未开启发送性能回退,收到此告警时,意味着性能不足已恢复; 如果开启了发送性能回退,收到此告警时,意味着性能不足已恢复,且已发生发送性能回退恢复。
    SourceWantedData

    类型: interface

    性能回退相关数据

    • API
    方法描述
    width未开启发布回退时,此值表示推荐的视频输入宽度,当回退模式为大小流模式时,表示当前推流的最大宽度
    如果未开启发送性能回退,此值表示推荐的视频输入宽度;
    如果开启了发送性能回退,此值表示当前推流的最大宽度。
    heigth如果未开启发送性能回退,此值表示推荐的视频输入高度;
    如果开启了发送性能回退,此值表示当前推流的最大高度。
    frame_rate如果未开启发送性能回退,此值表示推荐的视频输入帧率,单位 fps;
    如果开启了发送性能回退,此值表示当前推流的最大帧率,单位 fps。

    width

    类型: number

    未开启发布回退时,此值表示推荐的视频输入宽度,当回退模式为大小流模式时,表示当前推流的最大宽度
    如果未开启发送性能回退,此值表示推荐的视频输入宽度;
    如果开启了发送性能回退,此值表示当前推流的最大宽度。

    heigth

    类型: number

    如果未开启发送性能回退,此值表示推荐的视频输入高度;
    如果开启了发送性能回退,此值表示当前推流的最大高度。

    frame_rate

    类型: number

    如果未开启发送性能回退,此值表示推荐的视频输入帧率,单位 fps;
    如果开启了发送性能回退,此值表示当前推流的最大帧率,单位 fps。

    SysStats

    类型: interface

    App 使用的 cpu 和内存信息。
    信息由 SDK 周期性(2s)地通过 onSysStats 回调通知给用户。

    • API
    方法描述
    cpu_cores当前系统 CPU 核数
    cpu_app_usage当前应用的 cpu 使用率,取值范围为 [0, 1]。
    cpu_total_usage当前系统的 cpu 使用率,取值范围为 [0, 1]。
    memory_usage当前应用的内存使用量(单位 MB)
    full_memory全量内存(单位字节)
    total_memory_usage系统已使用内存(单位字节)
    free_memory空闲可分配内存(单位字节)
    memory_ratio当前应用的内存使用率(单位 %)
    total_memory_ratio系统内存使用率(单位 %)

    cpu_cores

    类型: number

    当前系统 CPU 核数

    cpu_app_usage

    类型: number

    当前应用的 cpu 使用率,取值范围为 [0, 1]。

    cpu_total_usage

    类型: number

    当前系统的 cpu 使用率,取值范围为 [0, 1]。

    memory_usage

    类型: number

    当前应用的内存使用量(单位 MB)

    full_memory

    类型: number

    全量内存(单位字节)

    total_memory_usage

    类型: number

    系统已使用内存(单位字节)

    free_memory

    类型: number

    空闲可分配内存(单位字节)

    memory_ratio

    类型: number

    当前应用的内存使用率(单位 %)

    total_memory_ratio

    类型: number

    系统内存使用率(单位 %)

    RemoteStreamSwitch

    类型: interface

    流切换信息。本地用户订阅的远端流触发回退策略时的流切换信息。

    • API
    方法描述
    uid订阅的音视频流的发布者的用户 ID。
    is_screen是否是屏幕流。
    before_video_index流切换前本地用户订阅的视频流的分辨率对应的索引。
    after_video_index流切换后本地用户订阅的视频流的分辨率对应的索引。
    before_enable流切换前是否有视频流。
    after_enable流切换后是否有视频流。
    reason触发流回退的原因

    uid

    类型: string

    订阅的音视频流的发布者的用户 ID。

    is_screen

    类型: boolean

    是否是屏幕流。

    before_video_index

    类型: number

    流切换前本地用户订阅的视频流的分辨率对应的索引。

    after_video_index

    类型: number

    流切换后本地用户订阅的视频流的分辨率对应的索引。

    before_enable

    类型: boolean

    流切换前是否有视频流。

    after_enable

    类型: boolean

    流切换后是否有视频流。

    reason

    类型: FallbackOrRecoverReason

    触发流回退的原因

    FallbackOrRecoverReason

    类型: enum

    远端订阅流发生回退或恢复的原因

    • 成员

      属性值描述
      kFallbackOrRecoverReasonUnknown-1其他原因,非带宽和性能原因引起的回退或恢复。默认值
      kFallbackOrRecoverReasonSubscribeFallbackByBandwidth0由带宽不足导致的订阅端音视频流回退。
      kFallbackOrRecoverReasonSubscribeFallbackByPerformance1由性能不足导致的订阅端音视频流回退。
      kFallbackOrRecoverReasonSubscribeRecoverByBandwidth2由带宽恢复导致的订阅端音视频流恢复。
      kFallbackOrRecoverReasonSubscribeRecoverByPerformance3由性能恢复导致的订阅端音视频流恢复。
      kFallbackOrRecoverReasonPublishFallbackByBandwidth4由带宽不足导致的发布端音视频流回退。
      kFallbackOrRecoverReasonPublishFallbackByPerformance5由性能不足导致的发布端音视频流回退。
      kFallbackOrRecoverReasonPublishRecoverByBandwidth6由带宽恢复导致的发布端音视频流恢复。
      kFallbackOrRecoverReasonPublishRecoverByPerformance7由性能恢复导致的发布端音视频流恢复。
    LocalAudioStreamState

    类型: enum

    本地音频流状态。

    • 成员

      属性值描述
      kLocalAudioStreamStateStopped0本地音频默认初始状态。
      麦克风停止工作时回调该状态,对应错误码 kLocalAudioStreamErrorOk
      kLocalAudioStreamStateRecording1本地音频录制设备启动成功。
      采集到音频首帧时回调该状态,对应错误码 kLocalAudioStreamErrorOk
      kLocalAudioStreamStateEncoding2本地音频首帧编码成功。
      音频首帧编码成功时回调该状态,对应错误码 kLocalAudioStreamErrorOk
      kLocalAudioStreamStateFailed3本地音频启动失败,在以下时机回调该状态:
      +本地录音设备启动失败,对应错误码 kLocalAudioStreamErrorRecordFailure
      +检测到没有录音设备权限,对应错误码 kLocalAudioStreamErrorDeviceNoPermission
      +音频编码失败,对应错误码 kLocalAudioStreamErrorEncodeFailure
    RemoteAudioState

    类型: enum

    远端音频流状态。

    • 成员

      属性值描述
      kRemoteAudioStateStopped0不接收远端音频流。
      kRemoteAudioStateStarting1
      kRemoteAudioStateDecoding2
      kRemoteAudioStateFrozen3远端音频流卡顿。
    RemoteAudioStateChangeReason

    类型: enum

    接收远端音频流状态改变的原因。

    • 成员

      属性值描述
      kRemoteAudioStateChangeReasonInternal0内部原因
      kRemoteAudioStateChangeReasonNetworkCongestion1网络阻塞
      kRemoteAudioStateChangeReasonNetworkRecovery2网络恢复正常
      kRemoteAudioStateChangeReasonLocalMuted3本地用户停止接收远端音频流
      kRemoteAudioStateChangeReasonLocalUnmuted4本地用户恢复接收远端音频流
      kRemoteAudioStateChangeReasonRemoteMuted5远端用户停止发送音频流
      kRemoteAudioStateChangeReasonRemoteUnmuted6远端用户恢复发送音频流
      kRemoteAudioStateChangeReasonRemoteOffline7远端用户离开房间
    LocalVideoStreamState

    类型: enum

    本地视频流状态

    • 成员

      属性值描述
      kLocalVideoStreamStateStopped0本地视频采集停止状态
      kLocalVideoStreamStateRecording1本地视频采集设备启动成功
      kLocalVideoStreamStateEncoding2本地视频采集后,首帧编码成功
      kLocalVideoStreamStateFailed3本地视频采集设备启动失败
    RemoteVideoState

    类型: enum

    远端视频流状态。

    • 成员

      属性值描述
      kRemoteVideoStateStopped0远端视频流默认初始状态,视频尚未开始播放。
      kRemoteVideoStateStarting1本地用户已接收远端视频流首包。
      kRemoteVideoStateDecoding2远端视频流正在解码,正常播放。
      kRemoteVideoStateFrozen3远端视频流卡顿,可能有网络等原因。
      kRemoteVideoStateFailed4远端视频流播放失败。
    RemoteVideoStateChangeReason

    类型: enum

    远端视频流状态改变的原因

    • 成员

      属性值描述
      kRemoteVideoStateChangeReasonInternal0内部原因
      kRemoteVideoStateChangeReasonNetworkCongestion1网络阻塞
      kRemoteVideoStateChangeReasonNetworkRecovery2网络恢复正常
      kRemoteVideoStateChangeReasonLocalMuted3本地用户停止接收远端视频流或本地用户禁用视频模块
      kRemoteVideoStateChangeReasonLocalUnmuted4本地用户恢复接收远端视频流或本地用户启用视频模块
      kRemoteVideoStateChangeReasonRemoteMuted5远端用户停止发送视频流或远端用户禁用视频模块
      kRemoteVideoStateChangeReasonRemoteUnmuted6远端用户恢复发送视频流或远端用户启用视频模块
      kRemoteVideoStateChangeReasonRemoteOffline7远端用户离开频道。
      状态转换参考 onStreamRemove(85533#onstreamremove)
    SingleStreamPushEvent

    类型: enum

    转推直播事件

    • 成员

      属性值描述
      kSingleStreamPushStart1开始推流。
      kSingleStreamPushSuccess2推流成功。
      kSingleStreamPushFailed3推流失败。
      kSingleStreamPushStop4停止推流。
      kSingleStreamPushTimeout5单流转推直播任务处理超时,请检查网络状态并重试。
      kSingleStreamPushParamError6参数错误。
    RecordingInfo

    类型: interface

    本地录制的详细信息

    • API
    方法描述
    file_path录制文件的绝对路径,包含文件名和文件后缀
    video_codec_type录制文件的视频编码类型
    width录制视频的宽,单位:像素。纯音频录制请忽略该字段
    height录制视频的高,单位:像素。纯音频录制请忽略该字段

    file_path

    类型: string

    录制文件的绝对路径,包含文件名和文件后缀

    video_codec_type

    类型: VideoCodecType

    录制文件的视频编码类型

    width

    类型: number

    录制视频的宽,单位:像素。纯音频录制请忽略该字段

    height

    类型: number

    录制视频的高,单位:像素。纯音频录制请忽略该字段

    RecordingProgress

    类型: interface

    本地录制进度

    • API
    方法描述
    duration当前文件的累计录制时长,单位:毫秒
    file_size当前录制文件的大小,单位:byte

    duration

    类型: number

    当前文件的累计录制时长,单位:毫秒

    file_size

    类型: number

    当前录制文件的大小,单位:byte

    LocalAudioPropertiesInfo

    类型: interface

    本地音频属性信息

    • API
    方法描述
    stream_index流属性,主流或屏幕流。
    audio_properties_info音频属性信息,

    stream_index

    类型: StreamIndex

    流属性,主流或屏幕流。

    audio_properties_info

    类型: AudioPropertiesInfo

    音频属性信息,

    AudioPropertiesInfo

    类型: interface

    音频属性信息

    • API
    方法描述
    linear_volume线性音量,与原始音量呈线性关系,数值越大,音量越大。取值范围是:[0,255]。
    - 0, 25: 无声
    - 26, 75: 低音量
    - 76, 204: 中音量
    - 205, 255: 高音量
    nonlinear_volume非线性音量。由原始音量的对数值转化而来,因此在中低音量时更灵敏,可以用作 Active Speaker(房间内最活跃用户)的识别。取值范围是:[-127,0],单位 dB。
    - -127, -60: 无声
    - -59, -40: 低音量
    - -39, -20: 中音量
    - -19, 0: 高音量
    vad人声检测(VAD)结果
    - 1: 检测到人声。
    - 0: 未检测到人声。
    - -1: 未开启 VAD。
    spectrum频谱数组。默认长度为 257。

    linear_volume

    类型: number

    线性音量,与原始音量呈线性关系,数值越大,音量越大。取值范围是:[0,255]。

    nonlinear_volume

    类型: number

    非线性音量。由原始音量的对数值转化而来,因此在中低音量时更灵敏,可以用作 Active Speaker(房间内最活跃用户)的识别。取值范围是:[-127,0],单位 dB。

    vad

    类型: number

    人声检测(VAD)结果

    • 1: 检测到人声。
    • 0: 未检测到人声。
    • -1: 未开启 VAD。

    spectrum

    类型: number[]

    频谱数组。默认长度为 257。

    RemoteAudioPropertiesInfo

    类型: interface

    远端音频属性信息

    • API
    方法描述
    stream_key流属性,主流或屏幕流。
    audio_properties_info音频属性信息

    stream_key

    类型: RemoteStreamKey

    流属性,主流或屏幕流。

    audio_properties_info

    类型: AudioPropertiesInfo

    音频属性信息

    EchoTestResult

    类型: enum

    音视频回路测试结果

    • 成员

      属性值描述
      kTestSuccess0接收到采集的音视频的回放,通话回路检测成功
      kTestTimeout1测试超过 60s 仍未完成,已自动停止
      kTestIntervalShort2上一次测试结束和下一次测试开始之间的时间间隔少于 5s
      kAudioDeviceError3音频采集异常
      kVideoDeviceError4视频采集异常
      kAudioReceiveError5音频接收异常
      kVideoReceiveError6视频接收异常
      kInternalError7内部错误,不可恢复
    MediaDeviceWarning

    类型: enum

    媒体设备警告

    • 成员

      属性值描述
      kMediaDeviceWarningOK0无警告
      kMediaDeviceWarningOperationDenied1非法设备操作。在使用外部设备时,调用了 SDK 内部设备 API。
      kMediaDeviceWarningCaptureSilence2采集静音。
      kMediaDeviceWarningDetectLeakEcho11通话中出现回声现象。
      当 RoomProfileType 为 kRoomProfileTypeMeeting 和
      kRoomProfileTypeMeetingRoom,且 AEC 关闭时,SDK 自动启动回声检测,如果检测到回声问题,将通过
      onAudioDeviceWarning 返回本枚举值。
      kMediaDeviceWarningCaptureDetectHowling16啸叫。触发该回调的情况如下:1)不支持啸叫抑制的房间模式下,检测到啸叫;2)支持啸叫抑制的房间模式下,检测到未被抑制的啸叫。
      仅 kRoomProfileTypeCommunication、kRoomProfileTypeMeeting、kRoomProfileTypeMeetingRoom
      三种房间模式支持啸叫抑制。 建议提醒用户检查客户端的距离或将麦克风和扬声器调至静音。
    SEIStreamEventType

    类型: enum

    黑帧视频流状态

    • 成员

      属性值描述
      kSEIStreamEventTypeStreamAdd0远端用户发布黑帧视频流。
      纯语音通话场景下,远端用户调用 sendSEIMessage 发送 SEI 数据时,SDK 会自动发布一路黑帧视频流,并触发该回调。
      kSEIStreamEventTypeStreamRemove1远端黑帧视频流移除。该回调的触发时机包括:
      + 远端用户开启摄像头采集,由语音通话切换至视频通话,黑帧视频流停止发布;
      + 远端用户调用 sendSEIMessage 后 1min 内未有 SEI 数据发送,黑帧视频流停止发布;
      + 远端用户切换至自定义视频采集时,黑帧视频流停止发布。
    PlayerState

    类型: enum

    播放状态。

    • 成员

      属性值描述
      kPlayerStateIdle0播放未启动
      kPlayerStatePreloaded1已加载
      kPlayerStateOpened2播放文件已打开
      kPlayerStatePlaying3正在播放
      kPlayerStatePaused4播放已暂停
      kPlayerStateStopped5播放已停止
      kPlayerStateFailed6播放失败