更新时间:2024-12-25 GMT+08:00

修改频道打包信息

功能介绍

修改频道打包信息。

URI

PUT /v1/{project_id}/ott/channels/endpoints

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

Access-Control-Allow-Internal

String

服务鉴权Token,服务开启鉴权,必须携带Access-Control-Allow-Internal访问服务。

Access-Control-Allow-External

String

服务鉴权Token,服务开启鉴权,必须携带Access-Control-Allow-External访问服务。

表3 请求Body参数

参数

是否必选

参数类型

描述

domain

String

频道推流域名

app_name

String

组名或应用名

id

String

频道ID。频道唯一标识,为必填项

endpoints

Array of EndpointItem objects

频道出流信息

表4 EndpointItem

参数

是否必选

参数类型

描述

hls_package

Array of HlsPackageItem objects

HLS打包信息

dash_package

Array of DashPackageItem objects

DASH打包信息

mss_package

Array of MssPackageItem objects

MSS打包信息

表5 HlsPackageItem

参数

是否必选

参数类型

描述

url

String

客户自定义的拉流地址,包括方法、域名、路径

stream_selection

Array of StreamSelectionItem objects

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

hls_version

String

HLS版本号

segment_duration_seconds

Integer

频道输出分片的时长,为必选项

单位:秒。取值范围:1-10

说明:

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

playlist_window_seconds

Integer

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

单位:秒。取值范围:0 - 86400(24小时转化成秒后的取值)

encryption

Encryption object

加密信息

ads

Object

广告配置

ext_args

Object

其他额外参数

request_args

PackageRequestArgs object

播放相关配置

ad_marker

Array of strings

广告标识。

HLS取值:["ENHANCED_SCTE35"]。

表6 DashPackageItem

参数

是否必选

参数类型

描述

url

String

客户自定义的拉流地址,包括方法、域名、路径

stream_selection

Array of StreamSelectionItem objects

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

segment_duration_seconds

Integer

频道输出分片的时长,为必选项

单位:秒。取值范围:1-10

说明:

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

playlist_window_seconds

Integer

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

单位:秒。取值范围:0 - 86400(24小时转化成秒后的取值)

encryption

Encryption object

加密信息

ads

Object

广告配置

ext_args

Object

其他额外参数

request_args

PackageRequestArgs object

播放相关配置

ad_marker

String

广告标识。

DASH取值:"xml+bin"。

suggested_presentation_delay

Integer

建议播放延迟

单位:秒。取值范围:[1 - 120]

minimum_update_period

Integer

索引最短更新周期

单位:秒。取值范围:[1 - 120]

min_buffer_time

Integer

最小缓冲时间

单位:秒。取值范围:[1 - 120]

表7 MssPackageItem

参数

是否必选

参数类型

描述

url

String

客户自定义的拉流地址,包括方法、域名、路径

stream_selection

Array of StreamSelectionItem objects

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

segment_duration_seconds

Integer

频道输出分片的时长,为必选项

单位:秒。取值范围:1-10

说明:

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

playlist_window_seconds

Integer

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

单位:秒。取值范围:0 - 86400(24小时转化成秒后的取值)

encryption

Encryption object

加密信息

ext_args

Object

其他额外参数

delay_segment

Integer

延播时长,单位秒

request_args

PackageRequestArgs object

播放相关配置

表8 StreamSelectionItem

参数

是否必选

参数类型

描述

key

String

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

max_bandwidth

Integer

最大码率,单位:bps

取值范围:0 - 104,857,600(100Mbps)

min_bandwidth

Integer

最小码率,单位:bps

取值范围:0 - 104,857,600(100Mbps)

表9 Encryption

参数

是否必选

参数类型

描述

key_rotation_interval_seconds

Integer

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

请注意:目前为保留字段,不支持配置。

encryption_method

String

加密方式。

请注意:目前为保留字段,不支持配置。

level

String

取值如下:

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

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

默认值:content

resource_id

String

客户生成的DRM内容ID

system_ids

Array of strings

system_id枚举值。

取值如下:

  • HLS:FairPlay

  • DASH:Widevine、PlayReady

  • MSS:PlayReady

url

String

获取密钥的DRM地址

speke_version

String

drm speke 版本号 当前只支持1.0

request_mode

String

请求模式。

取值如下:

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

  • functiongraph_proxy:FunctionGraph代理访问DRM。

http_headers

Array of HttpHeader objects

需要添加在drm请求头中的鉴权信息。最多支持配置5个。

仅direct_http请求模式支持配置http_headers。

urn

String

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

表10 HttpHeader

参数

是否必选

参数类型

描述

key

String

请求头中key字段名

value

String

请求头中key对应的value值

表11 PackageRequestArgs

参数

是否必选

参数类型

描述

record

Array of RecordRequestArgs objects

录制播放相关配置

timeshift

Array of TimeshiftRequestArgs objects

时移播放相关配置

live

Array of LiveRequestArgs objects

直播播放相关配置

表12 RecordRequestArgs

参数

是否必选

参数类型

描述

start_time

String

开始时间

end_time

String

结束时间

format

String

格式

unit

String

单位

表13 TimeshiftRequestArgs

参数

是否必选

参数类型

描述

back_time

String

时移时长字段名

unit

String

单位

表14 LiveRequestArgs

参数

是否必选

参数类型

描述

delay

String

时延字段

unit

String

单位

响应参数

状态码: 200

表15 响应Body参数

参数

参数类型

描述

result_code

String

错误码

result_msg

String

错误描述

domain

String

推流域名

app_name

String

组名或应用名,为必填项

id

String

频道ID。频道唯一标识,为必填项

sources

Array of SourceRsp objects

推流URL列表。创建频道时,只有入流协议为RTMP_PUSH时,会返回推流URL列表

表16 SourceRsp

参数

参数类型

描述

url

String

RTMP推流地址

bitrate

Integer

码率。

单位:bps。取值范围:(0,104,857,600](100Mbps)

width

Integer

分辨率对应宽的值。取值范围:0 - 4096(4K)

height

Integer

分辨率对应高的值。取值范围:0 - 2160(4K)

enable_snapshot

Boolean

描述是否使用该流做截图

状态码: 400

表17 响应Body参数

参数

参数类型

描述

result_code

String

错误码

result_msg

String

错误描述

domain

String

推流域名

app_name

String

组名或应用名,为必填项

id

String

频道ID。频道唯一标识,为必填项

请求示例

PUT https://{endpoint}/v1/{project_id}/ott/channels/endpoints

{
  "domain" : "push.testott.hls.com",
  "app_name" : "ott",
  "id" : "test",
  "endpoints" : [ {
    "hls_package" : [ {
      "url" : "pull.testott.hls.com/ott/test/index.m3u8",
      "stream_selection" : [ {
        "key" : "sss",
        "max_bandwidth" : 1000,
        "min_bandwidth" : 100
      } ],
      "hls_version" : "1",
      "segment_duration_seconds" : 4,
      "playlist_window_seconds" : 3600
    } ],
    "dash_package" : [ {
      "url" : "pull.testott.hls.com/ott/test/index.mpd",
      "stream_selection" : [ {
        "key" : "bitrate=900000-1800000",
        "max_bandwidth" : 1800000,
        "min_bandwidth" : 900000
      } ],
      "segment_duration_seconds" : 4,
      "playlist_window_seconds" : 3600
    } ],
    "mss_package" : [ {
      "url" : "pull.testott.hls.com/ott/channel/manifest",
      "stream_selection" : [ {
        "key" : "bitrate=900000-1800000",
        "max_bandwidth" : 1800000,
        "min_bandwidth" : 900000
      } ],
      "segment_duration_seconds" : 4,
      "playlist_window_seconds" : 3600
    } ]
  } ]
}

响应示例

状态码: 200

Demo Information

{
  "result_code" : "LIVE.100000000",
  "result_msg" : "SUCCESS",
  "domain" : "push.testott.hls.com",
  "app_name" : "ott",
  "id" : "test"
}

状态码: 400

Error response

{
  "result_code" : "LIVE.100011001",
  "result_msg" : "param check failed",
  "domain" : "push.testott.hls.com",
  "app_name" : "ott",
  "id" : ""
}

状态码

状态码

描述

200

Demo Information

400

Error response

错误码

请参见错误码