云端录制
  • 产品简介
    • 概述
    • 发布日志
    • 计费说明
  • 快速开始
    • 实现云端录制
  • 基础功能
  • 服务端 API v2
  • 常见问题
  • 文档中心
  • 云端录制
  • 服务端 API v2
  • 更新混流布局

更新混流布局

更新时间:2024-04-02 15:05

  1. 本 API 为最新服务端 API v2 接口,支持全球就近接入、统一的鉴权方式、统一的参数风格和公共错误码。后续相关功能的新增都会在此更新。
  2. 旧版 API 接口仅供 2021-09-10 前接入的旧用户维护使用。旧版接口文档请参考 旧版服务端 API

1 描述

在录制过程中,可以随时调用本接口更改混流布局的设置。

2 接口原型

  • 请求方法:POST
  • 请求地址:https://cloudrecord-api.zego.im/?Action=UpdateLayout
  • 传输协议:HTTPS
  • 调用频率限制:10 次/秒

3 请求参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表请参考 调用方式 中的 “2.1 公共请求参数”。

参数 类型 是否必选 描述
TaskId
String
录制任务 ID,长度固定为 16 个字节的字符串。
MixMode
Int
布局方式。
  • 1:自定义布局,必须指定 MixInputList
  • 2:平分布局(默认值)
  • 3:水平布局
  • 4:垂直布局
  • 5:悬浮布局
MixInputList
Array of Object
自定义布局参数。
详见 MixInputList 成员列表
MixMaxResolutionStreamId
String
MixMode 设为 3、4、5 时,用于指定显示大画面的流 ID。

MixInputList 成员如下:

参数 类型 是否必选 描述
StreamId
String
指定在该画面显示的 streamID,如果未指定,会按照流加入房间的时间顺序进行匹配。
ViewType
Int
该画面显示内容的类型。
  • 1:音视频(默认值)
  • 2:白板
类型 2 仅在开启白板录制时有效,仅支持将一个画面设置为白板,超过两个及以上会返回错误。
Top
Int
画布上该画面左上角的 y 轴坐标,取值范围 [0, 1920],不能超过 Bottom 的值和画布的高。
Left
Int
画布上该画面左上角的 x 轴坐标,取值范围 [0, 1920],不能超过 Right 的值和画布的宽。
Bottom
Int
画布上该画面右下角的 y 轴坐标,取值范围 [0, 1920],不能超过画布的高。
Right
Int
画布上该画面右下角的 x 轴坐标,取值范围 [0, 1920],不能超过画布的宽。
Layer
Int
该画面的图层优先级,当两个画面发生重叠时,数值大的显示在上方。
FillMode
Int
实际视频流宽高比与画面不一致时的处理方式。
  • 1:裁剪模式,该模式下优先保证画面被填满,原视频等比缩放填满画面后,四周超出画面的内容会被裁剪。(默认值)
  • 2:缩放模式,该模式下优先保证原视频的完整性,原视频等比缩放填满画面后,四周会补一圈黑边。
BackgroundImage
String
流画面背景图的 URL 地址,仅当指定了 StreamId 时生效。
自定义布局指定的流不存在或者流中断时会显示该背景图。
  • 建议背景图的分辨率与流画面分辨率一致,如两者分辨率不一致,背景图会被拉伸或压缩以填满整个画面。
  • 背景图格式支持 JPG 和 PNG,大小不能超过 5MB,如背景图下载失败,则设置不生效。
  • URL 支持 HTTP 和 HTTPS 协议。

4 请求示例

以下是使用 UpdateLayout 接口更新自定义布局的请求示例。

  • 请求 URL
    https://cloudrecord-api.zego.im/?Action=UpdateLayout
    &AppId=1234567890
    &SignatureNonce=15215528852396
    &Timestamp=1234567890
    &Signature=7a2c0f11145fb760d607a07b54825013
    &SignatureVersion=2.0
    &IsTest=false
  • 请求消息体
    {
      "TaskId": "xxxx",
      "MixMode": 1,
      "MixInputList": [
          {
              "StreamId": "xxxx", 
              "ViewType": 1, 
              "Top": 0, 
              "Left": 0, 
              "Bottom": 720, 
              "Right": 540, 
              "Layer": 1
          },
          {
              "StreamId": "", 
              "ViewType": 1, 
              "Top": 0, 
              "Left": 540, 
              "Bottom": 360, 
              "Right": 1080, 
              "Layer": 1
          },
          {
              "StreamId": "", 
              "ViewType": 1, 
              "Top": 360, 
              "Left": 540, 
              "Bottom": 720, 
              "Right": 1080, 
              "Layer": 1
          }
      ]
    }

5 响应参数

参数 类型 描述
Code
Int64
错误码。
Message
String
错误描述。
RequestId
String
请求 ID。

6 响应示例

以下是 UpdateLayout 接口的响应示例。

{
    "Code": 0,
    "Message": "succeed",
    "RequestId": "abcd123"
}
本篇目录