Overview
Cinematic Studio makes a short film from a few lines of story: Hooked writes the storyboard, casts the characters, draws and films every scene with a video model that speaks, adds subtitles and music and renders the video. Use it for story-driven ads, short dramas, trailers and anime shorts. Every request needsstoryBrief (up to 4,000 characters), durationSeconds (10 to 120) and model. The create call answers in a few seconds with a projectId and status processing; the storyboard, the cast and the video come after that (see Getting the video).
A 30-second drama
A vertical anime short
ratio_9_16 makes it vertical for TikTok, Reels and Shorts. ratio_1_1 is only filmed by Kling and Seedance.
Your own dialogue, word for word
WithpreserveExactStoryText: true the storyboard keeps the lines in your brief instead of rewriting them. language is en (default) or es.
Casting your own characters
Characters you saved in the dashboard (Studio → Characters) can play in the film: list them withGET /v1/character/list and send their ids in characterIds (up to 6) and name them in the brief as @Name. They keep their look, their voice and their photos. An id that is not your team’s answers 400.
Picking a model
The model films every scene with its own audio, so the cast speaks. Every model below can be used; Seedance models can’t film the photorealistic styles (realistic, cinematic), and that pair answers 400.
Getting the Video
The create call answers as soon as the request is checked and the project exists:COMPLETED with data.url, or FAILED with videoId: null if the project fails), or poll the project:
Credits
- Checked up front. Before anything is created, the whole run is priced (a portrait per library character without a photo, plus a start frame and a clip for every 6 seconds of
durationSeconds). A short balance answers402 INSUFFICIENT_CREDITSwithcreditsNeededandcreditsAvailable, and nothing is created. It is priced again once the storyboard says how many scenes and characters it really has; if the balance no longer covers it, the project fails before anything is charged. - Charged in stages. Portraits once the storyboard is written, scene frames right after, clips when every frame is ready, subtitles at the end (skipped if the balance can’t cover them).
- Refunds on failure. A portrait, frame or clip that fails is refunded, along with everything paid for that never started (and the portraits, if the run fails before the frames start). Finished pieces stay in your media library.
- What it has cost. The project’s
usedCreditsadds up every stage charged so far, minus the refunds.
Teams in bring-your-own-keys mode are not charged credits, but need their own OpenRouter key in Settings → AI keys, and a Gemini key for
gemini_omni_flash. A missing key answers 402 with code: "missing_credentials" and the list in missingProviders, before anything is created.