Studio · the product

An editor where every clip is a prompt.

Studio looks like the NLE your editor already knows — tracks, a playhead, a properties panel. The difference: select a clip, change a word, and the shot re-renders in place. Picture lock stops being a cliff.

01 / Timeline · scroll to scrubFairbanks & Co. — FW26 campaign · 4 shots · 00:00:32:00
Fairbanks & Co. — FW26 · Cut 03 Autosaved · 4 clips · 32 s
VersionsShare cutRender 4K
00:00:00:00 Truck left
V1V2A1
00:0000:0800:1600:2400:32
Dune walk
Portrait, wind
Fabric macro
Snowfield
Title · FAIRBANKS
Super · Coat 04
End card
PromptKeep the walk, lose the wind — her hair should barely move. Same light.
Re-shoot
02 Under the hood

One prompt, five passes.

Each pass is a separate model with a separate job. That is why a note like “same shot, less wind” is a 20-second re-render and not a re-roll of the dice.

Prompttext · 1–400 words References1–6 images · face / product Camera briefmove · lens · speed · focus Kinema-2 Motionlatent video · 48 fps native — temporal attention, 60 s — physics prior (cloth, water, hair) — lighting continuity 12.4B params · 2 TB licensed footage Kinema Facesidentity lock · 98.1% Camera solverparametric paths · 12 moves Upscaler 4Ksecond pass · +40 s ExportProRes · H.265 · EXR · XMLC2PA credentials signed t = 0 st ≈ 50 st < 90 s
03 Consistent characters

Cast once. Shoot forever.

Upload one photo — or generate a face from a description — and Kinema Faces builds a character sheet: identity, age, wardrobe, the way they hold their shoulders. Lock what should never change. Leave the rest to the scene.

  • 98.1% identity match across 200-shot sequences on the Kinema Faces benchmark.
  • Wardrobe and prop locks — the coat stays camel, the bottle stays the same bottle.
  • Consent-gated — real faces need a signed release in the project before they can be locked.
Character sheet · Nadiachr_nadia · v3
35 mm · day98.9
85 mm · golden98.4
50 mm · night97.8
24 mm · snow98.6
Locked: identity · age · coat (camel) · earringsRelease on file
04 Camera control

Twelve moves. Real parameters.

Camera moves in Kinema are solved paths, not adjectives. A dolly has a speed in metres per second, an orbit has degrees, a rack focus has two planes and a duration. Preview the path on a top-down map before you render.

  • Dolly, truck, pedestal, pan, tilt, orbit, crane, zoom, rack focus, handheld, whip, lock-off.
  • Lens 24–135 mm, with real perspective change and matched depth of field.
  • Combine two moves — crane up while orbiting, dolly in while racking focus.
NADIA ORBIT 90° · 0.5 M/S · 35 MM + DOLLY IN 1.2 M OVER 00:00:08:00 FOCUS: 2.4 M → 1.1 M PREVIEW 0 CREDITS
OrbitDolly inRack focus35 mm
05 4K upscaling

Render fast. Finish sharp.

Work at 1080p while you are still deciding. When the cut is locked, run the 4K pass: a dedicated model that rebuilds texture — fabric weave, skin, rain — instead of just sharpening edges. Drag the handle.

  • 3840×2160 or 3840×1600 (2.39:1), 48 or 60 fps.
  • +40 seconds per 8-second shot. Costs 2× credits only on the shots you keep.
  • Temporal-aware — no shimmer between frames, no flicker in gradients.
1080p · source 4K · Kinema upscale
06 Timeline

Cut like an editor. Re-shoot like a director.

Trim, ripple, reorder. Add titles and a scratch track. Then select a clip and type a note — Studio re-renders only that clip, keeps its length and in-point, and stacks the old take in Versions so nothing is lost.

  • Versions per clip — compare takes side by side, promote the winner.
  • Export the project as Premiere / Resolve XML with media attached.
  • Shared review links with frame-accurate comments.
Versions · Shot 02 “Portrait, wind”3 takes
Take 03 — “lose the wind”00:00:08:00 · 85 mm · rack focus · seed 7718
Current
Take 02 — “warmer, later”00:00:08:00 · 85 mm · rack focus · seed 7718
Keep
Take 01 — original brief00:00:08:00 · 50 mm · dolly in · seed 7716
Archive
07 API

Everything in Studio is a parameter.

The REST API mirrors the properties panel one-to-one. Submit a shot, subscribe to a webhook, pull ProRes when it lands. SDKs for Python and TypeScript.

curlpythontypescript
# create a shot with a locked character and a solved camera path
curl https://api.kinema.dev/v2/shots \
  -H "Authorization: Bearer $KINEMA_KEY" \
  -d '{
    "prompt": "woman in a terracotta coat crosses a wet Lisbon square at dusk",
    "character": "chr_ines",
    "camera": { "move": "dolly_in", "lens_mm": 35, "speed_mps": 0.6 },
    "duration_s": 8, "fps": 48, "aspect": "2.39:1",
    "upscale": "4k", "seed": 4471,
    "webhook": "https://marrow.film/hooks/kinema"
  }'

# → 202 Accepted
{ "id": "sht_9f2c", "status": "rendering", "eta_s": 84, "credits": 24 }

Webhook events

Every pass emits an event, so a pipeline can start conforming while the upscaler is still running.

shot.motion.done · 00:00:51 · latent video completesht_9f2c
shot.identity.scored · 98.4 · chr_inessht_9f2c
shot.preview.ready · 1080p proxy URLsht_9f2c
shot.upscale.done · 3840×1600 · 00:01:28sht_9f2c
shot.exported · ProRes 4444 · C2PA signedsht_9f2c
08 Start

Open Studio with 300 credits on us.

That is about twelve 8-second shots at 1080p, or four at 4K. No card required. Keep every export.