视频缩略图 / 封面帧
视频缩略图 API:在任意时间点提取封面帧
给 Fotovid 一个时间点,它就抓取那一帧,输出一张托管好的图片——拿到就能直接用作图库预览图、信息流缩略图或视频封面。
curl -X POST https://api.fotovid.co/v1/video/extract-cover \
-H "Authorization: Bearer p6_YOUR_KEY_ID:YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://cdn.yoursite.com/clip.mp4",
"params": {
"at": 3
}
}'取一帧这件事,为什么比看上去难
视频缩略图在概念上再简单不过:跳到某个时间点,解码一帧,再编码成图片。但真做起来,你要么自己跑 ffmpeg,要么接一个大而全的媒体平台。把 ffmpeg 二进制打进包里会直接顶穿 serverless 的体积和内存上限,冷启动被拖慢,解码大文件还可能超出函数的超时时间。而你其实很少需要整条工具链——你只是想拿到一帧而已。
- ffmpeg 二进制对多数 serverless 打包体积来说都太大,还会吃掉冷启动的时间预算
- 为了取一帧而解码整个大视频,很容易撑爆函数的内存和超时上限
- 拉取源文件、跑处理流程、再把结果上传到某处,全都得你自己来
- 只是想要一张封面图,大而全的媒体平台却把转换、存储和 CDN 一整套都塞给你
请求参数
POST /v1/video/extract-cover
| Field | Type | Default | Description |
|---|---|---|---|
| source_url* | string (URL) | — | 源视频的 HTTPS URL(通过 HTTP Range 读取) |
| params.at | number | 1 | 从视频的第几秒抓取这一帧 |
How it works
三步完成第一次调用
- 1领取免费 API 密钥
注册并创建一个密钥。每个请求都用 Authorization: Bearer p6_<key_id>:<secret> 请求头鉴权。新密钥自带免费用量 credits,你可以先把缩略图流程接通,再谈付费。
- 2调用 POST /v1/video/extract-cover
发送一个 JSON 请求体:source_url 指向你视频的 https URL,再加上一个 params 对象,在其中指定要抓取的时间点(HH:MM:SS.mmm 字符串或秒数均可)。Fotovid 会拉取源文件,在我们的基础设施上解码该位置的那一帧并编码成图片——你的技术栈里不需要 ffmpeg。
- 3使用返回的托管图片 URL
响应是扁平 JSON,包含 id、type,以及一个指向所提取帧的 fotovid 托管 url,另有 expires_at。你可以直接把它渲染成缩略图或视频封面,也可以下载后在自己的存储桶里存一份副本,这样有效期由你掌控。
