Fabric 1.0

Submit a fabric-1.0 job

Start an asynchronous job that animates a source image to lip-sync it to an audio track, producing a talking video at the resolution you choose.

Inputs

  • image_url — public URL of the source image (should contain a face)
  • audio_url — public URL of the audio track to speak
  • resolution — output resolution: 480p or 720p

What happens next

The job is accepted immediately — you get 202 Accepted with a job_id and status PROCESSING. Rendering runs in the background; poll GET /v1/fabric-1.0/{job_id} until the job is COMPLETED or FAILED.

post/v1/fabric-1.0

Headers

X-Veed-Store-IO'0' | '1'

Set to 0 to not store this request's and response's bodies. They will then not be available in your request logs for debugging. Defaults to 1 (stored).

X-Veed-Media-Expiration-Secondsinteger

Number of seconds before signed media URLs returned for this request expire. Defaults to 86400 (1 day).

Request body

$schemastring uri

A URL to the JSON Schema for this object.

audio_urlstring uri required

URL of the audio track to lip-sync to.

image_urlstring uri required

URL of the source image to animate.

resolution'720p' | '480p' required

Output video resolution.

Example request

{
  "$schema": "https://api.veed.io/schemas/FabricInput.json",
  "audio_url": "https://media.veed.io/in.mp3",
  "image_url": "https://media.veed.io/in.png",
  "resolution": "720p"
}

Response

Accepted

$schemastring uri

A URL to the JSON Schema for this object.

Example response

{
  "$schema": "https://api.veed.io/schemas/ResourceFabricJob.json",
  "data": {
    "result": {
      "video": {
        "content_type": "video/mp4"
      }
    }
  }
}

Changes

No recorded changes to this endpoint across all 1 revision of this API.