手机登录/注册
X
登录
前言:在阿里云oss视频上传后,我们如何获取视频封面呢?而不是通过上传方式获取封面.其实OSS本身提供了视频截帧功能
OSS提供的视频截帧功能和OSS图片服务功能使用的方式是类似的,都是通过传入x-oss-process参数的方式来实现的。最简单的使用方式就是直接在public的object的url后面拼接处理字符串。比如如下的url:
http://a-image-demo.oss-cn-qingdao.aliyuncs.com/demo.mp4?x-oss-process=video/snapshot,t_10000,m_fast
当前仅支持对视频编码格式为H264的视频文件进行视频截帧。
OSS当前没有默认保存视频截帧的操作,视频截帧的图片需手动下载到本地。
如果需要对private的object调用视频截图,需要使用SDK进行鉴权,接口和OSS图片服务的调用接口一致。
图片处理除了能够处理已经存在的图片内容,还能够截取出视频中的指定位置产生图片,完成视频截帧。
参数
操作分类:video
操作名称:snapshot
参数 | 描述 | 取值范围 |
---|---|---|
t | 截图时间,单位ms | [0,视频时长] |
w | 截图宽度,如果指定为0则自动计算 | 像素值:[0,视频宽度] |
h | 截图高度,如果指定为0则自动计算,如果w和h都为0则输出为原视频宽高 | 像素值:[0,视频高度] |
m | 截图模式,不指定则为默认模式,根据时间精确截图,如果指定为fast则截取该时间点之前的最近的一个关键帧 | 枚举值:fast |
f | 输出图片格式 | 枚举值:jpg、png |
找到视频7s处的内容,输出为jpg。
http://a-image-demo.oss-cn-qingdao.aliyuncs.com/demo.mp4?x-oss-process=video/snapshot,t_7000,f_jpg,w_800,h_600,m_fast
找到视频50s处的内容,输出为jpg,精确为对应的时间。
http://a-image-demo.oss-cn-qingdao.aliyuncs.com/demo.mp4?x-oss-process=video/snapshot,t_50000,f_jpg,w_800,h_600