把视频剪成帧级精准的片段,无需打包 ffmpeg。
剪出的片段恰好停在你指定的那一帧——Fotovid 替你处理关键帧,首尾边界干净利落。这个即插即用的 ffmpeg 微服务直接给你一个托管的 MP4 URL。
curl -X POST https://api.fotovid.co/v1/video/trim \
-H "Authorization: Bearer p6_YOUR_KEY_ID:YOUR_SECRET" \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://cdn.yoursite.com/recording.mp4",
"params": {
"start": "00:00:05",
"end": "00:00:20"
}
}'在 serverless 上剪视频,比看上去麻烦得多
剪一个片段听起来只是一条 ffmpeg 命令,但要在 Vercel、Lambda 或 Workers 上跑这条命令,就意味着要随代码打包一个 70MB+ 的静态二进制,和冷启动、内存上限较劲,还要把输入流式拉进来、再把输出推到某个能长期存放的地方。帧级精准的剪切必须重新编码,CPU 占用和执行时长会直接冲破大多数 serverless 函数的限制。最后你维护的,是一堆和自家产品毫无关系的基础设施。
- ffmpeg 二进制远远超出 serverless 的打包体积和内存上限
- 帧级精准剪切必须重新编码——又慢又吃 CPU,函数经常直接超时
- 你仍然得自己下载输入文件,还要给剪好的片段找地方托管
- 当你需要干净的高光片段、社交平台短片或预览小样,又不想自己养一套媒体处理流水线时,就用这个接口
请求参数
POST /v1/video/trim
| Field | Type | Default | Description |
|---|---|---|---|
| source_url* | string (URL) | — | 源视频的 HTTPS URL |
| params.start* | string | number | — | "HH:MM:SS(.mmm)" 或秒数(如 5.5) |
| params.end* | string | number | — | 必须大于 start;超出文件末尾时按 EOF 截断 |
三步完成第一次调用
- 1领取免费 API 密钥
注册后在控制台创建一个密钥。调用时通过 Authorization: Bearer p6_<key_id>:<secret> 请求头完成鉴权。每个新账号都自带免费的用量 credits,$1 可买到 100 credits——一次剪辑调用消耗 1 credit。
- 2调用 POST /v1/video/trim
向 https://api.fotovid.co/v1/video/trim 发送请求,JSON 请求体中包含 source_url(输入视频的 HTTPS URL)和一个装有 start 与 end 的 params 对象。两者都接受 HH:MM:SS.mmm 时间戳或纯秒数;剪切在左闭右开区间 [start, end) 上做到帧级精准,并用 x264 重新编码为 MP4。
- 3使用返回的片段 URL
响应是一段扁平 JSON,包含 id、type、指向剪好 MP4 的 fotovid 托管 url、expires_at 以及片段时长 duration。把文件下载下来、存一份自己的副本,存放位置完全由你掌控——之后再对外分发、作为附件发送,或者交给工作流的下一步。
