调用 GeneratePlayURL
接口,生成直播拉流地址。
视频直播拉流地址生成规则请参见最佳实践-生成直播地址。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | GeneratePlayURL | 接口名称。当前 API 的名称为 GeneratePlayURL 。 |
Version | String | 是 | 2023-01-01 | 接口版本。当前 API 的版本为 2023-01-01 。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Domain | String | 是 | pull.example.com | 拉流域名。您可以调用 ListDomainDetail 接口或在视频直播控制台的域名管理页面,查看直播流使用的拉流域名。 |
App | String | 是 | live | 应用名称,取值与直播流地址中 AppName 字段取值相同。支持由大小写字母(A - Z、a - z)、数字(0 - 9)、下划线(_)、短横线(-)和句点(.)组成,长度为 1 到 30 个字符。 |
Stream | String | 是 | example_stream | 流名称,取值与直播流地址中 StreamName 字段取值相同。支持由大小写字母(A - Z、a - z)、数字(0 - 9)、下划线(_)、短横线(-)和句点(.)组成,长度为 1 到 100 个字符。 |
Type | String | 否 |
| CDN 类型,默认值为
|
Suffix | String | 否 | 5 | 转码流后缀,默认为空,表示生成源流的拉流地址。配置不为空时表示生成转码流的拉流地址,可通过调用 ListVhostTransCodePreset 接口查询对应流的转码流后缀。 |
ValidDuration | Integer | 否 |
| 拉流地址的有效时长,单位为秒,超过有效时长后需要重新生成。缺省值为 说明 如果同时设置 |
ExpiredTime | String | 否 |
| 拉流地址的过期时间,RFC3339 格式的 UTC 时间,精度为秒,过期后需要重新生成。缺省情况下表示当前时间往后的 7 天。 说明 如果同时设置 |
下表仅列出本接口特有的返回参数。更多信息请见返回结构。
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
URLList | Array of URLList | - | 拉流地址信息列表。 |
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
URL | String | http://pull.example.com/live/example_stream.sdp | 生成的拉流地址。 |
Type | String |
| 地址类型,取值及含义如下所示。
|
CDN | String |
| CDN 类型。
|
Protocol | String | hls | 协议类型,包括 hls、flv、rtmp、udp 和 cmaf。 |
POST https://live.volcengineapi.com?Action=GeneratePlayURL&Version=2023-01-01 { "Domain": "pull.example.com", "App": "live", "Stream": "example_stream", "ExpiredTime": "2022-08-19T16:07:25+08:00" }
{ "ResponseMetadata": { "RequestId": "2022081915573801022524312506B8B2EA", "Action": "GeneratePlayURL", "Version": "2023-01-01", "Service": "live", "Region": "cn-north-1" }, "Result": { "URLList": [ { "CDN": "fcdn", "Protocol": "hls", "Type": "pull", "URL": "http://pull.example.com/live/example_stream.sdp" } ] } }
下表仅列出本接口特有的错误码。更多信息请参见公共错误码获取详细信息。
状态码 | 错误码 | 错误信息 | 说明 |
---|---|---|---|
200 | CommonErr | - | 未分类错误。建议重试,如果仍返回该错误码,请联系技术支持。 |
400 | InvalidParam | - | 输入的参数无效或不符合要求,请参照请求参数说明进行检查。 |
400 | InvalidParam.BindError | Request parameter error, please check input data | 参数未通过校验,请检查参数类型是否正确。 |
400 | InvalidParam.Format | %s format error | 参数格式错误,请检查错误消息中指定参数中是否存在非法字符或 URL 格式错误。 |
400 | InvalidParam.OutOfRange | %s should be one of {[%s]}%s should be between %d and %d | 参数超出允许范围,请检查错误消息中指定参数的取值是否超出取值范围。 |
400 | InvalidParam.TimeLogic | startTime later than endTime, etc. | 传入的时间参数不符合时间逻辑,请检查是否存在以下问题。开始时间晚于结束时间过期时间早于当前时间 |
403 | RequestForbidden | - | 请求被拒绝,当前账号下无请求的资源(域名空间、域名、应用、配置模版、证书)。 |
403 | RequestForbidden.AccountIDNotAllow | this AccountID does not have permission to access the corresponding resource, please check the request parameters | 请求被拒绝,当前账号下无请求的资源(域名空间、域名、应用、配置模版、证书)。 |
403 | RequestForbidden.BillingStatus | Billing status is not available for the AccountID, please activate the service or recharge. | 未开通视频直播服务或账号欠费,造成账单不可用,请检查服务开通情况和账号欠费情况。 |
404 | ResourceNotFound | - | 未找到资源(域名空间、域名、应用、配置模版、证书)。建议重试,如果仍返回该错误码,请联系技术支持。 |
500 | InternalError | an internal error occurred, please contact the administrator. | 出现内部错误,请联系技术支持。 |
500 | InternalError.VhostOrDomain | an internal error related to vhost or domain occurred, please contact the administrator. | 出现与域名空间(Vhost)或域名(Domain)相关的内部错误。请联系技术支持。 |
502 | InternalServiceError | an internal error occurred, please contact the administrator. | 服务间出现错误,请联系技术支持。 |
502 | InternalServiceError.BadResponse | an internal error occurred, please contact the administrator. | 服务间出现错误,请联系技术支持。 |
504 | InternalServiceTimeout | Internal Service is timeout. please contact the administrator. | 内部服务超时,请联系技术支持。 |
视频直播提供了配套的开发工具集 SDK,支持多种编程语言,帮助您更方便的调用 API。