调用 CreateRecordPresetV2
接口创建一个录制配置,在直播流传输过程中,视频直播服务端将根据您直播流地址参数匹配录制配置,对直播流进行录制。
CreateRecordPresetV2
接口支持创建 Vhost、Vhost + App 和 Vhost + App + Stream 三个级别的配置,当存在多个级别的配置时优先级依次升高。例如,当通过 CreateRecordPresetV2
接口创建了 Vhost 和 Vhost + App 级别的录制配置时,直播流优先使用 Vhost + App 级别的录制配置。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateRecordPresetV2 | 接口名称。当前 API 的名称为 CreateRecordPresetV2 。 |
Version | String | 是 | 2023-01-01 | 接口版本。当前 API 的版本为 2023-01-01 。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Vhost | String | 是 | push.example.com | 域名空间,即直播流地址的域名所属的域名空间。您可以调用 ListDomainDetail 接口或在视频直播控制台的域名管理页面,查看需要录制的直播流使用的域名所属的域名空间。 |
App | String | 否 |
| 应用名称,取值与直播流地址的 说明
|
Stream | String | 否 |
| 流名称,取值与直播流地址的 StreamName 字段取值相同,支持填写星号(*)或由 1 到 100 位数字(0 - 9)、字母、下划线(_)、短横线(-)和句点(.)组成。 说明
|
RecordPresetConfig | Object of RecordPresetConfig | 是 | - | 直播流录制配置的详细配置。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
TranscodeRecord | Integer | 否 |
| 是否录制转码流,默认值为
说明 转码流和源流需至少选一个进行录制,即是否录制转码流( |
OriginRecord | Integer | 否 |
| 是否源流录制,默认值为
说明 转码流和源流需至少选一个进行录制,即是否录制转码流( |
SliceDuration | Integer | 否 | 5 | 录制为 HLS 格式时,单个 TS 切片时长,单位为秒,默认值为 10 ,取值范围为 [5,30]。 |
FlvParam | Object of RecordParam | 否 |
| 录制为 FLV 格式时的录制参数。 说明 您需至少配置一种录制格式,即 |
HlsParam | Object of RecordParam | 否 |
| 录制为 HLS 合适时的录制参数。 说明 您需至少配置一种录制格式,即 |
Mp4Param | Object of RecordParam | 否 |
| 录制为 MP4 格式时的录制参数。 说明 您需至少配置一种录制格式,即 |
TranscodeSuffixList | Array of String | 否 | ["_hd","_bd"] | 转码流后缀列表,转码流录制配置为根据转码流列表匹配(TranscodeRecord 取值为 2 )时生效,TranscodeSuffixList 默认配置为空,效果等同于录制全部转码流。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Enable | Boolean | 否 |
| 当前格式的录制是否开启,默认值为
|
Duration | Integer | 否 |
| 断流录制场景下,单文件录制时长,单位为秒,默认值为
说明
|
Splice | Integer | 否 |
| 断流录制场景下,断流拼接时长,单位为秒,默认值为
说明 断流录制场景仅在录制格式为 HLS 时生效,且断流录制和实时录制为二选一配置。 |
RealtimeRecordDuration | Integer | 否 |
| 实时录制场景下,单文件录制时长,单位为秒,默认值为 说明 如录制过程中出现断流,对应生成的录制文件时长也会相应缩短。 |
ContinueDuration | Integer | 否 | 180 | 实时录制场景下,断流等待时长,单位为秒,默认值为 180 ,取值范围为 [0,3600]。如果实际断流时间小于断流等待时长,录制任务不会停止;如果实际断流时间大于断流等待时长,录制任务会停止,断流恢复后重新开始一个新的录制任务。 |
TOSParam | Object of TOSParam | 否 |
| TOS 存储相关配置。 说明 录制文件只能选择一个位置进行存储,即 |
VODParam | Object of VODParam | 否 |
| VOD 存储相关配置。 说明 录制文件只能选择一个位置进行存储,即 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Enable | Boolean | 否 |
| 是否使用 TOS 存储,默认为
|
Bucket | String | 否 |
| TOS 存储对应的 Bucket。例如,存储位置为 live-test-tos-example/live/liveapp 时, 说明 如果使用 TOS 存储,即 |
StorageDir | String | 否 | live/liveapp | TOS 存储对应 Bucket 下的存储目录,默认为空。例如,存储位置为 live-test-tos-example/live/liveapp 时,StorageDir 取值为 live/liveapp 。 |
ExactObject | String | 否 |
| 录制文件的存储规则,最大长度为 200 个字符,支持以
|
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Enable | Boolean | 否 |
| 是否使用 VOD 存储,默认为
|
VodNamespace | String | 否 |
| 视频点播(VOD)空间名称。可登录视频点播控制台查询。 说明 如果使用 VOD 存储,即 |
WorkflowID | String | 否 | 25524a2d891d7daf4b9 | 视频点播工作流模板 ID,对于存储在点播的录制文件,会使用该工作流模版对录制的视频进行处理,可登录视频点播控制台获取工作流模板 ID,默认为空。 |
ClassificationID | Integer | 否 | 1234 | 直播录制文件存储到点播时的视频分类 ID,您可以通过视频点播的 ListVideoClassifications 接口查询视频分类 ID 等信息,默认为空。 |
StorageClass | Integer | 否 |
| 直播录制文件存储到点播时的存储类型,存储类型介绍请参考媒资存储管理。默认值为
|
ExactObject | String | 否 |
| 录制文件的存储规则,最大长度为 200 个字符,支持以
|
本接口无特有的返回参数。更多信息请见返回结构。
POST https://live.volcengineapi.com?Action=CreateRecordPresetV2&Version=2023-01-01 { "Vhost":"push.example.com", "App":"live", "RecordPresetConfig": { "OriginRecord": 1, "HlsParam": { "Enable": "true", "RealtimeRecordDuration": 7200, "Splice": 0, "TOSParam": { "Enable": true, "Bucket": "live-test-tos-example", "StorageDir": "", "RecordObject": "record/{PubDomain}/{App}/{Stream}/{StartTime}_{EndTime}" }, }, } }
{ "ResponseMetadata": { "RequestId": "20220726*******************051B513A", "Action": "CreateRecordPresetV2", "Version": "2023-01-01", "Service": "live", "Region": "cn-north-1" } }
下表仅列出本接口特有的错误码。更多信息请参见公共错误码获取详细信息。
状态码 | 错误码 | 错误信息 | 说明 |
---|---|---|---|
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.Exist | %s already exist | 请求创建的资源(域名空间、域名、应用、配置模版、证书)已存在。 |
500 | InternalError | an internal error occurred, please contact the administrator. | 出现内部错误,请联系技术支持。 |
500 | InternalError.Preset | an internal error related to preset 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。