# Movie & Ads Studio

Produce films and video ads from a written brief: AI drafts the scenes, renders a storyboard with consistent characters, waits for your approval, then animates and cuts the final video.

# Movie & Ads Studio

The Movie Studio at **app.teamday.ai/movie** turns a written brief into a finished video through a guided pipeline: **storyline → storyboard → approval → animation → final cut**. Every layer is regenerable on its own, and nothing expensive renders until you approve the storyboard.

---

## The pipeline

A **Next step** bar at the top of every movie tells you exactly where you are and what to do next:

1. **Write the brief.** Describe the film or ad — or click a preset (**Product ad**, **Explainer**, **Brand story**, **Testimonial**) to prefill a proven structure. AI drafts every scene: title, camera motion, narration line, music cue, and the image prompts for the first and last frame.
2. **Generate the storyboard.** One click renders a keyframe for every scene. End frames generate **image-to-image from their start frames** — automatically, as each start frame finishes — so characters, set, and lighting carry through.
3. **Review and approve.** Open the studio (chat on the left, storyboard on the right), comment on any frame, and click **Fix comments** to send all open feedback to the producer agent in one message. Nothing animates until you click **Approve board**.
4. **Animate.** Each scene animates from its first frame to its last (on models that support end-frame conditioning). The next scene's start frame can continue from the previous clip's actual final frame.
5. **Render the final cut.** Clips, per-scene narration, and generated music are muxed into one video with title cards, crossfades, name-tag overlays, and your branded end card.

---

## Formats

Set the **Format** once per movie — every keyframe, clip, preview, and the final render follow it:

| Format | Render size | Use for |
|---|---|---|
| `16:9` | 1920×1080 | YouTube, web, presentations |
| `9:16` | 1080×1920 | Reels, TikTok, Shorts |
| `1:1` | 1080×1080 | Feed ads |

---

## Keeping characters and products consistent

Keyframes are not independent dice rolls:

- **End ← start.** A scene's end frame generates image-to-image from its finished start frame (a checkbox on the frame, on by default).
- **Scene ← scene.** A scene's first frame can continue from the previous scene's end frame — or from the previous clip's actual final frame once it has rendered.
- **Product / style reference.** Upload a product photo, character sheet, or brand shot in the movie header (≤ 8 MB), or pick a generated image from the library. It is passed as an extra reference into **every** keyframe generation, so ads feature your exact product.

Image-to-image runs on **OpenAI GPT Image 2** and **ByteDance Seedream** (Auto picks one of them). Selecting an image model that cannot honor references fails with a clear error rather than generating an unrelated image.

---

## Models

Pick per movie from the header, or leave both pickers on **Auto**:

- **Keyframes:** Seedream 5.0 / 4.5, GPT Image 2, Wan 2.7, Qwen Image 2.0, Flux 2, Grok Imagine, Gemini Flash Image.
- **Clips:** Seedance 2.0 (and Fast), Kling 3 Pro / 2.6, Wan, HappyHorse, Grok Imagine Video.

Narration is synthesized per scene with a selectable voice; music is generated to each scene's length and mood.

---

## Working with the producer agent

**Start studio** creates a production chat scoped to the movie's folder (`media/movies/<slug>/`), with the storyboard pane beside it. The agent works keyframes-first under the same approval gate, uses image-to-image references for continuity, and addresses your frame comments. Every scene is a plain JSON file in the workspace, so anything the agent does is inspectable and versionable.

---

## Cost control

- Storyboard frames are cheap image generations; **video renders only after board approval** — a hard gate, not a convention.
- Batch actions skip scenes whose jobs are already queued or running, so re-clicking never double-spends.
- Regenerate a single frame or a single clip instead of the whole movie.
