omnihuman2

AI Course & Lesson Video Generator

Give your lessons a presenter. Upload an instructor photo and your narration, and generate a talking instructor video for courses, tutorials and training.

Input: Instructor photo + lesson narration · Output: MP4, 4–120 seconds

Sample: Courses & lessons · Instructor photo + lesson narration. Generated with OmniHuman 2.

How it works

  1. Step 1

    Upload an instructor photo, or generate a presenter portrait from a text description.

  2. Step 2

    Add the narration for one lesson segment, as your own recording or generated voice.

  3. Step 3

    Generate each segment, then assemble them into your lesson in your editor.

Why use it

A consistent instructor

Reuse the same photo across lessons for a uniform on-screen presence.

Update lessons easily

Change the script, regenerate the segment, and avoid re-shooting.

Works with your narration

Your voice or a generated voice drives the performance.

Segment-friendly

Short segments suit micro-lessons and intros. Each video is 4 to 120 seconds long.

Example direction prompts

Optional text you can add in the studio to guide the scene, movement and camera.

Frequently asked questions

Can I make a full course with this?

Videos are 4 to 120 seconds each, so a course is built from many short segments that you combine in a video editor.

Can I use slides or screen recordings?

The generator produces the presenter video. Add slides, screen recordings or captions in your editor.

Does it support my language?

Audio-driven animation follows the sound you provide. Text prompts support Chinese, English, Japanese, Korean, Spanish (Mexican) and Indonesian. Generated voice availability may vary.

Is the instructor a real person?

Only if you upload a real person's photo and have their consent. You can also create an original presenter from a text prompt.

What if a generation fails?

Credits are reserved when a video starts and refunded automatically if it fails.

Make your first video

Plans start at $9.99/month. 1 credit = 1 second of video, and failed generations are refunded.

More use cases