FFmpeg 媒体处理 · FFmpeg
视频转 GIFNEW
📌 这是什么:把视频片段转成 GIF 动图。
💡 什么时候用:想做表情包/动图预览时用。
接口地址
| 用途 | 方法 | 路径 |
|---|---|---|
| 提交任务 | POST | /v1/ffmpeg/to_gif |
| 查询结果 | GET | /v1/ffmpeg/info?id={taskId} |
⏱ 建议轮询时间:建议每 3~5 秒轮询一次(响应含 progress 0→100),直到 status = succeeded / failed。单任务超时 300 秒、超时退款。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| inputUrl | string | 必填 | 输入媒体 URL,必须为平台 CDN 白名单域名(先用 upload 上传获取) |
| fps | integer | — | 帧率 [5,25],默认 12 |
| width | integer | — | 宽度像素 [160,720],等比缩放,默认 480 |
| start | number | — | 起始秒,默认 0 |
| duration | number | — | 截取时长(秒),默认全长 |
| webhookUrl | string | — | 完成回调地址(可选) |
请求示例
curl -X POST https://api.cqtai.com/v1/ffmpeg/to_gif \
-H 'Authorization: Bearer <API_KEY>' \
-H 'Content-Type: application/json' \
-d '{ "inputUrl": "https://cdn.novapi.ai/tmp/video.mp4", "fps": 12, "width": 480, "start": 2, "duration": 5 }'
# -> { "code":200, "data":"<taskId>" }响应示例
{
"code": 200,
"msg": "success",
"data": {
"taskId": "<taskId>",
"operation": "transcode",
"status": "succeeded",
"progress": 100,
"resultUrl": "https://cdn.novapi.ai/ffmpeg/xxx.mp4",
"costPoints": 3,
"errorMsg": null
}
}计费与积分
系数 1.2,按输出时长计(× 你的用户费率)。任务失败自动退回。