FFmpeg Media · FFmpeg Media

Extract FramesComing Soon

🚧 Coming soon — docs preview only, online run not yet available.
📌 What is thisExport image frames by interval or FPS.
💡 When to useUse to turn a video into an image sequence.

Endpoints

UsageMethodPath
Submit taskPOST/v1/ffmpeg/frames
Query ResultGET/v1/ffmpeg/info?id={taskId}
Recommended polling intervalPoll every 3-5s (response includes progress 0-100) until status = succeeded / failed. Single-task timeout is 300s with auto-refund.

Request Parameters

ParamTypeRequiredDescription
inputUrlstringRequiredInput media URL, must be on the platform CDN allowlist (upload first to obtain it)
intervalnumberInterval (sec) [0.5,60], default 1; or use fps
fpsnumberFrames per sec [0.1,5]; or use interval
formatstringImage format: jpg / png, default jpg
webhookUrlstringCompletion webhook URL (optional)

Request Example

curl -X POST https://api.cqtai.com/v1/ffmpeg/frames \
  -H 'Authorization: Bearer <API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{ "inputUrl": "https://cdn.novapi.ai/tmp/video.mp4", "interval": 2, "format": "jpg" }'
# -> { "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 input length (x your user rate). Auto-refunded on failure.