FFmpeg Media · FFmpeg Media
Video to GIFComing Soon
🚧 Coming soon — docs preview only, online run not yet available.
📌 What is this:Convert a video segment to an animated GIF.
💡 When to use:Use to make GIFs or animated previews.
Endpoints
| Usage | Method | Path |
|---|---|---|
| Submit task | POST | /v1/ffmpeg/to_gif |
| Query Result | GET | /v1/ffmpeg/info?id={taskId} |
⏱ Recommended polling interval:Poll every 3-5s (response includes progress 0-100) until status = succeeded / failed. Single-task timeout is 300s with auto-refund.
Request Parameters
| Param | Type | Required | Description |
|---|---|---|---|
| inputUrl | string | Required | Input media URL, must be on the platform CDN allowlist (upload first to obtain it) |
| fps | integer | — | FPS [5,25], default 12 |
| width | integer | — | Width px [160,720], aspect-kept, default 480 |
| start | number | — | Start sec, default 0 |
| duration | number | — | Clip length (sec), default full length |
| webhookUrl | string | — | Completion webhook URL (optional) |
Request Example
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>" }Response Example
{
"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
}
}Billing & Credits
Factor 1.2, billed by output length (x your user rate). Auto-refunded on failure.