All docs

Shot Editor

The shot editor is the panel that opens when you click a frame on the timeline; the whole selected shot is built here. With no frame selected, the panel says "Select a frame to view and edit it" (select a frame to view and edit). Once a frame is selected, a sticky pipeline bar appears at the top: the Screenplay, Image and Video tabs are laid out with arrows between them like a production line — you write the shot first, then generate its starting frame, and finally animate that frame into video. Each step is gated on the previous one: no image without a script and a location, no video without an image. Every button that costs money shows the exact amount your wallet will be charged before you press it.

On this page

The pipeline bar: three tabs and Ask AI

The sticky glass bar at the top of the panel carries the shot's three production steps. Tabs won't open until their prerequisites are met; hovering a locked tab tells you why.

  • Screenplay / Image / Video — switches between the shot's three production steps. The Image tab stays locked until the script text is written and a location is picked (tooltips: "Write the screenplay for this shot first." — write this frame's script first / "Select a location for this shot first." — pick a location first); the Video tab stays locked until a starting image exists ("Generate an image for this shot first." — generate an image first). Leaving the Screenplay tab is the "I'm done writing" signal: the server derives the image/video prompts and the camera-and-light settings from your text and fills the fields — it never overwrites an existing prompt, and this is free.
  • Ask AI — the sparkle badge at the right end of the bar opens the Fixer AI chat panel bound to this shot. You describe the problem in your own words; Fixer diagnoses it and fixes it with your approval.

The Screenplay tab: scene, cast and text

This is where work on the shot starts: you mark which scene the shot belongs to, where it takes place and who is in it, then write what happens.

  • Scene — a dropdown choosing which scene heading the shot belongs to; every scene heading in the film is listed. The empty option means "continuation of the previous scene" — a heading-less shot carries the previous scene on.
  • Locations (required) — picks the shot's location; it is marked with a star and no image can be generated without it. Changing the location drops the old location's pinned view. When the selected location has board views, its chip becomes a menu: under "Location view" (location view) you pin "Automatic" (automatic) or one of the thumbnailed views; "Clear" (remove) takes the location off the shot. An empty list shows "None added yet." (none added yet) and a Design a location* button.
  • Characters — marks the characters visible in the shot. Removing a character also deletes that character's lines in this shot. An empty list offers a Design a character button.
  • Assets — marks the objects and assets visible in the shot. An empty list offers a Design an asset button.
  • Screenplay — the auto-growing field describing what happens in the shot. The image/video prompts and the camera-and-light decisions are derived from this text on the server.
The Screenplay tab. The starred Locations field is required; the cast chips and the text feed the prompts of the next two tabs.

When the cast changes: the overlay and Update prompts

If you change the cast chips after the prompts were written, a translucent "cast changed" overlay drops over the script, image-prompt and video-prompt fields. All generate buttons stay locked until the overlay clears; no other warning repeats it — this overlay is the single source of the warning.

  • Update prompts — the one-click fix on the overlay: it appears with the warning "the cast/location changed — this text still describes the old cast" and has the AI rewrite all three prompt texts for the new cast, unlocking generation. If you're short on tokens it says you can also accept by editing the prompt by hand (free); editing the text yourself also clears the overlay at no cost. On failure you see "Update failed — retry, or hand-edit the text." (update failed — retry or edit the text by hand).

The Image tab: the rig bar

The Image tab is where the starting frame is generated. In form view a "rig" bar sits under the monitor: framing, angle, light, lens, style and engine decisions all live here. The compact controls on the rig bar show only the selected value; the control's name lives in its tooltip and in the opened menu's title. If the selected value causes a problem, an amber triangle appears on the trigger and a warning box at the top of the menu explains why; model triggers also carry the selected engine's version (e.g. "Veo 3.1 Fast"). The same behavior applies to the Video tab's rig bar.

  • Start frame: New / From previous scene — a two-position switch for the starting frame's source. "New" generates a fresh frame for this shot; "From the previous shot" inherits the previous shot's last video frame — the frame is locked and not generated here. Disabled on the film's first shot; leaving "From the previous shot" turns continuity into "new scene".
  • Shot technique — picks the framing scale: extreme wide, establishing, wide, full, American, medium, medium close-up, close-up, extreme close-up, two-shot, over-the-shoulder, POV, insert, macro, reaction, hero shot, dirty frame, frame-within-frame. Deliberately absent from the Video tab — the video is animated from the generated frame, so changing framing only works here.
  • Camera angle — picks the camera's viewpoint: eye level, low, high, bird's-eye, worm's-eye, Dutch, top-down, shoulder/hip/ground/knee level, three-quarter, profile, frontal, aerial.
  • Lighting — picks the frame's lighting scheme: three-point, high/low key, Rembrandt, chiaroscuro, rim light, silhouette, golden hour, soft natural, neon, underlighting, hard light, overcast, moonlight, firelight, volumetric.
  • Lens — pins the focal length. The default "Automatic" (automatic) also shows the lens that would be auto-picked for this framing (e.g. "50 mm normal"); options run from 18 mm ultra-wide to 135 mm tele and Macro. A manual pick overrides the automatic decision.
  • Cinematography style — pins the cinematography craft profile. "Automatic" chooses by the film's genre and tone and names the profile actually used in the on-screen frame; there are 18 neutral profiles (anamorphic wide landscape, low-key chiaroscuro, neon night, symmetric formalism…). If the pinned profile doesn't match the on-screen frame, the menu warns "used in this frame: {style}" — the pick only takes effect on the next generation.
  • Image model — picks the engine for the next image generation; it isn't permanent and falls back to the project default. Each row shows the model's name and version, a consistency score rendered as 5 stars, the unit price on the right ("$… / image"; "variable" for Auto) and amber warnings listing what the model can't do in this shot (e.g. "can't edit an existing image", "can't produce {ar} — that's the film's aspect ratio"). Models the admin turned off don't appear.
  • Camera & light — the orbit-icon tool button at the end of the rig bar; opens the 360° staging dialog. When set, the button switches to a "configured" look and the staging overrides the angle and lighting dropdowns.
  • Camera and light angle — you drag camera and light arms 360° around a mannequin (the character's 3D model if one exists; its name shows in the corner); on release it snaps to the nearest cinema angle and the mannequin is lit live with the chosen light. The "Camera" and "Light" boxes below read out the exact phrase that will enter the prompts (e.g. "eye level · from the front-right diagonal"). Buttons: Clear (clear — only when a saved value exists; the dropdowns take over again), Discard, Apply.

The image prompt, the price and generating

Below the rig bar sits the text that goes to the image engine, and at the bottom a dock pinned to the edge: the price tag on the left, the generate button on the right.

  • Image prompt — the text sent to the image engine; editable by hand. The wand button in the bottom-right opens the Update with AI window: you write what's bothering you in your own words and the AI updates the existing prompt into a production-ready form (Update applies it; Cmd/Ctrl+Enter is the shortcut; on failure: "Couldn't update, please try again." — couldn't update, try again).
  • AI Reference — the small link next to the prompt heading; it fetches from the server and shows full-screen the labelled reference board (selected character/location/asset views) that will actually be sent to the AI for this shot. It generates nothing and is free; with no references it says none exist for this scene yet.
  • The image price tag — the coin-icon amount on the dock's left: dollar value plus token count, computed by the very function that debits your wallet. On a fresh starting frame with two or more named, non-collective characters, a line is added: "two named characters — a second pass re-locks every face (×2)" (the end frame is a single render; no ×2). With the model on "Auto" the amount is prefixed "approx." (approximately); a 0-token operation reads "Free" (free).
  • Generate image / Regenerate / Generate end frame — the primary button that generates the selected frame (start or end); its label follows the situation. Disabled while the cast overlay is up, while the script or location is missing, or while generation is blocked. An end frame can't be generated without a start (in continuation shots the inherited frame counts as the start).
  • Discard — next to the generate button, only when a starting frame already exists; closes the form and returns to the result view without generating.
  • Stop — bottom-right of the monitor during generation; cancels the running image generation. Throughout, you see a shimmer on the frame, a progress bar timed to the model, and the name of the model the job went to; if it runs long, a note says the generation is still running and this model usually finishes faster.
  • The image gate warning — the amber line just above the dock; it shows the single blocking reason, highest-priority first, with a link to the fix when there is one (e.g. missing script links to the Screenplay tab; missing location to Locations *).

Frames, takes, borrowing and editing

Once a frame is generated, you land in the result view: frames sit in boxes at the film's true aspect ratio, and take strips build up under them as attempts accumulate.

  • The Start / End frame boxes — the generated frames shown side by side (with an arrow between them when the end frame is on). Hovering reveals Download and Preview in the top right; top left holds the generation-model badge (provider icon + name; the tooltip explains why, e.g. "the model you picked" / "{from} was off, so {to} was used"), bottom left the "how is this frame?" like/dislike vote. An inherited (locked) frame shows an "From the previous shot" (from the previous scene) badge; voting and the edit menu are off.
  • Add end frame / Remove end frame — toggles the optional end frame. When on, a note says the clip plays from the start frame toward the end frame; with the end frame on, it must be generated before you can generate video. Works on continuation shots too.
  • Edit — the sparkle button at the frame box's bottom right; five actions in one menu: Regenerate, Borrow from another shot, Build from a scene (rebuilds this shot on the set of the scene you pick, keeping it exactly, with this shot's own cast — start frame only), Edit with AI, Upload an image (upload an image — the file must match the film's aspect ratio or it is rejected with a message saying it isn't at the film's scale).
  • Take the start frame from another scene — lists the ±5 surrounding shots, each row with timecode, shot name and its Start/End frames side by side. Earlier shots / Later shots widen the window by 5 each. Clicking a frame copies it into this shot's start or end slot (with a "Borrowed" — borrowed — badge); the corner zoom button, Preview, shows it full-screen. The current shot is highlighted with a "This shot" (this scene) badge but can't be picked; where no authored end frame exists, the generated clip's last frame is offered in the end column.
  • Edit the frame with AI — changes the frame only as much as you describe; the rest is preserved pixel for pixel (e.g. "tilt the colonel's head slightly forward"). It has an instruction field (Cmd/Ctrl+Enter sends), an optional region tool on the frame — Mark a region (mark a region: the change stays inside it) or Crop mode (crop: the frame becomes that rectangle; a crop can be sent without any instruction, the box says leaving it empty just crops and sharpens) — a Edit model picker (Nano Banana preserves the frame faithfully — recommended; GPT Image follows instructions strongly; Grok is creative but may reimagine the scene; runime Görsel joins the list when our self-hosted server is live) and References (optional): up to 3 thumbnails from the start frame plus characters/assets/locations that have imagery. Below sit the edit's price (the chosen model's single-render price — no ×2 identity lock), Discard and Edit.
  • Variations / Start frame takes / End frame takes — thumbnail strips that appear under the frames once 2+ attempts exist: every take you've paid for on that frame. Clicking switches the active take, free of charge; each tile shows its model and token cost. Start and end strips are separate.
  • The frame warning layer — an amber box in the middle of the frame when needed, carrying structural warnings: the inherited frame doesn't contain this shot's cast (generate a start frame with the missing character), this shot is at the end of an inheritance chain (generate its own start frame so character design doesn't drift), or the previous shot's video hasn't been generated yet. It doesn't block clicking.
  • The broken-chain icon — the amber icon at the start frame's bottom left that appears when the previous scene's video has changed. Clicking opens a small window explaining "Start frame is out of date" (the start frame is out of date) with a Update button; it refreshes the frame from the previous scene's current last frame — regenerating this scene's video is then recommended.
Frames and take strips on the Image tab. Each tile shows its model and token cost; switching takes is free.

The Video tab: the rig bar

The Video tab won't open without a starting frame. With no clip yet (or after entering regeneration via Edit), the big monitor and its own rig bar appear: motion, duration, engine and three tools — reframing, fades, performance.

  • Camera movement — picks the clip's camera move: static, pan, tilt, dolly in/out, tracking, crane, drone, handheld, Steadicam, zoom in/out, orbit, dolly zoom, whip pan, push-in, pedestal, follow from behind, arc/turn/pull-back reveal, slide through gaps, focus pull. If the selected video model doesn't honor camera direction (e.g. Grok), the menu warns that the pick won't change the output and suggests Veo or Kling; the options that actually move the camera are disabled.
  • Duration — the clip's length: 4s / 6s / 8s (a different value inherited from an old project stays listed on that shot only). The system-wide hard ceiling is 10 seconds; providers may round the duration up, and the price tag accounts for that.
  • Video model — the engine for the next video generation; not permanent. Rows list name + version, a 5-star consistency score, the "$… / second" unit price ("variable" for Auto) and the model's gaps (e.g. "can't take a reference image", "no negative prompt", "no end frame — can't do a start→end transition", "camera angle/movement is ignored"). In a 1080p project, engines capped at 720p and engines that can't produce the film's aspect ratio can't be selected — they're disabled with the reason shown.
  • Framing (viewfinder) — with an image present, puts the monitor into reframe mode: you drag and zoom a rectangle over the still to recompose (arrow keys for fine moves, Shift for big steps). Up to ~2× it says the frame is cropped directly — free, instant, no quality loss; beyond that it warns the still will be re-generated at full resolution (1 image cost). Full frame resets; Hold framing / Push in / Pull out choose the clip's framing motion. While a crop is active the button shows the zoom factor (e.g. 1.35×).
  • Curtain — with a clip present, a small window sets the clip's opening/closing fades: you drag handles at both ends of the clip strip to set fade-in/fade-out durations (seconds, 0.1 precision; together they can't exceed the clip length). The button carries active values like "2s · 1.5s". The same window holds "Canvas colour · Project info": five presets plus a custom picker — careful: this is a project-wide setting, one click here changes the fade/letterbox color of the whole film. In the result view the fades preview live over the playing clip.
  • Drive with a performance — with an image present, you film yourself doing the movement and have the character do the same. The window holds: an explanation (a real person must be visible in the video, at least upper body and head, unoccluded), Upload performance, a preview player once uploaded, a "who should act it" choice when the shot has several characters, and a three-engine switch: Standard, Proportion (proportion — if limbs stretched; adapts the motion to the character's body proportions), Identity (identity — if the face drifted; binds the hero and turnaround sheet as references). A green confirmation says this shot will be generated from the performance, with a Remove performance button; with a performance loaded, the main button becomes Generate from performance.
The rig bar and the pinned action dock on the Video tab. The price tag shows the exact wallet charge before you press the button.

The video prompt, the price and generating

Below the rig bar sits the motion description; at the bottom, the pinned dock holds the price tag plus the Upload video and Generate video buttons. Video generation is a background job: even if you close the tab, the job is tracked on the server and the result shows up when done.

  • Video prompt — the motion description sent to the video engine; editable by hand. The corner wand opens the Update with AI window (the video edition's hint asks how to change the motion for this video). The AI Reference link sits next to the heading; if the cast changed, the overlay and Update prompts drop here too.
  • The video price tag — on the dock's left; shows what Generate video will charge, from the same accounting that debits the wallet. It includes the provider rounding the duration up and shots containing hero'd characters being routed to the identity chain (more expensive engines) — so the amount can be higher than the selected model's bare per-second price; it never understates. With the model on "Auto" it is prefixed "approx." (approximately).
  • Upload video — put in your own clip instead of generating. The file is validated: it must be a video, at most 20 MB, its short edge at the film's own size (720/1080) and its duration matching the shot's; otherwise the relevant error is shown.
  • Generate video / Regenerate / Generate from performance — the primary button; its label follows the state: "Generate video" with no clip, "Regenerate" with one, "Generate from performance" with a performance loaded. Disabled while the cast overlay is up, there is no image, the end frame is enabled but not generated, or a blocker exists.
  • The video gate warning — the amber line just above the dock; states the blocker in one line with its fix: this shot uses a start→end transition, generate the end frame first (with a link to the Image tab); the previous shot's video missing or still generating; this scene has dialogue whose audio hasn't been generated yet (possibly with a "bring the lines onto the timeline" action); or the last generation error.
  • Discard — with a clip already present, closes the settings form and returns to the result view without generating.
  • Stop — bottom-right of the monitor during generation; cancels the background video job (the half-done job is abandoned and the refund guarantee kicks in). Throughout, a progress estimate and the submitted model's name are shown.
  • The video result monitor — with a clip present it auto-plays muted in a loop; the backdrop is the canvas color and the fade setting is applied live. Top left holds the generation-model badge (its tooltip says why that model was picked), top right Download, bottom right Edit (opens the settings panel — it generates nothing by itself), bottom left the "how is this clip?" like/dislike vote (a dislike opens an optional "what didn't you like?" box; Send sends it to the operator queue). Below runs the Variations strip: each take's first frame, model and token cost; clicking switches the active clip.

Continuation shots and continuity

In shots continuing "From the previous shot" (from the previous scene), the starting frame is locked: the last frame of the previous shot's video is inherited and not generated here. In two cases the box unlocks itself and asks for its own frame: when the inherited frame doesn't contain this shot's cast, or when the inheritance chain reaches 4 shots (so character design doesn't drift). These warnings are carried by the amber frame warning layer in the middle of the frame.

If the previous scene's video later changes, the system never swaps the frame silently: the amber broken-chain icon appears in the corner of the starting frame; when you press Update, the frame is refreshed from the previous scene's current last frame, and regenerating this scene's video is then recommended. The sign of stale continuity is this corner icon — not a banner at the top.

Costs, the duration ceiling and warnings

There is no separate confirmation dialog on this surface; instead, every paid button carries its price beside it, and a one-line amber note when something blocks it. Prices come from the very accounting functions that debit the wallet — the tag never understates.

  • Generate image / Regenerate — a fixed per-image price per model. On a fresh starting frame with two or more named, non-collective characters, a ×2 identity-lock line is added to the tag; the end frame is a single render, no ×2.
  • Generate video — the model's per-second price × the clip duration as rounded up by the provider. A shot containing hero'd characters can run on the identity chain (more expensive engines) regardless of the engine you picked, so it is priced at the chain's most expensive — which is why the tag can be higher than you expect.
  • Edit the frame with AI — the chosen edit model's single-render price; a crop-only edit also costs a full render.
  • Framing — cropping up to ~2× is free and instant; beyond that the still is re-generated at full resolution for 1 image cost.
  • Update prompts — a small AI writing fee; with no tokens, editing the text by hand is the free acceptance path.

The "Auto" model is a router: its prices are marked "approximate/variable". Switching takes, borrowing frames, the AI Reference preview and the Camera & light staging dialog are free. Clip duration options are 4/6/8 seconds and the system-wide hard ceiling is 10 seconds — there is no separate duration-guard badge; the ceiling is enforced through the option list and the price being computed from the rounded-up duration. In a 1080p project, engines capped at 720p and engines that can't produce the film's aspect ratio are disabled in the video picker (a wrong ratio breaks the export); on the image side a wrong ratio is only a quality warning, since the frame gets cropped later. The canvas color is a project-wide setting but is changed from the Curtain window — its label marks this with "· Project info". If you stop a generation, the half-done video job is abandoned and the refund guarantee kicks in.