com.byteplus.model.live.v20200801.CreatePullToPushTaskBody Maven / Gradle / Ivy
package com.byteplus.model.live.v20200801;
import com.alibaba.fastjson.JSON;
import java.util.List;
/**
* CreatePullToPushTaskBody
*/
@lombok.Data
public final class CreatePullToPushTaskBody {
/**
* 标题,支持中英文字符、数字,最大长度为 10 个字符
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Title")
private String title;
/**
* 开始时间,Unix 时间戳,单位为 s
*/
@com.alibaba.fastjson.annotation.JSONField(name = "StartTime")
private Integer startTime;
/**
* 结束时间,Unix 时间戳(秒)
*/
@com.alibaba.fastjson.annotation.JSONField(name = "EndTime")
private Integer endTime;
/**
* 回调地址,最大长度为 2000 个字符
*/
@com.alibaba.fastjson.annotation.JSONField(name = "CallbackURL")
private String callbackURL;
/**
* 拉流来源类型。支持以下 2 种取值。
*
*
*
* - 0:直播源;
*
* - 1:点播视频。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Type")
private Integer type;
/**
* 循环模式。当 `"Type":1` 时,为必选参数。当 `"Type":0` 时,该参数无效。参数取值及含义如下所示。
*
*
*
* - \-1:默认值,表示无限循环,至任务结束;
*
* - 0:表示有限次循环,循环次数为 `PlayTimes` 的取值。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "CycleMode")
private Integer cycleMode;
/**
* 推流地址
*/
@com.alibaba.fastjson.annotation.JSONField(name = "DstAddr")
private String dstAddr;
/**
* 拉流地址,与 `SrcAddrS` 二选一
*
* 最大长度为 1000 个字符。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "SrcAddr")
private String srcAddr;
/**
* 拉流地址列表,与 `SrcAddr` 二选一。最多支持传入 20 个拉流地址。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "SrcAddrS")
private List srcAddrS;
/**
* 点播文件循环播放次数。当 `"CycleMode":0` 时,为必选参数。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "PlayTimes")
private Integer playTimes;
/**
* 推流域名,`DstAddr` 为空时必传;反之,则该参数不生效
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Domain")
private String domain;
/**
* 推流 App 名称,`DstAddr` 为空时必传;反之,则该参数不生效
*/
@com.alibaba.fastjson.annotation.JSONField(name = "App")
private String app;
/**
* 转推的推流流名,`DstAddr` 为空时必传;反之,则该参数不生效
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Stream")
private String stream;
/**
* 水印信息
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Watermark")
private CreatePullToPushTaskBodyWatermark watermark;
/**
* 是否开启点播预热,仅对点播地址生效。
*
*
*
* - 0:不开启;
*
* - 1: 开启(默认值)。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "PreDownload")
private Integer preDownload;
/**
* 点播文件启播时间偏移值, 单位秒;数量与 SrcAddrS 列表数量相等。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "OffsetS")
private List offsetS;
/**
* 续播策略,支持以下配置项。
*
*
*
* - 0:从断流处续播(默认值);
*
* - 1:从断流处+自然流逝时长处续播。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "ContinueStrategy")
private Integer continueStrategy;
/**
* 点播文件启播时间偏移值,仅当 SrcAddr 不为空时生效。
*/
@com.alibaba.fastjson.annotation.JSONField(name = "Offset")
private Float offset;
@Override
public String toString() {
return JSON.toJSONString(this);
}
}