⚠️ This page isn't running with the special browser headers ffmpeg needs to merge/export yet. Make sure coi-serviceworker.js is deployed in the same folder as this page, then hard-refresh (Ctrl+Shift+R).
ViStudioAI
ViStudioAI
Studio

Your projects

Pick up where you left off, or start something new.

Private & Secure

Everything stays on your device.

Lightning Fast

Create, edit and export at speed.

Studio Quality

Professional tools for creators.

Delete project?

"" will be permanently removed, including all recorded scenes. This cannot be undone.

Unlock 1080p exports

1080p downloads (and watermark-free exports) are a Premium feature. Upgrade your plan to export in full HD.

Finish these steps first

Before recording, please complete:

    ✂ Trim & Cut this take

    0:00 Drag the purple handles to trim, or add a cut for anything in the middle 0:00

    Nothing here is permanent — the full original recording stays untouched until export, so you can always undo.

    Record Notepad Visual

    Draw exactly what you want shown on the notepad — no need to talk, you'll do the voiceover afterward over this recording.

    00:00

    Name your project

    Insert a new scene

    It'll be inserted right after the current scene.

    Edit Scene

    ⚠ Changing the scene type will clear this scene's recorded take (you'll need to re-record it).

    📘 Script Format Guide

    How to structure your script, what each Scene Type records, and what it looks like in 16:9 vs 9:16.

    Basic structure

    Scene 1
    Scene Type: webcam_image_split
    Visual: Short note on what's shown (optional, for your own reference only)
    Voiceover: What you'll actually say — this drives the caption timing
    ----------------------------------------------------
    Scene 2
    Scene Type: screen_webcam
    ...

    Each scene is separated by a line of dashes. Fields can be in any order — they're matched by their label (e.g. "Scene Type:", "Voiceover:"). "Visual:" is optional — it's just your own planning note and doesn't affect recording.

    Scene types & what they output

    webcam write: Scene Type: webcam

    Just your camera. No screen share, no side image.

    16:9 — camera fills the full landscape frame.

    9:16 — camera fills the full vertical frame (cropped to fit, nothing stretched).

    screen write: Scene Type: screen

    Screen or window share only — your mic and the screen's own audio are both recorded.

    16:9 — screen recording fills the full frame.

    9:16 — screen is shown in full (nothing cropped) with a soft blurred backdrop filling the rest of the vertical frame.

    screen_webcam write: Scene Type: screen record + webcam

    Screen and webcam together. Works whether the screen is a phone mirror or a computer display. The webcam bubble's shape (circle / rounded / tall) can be changed from the webcam toolbar once recording — no separate scene type needed for that anymore.

    16:9 — full-screen recording with your webcam as a small bubble, bottom-right.

    9:16 — screen on the top half, webcam on the bottom half, with a thin divider line (this split is automatic in 9:16 and isn't affected by the bubble shape toggle).

    webcam_image_split write: Scene Type: webcam_image_split

    A split-screen layout — your webcam plus an uploaded side image (set once per scene, on the recording screen). Not a virtual/replaceable background — it's a fixed image panel next to your camera.

    16:9 — webcam in a portrait card on the left third, side image filling the right two-thirds.

    9:16 — side image on the top half, webcam on the bottom half, with a thin divider line.

    notepad write: Scene Type: notepad

    A blank writable "paper" surface — draw or write on it live with your mouse while recording, in a pen color you choose.

    16:9 — notepad fills the full frame.

    9:16 — notepad fills the full vertical frame.

    notepad_webcam write: Scene Type: notepad + webcam

    Same writable notepad, plus your webcam alongside it.

    16:9 — full-bleed notepad + webcam circle bubble, bottom-right.

    9:16 — notepad on the top half, webcam on the bottom half.

    custom_video write: Scene Type: custom video

    Import a video file and voice over it — no webcam. The recording window automatically matches the imported video's own length: it plays from the start the moment you hit Record, and recording stops on its own the instant the video ends.

    Works in both 16:9 and 9:16 — the video is letterboxed/pillarboxed to fit.

    custom_video_webcam write: Scene Type: custom video + webcam

    Same imported video, plus your webcam as a reaction bubble — the popular "react to this clip" format. Recording also auto-stops when the video ends.

    Webcam appears as a circle bubble, bottom-right, in both 16:9 and 9:16.

    Tip: pick 16:9 or 9:16 once, before you start recording — every scene's layout adapts to whichever you chose above.

    Paste your script

    Choose a resolution, paste your scenes, and the tool handles the rest.

    Output resolution

    16:9 — Landscape
    YouTube standard, 1280×720
    9:16 — Vertical
    Shorts/Reels, 720×1280

    Script input

    ✨

    AI SCRIPT GENERATOR

    Turn your idea into a ready-to-record,
    scene-by-scene video script.

    This feature needs a Premium or Team plan.

    Upgrade plan →
    ⚡

    … Credits Available

    1 credit ≈ up to 5 scenes

    …

    0 / 1000
    💡 Try: "Create a 60-second YouTube video about the top 5 AI news stories today."

    Try these examples:

    ⚡ 1 credit

    3 – 20 scenes

    Writing your script…

    ⚡ Usually takes 5–15 seconds  |  ⭐ Your script will be organized scene-by-scene

    ✨ AI Avatar — cloned voice + talking photo

    Upload a photo and a short voice sample — we'll generate a talking-avatar video in your own cloned voice for this scene. Available on Premium and Team plans, spent from your AI Avatar wallet.

    🚧 AI Avatar is briefly paused for a scaling upgrade

    We're rolling out infrastructure upgrades so many more creators can each get their own avatar at once. Recharge and generation will reopen very soon — no action needed, your wallet balance (if any) is safe and waiting.

    This feature needs a Premium or Team plan.

    Upgrade plan →
    Longer + more expressive = a noticeably better clone.

    Tips before you record

    • Record somewhere quiet — no fan, traffic, or echo.
    • Speak at your normal, natural pace — don't rush.
    • Keep the mic 15–20cm away, consistent distance throughout.
    • Vary your tone as the script changes (statement / question / excitement) — this is what makes the clone sound expressive, not flat.

    Read this aloud (~1–2 min)

    Hi, my name is [your name], and this is my voice for ViStudioAI. I make videos about topics I really care about, and I want every video to sound just like me. Have you ever wondered what it takes to explain something complicated in a way that's actually easy to follow? That's exactly what I try to do. Some days I'm calm and explaining things slowly, step by step. Other days — like right now — I get genuinely excited, because this is a big moment for my channel! Let me ask you something: what's the one topic you wish someone would explain to you simply, without all the jargon? Numbers, dates, and names matter too — so let me practice a few. Today is the tenth of August, twenty twenty-six. My channel has grown by twenty-three percent this month, and I couldn't be happier about it. And finally, thank you for listening. I'm looking forward to creating a lot more content, together with you.

    Ready to record

    ✅ Avatar video ready.

    🎨 My Avatars

    Build an avatar once, save up to 5, then use any of them in place of your webcam for a scene — everything renders live in your browser, nothing leaves this app.

    Saved avatars (0/5)

    Recording devices

    Only cameras Windows recognizes as a proper webcam will appear here (a phone/tablet connected only by USB, with no webcam app running, won't show up — apps like DroidCam or Iriun Webcam make it appear as a camera).
    Screen scenes will separately ask which screen/window/tab to share — that's a browser rule and can't be pre-set.
    Captions are generated from your script's Voiceover text, timed to your recording — no speech recognition involved, so accuracy is guaranteed.