AI presenter videos from a picture and script.
Give it a picture and a script, pick a voice, and get an MP4 with subtitles, ready for social media, video sites and courses.
Two kinds of video, one picture and script.Same picture, same script, same voice. Pick how much of the picture moves.

Good evening, and welcome to the show.
voiceAva · English
head · eyes · mouthtalking head · 768×1152Turn a picture and script into an AI presenter video.
Add a picture, paste a script, pick a voice, and download an MP4 with subtitles for social media, video sites, online courses and product pages.
Three ways to tell your running shoes are done. One: the foam stays flat after a run.
- Social media videos
- Video sites
- Online courses
- Product explainers
- Sales outreach
- Help center how-tos
- Employee onboarding
- Product launches
- Multilingual videos
From a picture and script to a video in three steps.In the console with a few clicks, or from your own system with the API.
- Step 1Pick a faceOne of yours, one of ours, or any picture you have the rights to.
- Step 2Write the script, pick a voiceUp to 4,000 characters, in the language of the voice you pick.
- Step 3Download the videoAn MP4, and the subtitles beside it as an SRT file.
What to know.
- Up to 5 minutesa script of up to 4,000 characters; longer is cut at a sentence
- MP4 + SRTsubtitles as a file beside the video, one cue per sentence
- Portrait or landscapesquare too, for a talking head
- 2 at once, 100 a daymore videos wait their turn
Videos from your own system.One request starts a video; ask how it is going, or have render.ready sent to your webhook.
Read the docsconst API = "https://api.avatargo.ai/v1"; const headers = { authorization: `Bearer ${process.env.AVATARGO_API_KEY}`, "content-type": "application/json" }; let render = await (await fetch(`${API}/renders`, { method: "POST", headers, body: JSON.stringify({ avatarId: "av_…", voiceId: "…", text: "Welcome to the course." }) })).json(); // queued → rendering → ready (or have render.ready sent to your webhook) while (render.status === "queued" || render.status === "rendering") { await new Promise((r) => setTimeout(r, 5000)); render = await (await fetch(`${API}/renders/${render.id}`, { headers })).json(); } console.log(render.videoUrl, render.subtitlesUrl);
import json, os, time, urllib.request API = "https://api.avatargo.ai/v1" H = {"Authorization": f"Bearer {os.environ['AVATARGO_API_KEY']}", "Content-Type": "application/json"} def call(path, body=None): req = urllib.request.Request(API + path, headers=H, method="POST" if body else "GET", data=json.dumps(body).encode() if body else None) with urllib.request.urlopen(req) as res: return json.load(res) render = call("/renders", {"avatarId": "av_…", "voiceId": "…", "text": "Welcome to the course."}) while render["status"] in ("queued", "rendering"): time.sleep(5); render = call(f"/renders/{render['id']}") print(render["videoUrl"], render["subtitlesUrl"])
Questions.
Which languages can it speak?
The language of the voice you pick. Write the script in that language; we don't translate it.
Can I use my own photo, or someone else's?
Yes, if you have the rights to it. For someone else's face, you need their consent; you confirm it when you add the picture.
Can I use the videos commercially?
Yes. The videos made for you are yours: post them, use them in ads, courses and products, with the voice and the face in them. Our Terms still apply: the picture must be one you have the rights to, and a video must not make a real person appear to say what they never said.
Are the subtitles burned into the video?
No. They come as an SRT file beside the MP4, so the platform you post to can show them, or you can edit them first.
How long does a video take?
A talking head, usually a short wait. A half-body video takes minutes: about 8.5 seconds for each second of video, longer when a renderer has to start first.
Can I make them from my own system?
Yes, with the API: start a video with one request, then ask how it is going or have it sent to your webhook when it is ready.
Make your first video.
A picture and script, and a voice to read it: that is all it takes.

