CDN加速

视频拉取

更新时间:2021-04-20 16:55:38

描述

用户通过接口指定要上传的视频url,云视频后台主动拉取并保存于用户的云点播存储空间,该功能支持批量拉取。

请求说明

请求方式 Post/get
接口地址 https://api.cloudv.haplat.net/vod/videoManage/pullVideo
是否需要凭证 需要提供校验凭证

请求参数

参数名 类型 是否必填 描述
transNo string       否       业务ID,需用户自己控制唯一性
建议使用32位UUID,并且最长为32位字符串
cmd string 命令,格式如下
{tcTemplateName:xxxx,workflowCode:xxx}
fileList array 待拉取视频的url及对应参数(参数包含fileName、fileUrl、md5),用json字符串表示,并做url_safe_base64编码,最多一次性拉取50个。
例:用以下字符串做url_safe_base64编码[{“fileName”:“fileName1”,“fetchUrl”:“fetchUrl1”,“md5”:“md51”},{“fileName”:“fileName2”,“fetchUrl”:“fetchUrl2”,“md5”:“md52”}]
workflowId string 工作流ID
notifyUrl string 接收处理结果的url,该url不需要做加密操作。
通知内容详见“通知接口返回内容列表”,通知的内容会做url_safe_base64编码
separate int 拉取多个视频的处理指令是否分开通知。
取值范围 :
  • 0(整个批次合并通知)
  • 1(每个视频独立通知)
  • 默认为0

    fileList做url_safe_base64编码前格式为数组,数组元素的数据结构:

    参数名 类型 是否必填 描述
    fileName string       否       指定拉取文件的文件名,建议包含格式后缀,如果不包含格式后缀,拉取后的视频也会没有格式后缀。如果不传,以URL最后一段URI为文件名
    fetchUrl string 待拉取文件url
    md5 string 待拉取文件md5值;用于验证拉取后文件是否有损坏。不填就不校验

    返回参数

    通用返回结果详见返回结果

    示例

    输入示例

    
    curl -X POST http://api.cloudv.haplat.net/vod/videoManage/pullVideo 
      -H 'content-type: application/x-www-form-urlencoded; charset=utf-8' 
      -H "Host: api.cloudv.haplat.net" 
      <公共的头部参数>
      <自定义的头部参数>
      -d 'fileList=W3tmaWxlbmFtZTo8ZmlsZU5hbWUxPixmZXRjaFVybDo8ZmV0Y2hVcmwxPixtZDU6PG1kNTE+fSx7ZmlsZW5hbWU6PGZpbGVOYW1lMj4sZmV0Y2hVcmw6PGZldGNoVXJsMj4sbWQ1OjxtZDUyPn1d&notifyUrl=aHR0cHM6Ly93d3cuYmFpZHUuY29t&separate=1'
    
    

    注意:示例中的“公共参数”参见公共参数说明文档

    输出示例

    {
        "code": 200,
    	"message": "操作成功",
    	"data":{"taskId":"0123456789012345678912",
    	"transNo": "0123456789012345678912"}
    }
    
    
    

    错误码

    该接口无接口业务逻辑相关的错误码,通用错误码详见 返回结果

    视频拉取回调通知

    通过回调方式将上传结果反馈给客户侧,服务端向视频文件URL拉取接口中指定的回调通知地址发送http
    post请求,返回的数据将会以json的格式使用url_safe_base64编码后写入请求的body中。

    返回成功结果

    参数名 类型 描述
    taskId string 任务ID。
    transNo string 业务ID
    timestamp long 毫秒级别时间戳
    status int 任务状态
    取值范围 :
  • 1(处理中)
  • 2(已完成)
  • items array 每个视频拉取结果状态信息。 如果处理请求包括多个视频,则items包含多条信息。

    items字段数据格式

    参数名 类型 描述
    fileName string 文件名
    fetchUrl string 拉取URL
    md5 string 视频md5
    pullStatus string 拉取任务执行状态
    取值范围 :
  • 1(处理中)
  • 2(成功)
  • 3(失败)
  • cmdStatus string 一体化命令执行状态
    取值范围 :
  • 1(处理中)
  • 2(成功)
  • 3(失败)
  • videoInfo obj 包含视频id,视频文件列表。文件列表中包含码率,清晰度,分辨率,终端类型,视频URL

    videoInfo字段数据格式

    参数名 类型 描述
    videoId string 视频id
    duration double 时长
    videoFileList array 视频文件列表

    videoFileList字段数据格式

    参数名 类型 描述
    clarity int 清晰度。取值范围 :
  • 1(原画)
  • 2(流畅)
  • 3(标清)
  • 4(高清)
  • 5(超清)
  • serverType int 终端类型。取值范围 :
  • 0(PC)
  • 1(原视频)
  • bitrate int 码率
    resolution string 分辨率
    fileSize long 文件大小
    fileUrl string 视频url

    客户服务器响应规则:

    1. http状态码返回200则认为回调成功。

    2. 如果请求失败,会间隔10分钟后再次重试,重试3次,重试次数支持配置。