Vidova Platform · Video rendering API
Render video from code. On GPUs, in seconds.
Send a film as XML or TypeScript. Vidova renders it on cloud GPUs and gives you an MP4. A one-minute 1080p film is ready in 13.5 seconds, for $0.06.
npm install @vidova/platformimport { Vidova } from '@vidova/platform'
const vidova = new Vidova({ apiKey: process.env.VIDOVA_KEY! })
const project = await vidova.projects.create({ name: 'Launch' })
const { film } = await vidova.films.create({
projectId: project.id,
name: 'Launch',
source: `<film fps="30" width="1920" height="1080">
<track id="titles">
<text duration="3" size="120">Launch day</text>
</track>
</film>`,
})
const job = await vidova.render(film.id, {
type: 'video', resolution: '1080p', fps: 30,
})
const done = await vidova.jobs.wait(job.id)
await vidova.artifacts.download(done.artifacts[0].id, 'launch.mp4')Launch · 1080p · 30 fps · 60 s
- Queued
- Rendering
- Assembling
- Done
- Ready in
- 13.5 s
- Charged
- 6 credits$0.06
- to render a 1-minute 1080p film
- 13.5 s
- to render a 5-minute 1080p film
- 60.0 s
- faster than Remotion on the same GPU
- 2.7×
- per minute of 1080p video
- $0.06
Benchmark
Faster on the same GPU
The same 1080p films, rendered by Vidova and by Remotion on the same GPU. Shorter bars are faster.
10-second film
1-minute film
| Film | Vidova | Remotion |
|---|---|---|
| 10-second film, text cards | 3.8 s | 11.7 s |
| 10-second film, animated shapes | 5.6 s | 16.2 s |
| 1-minute film, text cards | 12.7 s | 46.1 s |
| 1-minute film, animated shapes | 27.5 s | 74.5 s |
Quickstart
Three calls to an MP4
Save a film, ask for a render, download the file.
import { Vidova } from '@vidova/platform'
const vidova = new Vidova({ apiKey: process.env.VIDOVA_KEY! })
const project = await vidova.projects.create({ name: 'Launch' })
const { film } = await vidova.films.create({
projectId: project.id,
name: 'Launch',
source: `<film fps="30" width="1920" height="1080">
<track id="titles">
<text duration="3" size="120">Launch day</text>
</track>
</film>`,
})
const job = await vidova.render(film.id, {
type: 'video', resolution: '1080p', fps: 30,
})
const done = await vidova.jobs.wait(job.id)
await vidova.artifacts.download(done.artifacts[0].id, 'launch.mp4')import os
from vidova_platform import Vidova
vidova = Vidova(api_key=os.environ["VIDOVA_KEY"])
project = vidova.projects.create(name="Launch")
film = vidova.films.create(
project_id=project["id"],
name="Launch",
source=open("launch.film").read(),
)
job = vidova.render(film["film"]["id"], {"type": "video", "resolution": "1080p", "fps": 30})
done = vidova.jobs.wait(job["id"])
vidova.artifacts.download(done["artifacts"][0]["id"], "launch.mp4")# A quote fixes the exact price for 15 minutes
curl https://platform.vidova.ai/api/v1/quotes \
-H "Authorization: Bearer $VIDOVA_KEY" -H "Idempotency-Key: quote-1" \
-H "Content-Type: application/json" \
-d '{"filmId":"flm_...","output":{"type":"video","resolution":"1080p","fps":30}}'
# Render at that price, then wait for job.succeeded
curl https://platform.vidova.ai/api/v1/renders \
-H "Authorization: Bearer $VIDOVA_KEY" -H "Idempotency-Key: render-1" \
-H "Content-Type: application/json" \
-d '{"quoteId":"quo_...","maxMillicredits":6000}'Built for production
What you get
- The price before you renderEvery render has a fixed price up front. A failed or cancelled render costs nothing.
- WebhooksGet a signed event when a render starts and finishes.
- Your own storageKeep your files in your own S3 or R2 bucket.
- Teams and keysInvite your team and give each key only what it needs.
Pricing
Pay for the seconds you render
No seats, no licence fee and no monthly minimum. A failed or cancelled render costs nothing.
- 540p$0.025per minute of video
- 720p$0.04per minute of video
- 1080p$0.06per minute of video
- Still$0.002per frame
Credits come in packs of $10, $50 and $200. $10 renders 166 minutes of 1080p video. Automatic top-ups refill your credits when they run low.
SDKs
TypeScript and Python
TypeScript@vidova/platform 0.1.1
For Node.js 20 or later, Bun and Deno. Includes webhook signature checks.
npm install @vidova/platformPythonvidova-platform 0.1.1
For Python 3.9 or later, with no dependencies. Includes webhook signature checks.
pip install vidova-platformQuestions
Frequently asked questions
What is Vidova Platform?
An API that renders videos from code. You send a film, add your media and motion graphics, and ask for a render. Vidova gives you a download link to the MP4.
How fast is it?
Through the API, a one-minute 1080p film was ready in 13.5 s and a five-minute 1080p film in 60.0 s. On the same GPU, Vidova rendered one-minute films 2.7× faster than Remotion or more.
How much does it cost?
You pay per second of output: $0.025 a minute at 540p, $0.04 at 720p and $0.06 at 1080p. A still frame costs $0.002. Credits come in packs from $10. There are no seats, no licence fee and no monthly minimum.
Do I need my own GPUs or servers?
No. Vidova runs the GPUs. You call the API from your server with a key, or use the TypeScript or Python SDK.
Get started
Render your first video in five minutes.
Sign in, buy credits from $10 and follow the quickstart.