AI avatar for online course videos: build and update lessons
Use an AI avatar as your online course instructor: one reusable avatar, a short talking video per section, captions, and one Timeline join per lesson.
You can use an AI avatar as the instructor for an online course by building each lesson from short presenter segments. With Sume, create one reusable avatar for the whole course, render one talking video of up to 60 seconds per section, caption each segment, and join a lesson's segments with Timeline 1.0. When a section changes, re-render only that segment and join the lesson again.
Sume facts come from the Generate avatar video, Timeline 1.0, and Generation admission docs, read on 2026-09-27. Anything called current behavior is read from Sume's code. The join request itself is covered in How to make an AI avatar video longer than 60 seconds.
How do I set up one AI instructor for the whole course?
Create the instructor once with POST /v1/avatar-1.0/generate, from a prompt, a profile of traits, or a reference photo, and give it a stable avatar_handle. The docs recommend a stable handle so your app reuses a simple name instead of a generated id. Creating an avatar costs $0.95 per avatar; How to create a reusable AI avatar shows the request.
Then fix the look for the course: send the same avatar_handle, scene, aspect_ratio, and quality on every segment. Each video resolves one avatar and one shared scene, so pick one classroom prompt or one photo of your set as the scene for every lesson.
How do I turn a lesson into avatar segments?
Give each section of the lesson its own POST /v1/avatar-1.0/talking-video job:
- Sume accepts a script it estimates at 4–60 seconds. Today the estimate counts 2.8 words per second and rounds up clip by clip, so a section holds roughly 165 words at most; how many words fit in 60 seconds explains the count.
- Put the course, lesson, section, and version in each
Idempotency-Key, as below. - Submit a lesson's segments together. Your workspace's
concurrency_limitsets how many process at once; valid extra jobs wait asqueued, and a submit fails with429 queue_fullonly when the queue is full too. - Caption each segment before the join, with
POST /v1/video-captionsor captions stored on an avatar video preview. Today a caption job refuses a source longer than 60 seconds, so it can't take a finished lesson. - Join the captioned segments in one
POST /v1/timeline-1.0/renderper lesson, over their own audio detached withPOST /v1/audio-detach.
curl -X POST https://api.sume.com/v1/avatar-1.0/talking-video \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: course-101-lesson-02-section-03-v1" \
-d '{
"avatar_handle": "course_instructor",
"script": "In this section, we set up the project folder and run the first build.",
"scene": { "type": "prompt", "prompt": "Bright classroom, whiteboard behind the presenter" },
"aspect_ratio": "16:9",
"quality": "plus"
}'How do I update one section without redoing the lesson?
Replace one segment and rebuild only that lesson's render:
- Re-render the changed section with its new script under a new key, such as
…-section-03-v2. The docs say to reuse a key only for the same operation and payload; the same key with a changed body answers409 idempotency_conflict. - Caption the new segment and detach its audio, as for the first version.
- Render the lesson again with the new segment and its audio in place of the old ones, reusing the unchanged segments. If its length changed, shift the later slots'
startvalues to match. Only that lesson's Timeline render runs again, not the whole course.
What are the limits?
Each piece has its own cap:
- English speech only, in current code: the clip prompt asks for English, and avatar voices are cloned in English. For a course in another language, the route is TTS 1.0 with a
language, then VEED Fabric 1.0 lip sync. - Timeline takes only your workspace's
media.sume.comfiles, and the asset upload routes are hidden from the public API, so your own slides and screen recordings can't be added this way. audio.parts[]takes up to 20 files, so up to 20 segments join in one lesson render that way.
| Piece | Limit |
|---|---|
| One segment | Estimated 4–60 seconds, one avatar, one shared scene. |
| Shape and size | 1:1, 3:4, 9:16 (default), 4:3, or 16:9; resolution is currently 720p. |
| One caption job | A public HTTPS video with audible speech; today up to 60 seconds. |
| One lesson render | 1–1,800 seconds of audio and 1–200 slots, all Sume-hosted. |
What does an AI avatar course video cost?
Segments bill per second of video by quality tier: $0.184/s standard, $0.245/s plus, $0.55/s max (no product image). A 10-minute lesson at the default plus tier is $147.00 of avatar video. Each lesson render is listed at $0.10 per output minute, and each caption job reserves a fixed amount per clip of up to 60 seconds, listed in GET /v1/catalog. All are plus a 5.5% agent fee by default, and an update re-bills only the new segment, its caption and detach, and that lesson's render. AI avatar video pricing has the per-minute table.
Sources
Related posts
More in Use cases
- Talking avatar for PowerPoint presentations, slide by slide
Make a talking avatar presenter for PowerPoint: one Sume clip per slide, up to 60 seconds each, in 16:9 or 4:3 to match the slide, inserted as MP4.
- AI avatar for YouTube videos: Shorts and long-form
Use an AI avatar in YouTube videos: a 9:16 talking video of up to 60 seconds for a Short, or 16:9 segments joined into one long-form video.
- AI avatar language tutor: slow, captioned lesson videos
Make AI avatar language tutor videos: speak each lesson line slowly with TTS 1.0, lip sync a tutor avatar with Fabric, then caption each clip.
- AI book cover generator: a 1600×2560 Kindle ebook cover
Amazon KDP recommends ebook covers 2,560 pixels tall by 1,600 wide. ChatGPT Image 2.5 on Sume takes 1600 × 2560 exactly; add the title and author.
Written by Sume