文档首页/ 视频直播 Live/ 媒体直播API参考/ OTT频道管理/ 新建OTT频道 - CreateOttChannelInfo
更新时间:2026-03-26 GMT+08:00

新建OTT频道 - CreateOttChannelInfo

功能介绍

创建频道接口,支持创建OTT频道。

授权信息

账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。

授权项

访问级别

资源类型(*为必须)

条件键

别名

依赖的授权项

live:ott:createChannel

Write

-

-

-

-

URI

POST /v1/{project_id}/ott/channels

表1 路径参数

参数

是否必选

参数类型

描述

project_id

是

String

参数解释:

项目ID,获取方法请参考获取项目ID。

约束限制:

不涉及

取值范围:

[1,32]

默认取值:

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

否

String

参数解释:

用户Token,使用Token鉴权方式时为必填项。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

约束限制:

不涉及

取值范围:

[1,256]

默认取值:

不涉及

Authorization

否

String

参数解释:

使用AK/SK方式认证时必填,携带的鉴权信息。

约束限制:

不涉及

取值范围:

[1,256]

默认取值:

不涉及

X-Sdk-Date

否

String

参数解释:

请求的发生时间,使用AK/SK方式认证时为必填项。

约束限制:

不涉及

取值范围:

[1,256]

默认取值:

不涉及

X-Project-Id

否

String

参数解释:

使用AK/SK方式认证时为必填项,携带项目ID信息。

约束限制:

不涉及

取值范围:

[1,64]

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

domain

是

String

参数解释:

频道推流域名

约束限制:

不涉及

取值范围:

只能由小写英文字符与"-"、"_"组成,且长度为[1~255]个字符。

默认取值:

不涉及

app_name

是

String

参数解释:

组名或应用名

约束限制:

不涉及

取值范围:

只能由英文字符与"-"、"_"组成,首字符必须为字母。且长度为[1~64]个字符。

默认取值:

不涉及

id

是

String

参数解释:

频道ID,频道唯一标识。

约束限制:

不涉及

取值范围:

只能由英文字符与"-"、"_"组成,首字符必须为字母。且长度为[2~64]个字符。

默认取值:

不涉及

name

否

String

参数解释:

频道名称

约束限制:

不涉及

取值范围:

长度为[1~64]个字符。

默认取值:

不涉及

state

是

String

参数解释:

频道状态

约束限制:

不涉及

取值范围:

  • ON:频道下发成功后,自动启动拉流、转码、录制等功能

  • OFF:仅保存频道信息,不启动频道

默认取值:

ON

mode

否

String

参数解释:

频道模式

约束限制:

不涉及

取值范围:

  • ADD_CDN:一站式服务,源站和CDN绑在一起(默认)

  • ONLY_OS:独立源站服务,CDN和源站解耦

默认取值:

ADD_CDN

region

否

String

参数解释:

当mode是ONLY_OS时,该字段生效,表示频道所在Region

约束限制:

不涉及

取值范围:

  • cn-north-4:北京四

  • cn-east-3:上海一

  • ap-southeast-3:新加坡

  • ap-southeast-1:香港

  • me-east-1:利雅得

  • af-south-1:约翰内斯堡

  • eu-west-101:都柏林

默认取值:

不涉及

input

是

InputStreamInfo object

参数解释:

频道入流信息

约束限制:

不涉及

encoder_settings

否

Array of encoder_settings objects

参数解释:

转码模板配置,转码模板个数最大为12个。

约束限制:

不涉及

record_settings

是

record_settings object

参数解释:

回看录制的配置信息

约束限制:

不涉及

endpoints

否

Array of EndpointItem objects

参数解释:

频道出流信息

约束限制:

不涉及

encoder_settings_expand

否

EncoderSettingsExpand object

参数解释:

音频输出配置

约束限制:

不涉及

表4 InputStreamInfo

参数

是否必选

参数类型

描述

input_protocol

是

String

参数解释:

频道入流协议

约束限制:

不涉及

取值范围:

  • FLV_PULL

  • RTMP_PUSH

  • HLS_PULL

  • SRT_PULL

  • SRT_PUSH

  • STREAM_CONNECT

默认取值:

FLV_PULL

sources

否

Array of SourcesInfo objects

参数解释:

频道主源流信息

约束限制:

  • 入流协议为RTMP_PUSH和SRT_PUSH时,非必填项。其他情况下,均为必填项。

  • 最多支持添加12条。

secondary_sources

否

Array of SecondarySourcesInfo objects

参数解释:

频道备源流信息

约束限制:

  • 非必填项。如果有备入流,则主备入流必须保证路数、codec和分辨率均一致。入流协议为RTMP_PUSH、SRT_PUSH时,无需填写。

  • 最多支持添加12条。

failover_conditions

否

FailoverConditions object

参数解释:

频道供应商提供的主备音视频流URL切换的配置

约束限制:

非必填项

max_bandwidth_limit

否

Integer

参数解释:

当入流协议为HLS_PULL时,需要配置的最大带宽。

约束限制:

用户提供的拉流URL中,针对不同码率的音视频,均会携带带宽参数“BANDWIDTH”。

  • 如果这里配置最大带宽,媒体直播服务从URL拉流时,会选择小于最大带宽且码率最大的音视频流,推流到源站。

  • 如果这里未配置最大带宽,媒体直播服务从URL拉流时,会默认选择“BANDWIDTH”最高的音视频流,推流到源站。

取值范围:

[0,104857600]

默认取值:

不涉及

ip_port_mode

否

Boolean

参数解释:

当推流协议为SRT_PUSH时,如果配置了直推源站,编码器不支持输入streamid,需要打开设置为true

约束限制:

不涉及

取值范围:

  • true:如果推流协议为SRT_PUSH时,配置了直推源站,编码器不支持输入streamid,需要配置CIDR IP白名单。

  • false:无需配置CIDR IP白名单。

默认取值:

false

ip_whitelist

否

String

参数解释:

客户推流的IP白名单

约束限制:

协议为SRT_PUSH类型时,需要携带推流白名单

取值范围:

支持数字与“/”、“,”,字符串,长度限制[0~256]个字符

默认取值:

不涉及

scte35_source

否

String

参数解释:

广告的scte35信号源

约束限制:

仅HLS_PULL类型的频道支持此配置,且目前仅支持SEGMENTS

取值范围:

SEGMENTS、MANIFEST

默认取值:

不涉及

ad_triggers

否

Array of strings

参数解释:

广告触发器配置。

约束限制:

最多设置五个

取值范围:

  • Splice insert:拼接插入

  • Provider advertisement:提供商广告

  • Distributor advertisement:分销商广告

  • Provider placement opportunity:提供商置放机会

  • Distributor placement opportunity:分销商置放机会

默认取值:

不涉及

audio_selectors

否

Array of InputAudioSelector objects

参数解释:

音频选择器,

约束限制:

最多设置8个音频选择器

表5 SourcesInfo

参数

是否必选

参数类型

描述

url

否

String

参数解释:

频道源流URL,用于外部拉流,当请求协议为SRT_PUSH、RTMP_PUSH时,无需填写

约束限制:

无需直播转码时,此参数为必填项

取值范围:

长度限制[1~1024]位

默认取值:

不涉及

bitrate

否

Integer

参数解释:

码率,单位:bps

约束限制:

无需直播转码时,此参数为必填项

默认取值:

不涉及

取值范围:

0~104857600

width

否

Integer

参数解释:

分辨率对应宽的值

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~4096

height

否

Integer

参数解释:

分辨率对应高的值

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~2160

enable_snapshot

否

Boolean

参数解释:

描述是否使用该流做截图

约束限制:

不涉及

取值范围:

  • true:使用该流做截图

  • false:不使用该流做截图

默认取值:

false

bitrate_for3u8

否

Boolean

参数解释:

是否使用bitrate来固定码率

约束限制:

不涉及

取值范围:

  • true:使用bitrate来固定码率

  • false:不使用bitrate来固定码率

默认取值:

false

passphrase

否

String

参数解释:

协议为SRT_PUSH时的加密信息

约束限制:

不涉及

取值范围:

长度限制[10~79]个字符

默认取值:

不涉及

backup_urls

否

Array of strings

参数解释:

备入流地址列表

约束限制:

不涉及

取值范围:

限制最多12个

默认取值:

不涉及

stream_id

否

String

参数解释:

频道为SRT_PULL类型时,拉流地址的Stream ID

约束限制:

不涉及

取值范围:

长度限制[0~512]个字符

默认取值:

不涉及

latency

否

Integer

参数解释:

频道为SRT_PULL类型时的拉流时延

约束限制:

不涉及

取值范围:

取值限制100~15000

默认取值:

不涉及

pbkeylen

否

Integer

参数解释:

srt加密算法,包含如下取值:

  • 16:AES-128

  • 24:AES-192

  • 32:AES-256

约束限制:

不涉及

取值范围:

16~32

默认取值:

32

表6 SecondarySourcesInfo

参数

是否必选

参数类型

描述

url

否

String

参数解释:

频道源流URL,用于外部拉流,当请求协议为SRT_PUSH、RTMP_PUSH时,无需填写

约束限制:

无需直播转码时,此参数为必填项

取值范围:

不涉及

默认取值:

不涉及

bitrate

否

Integer

参数解释:

码率,单位:bps

约束限制:

无需直播转码时,此参数为必填项

默认取值:

不涉及

取值范围:

0~104857600

width

否

Integer

参数解释:

分辨率对应宽的值

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~4096

height

否

Integer

参数解释:

分辨率对应高的值

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~2160

bitrate_for3u8

否

Boolean

参数解释:

是否使用bitrate来固定码率

取值范围:

  • true:使用bitrate来固定码率

  • false:不使用bitrate来固定码率

约束限制:

不涉及

默认取值:

false

passphrase

否

String

参数解释:

协议为SRT_PUSH时的加密信息

约束限制:

不涉及

取值范围:

长度限制[10~79]个字符

默认取值:

不涉及

backup_urls

否

Array of strings

参数解释:

备入流地址列表

约束限制:

不涉及

取值范围:

限制最多12个

默认取值:

不涉及

stream_id

否

String

参数解释:

频道为SRT_PULL类型时,拉流地址的Stream ID

约束限制:

不涉及

取值范围:

长度限制[0~512]个字符

默认取值:

不涉及

latency

否

Integer

参数解释:

频道为SRT_PULL类型时的拉流时延

约束限制:

不涉及

取值范围:

取值限制100~15000

默认取值:

不涉及

pbkeylen

否

Integer

参数解释:

srt加密算法,取值如下:

  • 16:AES-128

  • 24:AES-192

  • 32:AES-256

约束限制:

不涉及

取值范围:

16~32

默认取值:

32

表7 FailoverConditions

参数

是否必选

参数类型

描述

input_loss_threshold_msec

否

Integer

参数解释:

入流停止的时长阈值,到达此阈值后,自动触发主备切换。单位:毫秒。

约束限制:

不涉及

默认取值:

2000

取值范围:

0~3600000

input_preference

否

String

参数解释:

以主入流URL为第一优先级(PRIMARY)或主备URL平等切换(EQUAL)

约束限制:

非必填,如果是平等切换时,使用的是备URL,不会自动切换至主URL

取值范围:

  • EQUAL

  • PRIMARY

默认取值:

EQUAL

表8 InputAudioSelector

参数

是否必选

参数类型

描述

name

是

String

参数解释:

音频选择器的名称

约束限制:

同一个频道中每个选择器的名称需要唯一

取值范围:

仅支持大小写字母、数字、中划线和下划线。且长度为[1~255]个字符。

默认取值:

不涉及

selector_settings

否

AudioSelectorSettings object

参数解释:

设置音频选择器

约束限制:

不涉及

表9 AudioSelectorSettings

参数

是否必选

参数类型

描述

audio_language_selection

否

AudioSelectorLangSelection object

参数解释:

设置语言选择器

约束限制:

不涉及

audio_pid_selection

否

AudioSelectorPidSelection object

参数解释:

设置PID选择器

约束限制:

不涉及

audio_hls_selection

否

AudioSelectorHlsSelection object

参数解释:

设置Hls选择器

约束限制:

不涉及

表10 AudioSelectorLangSelection

参数

是否必选

参数类型

描述

language_code

是

String

参数解释:

语言简称

约束限制:

不涉及

取值范围:

输入2或3个小写字母的语言代码

默认取值:

不涉及

language_selection_policy

否

String

参数解释:

语言输出策略

约束限制:

不涉及

取值范围:

  • LOOSE:宽松匹配,示例“eng”会优先匹配源流中语言为English的音轨,如果匹配不到,则选择PID最小的音轨。

  • STRICT:严格匹配,示例“eng”会严格匹配源流中语言为English的音轨,如果匹配不到,媒体直播服务会自动补齐一个静音分片,当终端使用此音频选择器播放视频时,会静音播放。

默认取值:

不涉及

表11 AudioSelectorPidSelection

参数

是否必选

参数类型

描述

pid

是

Integer

参数解释:

设置PID的值

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~8191

表12 AudioSelectorHlsSelection

参数

是否必选

参数类型

描述

name

是

String

参数解释:

hls音频选择器名

约束限制:

不涉及

取值范围:

字符长度[1,255]

默认取值:

不涉及

group_id

是

String

参数解释:

hls音频选择器gid

约束限制:

不涉及

取值范围:

字符长度[1,255]

默认取值:

不涉及

表13 encoder_settings

参数

是否必选

参数类型

描述

template_id

否

String

参数解释:

转码模板ID

约束限制:

不涉及

取值范围:

只能由英文字符与"-"、"_"组成,且长度为[1~255]个字符。

默认取值:

不涉及

表14 record_settings

参数

是否必选

参数类型

描述

rollingbuffer_duration

是

Integer

参数解释:

最大回看录制时长。在此时间段内会连续不断地录制,为必选项

单位:秒。取值为“0”时,表示不支持录制;最大支持录制14天。

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~1209600

表15 EndpointItem

参数

是否必选

参数类型

描述

hls_package

否

Array of HlsPackageItem objects

参数解释:

HLS打包信息

约束限制:

不涉及

dash_package

否

Array of DashPackageItem objects

参数解释:

DASH打包信息

约束限制:

不涉及

mss_package

否

Array of MssPackageItem objects

参数解释:

MSS打包信息

约束限制:

不涉及

表16 HlsPackageItem

参数

是否必选

参数类型

描述

id

否

String

参数解释:

package唯一标识id,由服务创建并在查询时返回,修改endpoints时需要携带。

约束限制:

不涉及

取值范围:

只能由英文字符组成,且长度为[0~32]个字符。

默认取值:

不涉及

url

否

String

参数解释:

客户自定义的拉流地址

约束限制:

不涉及

取值范围:

只能由英文字符组成,且长度为[0~1024]个字符。

默认取值:

不涉及

stream_selection

否

Array of StreamSelectionItem objects

参数解释:

从全量流中过滤出一个码率在[min, max]区间的流。如果不需要码率过滤可不选。

约束限制:

不涉及

hls_version

否

String

参数解释:

HLS版本号

约束限制:

不涉及

取值范围:

长度为[0~10]个字符。

默认取值:

不涉及

segment_duration_seconds

是

Integer

参数解释:

频道输出分片的时长,为必选项,单位:秒。

约束限制:

修改分片时长会影响已录制内容的时移和回看服务,请谨慎修改!

默认取值:

不涉及

取值范围:

1~10

playlist_window_seconds

否

Integer

参数解释:

频道直播返回分片的窗口长度,为频道输出分片的时长乘以数量后得到的值。实际返回的分片数不小于3个。单位:秒。

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~86400

encryption

否

Encryption object

参数解释:

加密信息

约束限制:

不涉及

ads

否

Object

参数解释:

广告配置

约束限制:

不涉及

ext_args

否

Object

参数解释:

其他额外参数

约束限制:

不涉及

request_args

否

PackageRequestArgs object

参数解释:

播放相关配置

约束限制:

不涉及

ad_marker

否

Array of strings

参数解释:

广告标识。

约束限制:

不能超过10条。HLS取值:["ENHANCED_SCTE35"]。

enable_access

否

Boolean

参数解释:

允许本输出可以直接从源站拉流

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

  • true:允许output访问

  • false:禁止output访问

默认取值:

false

allow_all_ip_access

否

Boolean

参数解释:

是否放通所有的IP访问

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

  • true:允许所有的IP地址访问,ip_whitelist配置不生效

  • false:不允许所有的IP地址访问,ip_whitelist生效,仅在ip_whitelist配置的ip地址才能访问

默认取值:

false

ip_whitelist

否

String

参数解释:

允许直接从源站拉流的IP白名单

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

长度限制[0~2048]

默认取值:

不涉及

cdn_identifier_header

否

HttpHeader object

参数解释:

HttpHeader CDN认证头域

约束限制:

不涉及

origin_domain_master

否

String

参数解释:

源站分发域名-主region

约束限制:

domain.region跟CreateOttChannelInfoReq.region一致

满足正则:^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.){2,}[a-zA-Z]{2,16}$

取值范围:

长度限制[0~255]

默认取值:

不涉及

origin_domain_slave

否

String

参数解释:

源站分发域名-备region

约束限制:

origin_domain_master的备源站

1、国际站

新加坡的备源站:香港

香港的备源站:新加坡

利雅得的备源站:新加坡

约翰内斯堡的备源站:新加坡

2、中国站

北京四的备源站:上海

满足正则:^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.){2,}[a-zA-Z]{2,16}$

取值范围:

长度限制[0~255]

默认取值:

不涉及

manifest_name

否

String

参数解释:

output的索引文件名字

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

大小写字母、数字、"-"、"."、"_",不能有/路径,且长度限制[0~128]

默认取值:

index

slave_url

否

String

参数解释:

备region拉流地址,无需配置,由服务生成。

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

长度限制[0~1024]

默认取值:

不涉及

manifest_selection

否

ManifestSelection object

参数解释:

流选择配置

约束限制:

不涉及

表17 DashPackageItem

参数

是否必选

参数类型

描述

id

否

String

参数解释:

package唯一标识id,由服务创建并在查询时返回,修改endpoints时需要携带。

约束限制:

不涉及

取值范围:

只能由英文字符组成,且长度为[0~32]个字符。

默认取值:

不涉及

url

否

String

参数解释:

客户自定义的拉流地址

约束限制:

不涉及

取值范围:

只能由英文字符组成,且长度为[0~1024]个字符。

默认取值:

不涉及

stream_selection

否

Array of StreamSelectionItem objects

参数解释:

从全量流中过滤出一个码率在[min, max]区间的流。如果不需要码率过滤可不选。

约束限制:

不涉及

segment_duration_seconds

是

Integer

参数解释:

频道输出分片的时长,为必选项,单位:秒。

修改分片时长会影响已录制内容的时移和回看服务,请谨慎修改!

约束限制:

不涉及

默认取值:

不涉及

取值范围:

1~10

playlist_window_seconds

否

Integer

参数解释:

频道直播返回分片的窗口长度,为频道输出分片的时长乘以数量后得到的值。实际返回的分片数不小于3个。单位:秒。

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~86400

encryption

否

Encryption object

参数解释:

加密信息

约束限制:

不涉及

ads

否

Object

参数解释:

广告配置

约束限制:

不涉及

ext_args

否

Object

参数解释:

其他额外参数

约束限制:

不涉及

request_args

否

PackageRequestArgs object

参数解释:

播放相关配置

约束限制:

不涉及

ad_marker

否

String

参数解释:

广告标识

约束限制:

DASH取值:"xml+bin"

取值范围:

  • xml+bin

  • xml

默认取值:

不涉及

suggested_presentation_delay

否

Integer

参数解释:

建议播放延迟,单位:秒

约束限制:

不涉及

默认取值:

不涉及

取值范围:

1~120

minimum_update_period

否

Integer

参数解释:

索引最短更新周期,单位:秒

约束限制:

不涉及

默认取值:

不涉及

取值范围:

1~120

min_buffer_time

否

Integer

参数解释:

最小缓冲时间,单位:秒

约束限制:

不涉及

默认取值:

不涉及

取值范围:

1~120

enable_access

否

Boolean

参数解释:

允许本输出可以直接从源站拉流。

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

  • true:允许output访问

  • false:禁止output访问

默认取值:

false

allow_all_ip_access

否

Boolean

参数解释:

是否放通所有的IP访问

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

  • true:允许所有的IP地址访问,ip_whitelist配置不生效

  • false:不允许所有的IP地址访问,ip_whitelist生效,仅在ip_whitelist配置的ip地址才能访问

默认取值:

false

ip_whitelist

否

String

参数解释:

允许直接从源站拉流的IP白名单

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

长度限制[0~2048]

默认取值:

不涉及

cdn_identifier_header

否

HttpHeader object

参数解释:

HttpHeader CDN认证头域

约束限制:

不涉及

origin_domain_master

否

String

参数解释:

源站分发域名-主region

约束限制:

domain.region跟CreateOttChannelInfoReq.region一致

满足正则:^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.){2,}[a-zA-Z]{2,16}$

取值范围:

长度限制[0~255]

默认取值:

不涉及

origin_domain_slave

否

String

参数解释:

源站分发域名-备region

约束限制:

origin_domain_master的备源站

1、国际站

新加坡的备源站:香港

香港的备源站:新加坡

利雅得的备源站:新加坡

约翰内斯堡的备源站:新加坡

2、中国站

北京四的备源站:上海

满足正则:^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.){2,}[a-zA-Z]{2,16}$

取值范围:

长度限制[0~255]

默认取值:

不涉及

manifest_name

否

String

参数解释:

output的索引文件名字

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

大小写字母、数字、"-"、"."、"_",不能有/路径,且长度限制[0~128]

默认取值:

index

slave_url

否

String

参数解释:

备region拉流地址,无需配置,由服务生成。

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

长度限制[0~1024]

默认取值:

不涉及

manifest_selection

否

ManifestSelection object

参数解释:

流选择配置

约束限制:

不涉及

表18 MssPackageItem

参数

是否必选

参数类型

描述

id

否

String

参数解释:

package唯一标识id,由服务创建并在查询时返回,修改endpoints时需要携带。

约束限制:

不涉及

取值范围:

只能由英文字符组成,且长度为[0~32]个字符。

默认取值:

不涉及

url

否

String

参数解释:

客户自定义的拉流地址

约束限制:

不涉及

取值范围:

只能由英文字符组成,且长度为[0~1024]个字符。

默认取值:

不涉及

stream_selection

否

Array of StreamSelectionItem objects

参数解释:

从全量流中过滤出一个码率在[min, max]区间的流。如果不需要码率过滤可不选。

约束限制:

不涉及

segment_duration_seconds

是

Integer

参数解释:

频道输出分片的时长,为必选项,单位:秒。

约束限制:

修改分片时长会影响已录制内容的时移和回看服务,请谨慎修改!

默认取值:

不涉及

取值范围:

1~10

playlist_window_seconds

否

Integer

参数解释:

频道直播返回分片的窗口长度,为频道输出分片的时长乘以数量后得到的值。实际返回的分片数不小于3个。单位:秒。

约束限制:

不涉及

默认取值:

不涉及

取值范围:

0~86400

encryption

否

Encryption object

参数解释:

加密信息

约束限制:

不涉及

ext_args

否

Object

参数解释:

其他额外参数

约束限制:

不涉及

delay_segment

否

Integer

参数解释:

延播时长,单位:秒

约束限制:

不涉及

默认取值:

不涉及

取值范围:

1~10

request_args

否

PackageRequestArgs object

参数解释:

播放相关配置

约束限制:

不涉及

enable_access

否

Boolean

参数解释:

允许本输出可以直接从源站拉流

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

  • true:允许output访问

  • false:禁止output访问

默认取值:

false

allow_all_ip_access

否

Boolean

参数解释:

是否放通所有的IP访问

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

  • true:允许所有的IP地址访问,ip_whitelist配置不生效

  • false:不允许所有的IP地址访问,ip_whitelist生效,仅在ip_whitelist配置的ip地址才能访问

默认取值:

false

ip_whitelist

否

String

参数解释:

允许直接从源站拉流的IP白名单

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

长度限制[0~2048]

默认取值:

不涉及

cdn_identifier_header

否

HttpHeader object

参数解释:

HttpHeader CDN认证头域

约束限制:

不涉及

origin_domain_master

否

String

参数解释:

源站分发域名-主region

约束限制:

domain.region跟CreateOttChannelInfoReq.region一致

满足正则:^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.){2,}[a-zA-Z]{2,16}$

取值范围:

长度限制[0~255]

默认取值:

不涉及

origin_domain_slave

否

String

参数解释:

源站分发域名-备region

约束限制:

origin_domain_master的备源站

1、国际站

新加坡的备源站:香港

香港的备源站:新加坡

利雅得的备源站:新加坡

约翰内斯堡的备源站:新加坡

2、中国站

北京四的备源站:上海

满足正则:^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.){2,}[a-zA-Z]{2,16}$

取值范围:

长度限制[0~255]

默认取值:

不涉及

manifest_name

否

String

参数解释:

output的索引文件名字

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

大小写字母、数字、"-"、"."、"_",不能有/路径,且长度限制[0~128]

默认取值:

index

slave_url

否

String

参数解释:

备region拉流地址,无需配置,由服务生成。

约束限制:

频道类型mode是ONLY_OS类型

取值范围:

长度限制[0~1024]

默认取值:

不涉及

manifest_selection

否

ManifestSelection object

参数解释:

流选择配置

约束限制:

不涉及

表19 StreamSelectionItem

参数

是否必选

参数类型

描述

key

否

String

参数解释:

拉流URL中用于码率过滤的参数

约束限制:

不涉及

取值范围:

长度限制[1,1024]

默认取值:

不涉及

max_bandwidth

否

Integer

参数解释:

最大码率,单位:bps

约束限制:

不涉及

取值范围:

[1,104857600](100Mbps)

默认取值:

不涉及

min_bandwidth

否

Integer

参数解释:

最小码率,单位:bps

约束限制:

不涉及

取值范围:

[1,104857600](100Mbps)

默认取值:

不涉及

表20 Encryption

参数

是否必选

参数类型

描述

key_rotation_interval_seconds

否

Integer

参数解释:

密钥缓存时间。如果密钥不变,默认缓存七天。

约束限制:

目前为保留字段,不支持配置。

默认取值:

不涉及

取值范围:

0~604800

encryption_method

否

String

参数解释:

加密方式。

约束限制:

目前为保留字段,不支持配置。

取值范围:

  • SAMPLE-AES

  • AES-128

默认取值:

SAMPLE-AES

level

否

String

参数解释:

加密等级。

约束限制:

不涉及

取值范围:

  • content:一个频道对应一个密钥

  • profile:一个码率对应一个密钥

默认取值:

content

resource_id

是

String

参数解释:

客户生成的DRM内容ID。

约束限制:

不涉及

取值范围:

支持英文字符与“-”、“_”,且长度限制[1~128]个字符

默认取值:

不涉及

system_ids

是

Array of strings

参数解释:

system_id枚举值。

  • HLS:FairPlay

  • DASH:Widevine、PlayReady

  • MSS:PlayReady

约束限制:

不涉及

url

是

String

参数解释:

获取密钥的DRM地址

约束限制:

不涉及

取值范围:

长度限制[1~2048]个字符

默认取值:

不涉及

speke_version

是

String

参数解释:

drm speke版本号

约束限制:

当前仅支持1.0版本

取值范围:

  • '1.0'

默认取值:

不涉及

request_mode

是

String

参数解释:

请求模式。

约束限制:

不涉及

取值范围:

  • direct_http:HTTP(S)直接访问DRM。

  • functiongraph_proxy:FunctionGraph代理访问DRM。

默认取值:

不涉及

http_headers

否

Array of HttpHeader objects

参数解释:

需要添加在drm请求头中的鉴权信息。

约束限制:

仅direct_http请求模式支持配置http_headers。最多支持配置5个。

urn

否

String

参数解释:

functiongraph_proxy请求模式需要提供functiongraph的urn。

约束限制:

不涉及

取值范围:

长度限制[1~512]个字符

默认取值:

不涉及

表21 HttpHeader

参数

是否必选

参数类型

描述

key

是

String

参数解释:

请求头中key字段名

约束限制:

不涉及

取值范围:

长度[1~128]个字符。

默认取值:

不涉及

value

是

String

参数解释:

请求头中key对应的value值

约束限制:

不涉及

取值范围:

长度[1~8000]个字符。

默认取值:

不涉及

表22 PackageRequestArgs

参数

是否必选

参数类型

描述

record

否

Array of RecordRequestArgs objects

参数解释:

录制播放相关配置

约束限制:

不涉及

取值范围:

限制最多12个

默认取值:

不涉及

timeshift

否

Array of TimeshiftRequestArgs objects

参数解释:

时移播放相关配置

约束限制:

不涉及

取值范围:

限制最多12个

默认取值:

不涉及

live

否

Array of LiveRequestArgs objects

参数解释:

直播播放相关配置

约束限制:

不涉及

取值范围:

限制最多12个

默认取值:

不涉及

表23 RecordRequestArgs

参数

是否必选

参数类型

描述

start_time

否

String

参数解释:

开始时间

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

end_time

否

String

参数解释:

结束时间

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

format

否

String

参数解释:

格式

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

unit

否

String

参数解释:

单位

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

表24 TimeshiftRequestArgs

参数

是否必选

参数类型

描述

back_time

否

String

参数解释:

时移时长字段名

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

unit

否

String

参数解释:

单位

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

表25 LiveRequestArgs

参数

是否必选

参数类型

描述

delay

否

String

参数解释:

时延字段

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

unit

否

String

参数解释:

单位

约束限制:

不涉及

取值范围:

长度限制[0,20]

默认取值:

不涉及

表26 ManifestSelection

参数

是否必选

参数类型

描述

stream_order

否

String

参数解释:

流排序模式

约束限制:

不涉及

取值范围:

  • ORIGINAL:保持原始顺序,即按照频道配置中转码模板的顺序

  • VIDEO_BITRATE_ASCENDING:按照视频码率升序

  • VIDEO_BITRATE_DESCENDING:按照视频码率降序

默认取值:

ORIGINAL

min_video_bandwidth

否

Integer

参数解释:

视频码率过滤的最小码率

约束限制:

单位:bit/s;取值必须比max_video_bandwidth小

取值范围:

0~2147483647

默认取值:

0

max_video_bandwidth

否

Integer

参数解释:

视频码率过滤的最大码率

约束限制:

单位:bit/s;取值必须比min_video_bandwidth大

取值范围:

0~2147483647

默认取值:

2147483647

表27 EncoderSettingsExpand

参数

是否必选

参数类型

描述

audio_descriptions

否

Array of audio_descriptions objects

参数解释:

音频输出配置的描述信息

约束限制:

不涉及

取值范围:

最大支持8个

默认取值:

不涉及

video_descriptions

否

VideoDescriptions object

参数解释:

视频输出配置的描述信息

约束限制:

不涉及

表28 audio_descriptions

参数

是否必选

参数类型

描述

name

是

String

参数解释:

音频输出配置的名称

约束限制:

同一个频道不同的音频输出配置名称,不允许重复

取值范围:

仅支持大小写字母,数字,中划线(-),下划线(_),且字符长度[1,255]。

默认取值:

不涉及

audio_selector_name

是

String

参数解释:

音频选择器名称

约束限制:

不涉及

取值范围:

仅支持大小写字母,数字,中划线(-),下划线(_),且字符长度[1,255]。

默认取值:

不涉及

language_code_control

否

String

参数解释:

语言代码控制。这里的设置不会修改音频实际的语言,只会修改音频对外展示的语言

约束限制:

同一个频道不同的音频输出配置名称,不允许重复

取值范围:

  • FOLLOW_INPUT:如果所选音频选择器对应的输出音频有语言,则与其保持一致,否则会以这里配置的语言代码和流名称进行兜底。推荐当前选项为默认值

  • USE_CONFIGURED:用户根据实际情况自定义输出音频的语言和流名称

默认取值:

不涉及

language_code

否

String

参数解释:

语言代码

约束限制:

不涉及

取值范围:

输入2或3个小写字母

默认取值:

不涉及

stream_name

否

String

参数解释:

流名称

约束限制:

不涉及

取值范围:

字符长度[0,255]

默认取值:

不涉及

表29 VideoDescriptions

参数

是否必选

参数类型

描述

gop_duration_seconds

否

Integer

参数解释:

自定义gop时长,单位秒

约束限制:

默认值0,表示跟随源流,不支持7和9,值无效时按默认值处理

取值范围:

0~10

默认取值:

0

响应参数

状态码:201

表30 响应Body参数

参数

参数类型

描述

result_code

String

参数解释:

响应码

取值范围:

详见状态码

result_msg

String

参数解释:

响应描述

取值范围:

详见状态码描述

domain

String

参数解释:

推流域名,响应参数不涉及。

取值范围:

不涉及

app_name

String

参数解释:

组名或应用名,响应参数不涉及。

取值范围:

不涉及

id

String

参数解释:

频道ID。频道唯一标识,响应参数不涉及。

取值范围:

不涉及

sources

Array of SourceRsp objects

参数解释:

推流URL列表,最多返回12条。创建频道时,只有入流协议为RTMP_PUSH、SRT_PUSH时,会返回推流URL列表。

表31 SourceRsp

参数

参数类型

描述

url

String

参数解释:

频道源流URL,用于外部拉流

取值范围:

长度限制[1~1024]个字符

bitrate

Integer

参数解释:

码率,单位:bps

取值范围:

0~104857600

width

Integer

参数解释:

分辨率对应宽的值

取值范围:

0~4096

height

Integer

参数解释:

分辨率对应高的值

取值范围:

0~2160

enable_snapshot

Boolean

参数解释:

描述是否使用该流做截图

取值范围:

  • true:使用该流做截图

  • false:

状态码:400

表32 响应Body参数

参数

参数类型

描述

result_code

String

参数解释:

错误码

取值范围:

详见错误码。

result_msg

String

参数解释:

错误描述

取值范围:

详见错误码描述。

domain

String

参数解释:

推流域名,响应参数不涉及。

取值范围:

不涉及

app_name

String

参数解释:

组名或应用名,响应参数不涉及。

取值范围:

不涉及

id

String

参数解释:

频道ID,频道唯一标识。响应参数不涉及。

取值范围:

不涉及

请求示例

POST https://{endpoint}/v1/{project_id}/ott/channels

{
  "domain" : "push.testott.hls.com",
  "app_name" : "ott",
  "id" : "test",
  "name" : "testname",
  "input" : {
    "input_protocol" : "FLV_PULL",
    "sources" : [ {
      "url" : "http://192.168.0.1/ott/test.flv?vhost=pull.testott.hls.com",
      "bitrate" : 1024,
      "width" : 100,
      "height" : 100
    } ],
    "failover_conditions" : {
      "input_loss_threshold_msec" : 100,
      "input_preference" : "EQUAL"
    }
  },
  "record_settings" : {
    "rollingbuffer_duration" : 86400
  },
  "endpoints" : [ {
    "hls_package" : [ {
      "url" : "pull.testott.hls.com/ott/test/index.m3u8",
      "hls_version" : "1",
      "segment_duration_seconds" : 4,
      "playlist_window_seconds" : 3600
    } ],
    "dash_package" : [ {
      "url" : "pull.testott.hls.com/ott/test/index.mpd",
      "segment_duration_seconds" : 4,
      "playlist_window_seconds" : 3600
    } ],
    "mss_package" : [ {
      "url" : "pull.testott.hls.com/ott/channel/manifest",
      "segment_duration_seconds" : 4,
      "playlist_window_seconds" : 3600
    } ]
  } ],
  "state" : "OFF"
}

响应示例

状态码:201

Demo Information

{
  "result_code" : "LIVE.100000000",
  "result_msg" : "SUCCESS",
  "domain" : "push.testott.hls.com",
  "app_name" : "ott",
  "id" : "test",
  "sources" : [ {
    "url" : "rtmp://push.testott.hls.com/ott/test_1024?request_source=ott&channel_id=test",
    "bitrate" : 1024,
    "width" : 100,
    "height" : 100
  } ]
}

状态码:400

Error response

{
  "result_code" : "LIVE.100011001",
  "result_msg" : "output url pull.testott.hls.com/ott/test/index.m3u8 is exist",
  "domain" : "push.testott.hls.com",
  "app_name" : "ott",
  "id" : "test"
}

状态码

状态码

描述

201

Demo Information

400

Error response

错误码

请参见错误码。