调用 CreatePullRecordTask
接口,创建一个在指定时间启动和结束的直播拉流录制任务,创建成功后,可以在直播过程中录制任意时长单路直播流并保存为视频文件。
调用本接口,可以根据您配置的录制开始时间 StartTime
和结束时间 EndTime
,对指定的拉流地址 StreamURL
进行录制,该任务的录制规则和与之关联的录制配置一致。录制任务和录制配置通过 Domain
和 App
参数关联,因此,直播录制任务的 Vhost
、Domain
和 App
需要在录制配置的生效范围内。例如,您需要创建一个 "Vhost":"live.example.com"
、"Domain":"live.example.push.com"
、"App":"live"
的录制任务;则调用 CreateRecordPresetV2
添加录制配置时,Vhost
的取值应该为 live.example.com
,App
的取值应该为 live
或 *
。
Vhost
、Domain
和 App
添加录制配置。下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreatePullRecordTask | 接口名称。当前 API 的名称为 CreatePullRecordTask 。 |
Version | String | 是 | 2023-01-01 | 接口版本。当前 API 的版本为 2023-01-01 。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Vhost | String | 否 | push.example.com | 域名空间。您可以调用 ListVhostRecordPresetV2 接口查看待使用的录制配置的 Vhost 取值。 |
Domain | String | 是 | push.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 个字符。 |
StreamURL | String | 是 |
| 待录制直播流的拉流地址。 说明 当前仅支持 FLV 格式的拉流地址。 |
StartTime | String | 否 | 2023-06-30T15:04:05+08:00 | 指定录制任务的开始时间,RFC3339 格式的时间戳,精度为秒。默认为空,表示立即开始。 |
EndTime | String | 否 | 2023-06-30T15:05:05+08:00 | 指定录制任务的结束时间,RFC3339 格式的时间戳,精度为秒,默认为空,表示录制到直播流结束。 |
下表仅列出本接口特有的返回参数。更多信息请见返回结构。
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
TaskId | String | f831f3b0********1aa4dcf7621 | 任务 ID,录制任务的唯一标识。 |
POST https://live.volcengineapi.com?Action=CreatePullRecordTask&Version=2023-01-01 { "Domain": "push.example.com", "App": "Live", "Stream": "example_stream", "StreamURL": "http://pull.example.com/Live/example_stream.flv", "Vhost": "push.example.com", "StartTime": "2023-06-30T15:04:05+08:00", "EndTime": "2023-06-30T15:05:05+08:00" }
{ "ResponseMetadata": { "RequestId": "202306041104200100100232280022D31", "Action": "CreatePullRecordTask", "Version": "2023-01-01", "Service": "live", "Region": "cn-north-1" }, "Result": { "TaskId": "f831f3b0********1aa4dcf7621" } }
下表仅列出本接口特有的错误码。更多信息请参见公共错误码获取详细信息。
状态码 | 错误码 | 错误信息 | 说明 |
---|---|---|---|
200 | CommonErr | - | 未分类错误。建议重试,如果仍返回该错误码,请联系技术支持。 |
400 | InvalidParam | - | 输入的参数无效或不符合要求,请参照请求参数说明进行检查。 |
400 | InvalidParam.BindError | Request parameter error, please check input data | 参数未通过校验,请检查参数类型是否正确。 |
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 | - | 未找到资源(域名空间、域名、应用、配置模版、证书)。建议重试,如果仍返回该错误码,请联系技术支持。 |
429 | RequestLimitExceeded | - | 请求创建的资源(域名空间、域名、应用、配置模版、证书)超出限制。 |
500 | InternalError | an internal error occurred, please contact the administrator. | 出现内部错误,请联系技术支持。 |
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。