Skip to main content

Video limits

Both 1920 × 1080 landscape and 1080 × 1920 portrait videos are supported. A square video must fit within 1080 × 1080. Odd pixel dimensions may be rounded down by one pixel during encoding. max_duration_seconds is a hard input limit and credit reservation. It does not trim the video. A longer source fails validation after inspection.

Direct HTTPS URLs

The API downloads video_url from the processing server. The URL must:
  • Use HTTPS on the standard port, with a public hostname.
  • Return the video directly with HTTP 200 and no redirect.
  • Be reachable without cookies or additional authorization headers.
  • Contain no embedded username/password or URL fragment.
  • Remain valid while the job is waiting and downloading.
Signed object-storage URLs are supported when they meet these requirements. Account for queue time when choosing their expiration. URLs for local networks, localhost, private addresses, and custom ports are rejected. A YouTube page, a cloud-drive sharing page, or a login page is not a direct media URL.

Uploads

There is no public upload endpoint in this release. Upload your media to your own object storage, then provide its direct HTTPS URL.

Transcript format

The downloaded JSON transcript contains the full text and individual words:
Times are measured in seconds, not milliseconds, from the start of the source video. The example timestamps above are illustrative.