文档

视频转动图

更新时间:

您可以通过视频转动图功能,将视频转换为GIF、WebP等格式的动图。本文介绍视频转动图功能参数及示例。

使用场景

  • 社交媒体分享:在社交媒体平台上,由于加载速度和格式限制,常常需要将视频的关键片段转换成GIF进行分享。这样既能快速加载,又能够生动展示视频的精彩内容。

  • 网络论坛与博客交流:在一些帖子中,通过上传视频转成的GIF动态图,可以更直观地表达某个动作过程或者表情细节,增强文章的表现力。

  • 视频剪辑预览:在视频编辑过程中,制作人员可能先将编辑好的关键镜头生成GIF作为预览图,以便在不播放完整视频的情况下了解大致效果。

  • 营销推广:广告商和市场营销团队利用GIF动图的形式来吸引眼球,展示产品特性或服务亮点,这种形式简短且易于传播。

注意事项

  • 视频转动图仅支持异步处理(x-oss-async-process处理方式)。

  • 使用视频转动图前,需要先绑定IMM Project。关于控制台和API如何绑定,请参见快速入门AttachOSSBucket

  • 不支持匿名访问。

  • 必须拥有IMM处理所需的相关权限。更多信息,请参见权限

参数说明

操作名称:video/animation

具体参数如下表所示。

参数

类型

是否必须

描述

ss

int

视频转动图的起始时间,单位为毫秒。取值:

  • 0(默认值):从起始位置开始。

  • 大于0:从第ss毫秒开始。

f

string

动图输出格式,取值:

  • gif

  • webp

num

int

动图帧数量,默认为不限制数量(抽帧到视频结束)。

重要

当视频长度不足时,实际抽帧数量会小于设定的参数值。

inter

int

动图抽帧间隔,单位为毫秒,默认抽取所有视频帧。

说明

当该参数小于源视频帧间隔(帧率倒数)时,会按源视频帧间隔进行抽帧。

fps

float

动图帧率,默认为inter倒数。取值范围为[0, 240]。

说明

该参数控制动图的播放速度,当为默认值时与源视频播放速度一致。比默认值大将产生加速效果,比默认值小将产生减速效果。

w

int

输出动图的宽度,单位为px,取值范围为[32,4096],默认与源视频宽度相同。

h

int

输出动图的高度,单位为px,取值范围为[32,4096],默认与源视频高度相同。

scaletype

string

缩放方式。取值:

  • crop:缩放并裁剪。

  • stretch(默认值):拉伸以填满。

  • fill:缩放并保留黑边。

  • fit:缩放并不保留黑边,等比缩放。

说明

视频转动图时也会用到sys/saveasnotify参数。更多信息,请参见另存为消息通知

使用REST API

以每秒一帧的形式进行视频转动图

截帧信息

  • 转动图前

    • 视频名称:example.mkv

  • 处理方式

    • 截帧完成消息通知:发送MNS消息

  • 转动图后

    • 动图信息

      • 动图格式:gif

      • 视频间隔:1s

      • 输出图片分辨率:100x100

    • 文件存储路径

      • gif文件:oss://outbucket/outobjprefix.gif

处理示例

// 对文件example.mkv进行视频拼接。
POST /exmaple.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS qn6q**************:77Dv****************
 
x-oss-async-process=video/animation,f_gif,w_100,h_100,inter_1000|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ/notify,topic_QXVkaW9Db252ZXJ0

从视频的第5秒开始每0.5秒抽一帧转动图

截帧信息

  • 转动图前

    • 视频名称:example.mkv

  • 处理方式

    • 截帧完成消息通知:发送MNS消息

  • 转动图后

    • 动图信息

      • 动图格式:webp

      • 动图抽帧间隔:0.5s

      • 动图分辨率:宽高都为源视频的1/4

      • 动图帧率:25fps

    • 文件存储路径

      • webp文件:oss://outbucket/outobjprefix.webp

处理示例

// 对文件example.mkv进行视频转动图。
POST /exmaple.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS qn6q**************:77Dv****************
 
x-oss-async-process=video/animation,ss_5000,f_webp,pw_25,ph_25,fps_25|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ/notify,topic_QXVkaW9Db252ZXJ0

使用SDK

视频转动图仅支持异步处理,SDK使用方法请参见使用SDK

  • 本页导读 (1)