Example 1: Creating a Channel
This section describes how to call Media Live APIs to create a channel.
Used APIs
To use token-based authentication, obtain a user token and add X-Auth-Token to the request header of the service API when making an API request.
Procedure
- Obtain a user token and use it to authenticate the calling of Media Live APIs.
For details, see Making an API Request. CN North-Beijing4 is used as an example. If you need to call a Media Live API in another region, replace the endpoint with the IAM endpoint of the corresponding region.
POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "password", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "projectname" } } } }
As shown in Figure 1, information in the red box indicates the user token. - Select the POST request method and enter the request URI.
POST https://live.cn-north-4.myhuaweicloud.com/v1/{project_id}/ott/channels
live.cn-north-4.myhuaweicloud.com is the endpoint of Media Live. You can obtain the endpoint from Endpoints.The region where an IAM API is called must be the same as the region where a Media Live API is called. For example, the user token obtained when you call an IAM API in the CN North-Beijing4 region can only be used to authenticate the requests for calling Media Live APIs in the CN North-Beijing4 region.
- In the request header, add X-Auth-Token and set its value to be the token obtained in 1.
- Transfer the following parameters in the request body. For details about the parameters, see the API for creating an OTT channel.
{ "domain": "push.domain.com", "app_name": "ott", "id": "testChannel", "name": "testChannel", "input": { "input_protocol": "FLV_PULL", "sources": [ { "url": "http://push.domain.com/ott/testChannel/index.flv", "bitrate": 2048, "width": 2096, "height": 1024 } ] }, "record_settings": { "rollingbuffer_duration": 3600 }, "encoder_settings": [ { "template_id": "hd" } ], "endpoints": [ { "hls_package": [ { "url": "pull.domain.com/ott/testChannel/index.m3u8", "stream_selection": [ { "key": "bitrate=900000-1800000", "max_bandwidth": 1800000, "min_bandwidth": 900000 } ], "segment_duration_seconds": 4, "encryption": { "drm_content_id": "xxxx", "system_ids": [ "FairPlay" ], "auth_info": "Basic xxxx", "km_url": "https://drmdomain/xxx" } } ] } ], "state": "ON" }
If the request succeeds, only a status code 201 Created is returned.
If the request fails, the following error code and error description are returned along with a status code 400 Bad Request:
"result_code": "LIVE.100011001", "result_msg": "Request parameters is invalid"
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot