混音配置
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| playCount | number |
否 | 混音播放次数 | |
| type | AudioMixingType |
否 | 混音播放类型,详见 AudioMixingType。 |
混音播放类型
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| PLAYOUT | AudioMixingType.PLAYOUT |
0 |
是 | 仅本地播放 |
| PUBLISH | AudioMixingType.PUBLISH |
1 |
是 | 仅发送到远端 |
| PLAYOUT_AND_PUBLISH | AudioMixingType.PLAYOUT_AND_PUBLISH |
2 |
是 | 在本地播放并发送到远端 |
播放器事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| type | "video" \| "audio" |
否 | 类型 | |
| eventName | string |
否 | 事件名称 | |
| rawEvent | Event |
否 | 播放事件。详见官方文档 | |
| userId | string |
否 | 进房用户的 userId | |
| readyState | number |
否 | 媒体就绪状态,详见官方文档 | |
| currentTime | number |
否 | 当前时间 | |
| isScreen | boolean |
否 | 所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。 |
远端用户进房事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userInfo | UserInfo |
否 | 进房用户的 userId |
用户信息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 用户 ID,长度在 128 字节以内的非空字符串。 | |
| extraInfo | string |
否 | 用户传递的额外信息,最大长度为 200 字节。会在 onUserJoined 中回调给远端用户。 |
远端用户退房事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userInfo | UserInfo |
否 | 用户信息 | |
| reason | UserOfflineReason |
否 | 远端用户离开房间的原因 |
远端用户离开房间的原因
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| QUIT | UserOfflineReason.QUIT |
0 |
是 | 远端用户调用 leaveRoom 主动退出房间。 |
| DROPPED | UserOfflineReason.DROPPED |
1 |
是 | 远端用户因 Token 过期或网络原因等掉线。 |
| SWITCH_TO_INVISIBLE | UserOfflineReason.SWITCH_TO_INVISIBLE |
2 |
是 | 远端用户调用 setUserVisibility 切换至不可见状态。 |
连接状态改变
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| state | ConnectionState |
否 | 内部连接状态 |
SDK 与信令服务器连接状态。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| CONNECTION_START | ConnectionState.CONNECTION_START |
0 |
是 | 进行连接前准备,锁定相关资源。 |
| CONNECTION_STATE_DISCONNECTED | ConnectionState.CONNECTION_STATE_DISCONNECTED |
1 |
是 | 连接断开。 |
| CONNECTION_STATE_CONNECTING | ConnectionState.CONNECTION_STATE_CONNECTING |
2 |
是 | 首次连接,正在连接中。 |
| CONNECTION_STATE_CONNECTED | ConnectionState.CONNECTION_STATE_CONNECTED |
3 |
是 | 首次连接成功。 |
| CONNECTION_STATE_RECONNECTING | ConnectionState.CONNECTION_STATE_RECONNECTING |
4 |
是 | 连接断开后重新连接中。 |
| CONNECTION_STATE_RECONNECTED | ConnectionState.CONNECTION_STATE_RECONNECTED |
5 |
是 | 连接断开后重连成功。 |
流属性。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 用户 ID | |
| isScreen | boolean |
否 | 是否是屏幕流 | |
| hasVideo | boolean |
否 | 是否包含视频流 | |
| hasAudio | boolean |
否 | 是否包含音频流 | |
| videoStreamDescriptions | VideoStreamDescription[] |
否 | 视频流的属性 当远端用户调用 setVideoEncoderConfig 方法发布多个配置的视频流时,此处会包含该用户发布的所有视频流的属性信息。 |
视频流的属性
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| width | number |
否 | 宽 | |
| height | number |
否 | 高 | |
| frameRate | number |
否 | 视频帧率 | |
| maxKbps | number |
否 | 最大码率 |
用户闭麦事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userInfo | UserInfo |
否 | 用户信息,详见 UserInfo | |
| muteState | MuteState |
否 | 用户闭麦事件 |
音视频流的发送/播放状态
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| MUTE_STATE_OFF | MuteState.MUTE_STATE_OFF |
0 |
是 | 发送 |
| MUTE_STATE_ON | MuteState.MUTE_STATE_ON |
1 |
是 | 停止发送 |
房间内远端流移除原因。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| STREAM_REMOVE_REASON_UNPUBLISH | StreamRemoveReason.STREAM_REMOVE_REASON_UNPUBLISH |
0 |
是 | 远端用户停止发布流。 |
| STREAM_REMOVE_REASON_PUBLISH_FAILED | StreamRemoveReason.STREAM_REMOVE_REASON_PUBLISH_FAILED |
1 |
是 | 远端用户发布流失败。 |
| STREAM_REMOVE_REASON_KEEP_LIVE_FAILED | StreamRemoveReason.STREAM_REMOVE_REASON_KEEP_LIVE_FAILED |
2 |
是 | 保活失败。 |
| STREAM_REMOVE_REASON_CLIENT_DISCONNECTED | StreamRemoveReason.STREAM_REMOVE_REASON_CLIENT_DISCONNECTED |
3 |
是 | 远端用户断网。 |
| STREAM_REMOVE_REASON_REPUBLISH | StreamRemoveReason.STREAM_REMOVE_REASON_REPUBLISH |
4 |
是 | 远端用户重新发布流。 |
| STREAM_REMOVE_REASON_OTHER | StreamRemoveReason.STREAM_REMOVE_REASON_OTHER |
5 |
是 | 其他原因。 |
第一帧远端视频显示在视图上
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 发布视频用户的 userId | |
| height | number |
否 | 高度 | |
| width | number |
否 | 宽度 |
第一帧远端视频解码事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 发布视频用户的 userId | |
| height | number |
否 | 高度 | |
| width | number |
否 | 宽度 |
第一帧远端音频解码事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 发布视频用户的 userId |
媒体设备信息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| deviceId | string |
否 | 设备 ID 详见浏览器文档。 |
|
| deviceType | MediaDeviceKind |
否 | 设备类型 详见浏览器文档。 |
|
| deviceInfo | MediaDeviceInfo |
否 | 设备信息 详见浏览器文档。 |
|
| deviceName | string |
否 | 设备名称 详见浏览器文档。 |
|
| deviceState | "active" \| "inactive" |
否 | 设备状态 |
点对点文本消息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 发送消息的用户 | |
| message | string \| Object |
否 | 点对点文本消息 |
点对点二进制消息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 发送消息的用户 | |
| message | ArrayBuffer |
否 | 点对点二进制消息 |
远端媒体频流统计信息,统计周期为 2s 。
本地用户订阅媒体流成功后,SDK 会周期性地通知远端的媒体流在此次统计周期内的接收状况。此数据结构为回调给用户的参数类型。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 进房用户的 userId | |
| audioStats | RemoteAudioStats |
否 | 远端音频流信息 | |
| videoStats | RemoteVideoStats |
否 | 远端视频流信息 | |
| isScreen | boolean |
否 | 所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。 |
远端音频流统计信息,统计周期为 2s 。
本地用户订阅音频流成功后,SDK 会周期性地通知远端的音频流在此次统计周期内的接收状况。此数据结构为回调给用户的参数类型。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| audioLossRate | number |
否 | 音频丢包率。统计周期内的音频下行丢包率,取值范围为 [0, 1] 。 | |
| receivedKBitrate | number |
否 | 接收码率。统计周期内的音频接收码率,单位为 kbps 。 | |
| stallCount | number |
否 | 统计周期内的卡顿次数 | |
| stallDuration | number |
否 | 统计周期内的卡顿时长,单位为 ms 。 | |
| e2eDelay | number |
否 | 用户体验级别的端到端延时,单位:ms。媒体信息从发送端采集完成并开始编码到接收端解码完成并渲染开始的耗时 | |
| playoutSampleRate | number |
否 | 统计周期内的音频播放采样率信息,单位为 Hz 。 | |
| statsInterval | number |
否 | 统计间隔。此次统计周期的间隔,单位为 ms 。 | |
| rtt | number |
否 | 往返时延,单位:ms | |
| jitterBufferDelay | number |
否 | 抖动延迟,单位:ms | |
| numChannels | number |
否 | 声道数 | |
| receivedSampleRate | number |
否 | 接收侧采样率 | |
| frozenRate | number |
否 | 视频冻结率 | |
| concealedSamples | number |
否 | 音频丢包补偿(PLC) 样点总个数 | |
| concealmentEvent | number |
否 | 音频丢包补偿(PLC) 累计次数 | |
| decSampleRate | number |
否 | 音频解码采样率。统计周期内的音频解码采样率信息,单位为 Hz 。 | |
| decDuration | number |
否 | 解码时长。对此次统计周期内接收的远端音频流进行解码的总耗时,单位为 s 。 |
远端视频流统计信息,统计周期为 2s 。
本地用户订阅视频流成功后,SDK 会周期性地通知远端的视频流在此次统计周期内的接收状况。此数据结构为回调给用户的参数类型。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| width | number |
否 | 宽度,单位:px | |
| height | number |
否 | 高度,单位:px | |
| videoLossRate | number |
否 | 视频丢包率。统计周期内的音频下行丢包率,取值范围为 [0, 1] 。 | |
| receivedKBitrate | number |
否 | 接收码率。统计周期内的音频接收码率,单位为 kbps 。 | |
| decoderOutputFrameRate | number |
否 | 解码器输出帧率。统计周期内的视频解码器输出帧率,单位 fps 。 | |
| rendererOutputFrameRate | number |
否 | 渲染帧率。统计周期内的视频渲染帧率,单位 fps 。 | |
| stallCount | number |
否 | 统计周期内的卡顿次数 | |
| stallDuration | number |
否 | 统计周期内的卡顿时长,单位为 ms 。 | |
| e2eDelay | number |
否 | 用户体验级别的端到端延时,单位:ms。媒体信息从发送端采集完成并开始编码到接收端解码完成并渲染开始的耗时 | |
| isScreen | boolean |
否 | 所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。 | |
| statsInterval | number |
否 | 统计间隔。此次统计周期的间隔,单位为 ms 。 | |
| rtt | number |
否 | 客户端到服务端数据传输的往返时延,单位:ms | |
| frozenRate | number |
否 | 远端用户在加入房间后发生音频卡顿的累计时长占音频总有效时长的百分比。音频有效时长是指远端用户进房发布音频流后,除停止发送音频流和禁用音频模块之外的音频时长。 | |
| videoIndex | number |
否 | 视频分辨率序号。通过此参数指定希望订阅的流。在此之前,远端用户已经通过调用 setVideoEncoderConfig 方法,启动发布多路不同分辨率的视频流。编号 0 至 3代表流质量从高至低。 |
本地媒体频流统计信息以及网络状况,统计周期为 2s 。
本地用户发布媒体频流成功后,SDK 会周期性地通知本地用户发布的媒体流在此次统计周期内的发送状况。此数据结构为回调给用户的参数类型。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| audioStats | LocalAudioStats |
否 | 本地发送音频流的统计信息,详见 LocalAudioStats。 | |
| videoStats | LocalVideoStats |
否 | 本地发送视频流的统计信息,详见 LocalVideoStats。 | |
| isScreen | boolean |
否 | 所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。 |
本地音频流统计信息以及网络状况,统计周期为 2s 。
本地用户发布音频流成功后,SDK 会周期性地通知本地用户发布的音频流在此次统计周期内的发送状况。此数据结构为回调给用户的参数类型。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| audioLossRate | number |
否 | 音频丢包率。统计周期内的音频上行丢包率,取值范围为 [0, 1] 。 | |
| sendKBitrate | number |
否 | 发送码率。统计周期内的音频接收码率,单位为 kbps 。 | |
| recordSampleRate | number |
否 | 采集采样率。统计周期内的音频采集采样率信息,单位为 Hz 。 | |
| statsInterval | number |
否 | 统计间隔。此次统计周期的间隔,单位为 ms 。 | |
| rtt | number |
否 | 客户端到服务端数据传输的往返时延,单位:ms | |
| numChannels | number |
否 | 声道数 | |
| sentSampleRate | number |
否 | 音频发送采样率。此次统计周期内的音频发送采样率信息,单位为 Hz 。 |
本地视频流统计信息以及网络状况,统计周期为 2s 。
本地用户发布视频流成功后,SDK 会周期性地通知本地用户发布的视频流在此次统计周期内的发送状况。此数据结构为回调给用户的参数类型。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| sentKBitrate | number |
否 | 发送码率,单位:kbps。统计周期内的视频发送码率 | |
| inputFrameRate | number |
否 | 采集帧率。此次统计周期内的视频采集帧率,单位为 fps 。 | |
| sentFrameRate | number |
否 | 发送帧率。统计周期内的视频发送帧率,单位为 fps 。 | |
| encoderOutputFrameRate | number |
否 | 编码器输出帧率。当前编码器在此次统计周期内的输出帧率,单位为 fps 。 | |
| rendererOutputFrameRate | number |
否 | 本地渲染帧率。统计周期内的本地视频渲染帧率,单位为 fps 。 | |
| targetKBitrate | number |
否 | 目标发送码率。此次统计周期内的视频目标发送码率,单位为 kbps 。 | |
| targetFrameRate | number |
否 | 目标发送帧率。此次统计周期内的目标发送帧率,单位为 fps 。 | |
| statsInterval | number |
否 | 统计间隔。此次统计周期的间隔,单位为 ms 。 | |
| videoLossRate | number |
否 | 视频丢包率。统计周期内的音频上行丢包率,取值范围为 [0, 1] 。 | |
| rtt | number |
否 | 客户端到服务端数据传输的往返时延,单位:ms | |
| encodedBitrate | number |
否 | 视频编码码率。此次统计周期内的视频编码码率,单位为 kbps 。 | |
| encodedFrameWidth | number |
否 | 视频编码宽度,单位为 px 。 | |
| encodedFrameHeight | number |
否 | 视频编码高度,单位为 px 。 | |
| encodedFrameCount | number |
否 | 统计周期内发送的视频帧总数 | |
| codecType | string |
否 | 视频的编码类型,具体参考 VideoCodecType | |
| isScreen | boolean |
否 | 所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。 |
声音音量信息。包含每个说话者的用户 id 和音量信息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| userId | string |
否 | 说话者的用户 id | |
| volume | number |
否 | 说话者的音量,范围为 0(最低)- 255(最高) |
收到带有 SEI 消息的视频帧时,收到此回调
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| remoteStreamKey | RemoteStreamKey |
否 | 包含 SEI 发送者的用户名,所在的房间名和媒体流,详见 RemoteStreamKey | |
| sei | Uint8Array |
否 | 收到的 SEI 消息内容 |
远端流信息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| roomId | string |
否 | 房间 ID | |
| userId | string |
否 | 用户 ID | |
| streamIndex | StreamIndex |
否 | 流属性,包括主流、屏幕流。参看 StreamIndex |
流属性
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| STREAM_INDEX_MAIN | StreamIndex.STREAM_INDEX_MAIN |
0 |
是 | 主流。包括:通过默认摄像头/麦克风采集到的视频/音频; |
| STREAM_INDEX_SCREEN | StreamIndex.STREAM_INDEX_SCREEN |
1 |
是 | 屏幕流。共享的视频流,或来自声卡的本地播放音频流。 |
音视频流订阅结果
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| SUBSCRIBE_SUCC | SubscribeState.SUBSCRIBE_SUCC |
0 |
是 | 更新订阅状态成功 |
| SUBSCRIBE_FAIL | SubscribeState.SUBSCRIBE_FAIL |
1 |
是 | 更新订阅状态失败 |
音视频流发布结果
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| PUBLISH_SUCC | PublishState.PUBLISH_SUCC |
0 |
是 | 发布成功 |
| PUBLISH_FAIL | PublishState.PUBLISH_FAIL |
1 |
是 | 发布失败 |
转推直播事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| code | number |
否 | 转推直播事件编号 | |
| message | string |
否 | 转推直播事件详情 |
音频混音文件播放状态改变事件
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| mixId | number |
否 | 混音 ID | |
| state | any |
否 | 混音状态 | |
| error | any |
否 | 混音错误 |
房间参数配置
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| isAutoPublish | boolean |
否 | 是否自动发布音频流,默认为自动发布。 |
|
| isAutoSubscribeAudio | boolean |
否 | 是否自动订阅音频流,默认为自动订阅。 进房后,你可以调用 subscribeUserStream 修改订阅设置。 |
|
| isAutoSubscribeVideo | boolean |
否 | 是否自动订阅视频流,默认为自动订阅。 进房后,你可以调用 subscribeUserStream 修改订阅设置。 |
订阅的媒体类型
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| AUDIO_ONLY | SubscribeMediaType.AUDIO_ONLY |
0 |
是 | 只控制音频,不影响视频 |
| VIDEO_ONLY | SubscribeMediaType.VIDEO_ONLY |
1 |
是 | 只控制视频,不影响音频 |
| AUDIO_AND_VIDEO | SubscribeMediaType.AUDIO_AND_VIDEO |
2 |
是 | 视频和音频 |
| NONE | SubscribeMediaType.NONE |
3 |
是 | 既不订阅音频,也不订阅视频 |
视频订阅配置信息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| videoIndex | number |
否 | 订阅的视频流分辨率下标。 当远端用户通过调用 setVideoEncoderConfig 方法启动发布多路不同分辨率的视频流时,本地用户需通过此参数指定希望订阅的流。 默认值为 0,即订阅第一路流。 如果不想更改之前的设置,可以输入 -1。 |
屏幕共享流设置
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| enableAudio | boolean |
否 | 当用户为 Windows 端并使用 Chrome 浏览器时,设置为 true 可以捕获系统声音 |
播放器信息和渲染模式
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| renderDom | string \| HTMLElement |
否 | DOM | |
| renderMode | VideoRenderMode |
否 | 渲染模式:可选 RENDER_MODE_HIDDEN, RENDER_MODE_FIT 和 RENDER_MODE_ADAPTIVE。 |
|
| userId | string |
否 | 用户 ID,支持以下字符集范围 + 26 个大写字母 A ~ Z + 26 个小写字母 a ~ z + 10 个数字 0 ~ 9 + 下划线 "_",at 符 "@",减 号 "-" |
渲染模式
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| RENDER_MODE_HIDDEN | VideoRenderMode.RENDER_MODE_HIDDEN |
0 |
是 | 视窗填满优先。 视频帧等比缩放,直至视窗被视频填满。如果视频帧长宽比例与视窗不同,视频帧的多出部分将无法显示。 |
| RENDER_MODE_FIT | VideoRenderMode.RENDER_MODE_FIT |
1 |
是 | 视频帧内容全部显示优先。 视频帧等比缩放,直至视频帧能够在视窗上全部显示。如果视频帧长宽比例与视窗不同,视窗上未被视频帧填满区域将被涂黑。 |
镜像类型
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| MIRROR_TYPE_NONE | MirrorType.MIRROR_TYPE_NONE |
0 |
是 | 本地渲染和编码传输时均无镜像效果 |
| MIRROR_TYPE_RENDER | MirrorType.MIRROR_TYPE_RENDER |
1 |
是 | 本地渲染时有镜像效果,编码传输时无镜像效果 |
媒体流类型
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| RTC_PAUSE_RESUME_CONTROL_AUDIO | PauseResumeControlMediaType.RTC_PAUSE_RESUME_CONTROL_AUDIO |
0 |
是 | 音频 |
| RTC_PAUSE_RESUME_CONTROL_VIDEO | PauseResumeControlMediaType.RTC_PAUSE_RESUME_CONTROL_VIDEO |
1 |
是 | 视频 |
| RTC_PAUSE_RESUME_CONTROL_AUDIO_AND_VIDEO | PauseResumeControlMediaType.RTC_PAUSE_RESUME_CONTROL_AUDIO_AND_VIDEO |
2 |
是 | 音频和视频 |
视频编码配置
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| maxKbps | number |
否 | 最大码率,单位 kbps |
转码推流配置参数
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| url | string |
否 | 推流 CDN 地址 | |
| audio | Partial<LiveTranscodeAudioConfig> |
否 | 音频参数 | |
| video | Partial<LiveTranscodeVideoConfig> |
否 | 视频参数 | |
| layout | Partial<LiveTranscodeLayoutConfig> |
否 | 用户布局信息,详见 LiveTranscodeLayoutConfig |
音频转码配置参数
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| codec | string |
否 | 音频编码格式,选填,默认为 AAC |
|
| kBitRate | number |
否 | 音频码率。单位为 kbps。可选取值:32, 64,128,192。默认值为 64 Kbps | |
| sampleRate | number |
否 | 音频采样率。单位为 kHz。可选取值:32, 44.1, 48。默认值为 48 Khz。 | |
| channels | number |
否 | 音频声道数,可取 1 或 2。默认值为双声道。 | |
| AACProfile | "LC" \| "HEv1" \| "HEv2" |
否 | AAC 编码类型。可选 LC, HEv1, 和 'HEv2。默认值为 'LC'。默认值为LC`。 |
视频转码配置参数。传入超出取值范围的值将导致转推任务发起或更新失败。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| width | number |
否 | 宽。范围为 [2, 4096],必须是偶数。单位 px。默认 640 px。 | |
| height | number |
否 | 高。范围为 [2, 2160],必须是偶数。单位 px。默认 360 px | |
| codec | string |
否 | 编码格式。默认 H264。 |
|
| fps | number |
否 | 合流视频帧率。取值范围 >0。。单位 fps。默认为 30 fps。 | |
| gop | number |
否 | 视频 I 帧间隔。取值范围 >0。默认为 60。 | |
| lowLatency | boolean |
否 | 是否使用低延时特性。默认开启。 | |
| kBitRate | number |
否 | 合流视频码率。取值范围 [16, 50000000]。单位为 Kbps。默认为 600 Kbps。 |
视频流合流整体布局信息
开启转推直播功能后,你可以设置参与合流的每路视频流的预设布局信息和合流背景信息等。
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| regions | LiveTranscodeLayoutRegion[] |
否 | 用户布局信息列表 | |
| appData | string |
否 | 透传的 App 数据 | |
| backgroundColor | string |
否 | 画布的背景颜色 |
单个视频流在合流中的布局信息
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| alpha | number |
否 | 透明度。可选范围为 [0.0, 1.0]。 | |
| userId | string |
否 | 视频流发布用户的用户 ID | |
| x | number |
否 | 视频流对应区域左上角的横坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。 | |
| y | number |
否 | 视频流对应区域左上角的纵坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。 | |
| zorder | number |
否 | 用户视频布局在画布中的层级。取值范围为[0 - 100]。0为底层,值越大越上层。 | |
| w | number |
否 | 视频流对应区域宽度相对整体画面的归一化比例,取值的范围为 (0.0, 1.0]。 | |
| h | number |
否 | 视频流对应区域高度相对整体画面的归一化比例,取值的范围为 (0.0, 1.0]。 | |
| renderMode | number |
否 | 视频显示模式,默认可设置为1。可选取值如下: • 1: 视频尺寸等比缩放,优先保证窗口被填满。当视频尺寸与显示窗口尺寸不一致时,多出的视频将被截掉。 • 2: 视频尺寸等比缩放,优先保证视频内容全部显示。当视频尺寸与显示窗口尺寸不一致时,会把窗口未被填满的区域填充成黑色。 • 3: 视频尺寸非等比例缩放,把窗口充满。当视频尺寸与显示窗口尺寸不一致时,视频高或宽方向会被拉伸。 |
|
| contentControl | number |
否 | 合流内容控制。默认值为0,可选取值如下: • 0: 输出的混流包含音视频 • 1: 只包含音频 • 2: 只包含视频 |
|
| isScreenStream | boolean |
否 | 是否是屏幕流 | |
| isLocalUser | boolean |
否 | 是否本地用户 |
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| VIDEO_SOURCE_TYPE_EXTERNAL | VideoSourceType.VIDEO_SOURCE_TYPE_EXTERNAL |
0 |
是 | 自定义采集 |
| VIDEO_SOURCE_TYPE_INTERNAL | VideoSourceType.VIDEO_SOURCE_TYPE_INTERNAL |
1 |
是 | 内部采集,使用由 SDK 提供的视频采集模块(默认) |
音频采集方式
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| AUDIO_SOURCE_TYPE_EXTERNAL | AudioSourceType.AUDIO_SOURCE_TYPE_EXTERNAL |
0 |
是 | 自定义采集模块 |
| AUDIO_SOURCE_TYPE_INTERNAL | AudioSourceType.AUDIO_SOURCE_TYPE_INTERNAL |
1 |
是 | 内部采集,使用由 SDK 提供的音频采集模块 |
登录状态
| 名称 | 类型 | 值 | 只读 | 描述 |
|---|---|---|---|---|
| OFFLINE | USER_ONLINE_STATUS.OFFLINE |
0 |
是 | 离线。无法收发点对点消息。 |
| ONLINE | USER_ONLINE_STATUS.ONLINE |
1 |
是 | 在线 |
| UNREACHABLE | USER_ONLINE_STATUS.UNREACHABLE |
2 |
是 | 未知。无法收发点对点消息。 |