Modifying Channel Packaging Information
Function
Modifies channel packaging information.
URI
PUT /v1/{project_id}/ott/channels/endpoints
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For details about how to obtain the project ID, see Obtaining a Project ID. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. This parameter is mandatory when token authentication is used. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token. |
Access-Control-Allow-Internal |
No |
String |
Service authentication token. If authentication is enabled for a service, Access-Control-Allow-Internal must be carried to access the service. |
Access-Control-Allow-External |
No |
String |
Service authentication token. If authentication is enabled for a service, Access-Control-Allow-External must be carried to access the service. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
domain |
Yes |
String |
Ingest domain name of a channel. |
app_name |
Yes |
String |
Group name or application name. |
id |
Yes |
String |
Unique ID of a channel. This parameter is mandatory. |
endpoints |
No |
Array of EndpointItem objects |
Channel output stream information. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
hls_package |
No |
Array of HlsPackageItem objects |
HLS packaging information. |
dash_package |
No |
Array of DashPackageItem objects |
DASH packaging information. |
mss_package |
No |
Array of MssPackageItem objects |
MSS packaging information. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
url |
Yes |
String |
A customized streaming URL, including the method, domain name, and path. |
stream_selection |
No |
Array of StreamSelectionItem objects |
Filters out a stream whose bitrate is in the range of [min, max] from all streams. If bitrate filtering is not required, you do not need to specify this parameter. |
hls_version |
No |
String |
HLS version number. |
segment_duration_seconds |
Yes |
Integer |
Output segment duration of a channel. This parameter is mandatory. Unit: second. Value range: 1 to 10 Changing the segment duration will affect time-shifted viewing and catch-up TV of the recorded content. Exercise caution when performing this operation. |
playlist_window_seconds |
No |
Integer |
Total output segment duration of a channel. The value is the output segment duration multiplied by the number of segments. There are at least three returned segments. Unit: second. Value range: 0–86,400 (value of converting 24 hours to seconds) |
encryption |
No |
Encryption object |
Encryption information. |
ads |
No |
Object |
Advertising configuration |
ext_args |
No |
Object |
Other additional parameters |
request_args |
No |
PackageRequestArgs object |
Playback configuration |
ad_marker |
No |
Array of strings |
Advertisement ID. For HLS, the value is ["ENHANCED_SCTE35"]. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
url |
Yes |
String |
A customized streaming URL, including the method, domain name, and path. |
stream_selection |
No |
Array of StreamSelectionItem objects |
Filters out a stream whose bitrate is in the range of [min, max] from all streams. If bitrate filtering is not required, you do not need to specify this parameter. |
segment_duration_seconds |
Yes |
Integer |
Output segment duration of a channel. This parameter is mandatory. Unit: second. Value range: 1 to 10 Changing the segment duration will affect time-shifted viewing and catch-up TV of the recorded content. Exercise caution when performing this operation. |
playlist_window_seconds |
No |
Integer |
Total output segment duration of a channel. The value is the output segment duration multiplied by the number of segments. There are at least three returned segments. Unit: second. Value range: 0–86,400 (value of converting 24 hours to seconds) |
encryption |
No |
Encryption object |
Encryption information. |
ads |
No |
Object |
Advertising configuration |
ext_args |
No |
Object |
Other additional parameters |
request_args |
No |
PackageRequestArgs object |
Playback configuration |
ad_marker |
No |
String |
Advertisement ID. For DASH, the value is xml+bin. |
suggested_presentation_delay |
No |
Integer |
Recommended stream delay Unit: second. Value range: 1 to 120 |
minimum_update_period |
No |
Integer |
Shortest index update period Unit: second. Value range: 1 to 120 |
min_buffer_time |
No |
Integer |
Minimum buffer time Unit: second. Value range: 1 to 120 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
url |
Yes |
String |
A customized streaming URL, including the method, domain name, and path. |
stream_selection |
No |
Array of StreamSelectionItem objects |
Filters out a stream whose bitrate is in the range of [min, max] from all streams. If bitrate filtering is not required, you do not need to specify this parameter. |
segment_duration_seconds |
Yes |
Integer |
Output segment duration of a channel. This parameter is mandatory. Unit: second. Value range: 1 to 10 Changing the segment duration will affect time-shifted viewing and catch-up TV of the recorded content. Exercise caution when performing this operation. |
playlist_window_seconds |
No |
Integer |
Total output segment duration of a channel. The value is the output segment duration multiplied by the number of segments. There are at least three returned segments. Unit: second. Value range: 0–86,400 (value of converting 24 hours to seconds) |
encryption |
No |
Encryption object |
Encryption information. |
ext_args |
No |
Object |
Other additional parameters |
delay_segment |
No |
Integer |
Playback delay, in seconds. |
request_args |
No |
PackageRequestArgs object |
Playback configuration |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key |
No |
String |
Parameter used for bitrate filtering in a streaming URL. |
max_bandwidth |
No |
Integer |
Maximum bitrate, in bit/s. Value range: 0-104,857,600 (100 Mbit/s) |
min_bandwidth |
No |
Integer |
Minimum bitrate, in bit/s. Value range: 0-104,857,600 (100 Mbit/s) |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key_rotation_interval_seconds |
No |
Integer |
Key cache time. If the key remains unchanged, the data is cached for seven days by default. This field is reserved and cannot be configured. |
encryption_method |
No |
String |
Encryption mode. This field is reserved and cannot be configured. |
level |
No |
String |
The options are as follows:
Default value: content |
resource_id |
Yes |
String |
DRM content ID generated by the customer |
system_ids |
Yes |
Array of strings |
Enumerated value of system_id. Options: HLS: FairPlay DASH: Widevine, PlayReady MSS: PlayReady |
url |
Yes |
String |
DRM address for obtaining a key |
speke_version |
Yes |
String |
DRM SPEKE version. Currently, only version 1.0 is supported. |
request_mode |
Yes |
String |
Request mode. Options: direct_http: accessing the DRM using HTTP(S) functiongraph_proxy: accessing the DRM using a FunctionGraph proxy |
http_headers |
No |
Array of HttpHeader objects |
Authentication information to be added to the DRM request header. A maximum of five items can be added. Only the direct_http request mode allows configuring http_headers. |
urn |
No |
String |
The functiongraph_proxy request mode requires the URN of FunctionGraph. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
key |
Yes |
String |
key field name in the request header |
value |
Yes |
String |
value corresponding to the key in the request header |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
record |
No |
Array of RecordRequestArgs objects |
Recording configuration |
timeshift |
No |
Array of TimeshiftRequestArgs objects |
Time shifting configuration |
live |
No |
Array of LiveRequestArgs objects |
Livestreaming configuration |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
start_time |
No |
String |
Start time |
end_time |
No |
String |
End time |
format |
No |
String |
Format |
unit |
No |
String |
Unit |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
result_code |
String |
Error code. |
result_msg |
String |
Error description. |
domain |
String |
Ingest domain name. |
app_name |
String |
Group name or application name. This parameter is mandatory. |
id |
String |
Unique ID of a channel. This parameter is mandatory. |
sources |
Array of SourceRsp objects |
Ingest URL list. During channel creation, the ingest URL list is returned only when the input stream protocol is RTMP_PUSH. |
Parameter |
Type |
Description |
---|---|---|
url |
String |
RTMP ingest URL. |
bitrate |
Integer |
Bitrate. Unit: bit/s. Value range: (0, 104,857,600] (100 Mbit/s) |
width |
Integer |
Width corresponding to the resolution. Value range: 0–4096 (4K) |
height |
Integer |
Height corresponding to the resolution. Value range: 0–2160 (4K) |
enable_snapshot |
Boolean |
Whether to use the stream for snapshot capturing. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
result_code |
String |
Error code. |
result_msg |
String |
Error description. |
domain |
String |
Ingest domain name. |
app_name |
String |
Group name or application name. This parameter is mandatory. |
id |
String |
Unique ID of a channel. This parameter is mandatory. |
Example Requests
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 } ] } ] }
Example Responses
Status code: 200
Demo Information
{ "result_code" : "LIVE.100000000", "result_msg" : "SUCCESS", "domain" : "push.testott.hls.com", "app_name" : "ott", "id" : "test" }
Status code: 400
Error response
{ "result_code" : "LIVE.100011001", "result_msg" : "param check failed", "domain" : "push.testott.hls.com", "app_name" : "ott", "id" : "" }
Status Codes
Status Code |
Description |
---|---|
200 |
Demo Information |
400 |
Error response |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.