智能多媒体 API

  • 视频采样缩略图

    最近更新时间:2017-09-15 21:55:08

    视频采样缩略图接口(vsample)用于从视频文件中截取多帧画面并按指定大小缩放成图片。

    接口规格

    vsample/<Format>
           /ss/<StartTime>
           /t/<Duration>
           /s/<Resolution>
           /rotate/<Degree>
           /interval/<Interval>
           /pattern/<Pattern>
    
    参数名称 必填 说明
    <Format> 输出的目标截图格式,支持jpgpng等。
    /ss/<StartTime> 指定截取视频的开始时刻,单位:秒。
    /t/<Duration> 采样总时长,单位:秒。
    /s/<Resolution> 缩略图分辨率,单位:像素(px),格式:<Width>x<Height>,宽度取值范围为1-1920,高度取值范围为1-1080。
    默认为原始视频分辨率。
    /rotate/<Degree> 指定顺时针旋转的度数,可取值为90180270auto
    默认为不旋转。
    /interval/<Interval> 指定采样间隔,单元:秒。
    默认为5秒。
    /pattern/<Pattern> 指定各张截图的资源名格式,支持如下魔法变量:
    $(count) :六个占位符的数字串,不足位的填充前导零即%06d,如 000001
    注意:需要对设定值做URL安全的Base64编码

    请求语法

    可以通过预转持久化数据处理或者持久化数据处理(即 触发持久化)的方式来调用

    示例

    取视频第7秒到第607秒之间,以5秒为间隔的截图(即第7秒、第12秒、第17秒……依此类推),图片格式为jpg,宽度为480px,高度为360px,文件命名模板为vframe-$(count)

    预转持久化数据处理上传的token中指定persistentOps:

    {
    "scope":                "qiniu-ts-demo:thinking-in-go.mp4",
    "deadline":             1390528576,
    "persistentOps":        "vsample/jpg/ss/7/t/600/s/480x360/pattern/dmZyYW1lLSQoY291bnQp",
    "persistentNotifyUrl":  "http://fake.com/qiniu/notify"
    }
    

    持久化数据处理(即触发持久化):

    POST /pfop/ HTTP/1.1
    Host: api.qiniu.com  
    Content-Type: application/x-www-form-urlencoded  
    Authorization: QBox <AccessToken>  
    
    bucket=qiniu-ts-demo&key=thinking-in-go.mp4&fops=vsample%2Fjpg%2Fss%2F7%2Ft%2F600%2Fs%2F480x360%2Fpattern%2FdmZyYW1lLSQoY291bnQp
    

    以 Python Sdk 为例,具体可以看下音视频转码的示例。需要在音视频转码的示例的基础修改数据处理命令 fops ,将其修改为:

    fops = vsample%2Fjpg%2Fss%2F7%2Ft%2F600%2Fs%2F480x360%2Fpattern%2FdmZyYW1lLSQoY291bnQp
    

    注意: 其他语言 Sdk 可在官方 Sdks 下载,可以通过查看 Sdk 使用指南中触发持久化预转持久化使用。

    以上内容是否对您有帮助?
  • Close