Engine For
Limitless
Create. Produce. Inspire.
One idea. Infinite possibilities.
Production Overview
AI Activity
7 online
Film Production
From idea to full movie

Video Creation
Scenes, Shots & Edits

Audio & Voice
Voices, Dubbing & Lip Sync

Image Generation
Photos, Posters & Art

Book Writer
Write, format & narrate books

AI Assistant
Your Creative Copilot
Recent Projects
No projects yet — start your first production to see it here.
Your Activity
No activity yet — everything you create will be logged here.
Documentation
Every screen, every button, every message — explained.
Getting started
Welcome to EFL.ai
What the suite is, what you can make with it, and where to begin.
EFL.ai is a cinematic AI production suite. Under one roof you write scripts and full books, generate images, video, voice-over and lip-synced performances, and assemble it all into finished projects — with the work organised, generations running in the background, and costs under your control.
What you can make #
- A short film or ad — script it, break it into beats and scenes, generate the shots, add narration, assemble the cut.
- A full book — draft it chapter by chapter, restructure it freely afterwards, add a cover and illustrations, then narrate it into an audiobook and export the lot.
- Social content — pull a YouTube transcript or a TikTok clip in as reference and build from it.
- Standalone assets — a single image, a voice line, a transcript, a video clip. Every studio also works on its own.
How the suite is organised #
The sidebar is the whole map. Studios are where you create — each is a focused tool, and each has its own page in these docs. Projects hold the work; every asset you generate lands in a library you can browse. The dashboard shows your recent projects, four live counters, and Your Activity — the honest record of everything you have done, including what it cost and why anything failed.
Documentation — this — is the last item in the sidebar, always one click away from wherever you are stuck.
The one idea to understand first #
Generating with AI costs real money — every image, clip and voice line is compute someone pays a provider for. EFL.ai covers that with three systems, and they run in a fixed order of priority on every generation:
- Included in plan — models your plan makes unlimited. Free, always. Your balance never moves.
- BYOK — your own fal.ai or OpenRouter key pays that provider directly, at their price, with nothing added on top. For heavy production, and only if your plan opens it.
- Platform credits — the default and the catch-all. It can pay for every model on the platform.
You are already set up on the third, and it needs nothing from you. Every generation tells you which system paid for it, right there in the activity feed.
How these docs are written #
Every page documents the actual screen: each field, each button, each state, and each message you can meet — worded exactly as the app words it, so you can search for what you are looking at. Where a message appears, its cause and fix are next to it.
Where to begin #
- API keys & the three ways to pay — set up your providers.
- Dashboard & navigation — learn the frame around everything.
- Then the studio that matches what you want to make.
If anything behaves unexpectedly, Troubleshooting lists every failure with its cause.
Getting started
How you pay: credits or your own keys
The two modes compared with worked examples, the exact steps to switch, and every message.
Every generation on EFL.ai is paid for by exactly one of three systems. They are not alternatives you pick between — they sit in a fixed order of priority, and the platform walks that order for you on every single run. Understand the order and nothing on your bill will ever surprise you.
The three systems #
| System | Who pays | You choose it? | |
|---|---|---|---|
| 1 | Platform credits | Credits from your wallet | Yes — this is the default |
| 2 | BYOK — your own keys | You pay the provider directly | Yes — if your plan allows it |
| 3 | Included in plan | Nobody. It's covered | No — your plan decides |
The order of priority — read this once #
For every generation, the platform asks three questions in this exact order and stops at the first "yes":
- Is this model unlimited in your plan? → It runs free. No credits, no provider bill. The activity line reads included in plan.
- Is BYOK on, and does this model run on a provider you have a key for? → Your key pays the provider directly. No credits leave your wallet. The activity line reads your key.
- Otherwise → Credits come out of your balance. The activity line shows the amount.
And before all three: is the model open on your plan at all? If not, it is locked and you will see Upgrade required — no system pays for something your plan does not carry.
System 1 — Platform credits (the default) #
"Generations run on the platform and are billed from your site credit balance. Default."
Every account starts here, and it needs no setup at all: no provider account, no key, no second balance. You generate, credits come out of your wallet, and you top up on the Billing screen when you want more. One bill, one place, nothing to maintain.
Every studio shows the credit cost before you commit — Credits / Image, Estimated cost, Cost. Nothing is ever spent without you seeing the number first.
This system can pay for every model on the platform. That is its quiet advantage: it never has a gap.
System 2 — BYOK (bring your own keys) #
"Bring your own provider keys. No site credits are charged — you pay the provider directly and your usage is tracked here."
BYOK exists for one situation: heavy production, where you generate enough expensive media that buying compute straight from the provider beats buying credits. You open an account with the provider, fund it, create a key, and paste it in. Your generations then run on your provider account at their list price, and EFL adds nothing on top — "Real provider costs on your own keys — no site credits deducted."
Your spend is not invisible: Usage tracking on the API & Billing screen logs every BYOK generation with its model, output and real cost, and totals it. That table is how you check the decision was right.
BYOK covers exactly two providers #
This is the single most important fact on this page:
| Provider | What it powers | BYOK? |
|---|---|---|
| fal.ai | Images, video, voice, lip sync | Yes |
| OpenRouter | Text: scripts, books, Copilot | Yes |
| Cloudflare Workers AI | Fast text + fast image + speech | No — credits or plan only |
Models outside fal and OpenRouter cannot be paid by a key, because there is no key to bring — those models run on the platform's own capacity. They fall to System 1 or 3.
System 3 — Included in plan #
Your plan — AppSumo tier or otherwise — decides three separate things, and it helps to keep them apart:
- What is open at all. Studios and models outside your tier are locked, and show Upgrade required. No amount of credits or keys unlocks them; only the plan does.
- What is unlimited. Some models in your plan are unlimited: you use them as much as you like and your credit balance never moves. These are the plan's centre of gravity, and in practice they are text models.
- Whether BYOK is available to you. If your plan opens BYOK, you may switch to System 2. If it does not, System 1 is your default and your only mode — which is fine, because System 1 can pay for everything.
So a plan does not replace the other two systems. It sits on top of them, deciding what you may reach and what costs nothing to reach.
Putting the three together #
Here is the whole model, in one table. Read a row as: "this kind of model, in this situation, is paid like this."
| The model is… | BYOK off | BYOK on (and you hold that provider's key) |
|---|---|---|
| Unlimited in your plan | Free — included in plan | Free — included in plan (the plan wins; a key is never used when it does not need to be) |
| Open in your plan, on fal or OpenRouter, not unlimited | Credits | Your key — you pay the provider directly |
| Open in your plan, on Cloudflare, not unlimited | Credits | Credits — BYOK cannot reach it |
| Not in your plan | Locked — Upgrade required | Locked — a key does not unlock a tier |
That third row is the one people trip on, so it deserves its own explanation.
Why some models always cost credits #
Cloudflare Workers AI models are a deliberate part of the suite: they are fast and cheap, and they exist for the work where latency matters more than raw power — quick text, quick drafts, transcription, everyday speech. They run on the platform's own capacity, which is exactly why they are quick.
But that also means there is no third-party account for you to bring a key to. They can never be BYOK. If they are unlimited in your plan they cost you nothing; otherwise they cost credits — and being cheap models, that is a small number.
The full model catalogue #
56 models across four providers. BYOK reaches the first two sections only.
fal.ai — BYOK ✅ #
Images (12)
| Lab | Model |
|---|---|
| OpenAI | GPT Image 2 · GPT Image 1.5 |
| Nano Banana · Nano Banana 2 · Nano Banana Pro | |
| Black Forest | FLUX.2 Max · FLUX.2 Pro · FLUX.2 Dev · FLUX.2 Klein 9B · FLUX.2 Flex |
| ByteDance | Seedream 5.0 Lite |
| xAI | Grok Imagine — Image |
Video (9)
| Lab | Model |
|---|---|
| Veo 3.1 · Veo 3.1 Fast · Veo 3.1 Lite | |
| Kling | Kling v3 Turbo Pro · Kling v3 Turbo Standard |
| ByteDance | Seedance 2.0 · Seedance 2.0 Fast |
| MiniMax | MiniMax Hailuo 2.3 |
| xAI | Grok Imagine — Video |
Voice (3)
| Lab | Model |
|---|---|
| ElevenLabs | ElevenLabs Eleven v3 |
| Gemini 3.1 Flash TTS · Lyria 2 (music) |
Lip sync (1) — HeyGen Lipsync (Speed)
OpenRouter — BYOK ✅ #
Text (14)
| Lab | Model |
|---|---|
| Anthropic | Claude Opus 4.8 · Claude Opus 4.7 · Claude Opus 4.6 · Claude Sonnet 4.6 |
| OpenAI | GPT-5.5 · GPT-5.4 · GPT-5.4 Mini |
| Gemini 3.5 Flash · Gemini 3 Flash Preview · Gemini 2.5 Flash · Gemini 2.5 Flash Lite | |
| DeepSeek | DeepSeek V4 Pro · DeepSeek V4 Flash |
| xAI | Grok 4.3 |
All support vision except the DeepSeek pair.
Cloudflare Workers AI — BYOK ❌ (credits or plan) #
Text (11) — Llama 3.1 8B (Fast) · Llama 4 Scout 17B (Vision) · GPT-OSS 20B · GPT-OSS 120B · Gemma 4 26B (Vision) · Qwen3 30B A3B · DeepSeek R1 Distill 32B · Kimi K2.6 (1T, Vision) · GLM-4.7 Flash · Granite 4.0 Micro · Nemotron 3 Super 120B
Image (3) — FLUX.1 [schnell] · FLUX.2 Klein 4B (Black Forest) · Lucid Origin (Leonardo)
Speech (3) — Whisper Large V3 Turbo (OpenAI, transcription) · Aura-2 English (Deepgram) · MeloTTS Multilingual (MyShell)
These are the fast, inexpensive models. They are paid by your plan or by credits — never by a key.
Should you turn BYOK on? #
Only if the numbers say so. Here is the honest test.
| Stay on credits | Switch to BYOK | |
|---|---|---|
| Setup | None — already on | Provider account, funding, key, verify, switch |
| Bills to watch | One | One per provider, plus this one |
| Covers | Every model | fal + OpenRouter only |
| If a key expires or runs dry | Cannot happen | Those generations fail until you fix it |
| Worth it when | Light and normal use | Heavy, steady spend on expensive media |
Worked examples:
- A few dozen images a month, occasional video. Stay on credits. The BYOK saving on that volume is small change against two extra accounts to keep alive.
- Books and scripts all day, little video. Stay on credits — and check first whether your plan's unlimited text models already cover you. If your activity lines say included in plan, BYOK would save you nothing at all.
- Video every day for clients, and credit spend is now a real monthly line. This is BYOK's case exactly. Video is the most expensive thing on the platform, it all runs on fal, and fal is BYOK-able.
- You already run a funded fal.ai account for other work. BYOK costs you no new admin — switch whenever.
Switching to BYOK — the exact steps #
Do them in this order. The mode switch is last, because turning BYOK on without a verified key means every fal and OpenRouter generation fails.
Step 1 — create the provider account #
- fal.ai (fal.ai) — images, video, voice, lip sync.
- OpenRouter (openrouter.ai) — text.
You only need the provider whose work you actually do. Only writing? OpenRouter alone is enough — fal models simply stay on credits.
Step 2 — fund it #
Add a balance on the provider's own site. This is separate from EFL credits and always will be.
Step 3 — create the key and copy it immediately #
In the provider's dashboard, open their API keys section and create one. Copy it the moment it appears — providers show a key once and never again. The card on API & Billing links you straight there: Get your key.
Step 4 — paste and test it #
On API & Billing, find the provider's card (it reads No key on file), press Add your API key, paste into the field, and press Save & test. The button reads Testing… while the platform makes a real call to the provider with your key. Then:
- Key saved and verified. / Key verified. — it works, and the chip turns Valid.
- Unverified — saved but not proven. Press Save & test again.
- Anything else is an error — every one is named in the table below.
Step 5 — switch the mode #
Only now, choose Use my own API keys:
"Switched to your own API keys. Site credits will not be charged."
Your fal and OpenRouter generations now run on your account and read your key in the feed. Cloudflare models carry on as before.
Switching back #
Choose Use platform credits — "Switched to platform credits." Instant, nothing lost. Your keys stay saved unless you Remove them (Key removed.), so you can move between systems freely.
The API & Billing screen, element by element #
Signed out: "Please log in to manage your API keys."
The key cards #
One per BYOK provider — Your API keys. States: No key on file, Unverified, Valid. Buttons: Get your key, Add your API key, Save & test (Testing…), Remove.
| Message | Cause | Fix |
|---|---|---|
| Enter your API key. | The field was empty | Paste the key |
| That API key was rejected by the provider. | Wrong, revoked, or pasted with a space | Create a fresh key; paste carefully |
| The provider is rate-limiting this key right now. Try again shortly. | Too many requests on the key | Wait a minute |
| Could not reach the provider. Please try again. | Network between platform and provider | Retry |
| The provider returned an unexpected response (HTTP 500). | Provider-side error | Retry later |
| Secure key storage is unavailable on this server, so the key was not saved. | The server cannot encrypt at rest | Contact support — keys are never stored unencrypted |
| Unknown provider. | Stale page | Reload |
| Unauthorized. | Session expired | Sign in again |
Usage tracking #
The ledger of everything your keys ran — BYOK only, and the reason BYOK is auditable rather than a leap of faith.
- Stat tiles — Generations, Cost ("$4.12 billed by providers" — money the providers billed you), Avg / generation.
- Filters — All providers, All types, and a period: Last 7 days, Last 30 days, Last 90 days, All time.
- Sorting — Newest first, Oldest first, Cost: high → low, Cost: low → high.
- The table — When, Type, Model (with Model ID), Output, Cost, marked Exact cost where the provider reported it precisely. Total billed sums the current view.
- Export CSV downloads the filtered view for your accounting.
- Empty: "No usage yet. Generations you run on your own keys will appear here."
- Pages with Previous, Next, Page 3.
A note on lifetime licences #
A lifetime licence covers the software. Generation compute is a real per-use cost that someone must pay a provider — that is exactly what these three systems are for. Where a plan says unlimited, it means the models that plan names, and those genuinely cost you nothing. Plans & what's included sets out the boundaries.
Core concepts
Dashboard & navigation
The sidebar, the top bar, the stats row, and the activity feed — element by element.
The dashboard is the app's front door. This page documents everything on it and in the frame around it — the sidebar, the top bar, and the activity feed.
The sidebar #
The left rail is the whole map, in groups. Each entry is a studio or an area; clicking one swaps the main view instantly — nothing reloads.
- Dashboard — this screen.
- The studios — Film Studio, Video Studio, Audio Studio, Image Studio, Book Writer and the rest, each documented on its own page here.
- Projects and Assets — your work and your files.
- Documentation — the last item, which is where you are now.
A studio outside your plan still shows, marked with an Upgrade required badge; opening it names the plan that unlocks it. Nothing is hidden from you.
At the bottom sits the storage button — your space at a glance — and your profile, showing your name and role. AppSumo buyers see their tier right on the chip (e.g. "AppSumo · Tier 2"). The sidebar collapses to icons on demand; every control keeps working in the narrow state.
The top bar #
- Search — find projects and assets by name.
- The credit counter — live, e.g.
1,240 cr; clicking it opens Billing ("1,240 credits — open Billing & Plan"). - Theme switch — light and dark. Every screen, including these docs, follows it.
- Notifications and your account menu (settings, API & Billing, log out).
Stats row #
Four tiles summarise your account: Active Projects, AI Generations, Assets Used, and Success Rate. They are live counters, not decorations — a falling success rate is your earliest hint that a key or provider is misbehaving.
Your Activity #
The feed titled Your Activity is the single honest record of everything you did. It shows your latest actions, newest first. Each line has three parts:
- What happened — "Generated 2 images", "Exported book", "Imported a YouTube transcript", "Audiobook started".
- The detail — how it was paid: your key, included in plan, or the credit amount; plus the studio it came from.
- When — "4m ago".
Failures appear here too, in red, carrying the provider's reason. That one line answers "did it work, what did it cost, and if not — why" without opening anything else.
Empty state: "No activity yet — everything you create will be logged here."
AI Activity monitor #
Beside the feed, the monitor shows each studio's live state — which jobs are running right now and where. Long generations (video especially) live here while they run; you can leave the page and the work continues. Results land in your library and write their line into Your Activity.
Core concepts
Projects, assets & background jobs
The Projects screen control by control, plus assets, jobs, holds and quota.
Three ideas explain most of the suite's behaviour: projects hold work, assets are files with a home, and generation happens in the background. This page documents the Projects screen control by control, and the concepts behind it.
The Projects screen #
Needs Full Studio: "Full Studio is needed for projects" / "Full Studio is not active." Signed out: "Please sign in to manage projects."
Browsing #
- Grid view / List view — two ways to look.
- Search projects… — by name. Nothing matching: "No projects match your search."
- Sorting: Recently edited, Most complete, Name A–Z.
- Show more projects pages through a long shelf.
- Empty: No projects yet.
Each card shows its progress through the pipeline — Script, Storyboard, Scenes, Final Cut — and its state, Final ready when done. Times read naturally: just now, yesterday, Edited 3 days ago, and durations as %dm, %ds, 2h 05m.
New project #
New project → Create project:
- Project name — required ("Give your project a name.", placeholder "e.g. Midnight in Cairo").
- Format — Cinematic Film, Short Film, Vertical Reel, Square Post. Unset shows Untitled format.
- Aspect — including Cinemascope 21:9.
- Resolution and fps.
- Style (optional) — placeholder "e.g. neo-noir, warm grade, 35mm grain".
- Thumbnail (optional) — Add a cover image (JPG, PNG, or WebP), Remove thumbnail to clear.
On success: Project created — opening Full Studio… ("Opening Full Studio…"). On failure: "Could not create the project."
Project actions #
Project actions on a card: Open, Continue editing ("Pick up where you left off"), Edit details / Edit project (Save changes, Project updated), Duplicate (Project duplicated; on failure "Could not duplicate the project."), Copy, and Delete (Project deleted). Missing: "Project not found."
Assets #
Everything you generate or import becomes an asset — images, video, audio, documents — keeping its type, size and date, living in folders, and reusable across studios. A still from Image Studio can be the face in Lip Sync Studio; a take from Audio Studio can be a film's narration.
Inside a project, studios save into that project's own folders, so a film's material never scatters. Outside one, work lands in your general library.
Background jobs #
Media generation takes real time, so nothing makes you wait:
- You submit a generation. It becomes a job.
- It runs server-side. Switch studios or close the tab.
- It lands in your library and writes a line into Your Activity.
The AI Activity monitor shows live status per studio; the feed keeps the outcome, including failures in red with their reason.
Storage quota #
Storage is finite, and every studio says so in the same voice when you reach the edge: "Saving this would exceed your storage quota." Book Writer is the most explicit, naming exactly what hit the wall — chapter, cover, image, font, audio, export or import. The storage button at the bottom of the sidebar shows where you stand.
Exporting #
Your work is yours. Assets download individually. Book Writer exports an entire book — text, structure and images — as one archive you can re-import later or move to another account.
Messages you may meet #
| Message | Meaning |
|---|---|
| Something went wrong. Please try again. | A generic failure — retry |
| Your session expired — please refresh. | Reload the page |
| Project not found. | Deleted, or the page is stale |
Core concepts
Billing
Each number, button, banner and status on the billing screen, in order.
This page documents the Billing & Plan screen element by element — every number, button and message you can meet on it, in the order they appear.
Opening the screen #
Click your credit counter in the top bar (it reads like 1,240 cr) or choose Billing from your account menu. The header says Billing & Plan — "Manage your subscription, billing details, and usage". If you are signed out you will see "Please log in to view your balance, plans, and usage." with a Log in button.
The return banner (after a payment) #
When you come back from a checkout, a banner at the very top reports the truth of that exact order:
| Banner | Meaning | What to do |
|---|---|---|
| Confirming your payment — your credits will appear here within a moment. You can safely leave this page. | Payment approved; the confirmation is travelling | Nothing — it settles in seconds |
| Payment confirmed — 10,000 credits added to your balance. | Done; the number is your real credit amount | Spend them |
| That payment did not go through, so nothing was charged. You can try again below. | The card was declined | Retry with another card |
| This order was refunded. | The money went back, credits were removed | — |
| Checkout canceled — no charge was made. | You backed out of the payment page | — |
The banner never claims success before the payment provider has confirmed it — confirming is the honest state in between.
Usage Overview #
A live panel — badged Live wallet — showing four numbers and a bar:
- Available now — the big number: what you can spend this second.
- On hold — a chip like
200 on hold, shown only while jobs are running. Holds reserve the estimated cost of running work so the same credits cannot be spent twice. A failed job releases its hold in full. - Wallet balance — everything you own: available + held.
- Lifetime used / Lifetime received — totals since your account began.
- The segmented bar underneath ("Lifetime credits: used, on hold and available") shows the same story in proportion.
Adding credits #
The panel is titled Top up once ("One-time credits, no subscription") when fixed packs are on sale, or Add credits when only the custom amount is offered.
Choose your amount (or Or choose your own amount, under the packs):
- Suggested amounts — a row of chips such as
$5 / $10 / $25 / $50. Click one and the field fills; the selected chip lights up. - The amount field — type any amount. The minimum is printed right there ("from $5.00"); type below it and the field turns red, the button disables, and the line under it tells you the exact minimum or maximum you crossed. Nothing can be submitted out of range.
- The credits readout — the large gradient number updates as you type: exactly how many credits this amount buys.
- Continue to payment — opens the secure checkout page. Amounts are re-validated on the server; the page's arithmetic is a preview, never the authority.
At checkout you may see VAT or sales tax added for your country — that is a tax collected by the payment provider (a Merchant of Record), itemised before you pay, not an EFL fee. "Credits are added to your account immediately after purchase." — via the payment confirmation, which the banner above narrates.
Recent Activity & Billing History #
Recent Activity lists your latest wallet movements (Credit / Debit) with View All Transactions for the full ledger. Billing History ("All your invoices and payments") is searchable ("Search invoices…"), filterable, and each row carries its status — Paid, Open, Draft, Void or Uncollectible — with View / PDF where a document exists. Empty states are explicit: "No invoices yet. Your payments will appear here." or, when filters hide everything, "No invoices match your filters."
Studios
Full Studio
The canvas, the script-to-shots pipeline, imports, and what each step costs.
Full Studio is where a film gets made. Everything else in the suite produces one thing — a script, an image, a voice. Full Studio is the canvas where those become a sequence, and then a film.
How the canvas thinks #
You build on a canvas of nodes joined by wires. Each node is one thing: a source you brought in, an operation that transforms it, or an output that produces media. A wire carries the result of one node into the next.
Two rules explain every behaviour you will meet:
A node only accepts what it can use. Wires are not free-form. Each node declares what it takes in, and the canvas refuses connections that make no sense — you cannot wire an image into a Voiceover, because a voice cannot be made from a picture. If a wire will not attach, that is the reason.
Work runs in the background. Anything that generates becomes a job. Start it, then close the tab if you like — it keeps going and lands in your project's folders and in Your Activity.
The pipeline every project starts with #
A new project opens, and the later ones are locked until the earlier ones exist:
New Project -> script or scripts(Multi Source Node) -> storyboard -> Scenes Generation -> Final Media.
Source nodes — where material comes in #
These bring something into the canvas. They do not transform anything; they hold it.
Script #
Holds a screenplay. It is a main node that begins the script journey it connecte with operation node [A Special Node] which converted to another one depends on the node attached. Outputs: a script. Accepts: nothing — it is a starting point.
Direct Script #
Is the container that generates your script and you can select any model you want to generate your script. Outputs: Leads to:** Storyboard, Multi Sources nodes.
Another Script nodes (from assets, from URL, from source and upload script) #
form Assets -> you can get the generated one from you storage asset directly into the canvas and work on it. from url - > it must have extention .txt. from source -> get the script you want from the canvas itself. from uploading - > upload your script from your device into your workflow.
Document #
you can insert document into canvas to get its content and do anything wth these infromation when you link it to EFL Asisstant node. Outputs: EFL Assistant node.
Image · Audio · Video File #
All of these have the same output you need, To get transcription ftom them like Audio to transcript, video to transcript or even image to get a description for it to use in your script. Outputs: EFL Assistant.
YouTube Video #
Paste a link. The video comes in as a source, and from it you can pull a Transcript, its Channel, its Comments, or a Summary. Outputs: a media URL. Note: The audio or video are using speech to text models to get your transcription to get the right transcript and use it in your flow.
TikTok · Instagram · Facebook · LinkedIn · X #
Social sources. Each fetches real material — profiles, posts, reels, videos, transcripts, comments — and holds it as text you can work from. Outputs: text, analysis, brief. Accepts: only the Project node, or another node of its own kind. That last part matters: a TikTok node can feed another TikTok node (Video Info → Get Transcript), but no other node type can wire into it. Each platform is a closed chain, on purpose.
Operation #
You have only two operation nodes and you will see them one with script node and one with Youtube video node, These node provides more option for the node attached it.
Multi Sources #
A gatherer. It takes everything — any node with an output — and holds it in one labelled place. Use it when a film draws on many references and you want them collected rather than scattered. Accepts: anything with an output, from many wires at once. The one exception is the Project node, which is settings, not content. Outputs: multi text which is useful when you want to get all of them to EFL Assistant to make analysis or comparison to get final data you want.
Transcript #
The spoken words of a video, pulled out as text. Accepts: the media that produces it — audio, video file, YouTube — plus analysis and script.
Channel · Comments · Summary #
Born from a YouTube video. Channel holds the channel behind it — avatar, stats, description, recent videos. Comments holds every comment fetched. Summary is an AI summary of the video. Output: text and analysis you can work from.
The film pipeline nodes #
Storyboard #
The hinge of the whole studio. It reads a script and turns it into scenes — the structure everything downstream depends on.
Accepts: script, analysis, brief, or text — from several wires at once, which are aggregated. Outputs: scenes. Leads to: Scenes Generation, Final Film.
Its limit is worth knowing plainly: it parses whatever text you wire in, and text that is not in scene format simply produces no scenes. It will not error dramatically; it will tell you it found nothing. That is why a script from Script Writer, with a real scene breakdown, works first time and a wall of prose often does not.
Scene #
Turns the attached storyboard to A scene which is generated by AI IMAGE TO VIDEO GENERATION MODELS.
Final Film #
get all scenes together to bind them to get final clip.
Project #
The root. One per project, holding its settings — format, aspect, resolution, fps, style. Every input type can hang off it. It is the one node that is never a content source: you cannot wire the Project into something else, because settings are not material.
Note #
A note to yourself, anywhere on the canvas. It carries nothing and generates nothing.
A worked example: four sources into one film #
This is a real build, not a tour. You have material scattered everywhere — a script on your laptop, an old draft in your Assets, a treatment on a web page, and a YouTube video whose narration you want to borrow. You want one film out of all four.
Here is the whole canvas:
┌───────────┐
│ Project │ format · aspect · resolution · fps · style
└─────┬─────┘
│ (every source hangs off this port)
│
┌─────┴────────────┬──────────────────┬──────────────────┐
│ │ │ │
┌─▼────────┐ ┌──────▼─────┐ ┌─────────▼──────┐ ┌────────▼───────┐
│ Script │ │ Script │ │ Document │ │ YouTube Video │
│ (upload) │ │ (from │ │ (from URL) │ │ (paste link) │
│ │ │ Assets) │ │ │ │ │
└─┬────────┘ └──────┬─────┘ └─────────┬──────┘ └────────┬───────┘
│ script │ script │ document │ media_url
│ │ │ │
│ │ │ ┌──────▼───────┐
│ │ │ │ Transcript │
│ │ │ └──────┬───────┘
│ │ │ │ transcript
└──────────┬───────┴──────────┬───────┴──────────┬───────┘
│ │ │
┌────▼──────────────────▼──────────────────▼────┐
│ Multi Sources │ ← takes anything, many wires
└───────────────────┬───────────────────────────┘
│ analysis
┌───────▼────────┐
│ EFL Assistant │ ← "merge these into one scene-ready script"
└───────┬────────┘
│ script
┌───────▼────────┐
│ Output wrie │ ← the merged script, saved
└───────┬────────┘
│ script
┌───────▼────────┐
│ Storyboard │ ← the hinge: script becomes scenes
└───┬────────┬───┘
scenes │ │ scenes
┌──────────▼──┐ ┌──▼─────────────┐
│ Scene │ │ Final Film │
│ (×N, one │ │ (assembles │
│ per scene) │ │ the cut) │
└─────────────┘ └────────────────┘
Now the build, step by step.
1. Bring in all four sources #
Everything hangs off the Project node's port. Add each source for what it is:
| What you have | Node to use | What it outputs |
|---|---|---|
| A script file on your machine | Script — upload it | script |
| An older draft already in your library | Script — pick it from Assets | script |
| A treatment on a web page | Document | document |
| A YouTube video you want the words from | YouTube Video — paste the link | media_url |
Four independent sources, none of them wired to each other yet. Nothing is locked and nothing has to come first — add them in any order.
2. Turn the video into words #
A YouTube Video node holds a link, not language. Wire YouTube Video → Transcript and it pulls the spoken words out as text.
This matters because of what the next node accepts: Multi Sources will take the video happily, but the Transcript is what actually carries the writing you want to borrow.
3. Gather them with Multi Sources #
Wire all four into Multi Sources — Script, Script, Document, Transcript. It accepts anything with an output, from many wires at once, and that is exactly its job: one labelled place holding everything your film draws on.
It is the only node you can point almost the whole canvas at. The single exception is the Project node, which is settings, not material.
Multi Sources outputs analysis — a gathered view of your material, not yet a script.
4. Make one script out of the pile #
Wire Multi Sources → EFL Assistant node. EFL Assistant node is the transform that adapts to whatever it is fed; here it is fed an analysis of four documents and asked to produce one scene-ready script.
Then wire EFL Assistant → Storyboard.
5. Storyboard #
Wire → Storyboard then → you need to generate the storyboard for each scnen then get wire form each storyboard node to attach the scene node and generate the video for this scene.
The Storyboard is the hinge of the whole studio, and it has one limit worth repeating: it parses whatever text arrives, and text that is not in scene format simply produces no scenes. It will not throw an error; it will tell you it found nothing. If that happens, your merged script came out as prose — write it in Script Writer, which produces the structure natively.
You can also wire several scripts straight into the Storyboard — it accepts many wires and aggregates them. Multi Sources plus an Operation is the better route when the material needs merging; wiring scripts in directly is fine when they are already scenes and you just want them all.
6. The scenes #
Now after getting you script and then attach the script to storyboard it will read how many scenes in the script and divide itself to the same number per each scene so if the script has 5 scenes you are going to see 5 storyboard nodes and each one needs to create its storyboard after generating at least on of them you can draw a wire form storyboard node and enable scene node which is responsible for scene generation, generate every scene in your script then the final film node will be enabled to render it and get the product video and you can download easily
8. The film #
It orders your scene clips and renders one finished film as a background job that survives the page closing.
Reading the canvas: what connects to what #
You never have to memorise this — the canvas refuses a wire that makes no sense. But when you are wondering why something will not connect, this is the answer:
| Node | Takes in | Gives out |
|---|---|---|
| Project | — | project (all main source nodes like Youtube or TickTok or anything available) |
| Script · Direct Script or any script node | (script, transcript) | script |
| Custom Prompt | — | prompt |
| Document | — | Text or Transcript |
| Image · Audio · Video File | — | Transcript |
| YouTube Video | — | All related content like transcript or YT Video Channel or Similars or Comments |
| TikTok · Instagram · Facebook · LinkedIn · X | project, or its own kind only | text analysis brief |
| Transcript | audio, video, media_url, analysis, script | transcript |
| Channel · Comments · Summary | analysis, script | text analysis |
| Multi Sources | anything except Project, many wires | analysis |
| Storyboard | many wires | scenes |
| Scene | scenes | (terminal) -> Final Film |
| Final Film | scenes | (terminal) |
Where everything lives #
Inside a project, every studio saves into that project's own folders — script, stills, takes, audio — so a film's material never scatters. See Projects, assets & background jobs.
Studios
Script Writer
Every field, the beat board, scene tools, versions, and each message.
Script Writer is where a story gets its structure. It drafts, rewrites, and — the part that decides whether the rest of your film works — produces a script in the exact shape the Storyboard can read.
The scene format — read this first #
Everything downstream depends on this. The Storyboard reads your script line by line looking for scene headers. Get the shape right and your film builds itself; get it wrong and you get one shapeless scene instead of ten.
This is the format:
SCENE 1 — The Warning Broadcast [0:10]
A stern military general stands before cameras in a high-tech command room, addressing the nation. Screens behind him show ominous alien signals detected from deep space.
SCENE 2 — Panic in the Streets [0:08]
Citizens gather around public screens and phones, reacting with shock and fear. Families hold each other as the broadcast confirms an imminent alien invasion.
Three parts, and only the first is compulsory:
The header — SCENE 1. That is the minimum. Capitals are optional, scene 1 works too. The number is what starts a new scene; everything after it is extra.
The title — — The Warning Broadcast. Separated by an em-dash, an en-dash, a hyphen or a colon. All four work: SCENE 1 — Title, SCENE 1 - Title, SCENE 1: Title.
The duration — [0:10] at the end of the header line, read as minutes:seconds. So [0:10] is ten seconds and [1:30] is ninety. Leave it out and the scene takes the project's default duration.
Then the description: every line after the header, until the next header, is that scene's action. Write it as prose — what is in frame, who does what.
Beats, if you want them #
Inside a scene you can time individual moments:
SCENE 3 — The Landing [0:20]
The ship breaks through cloud over the city.
(0:6) A shadow crosses the square; heads turn upward.
(6:14) The hull splits open, light spilling out.
(14:20) A single figure steps into the light.
A beat is (start:end) in seconds, then the action. Beats before any SCENE header are ignored — the scene has to exist first.
The two things that catch people #
A title block before the first scene is thrown away. This:
Short Film
SCENE 1 — The Warning Broadcast [0:10]
…produces one scene, not a scene called "Short Film". Anything above the first SCENE header is preamble and the parser skips it. Harmless — just do not expect it to survive.
Prose with no headers becomes one scene. If you write a page of description and never type SCENE 1, you do not get an error and you do not get ten scenes. You get a single scene holding the first stretch of your text. That is the failure people do not notice until they are looking at one enormous shot.
SCENE headers before checking anything else.Starting a script #
New Script first, and name it — a script with no name cannot be saved, and the app will say so plainly ("Create or name a script first with New Script."). Once named, everything you write saves to your scripts folder.
The brief #
Describe the idea in your own words — one paragraph is enough to start. You can also attach a document instead of typing, up to roughly 200 KB of text.
This is what the writer builds from. A vague brief produces a vague script; "a general warns the nation about an alien signal, then the streets turn to panic" produces something you can shoot.
Setup — the dials that shape the writing #
Type — what you are making. Each one changes the writing's shape, not just its length:
| Type | Produces |
|---|---|
| Film Script · Feature Film Script | Scene-structured screenplay |
| Short Reel · YouTube Script | Tight, hook-first, built for attention |
| TV Commercial | One idea, one beat, a hard end |
| Podcast · Voiceover | Spoken-word structure, no visual staging |
| Story Bible | The world, not the plot |
| Research · Notes | Working material, not a script |
Format — the layout convention for that type.
Genre, Tone, Audience, Language — the four dials that decide voice. Change one and regenerate; they matter more than the brief's wording.
Duration — your target, in seconds. It drives Estimated Duration and Estimated Pages, both of which update live as you write, so length is a decision instead of a surprise.
Model — which writing model does the work. Save models keeps your pick.
Generating #
Generate Script writes from the brief plus the beats.
Continue Scene carries on from where you are, in the same voice, with the same context. Use it for long work rather than regenerating the whole thing.
Scene tools #
Select one or more scenes, then:
- Improve Scene — a quality pass, keeping the intent.
- Rewrite — start the scene over from the same beat.
- Expand Dialogue — more room, more talk.
- Shorten — tighten it.
- Sharpen dialogue / voice — pushes characters apart so they stop sounding like the same person. This is the tool that fixes the most common AI script problem.
- Character Voice — work one character's register specifically.
- Characters — the cast the script knows about.
All of them need something to work on. "Write or generate a scene first." means exactly that.
Versions #
Versions keeps a script's history, so a rewrite is never a one-way door. Try the bold version; you can always come back.
Export and handoff #
Scripts save into your scripts folder, and inside a project into that project's folder — so a film's script lives with the film's footage.
From here the script goes to Full Studio: wire it into a Storyboard node and it becomes scenes. That handoff is the whole reason the scene format matters.
Messages you may meet #
| Message | Meaning |
|---|---|
| Create or name a script first with New Script. | Name it before writing |
| Please enter a name for your script. | The name field was empty |
| Name your script first, then save. | Same, at save time |
| Write your script before saving. | Nothing to save yet |
| Describe your story or script idea first. | The brief is empty |
| Brief is too large (max ~200 KB of text). | Trim the attachment |
| Pick a writing model. | No model selected |
| No text model available. | None is configured for your account |
| Write or generate a scene first. | A scene tool needs a scene |
| Not enough credits for this generation. | Top up, or use your own key — see How you pay |
| Generation failed. Please try again. | The model failed; the reason is in Your Activity |
| Could not start generation. Please try again. | The job never reached the provider |
| The script file could not be written to storage. | Storage rejected the write |
| Saving this would exceed your storage quota. | You are out of space |
Studios
Book Writer & audiobooks
Book types, outline, revising, covers, fonts, narration, export and import.
Book Writer takes a book from a one-line idea to a finished manuscript — then narrates it, and puts it on a public shelf people can actually read. This page walks that whole road.
The shelf you are working toward #
Everything here ends in Books Hub — a public reader where anyone, signed in or not, can open your book and read it page by page. That is the destination, and it is worth knowing the shape of the road before you start:
idea → outline → chapters → cover → audiobook → PUBLISH → list on the Hub
↑ ↑
every chapter a separate
must be done switch
Two gates sit at the end, and they are separate on purpose. Publishing marks the manuscript finished. Listing puts it on the public shelf. A book can be published and still not listed — finished, but yours alone.
Starting a book #
Working title #
Name it. Titles are unique to you: reuse one and it says "A book with this title already exists."
The idea #
One or two sentences. This is what the outline is built from, so it earns more thought than the title — "a retired detective inherits the case file that ended his career" beats "a detective story".
Book type #
Twelve, and each changes how the book is structured, not just its tone:
| Type | What it produces |
|---|---|
| Novel | Long-form fiction with arcs, scenes, and voice |
| Short Stories | A collection bound by mood or theme |
| Non-fiction Guide | Step-by-step expertise your reader can act on |
| Business | Strategy, playbooks, and case-driven insight |
| Self-Help | Frameworks and exercises for personal change |
| Educational | Lessons, examples, and review questions |
| Academic | Formal, sourced, structured writing |
| Cookbook | Recipes with stories, tips, and structure |
| Poetry Collection | Verse, arranged |
| Memoir | A life, shaped |
| Lead Magnet | A short, sharp ebook that earns the sign-up |
| Workbook | Prompts, worksheets, and guided practice |
Tone #
Storytelling · Professional · Friendly · Playful · Persuasive · Academic. This is the voice, and it carries across every chapter.
Language #
English, Arabic, French, German, Italian, Spanish, Portuguese and more. The book is written in it, and the Hub reader renders it correctly — right-to-left included.
Chapters #
Pick a number, or choose Match my idea (auto) and let the outline decide how many the story needs. The floor is one and the ceiling is forty.
The outline #
Generate the outline first — nothing else will run until it exists. It comes back as a list of chapters, each with a title and a line about what happens.
Read it properly. This is the cheapest possible moment to fix the book's shape: reordering a chapter now costs nothing, and reordering it after twelve chapters are written costs twelve rewrites.
Every chapter needs a title — blanks are refused.
Restructuring, at any time #
The outline is never frozen. After the book exists you can still add a chapter anywhere, reorder chapters by moving them, and delete ones you no longer want. New chapters are written knowing what surrounds them, so a chapter inserted at position 3 reads like it belongs at position 3.
Writing chapters #
Generate them one at a time. Each chapter is written with awareness of everything before it, so the thread holds across a long manuscript.
The rules the studio enforces, and why:
- One generation per book at a time. "A generation is already running for this book." Two chapters written at once would not know about each other.
- A chapter cannot be empty, and there is a ceiling on how long one can be.
- "Every chapter is already written." means there is nothing left to generate — you are done.
Progress is visible as it goes. When you have written every chapter, the publish gate opens.
Revising #
Select a passage, tell the editor what to change — "make this scene colder", "cut the throat-clearing" — and it rewrites that selection in place. It works on a selection, not a whole chapter, so ask for one thing at a time: "Select some text to revise." and "Tell the editor what to change." mean exactly what they say. Very long selections are refused; take a smaller passage.
Progress shows as Revising chapter 4.
The cover #
Two ways: generate one (pick an image model and describe it) or use an image you already have in Assets.
PNG, JPG or WebP, up to 15 MB. One cover at a time per book.
The cover is what a reader sees first on the Hub shelf, so it is not decoration — it is the thing that decides whether your book gets opened.
Images and fonts inside the book #
Images come from your Assets and sit inside chapters — illustrations, diagrams, photographs. Up to 12 MB each.
Fonts are yours to bring. Upload a font file (up to 6 MB) and the book is set in it, on the Hub too. This matters most for non-Latin scripts: bring the font your language deserves rather than accepting a fallback.
Both count against your storage quota, and the studio tells you plainly which one hit the wall.
The audiobook #
Pick a voice model and the book is narrated per chapter — one audio file per chapter, not one enormous file. A twenty-chapter book is twenty tracks you can regenerate individually when one line comes out wrong.
Progress reads like Ch 3 audio 2/5: chapter three, part two of five. Long chapters are narrated in parts and stitched, which is why the counter has two numbers.
Publishing #
Finish writing every chapter before publishing. That is the one hard gate, and it is checked, not trusted: the book needs at least one chapter and every chapter marked done. A book with eleven of twelve written cannot be published.
You also cannot publish while something is generating — "Wait for the current generation to finish first."
Publishing marks the manuscript Published and stamps it with the moment it happened. Nothing else changes yet: the book is finished, not public.
Going back to draft #
You can unpublish at any time. The book returns to draft — and if it was on the public shelf, it comes off the shelf immediately. A draft can never stay listed; that is enforced rather than left to you to remember.
Listing on Books Hub #
This is the second switch, and the one that actually makes a book public. A book qualifies for the shelf only when it is published and fully written — both, every time it is checked.
Once listed, your book gets its own address on the Hub, and anyone can open it:
- A page-flip reader — real pages, not a scroll.
- Right-to-left rendering for Arabic and other RTL languages, with proper fonts.
- Continue Reading — a returning reader picks up where they stopped.
- My Books — readers keep a shelf of what they are reading.
- Your cover, served straight from the shelf.
Guests can read without an account. That is the point of a public shelf.
Export and import #
Export #
Three formats, once the book is finished:
- EPUB — the real ebook format. Kindle, Apple Books, Kobo.
- Document — for editing elsewhere.
- Backup — a
.zipholding the whole book: text, structure, and its images.
Import #
Bring a backup back — same account or another one. The archive is verified before a single file is written, so a corrupt or unrelated zip is rejected rather than half-imported: "That archive is not an EFL book backup."
On import the book is rebuilt exactly: chapters in their order, images relinked to their new asset ids.
Settings #
Default chapters per book and Maximum chapters allowed set your own boundaries, plus sidebar preferences. Save settings confirms with Settings saved.
Messages you may meet #
| Message | Meaning |
|---|---|
| A book with this title already exists. | Titles are unique — pick another |
| Generate the outline first. | Nothing runs before the outline |
| Every chapter needs a title. | A blank outline row |
| A book needs at least one chapter. / A book can have at most 40 chapters. | The bounds |
| A generation is already running for this book. | One at a time — wait |
| That chapter is already being written. | Same, for that chapter |
| Every chapter is already written. | Nothing left to generate |
| That chapter is not in the outline. | The structure moved under you — reload |
| Select some text to revise. / Tell the editor what to change. | The reviser needs a selection and an instruction |
| That selection is too long. Select a smaller passage. | Revise less at once |
| Finish writing every chapter before publishing. | The publish gate |
| Wait for the current generation to finish first. | Cannot change stage mid-generation |
| Covers can be PNG, JPG, or WebP images. / Covers can be up to 15 MB. | Cover limits |
| That image is too large (12MB max). | Chapter image limit |
| That font file is too large (6MB max). | Font limit |
| Saving this would exceed your storage quota. | Out of space |
| That archive is not an EFL book backup. | Wrong or corrupt zip |
| Not enough credits for this generation. | Top up, or use your own key — see How you pay |
| Generation failed. Please try again. | The reason is in Your Activity |
Studios
Image Studio
Prompt, models, styles, references, every edit tool and every message.
Image Studio turns words into pictures — and it is the source of stills for every other studio. A frame made here becomes a start frame in Video Studio, a face in Lip Sync, an illustration or a cover in Book Writer. Fifteen models power it, from split-second drafters to poster-grade flagships, and this page covers all of them.
The two modes #
Two tabs at the top, and everything else follows from which one you are on:
Text to Image — words in, picture out. No reference needed.
Image to Video is next door; here the second tab is Image to Image — regenerate from a picture, guided by your prompt. It needs a reference, and it changes as you work: load more than one reference and it becomes Compose Images, combining them into one result. The generate button follows too — Generate Images in text mode, Transform Image in image mode.
So what looks like three tools is one tab reading your intent: one reference means transform it, several mean compose them.
The prompt #
Write a prompt to generate an image. What works, in order of importance:
- Lead with the subject, then the style. "portrait of an old fisherman, dramatic side light, film grain" — not the other way round.
- One idea per image. Two competing ideas average into mush; generate them separately.
- Be concrete. "a narrow alley at dusk, rain, one figure walking away" beats a paragraph of atmosphere.
Copy prompt copies what you wrote (Copied). Copy seed (Seed copied) copies the number that makes a result reproducible — keep it and you can return to that exact image, or change one word of the prompt and get a variation instead of a stranger.
Let a model write the prompt #
Type a rough idea, pick a text model, and it expands it into a full prompt — Prompt inserted. Press it with an empty box and it says "Write a short idea in the prompt box first.": it elaborates, it does not invent. If the text model fails: "Could not generate a prompt. Try another model."
Style #
Two separate things, and they behave differently:
Style presets — each one adds a phrase to your prompt: Photoreal · Product Ad · Cinematic · Fashion · Editorial · Anime · 3D Render · Concept Art · Minimal. Your words stay; the style rides along with them.
The Style Library — quick looks that fill the prompt with a starter you then edit: Cyberpunk · Photoreal · Minimal · Fantasy · Sci-Fi · Anime. A starting point when the box is empty, not an addition to what you wrote.
The toggles #
Three chips above the model picker:
- Auto Enhance — a quality pass on the result. On by default.
- Commercial Safe — biases generation toward output you can use commercially. On by default.
- Character Consistency — holds a character's identity across images. Off by default; turn it on when the same face has to survive many generations.
The models — what each one is actually for #
Fifteen models. The panel adapts to your pick — controls a model ignores are greyed with Not available for this model, never hidden — and Credits / Image shows the exact cost before you run. What follows is the map, cheapest habits first.
| Model | Lab | Cost signal | Seed | Refs | The point of it |
|---|---|---|---|---|---|
| FLUX.1 [schnell] | Black Forest | pennies | — | — | Split-second drafts |
| FLUX.2 Klein 4B | Black Forest | pennies | — | — | Fast, cheap iteration |
| Lucid Origin | Leonardo | very low | — | — | Stylised looks, cheaply |
| FLUX.2 Klein 9B | Black Forest | low | Yes | — | The step up in draft quality |
| FLUX.2 Dev | Black Forest | low | Yes | — | Serious work at draft prices |
| Grok Imagine — Image | xAI | low | — | up to 3 | Quick social imagery |
| Seedream 5.0 Lite | ByteDance | low | Yes | 1 | Balanced all-rounder |
| Nano Banana | mid | — | up to 3 | Clean, obedient generation | |
| FLUX.2 Pro | Black Forest | mid, scales with size | Yes | — | The professional default |
| FLUX.2 Flex | Black Forest | mid, priced on input+output | Yes | — | Reference-heavy transforms |
| GPT Image 1.5 | OpenAI | by quality tier | — | up to 3 | Instruction-following edits |
| Nano Banana 2 | scales 512→4K | — | up to 3 | Resolution on demand | |
| FLUX.2 Max | Black Forest | high | Yes | — | The poster-grade flagship |
| GPT Image 2 | OpenAI | low→very high by quality | — | up to 3 | The smartest interpreter |
| Nano Banana Pro | high, up to 4K | — | up to 3 | Big, polished output |
And what that means when you are actually choosing:
The draft tier — FLUX.1 [schnell], Klein 4B, Lucid Origin #
Fractions of a cent per image. This is where composition gets found: generate ten, keep a direction, throw the rest away without thinking about it. schnell is the fastest thing in the studio; Lucid Origin leans stylised and illustrative. None of them take a seed or references — they are for exploring, not reproducing.
The working tier — Klein 9B, FLUX.2 Dev, Seedream 5.0 Lite, Grok, Nano Banana #
Low cost, real quality. FLUX.2 Dev and Klein 9B honour a seed, so a good result becomes a place you can return to. Seedream 5.0 Lite adds one reference image. Grok takes up to three references and turns social-ready frames around fast (it sets its own dimensions — the size picker does not apply). Nano Banana is Google's clean, literal generator: prompt in, obedient image out, references welcome.
The professional tier — FLUX.2 Pro, FLUX.2 Flex, GPT Image 1.5 #
FLUX.2 Pro is the default for client work: seed, strong detail, priced by output size so a modest frame costs modestly. FLUX.2 Flex is built for transforms — its pricing counts your input references as well as the output, which is the honest cost of reference-heavy work. GPT Image 1.5 is the instruction-follower: it reads a sentence like "same scene, but at night, and move the car left" and does that — with a quality preset (low / medium / high) that moves its price several-fold, so draft on low.
The flagship tier — FLUX.2 Max, GPT Image 2, Nano Banana Pro #
The hero-image models. FLUX.2 Max for pure image quality at print scale. GPT Image 2 for when the prompt is complicated and the model has to understand it — its high-quality tier is the priciest single image in the studio, and its low tier is cheap, so the quality preset is where its budget lives. Nano Banana Pro renders clean up to 4K. Use this tier once per keeper, not for exploring.
Size, count, quality #
- Aspect — 1:1 · 4:5 · 3:4 · 16:9 · 9:16 · 2:3. Pick for the destination: 9:16 for a reel, 16:9 for a film frame, 2:3 for a book cover. (Grok ignores the size picker; GPT Image and Nano Banana 2/Pro price by resolution, so bigger genuinely costs more.)
- Count — how many variations per run. Generating three and comparing beats generating one and wondering.
- Quality — Draft · Standard · High · Ultra. How long the model works per image; on GPT Image models this maps to their own quality tiers and moves the price accordingly.
Advanced controls #
Shown per model — anything a model ignores is labelled Not available for this model:
- Guidance — how hard the model is pulled toward your prompt.
- Steps — fine-grained control over how long it works, beyond the Quality presets.
- Creativity — from literal to imaginative. How far it may wander from your words.
- Stylize — from photoreal to highly stylised.
- Strength — Image to Image only: how much the reference is changed. Low keeps it recognisable; high keeps only its ghost.
Reference images #
The material for Image to Image and Compose. Add image uploads one; Reference from Assets picks from your library (All Images, All Images (no folder), Search your images…).
- Uploads must be images: "Please choose an image file."
- The ceiling follows the model — up to 3 on GPT Image, Nano Banana and Grok; 1 on Seedream — and the studio names the number when you hit it.
- Reaching for image mode with nothing loaded: "Add a reference image first."
- Empty library: "No images in your Assets yet."
Working on a result #
Select a generated image and six actions sit under it — each runs as its own generation, listed and priced like any other:
| Action | What it does |
|---|---|
| Upscale — 2x / 4x | Enlarge without softening |
| Remove BG — Clean cut | Cut the subject out of its background |
| Relight — AI Lighting | Change the lighting without regenerating the subject |
| Expand Canvas — Outpaint | Extend beyond the original frame — a portrait becomes a wide shot |
| Edit with Prompt — AI Edit | Describe the change in words: "make the jacket red" |
| Color Match — Style Match | Take a target image's palette and look, keep your subject |
Generation History #
Every run with its state: Queued → In Progress / Generating… → Completed, or Failed. New flags the newest.
Per result: Download, Open original, Move to folder (Moved to folder.), favourite, Remove, and Compare — which needs material: "Generate at least two images, then compare them here." Side-by-side is how this studio is meant to be used, not staring at one image wondering if it is good.
Empty state: "Your generated images will appear here." Results file into folders (All Images, All Images (no folder), "This folder is empty."), searchable with "Search your images…".
Three real builds #
A book cover that survives print #
- Draft the concept on FLUX.1 [schnell] — ten variations, 2:3, pennies. Pick the composition.
- Rebuild the winner's prompt on FLUX.2 Pro with a seed, still 2:3, Quality High. Iterate the details — the seed keeps the image the same image while you fix it.
- One final render on FLUX.2 Max, Ultra. That file goes to Book Writer as the cover.
A product shot, edited like a conversation #
- Generate the base on GPT Image 1.5, quality low, Product Ad style: "perfume bottle on wet slate, single window light".
- Iterate in words on the same model: "same shot, tighter crop, add faint steam". Its instruction-following makes each edit a sentence, not a re-roll.
- Final pass at quality high — the only expensive run in the batch. Remove BG on the result if the campaign needs the bottle cut out.
A face that survives a whole film #
- On Nano Banana, load up to 3 references of your character and generate the angles and expressions the film needs — Character Consistency on.
- Keep the set in one folder; every scene pulls from it.
- Each keeper goes to Video Studio as a start frame — the same face, shot after shot. This folder is the film's true casting department.
Messages you may meet #
| Message | Meaning |
|---|---|
| Write a prompt to generate an image. | The prompt box is empty |
| Write a short idea in the prompt box first. | The prompt writer needs something to expand |
| Choose an available image model. | No model selected |
| Add a reference image first. | Image mode needs a reference |
| Please choose an image file. | The upload was not an image |
| This image needs to be saved to your assets first. | Keep the result before working on it |
| Not enough credits for this generation. | Top up, or use your own key — see How you pay |
| Generation failed. Please try again. | The model failed; the reason is in Your Activity |
| The model could not start. Please try again. | The job never reached the provider |
| The model returned nothing. Please try again. | It ran but produced no image — retry or switch model |
| You are generating too quickly — please wait a moment. | Rate limit — pause briefly |
| This generation cannot be retried. | That run is not repeatable |
| Missing image. / Missing generation. / That generation was not found. | Removed, or the page is stale — reload |
| Could not move the image. / Could not update favorite. | The action failed — retry |
| That folder is not available. | The folder was removed |
| Storage is not available. | Nowhere to save the result right now |
| Your session expired. Please refresh and try again. | Reload the page |
| Not allowed. / You do not have permission to do this. | Outside your plan or permissions |
Studios
Video Studio
Resolution, motion strength, camera moves, image-to-video, and cost control.
Video Studio turns prompts — and, more powerfully, images — into motion. It is the most expensive studio in the suite and the one where knowing your models pays off most, so this page covers every model you have, exactly what each can do, and how to get a finished clip out of it.
The two modes #
Text to Video — describe the shot in words, get motion back.
Image to Video — start from a picture and animate it. The model moves your frame instead of imagining one, which is the single most reliable way to keep a film's shots looking like they belong together. This mode needs a reference: "Add a reference image first."
The prompt #
Write motion, not just a scene. The difference:
- Weak: "a fisherman on a boat at dawn"
- Strong: "a fisherman hauls a net onto the deck at dawn, spray catching the light, the boat rolling gently"
The model animates what you describe — if nothing in the sentence moves, nothing in the clip will.
Copy prompt and Copy seed work as everywhere: the seed is the number that makes a clip reproducible on models that support it, so you can return to a result or vary it deliberately instead of gambling again.
A text model can also draft the prompt for you from a rough idea ("Write a short idea in the prompt box first." — it elaborates, it does not invent).
The toggles #
Four chips above the model picker:
- Prompt Assist — lets the provider's own optimiser polish your prompt before generating. On by default.
- Auto Enhance — a quality pass on the output. On by default.
- Commercial Safe — biases generation toward output you can use commercially. On by default.
- End Frame Hold — holds the final frame at the end of the clip. Off by default; turn it on when the clip has to sit under a title or cut cleanly to the next shot.
Look and style #
Three layers, from broad to specific — all of them work by shaping the prompt, so they combine freely:
Video look — the footage's nature: Cinematic · Realistic · 3D Animation · Anime · Documentary.
Controls a given model does not honour are labelled Not available for this model rather than hidden — so you can always see what switching models would give you.
The models — what each one is actually for #
Nine models, and they are genuinely different tools. The studio only ever shows you the durations, aspect ratios and controls your selected model supports, so the panel reshapes itself as you switch. Here is the whole map:
| Model | Length | Aspects | Resolution | Native audio | Start frame | End frame | Image refs |
|---|---|---|---|---|---|---|---|
| Veo 3.1 | 4 / 6 / 8s | 16:9 · 9:16 | 720p / 1080p | Yes | Yes | Yes | up to 3 |
| Veo 3.1 Fast | 4 / 6 / 8s | 16:9 · 9:16 | 720p / 1080p | Yes | Yes | Yes | up to 3 |
| Veo 3.1 Lite | 4 / 6 / 8s | 16:9 · 9:16 | 720p / 1080p | Yes | Yes | Yes | start frame only |
| Kling v3 Turbo Pro | 3–15s | 16:9 · 9:16 · 1:1 | 1080p fixed | — | Yes | Yes | 1 |
| Kling v3 Turbo Standard | 3–15s | 16:9 · 9:16 · 1:1 | 720p fixed | — | Yes | Yes | 1 |
| Seedance 2.0 | auto, 4–15s | auto · 16:9 · 9:16 · 1:1 · 21:9 · 4:3 · 3:4 | up to 1080p | Yes | Yes | Yes | up to 9 |
| Seedance 2.0 Fast | auto, 4–15s | same seven | up to 720p | Yes | Yes | Yes | up to 9 |
| MiniMax Hailuo 2.3 | 6 / 10s | fixed | 768p fixed | — | Yes | — | 1 |
| Grok Imagine — Video | 4–15s | seven ratios incl. 3:2 · 2:3 | 720p | automatic | Yes | — | 1 |
And what the table means in practice:
Google Veo 3.1 / Fast / Lite — the cinematic pick #
The models to reach for when the clip has to look like film. Native synchronized audio is generated with the picture. They take a negative prompt (say what you do not want), a seed for reproducibility, and the prompt optimiser. Full Veo and Fast accept up to 3 reference images for image-based direction on top of the start frame; Lite keeps the start frame only. Short clips — 4, 6 or 8 seconds — but the strongest look per second.
Use for: hero shots, ads, anything where a single beautiful shot matters more than length. Fast when iterating, full Veo for the keeper, Lite when budget leads.
Kling v3 Turbo Pro / Standard — the storyteller #
The long-clip models: 3 to 15 seconds, chosen to the second. Their signature is the shot list — write several prompts in one request and the clip cuts between them, which is exactly what a storyboarded scene needs and why Full Studio leans on them. Start and end frame supported, so a clip can travel from one exact image to another. Minimal knobs on purpose: no negative prompt, no seed, no audio toggle. Pro renders 1080p, Standard 720p — that is the whole difference.
Use for: narrative beats, scene work, anything over 8 seconds, clips that must begin or end on a precise frame.
ByteDance Seedance 2.0 / Fast — the reference engine #
The consistency machine. Up to 9 reference images steer identity and look — the same character, product or set across many clips — and it goes further: paste hosted links to up to 3 reference videos and 3 audio tracks to direct motion and sound by example. Seven aspect ratios including cinema 21:9, durations from 4 to 15 seconds or auto, native audio (on by default, same price either way), and a seed. 2.0 renders up to 1080p; Fast tops out at 720p.
Use for: character continuity across a sequence, brand work where the product must stay itself, wide cinema frames — and Fast for cheap drafts of all of it.
MiniMax Hailuo 2.3 — the quick sketcher #
The simplest of the nine: 6 or 10 seconds, fixed 768p, no aspect picker, no audio. What it has is speed, the prompt optimiser, and honest motion from a start frame.
Use for: motion tests, animatics, checking whether an idea moves before spending real money on it.
xAI Grok Imagine — the social native #
Seven aspect ratios including the photographic 3:2 and 2:3, lengths from 4 up to 15 seconds, audio handled automatically, 720p output. Almost no knobs — prompt, frame, go.
Use for: social clips in odd formats the others do not offer, fast turnarounds where control matters less than done.
Duration, aspect, resolution #
- Duration — the choices are the model's own (see the table). Cost scales with seconds, so the habit that saves the most money in the whole suite is: draft short, render the final length once.
- Aspect — pick for the destination: 9:16 for reels, 16:9 for film and YouTube, 1:1 for feeds, 21:9 (Seedance) when you want true cinema scope.
- Resolution — the picker appears only on models that offer a choice (Veo, Seedance, Grok). Kling and Hailuo are fixed by design. 720p (HD) is for iterating; 1080p (FHD) is for the keeper.
References #
The material for Image to Video. Add image uploads a frame; Reference from Assets picks one you already have ("Choose a reference image"). The ceiling follows the model — one on most, three on Veo, nine on Seedance — and the studio names the number when you hit it.
- Start frame — the image your clip begins from. Every model here takes one.
- End frame — where the clip must land (Veo, Kling, Seedance). Start plus end turns a clip into a controlled journey between two exact images.
- Results you want to reuse must be in your library first: "This image needs to be saved to your assets first."
Working on a frame #
Six actions work on a selected image so you can fix a start frame without leaving the studio: Upscale (2x / 4x) · Remove BG (Clean cut) · Relight (AI Lighting) · Expand Canvas (Outpaint) · Edit with Prompt (AI Edit) · Color Match (Style Match).
Three real builds #
A product reel (9:16, cheap, clean) #
- Image Studio: generate the product shot — Product Ad style, clean background. Save it.
- Here: Image to Video, load it as the start frame, Kling v3 Turbo Standard, 9:16, 6 seconds.
- Prompt the motion only: "slow orbit around the bottle, soft studio light, gentle reflections". Camera: Orbit. Motion Strength low (~0.3) so the product stays crisp.
- Turn on End Frame Hold so the last frame sits under your caption.
- Draft at Standard's 720p until the move is right — it is the cheap Kling — then, if you need 1080p, run the winning prompt once on Turbo Pro.
A cinematic hero shot (the expensive eight seconds) #
- Build the frame in Image Studio — Cinematic style — until it is exactly the shot. Save it.
- Here: Image to Video, start frame loaded, Veo 3.1 Fast first, 16:9, 8 seconds, 720p.
- Prompt: "she turns from the window as rain streaks the glass, camera easing in, tungsten interior against blue dusk". Camera: Dolly In. Negative prompt: "text, watermark, extra hands".
- Iterate on Fast until the motion is right. Then one run on Veo 3.1, 1080p, same seed — that render, with its native audio, is the keeper.
A character who survives the whole sequence #
- Generate 5–9 stills of your character in Image Studio — angles, expressions, wardrobe. Save them.
- Here: Seedance 2.0 Fast, load them all as references, 21:9 if you want scope, duration auto.
- Prompt each shot of the sequence; the references hold the face and costume steady across every clip.
- Draft the whole sequence on Fast at 720p. Re-render only the shots you are keeping on Seedance 2.0 at 1080p.
Cost, plainly #
Video is the most expensive thing an AI can make, and the price is shown before you commit — it scales with seconds and resolution. The three habits that keep a bill sane:
- Image first. A rejected still costs a fraction of a rejected clip.
- Draft cheap. Fast/Standard variants and 720p exist for iteration; the flagship render happens once.
- Watch the feed. Every clip's cost is listed next to it in Your Activity as it lands.
A failed job releases its held credits in full — see How you pay.
Generation History #
Every run with its state: Queued → In Progress / Generating… → Completed, or Failed. New flags the newest. Per result: Download, Open original, Move to folder (Moved to folder.), favourite, Remove, Compare ("Generate at least two images, then compare them here."). Results file into folders, searchable with "Search your images…".
Messages you may meet #
| Message | Meaning |
|---|---|
| Choose an available video model. | No model selected |
| Add a reference image first. | Image to Video needs a frame |
| Write a short idea in the prompt box first. | The prompt writer needs something to expand |
| You can add up to %n reference images. | That model's ceiling — 1, 3 or 9 depending on the model |
| This image needs to be saved to your assets first. | Keep the frame before using it |
| Not available for this model | The control exists; this model ignores it |
| Not enough credits for this generation. | Top up, or use your own key — see How you pay |
| Generation failed. Please try again. | The model failed; the reason is in Your Activity |
| The model could not start. Please try again. | The job never reached the provider |
| The model returned nothing. Please try again. | It ran but produced no clip — retry or switch model |
| You are generating too quickly — please wait a moment. | Rate limit — pause briefly |
| This generation cannot be retried. | That run is not repeatable |
| Missing generation. / That generation was not found. | Removed, or the page is stale — reload |
| Your session expired. Please refresh and try again. | Reload the page |
| Not allowed. / You do not have permission to do this. | Outside your plan or permissions |
Studios
Audio Studio
Voiceover controls, music, transcription, folders, themes and errors.
Audio Studio is three tools in one place: Generate Voiceover turns text into speech, Generate Music composes from a description, and Transcription turns speech back into text. Six models power them, each with its own real controls — this page covers every one, and ends with three complete builds.
Generate Voiceover #
The script #
The main field: "Paste or write the words you want spoken…". A live characters counter runs underneath — speech is priced by the amount of text, so that number is your cost, and Estimated cost translates it into credits before you press anything. The field takes up to 5,000 characters per take (some models cap lower, and the counter respects whichever limit applies).
Submit it empty and you get "Write or paste a script to generate a voiceover."
Pick the voice model #
"Choose an available audio model." Three text-to-speech engines, genuinely different:
| Model | Voices | Its character | Controls you get |
|---|---|---|---|
| ElevenLabs Eleven v3 | 21 named voices | The performance engine — expressive, directable delivery | Stability · Similarity · Speed · Language · Text normalization · Output format · Seed |
| Gemini 3.1 Flash TTS | 30 named voices | The directable narrator — takes written style directions | Style direction · Language (88) · Temperature · Output format |
| Aura-2 (English) | 40 named voices | The fast, clean English workhorse | Voice · Output format — that is all, on purpose |
| MeloTTS (Multilingual) | — | The quick multilingual utility | Language only (English, Spanish, French, Chinese, Japanese, Korean) |
Save voices keeps your shortlist so the pick is one click next time.
ElevenLabs Eleven v3 — when the read has to perform #
The controls, exactly as they appear:
- Voice — 21 names (Rachel, Aria, Roger, Sarah, Laura, Charlie, George, Callum, River, Liam, Charlotte, Alice, Matilda, Will, Jessica, Eric, Chris, Brian, Daniel, Lily, Bill). The field also accepts a raw ElevenLabs voice ID — "Voice name or ElevenLabs voice ID" — so a custom voice from your ElevenLabs account works here too.
- Stability (0–1, starts at 0.5) — high is steady and consistent; low is expressive and less predictable. Narration wants it higher; character lines want it lower.
- Similarity (0–1, starts at 0.75) — how tightly the output holds to the reference voice.
- Speed (0.7–1.2, starts at 1) — the pace of delivery.
- Language (optional) — an ISO code ("ISO code, e.g. en, ar, fr") when you want to force one.
- Text normalization — auto / on / off. On expands numbers, dates and symbols into words ("$5" becomes "five dollars"); off speaks the text literally. Auto decides per script.
- Output format — from small
mp3_22050_32up tomp3_44100_192, plus raw PCM and Opus variants. The defaultmp3_44100_128is right unless a pipeline demands otherwise. - Seed (optional) — reproduce a take exactly; leave it on random to explore.
Gemini 3.1 Flash TTS — when you want to direct in words #
- Voice — 30 voices, each hinted by temperament: Zephyr (Bright), Puck (Upbeat), Charon (Informative), Kore (Firm), Fenrir (Excitable), Leda (Youthful) and on. The hint tells you the read before you audition.
- Style direction (optional) — the signature control: write the direction like you would to an actor. "e.g. Read this as a dramatic newscast" — or weary and quiet, or over-caffeinated sports commentary.
- Language — 88 languages and locales.
- Temperature (0–2, starts at 1) — how adventurous the delivery is allowed to be.
- Output format — mp3, wav, or ogg_opus.
Aura-2 — when you need clean English, fast #
Forty voices, each labelled plainly (amalthea — Feminine, US; apollo — Masculine, US; and so on), and one more choice: the Output format (mp3, flac, opus, aac, and raw formats for pipelines). No sliders, no style box — it is built to be quick and dependable, and it is.
MeloTTS — when the line just needs saying in another language #
One control: Language — English, Spanish, French, Chinese, Japanese, Korean. The utility knife for a quick multilingual line.
The result #
Generating… while it runs; the take lands in your library — "Your generated voiceovers will appear here." until the first one does. Generating two or three voices for the same line and choosing between them is normal practice, not waste.
Generate Music #
Powered by Lyria 2. Describe the piece — "Describe the music you want to generate." — and shape it with:
- Avoid (optional) — a negative prompt for what must stay out: "e.g. vocals, distortion". It starts as "low quality", which is worth keeping.
- Seed (optional) — reproduce a piece you liked, or leave random.
Submit an empty description and it says "Describe a piece of music to generate."
Transcription #
Speech in, text out — powered by Whisper Large V3 Turbo.
Input #
- Upload an audio or video file ("Please upload an audio or video file."). The size ceiling is enforced and named — "That file is too large. The limit is %d MB." — 25 MB as configured here.
- Or record: Start recording → Stop recording → "Recording ready — press Transcribe." If the take was empty: "Nothing was recorded. Please try again." An unsupported browser says so: "Your browser does not support microphone recording."
- Nothing chosen at all: "Choose an audio file first."
Options #
- Task — Transcribe (same language) keeps the original; Translate to English renders the speech in English regardless of source.
- Language — Auto-detect, or force a specific one from the list.
- Voice-activity filter — skips silence. On sparse recordings it cuts both cost and stray output.
Transcribing… while it runs; Done. when it lands. Honest failures, each meaning what it says: "No speech was detected.", "That audio file is empty.", "That file could not be read.", "Transcription failed. Please try again.", "The transcription could not be completed. Please try again."
The library #
Everything generated is listed with its state — Queued · Generating… · Completed · Failed — and its actions: Download, copy, Delete, Retry (re-runs a failed take; some cannot be re-run — "This generation cannot be retried."), and Move to folder for filing.
Three real builds #
Narration for a film scene #
- Bring the scene's lines from Script Writer — dialogue only, punctuated for the ear.
- ElevenLabs Eleven v3. Stability up around 0.7 for narration, Speed at 1.
- Generate the same paragraph with two or three voices. Audition side by side; keep the one whose pauses feel right — pacing sells a read more than tone does.
- Lock the voice, generate the full script, and set Seed so pickups match the original take.
- The take feeds Lip Sync Studio as-is, or lands under a Full Studio scene. Voice first, always — picture follows sound more gracefully than the reverse.
A music bed under that narration #
- Generate Music: "warm ambient pad, slow build, no percussion, background for spoken narration".
- Avoid: "vocals, drums, distortion" — anything that fights speech.
- Generate two seeds, keep the one that stays behind the voice. If it competes for attention, it is the wrong bed regardless of how good it sounds alone.
Subtitles from a foreign interview #
- Transcription → upload the interview (mind the size ceiling; trim first if needed).
- Task: Translate to English, Language on Auto-detect, Voice-activity filter on — interviews are mostly pauses.
- Transcribe → Done. — copy the text out, or hand it to an Operation node in Full Studio to become a working script.
What it costs #
Speech is priced by characters, and the counter plus Estimated cost shows the exact number before you commit. Music and transcription each show their Cost the same way. Every take lands in Your Activity with what it cost and which system paid — see How you pay.
Messages you may meet #
| Message | Meaning |
|---|---|
| Write or paste a script to generate a voiceover. | The script field is empty |
| Describe a piece of music to generate. | The music description is empty |
| Choose an available audio model. | No voice model selected |
| Choose an available transcription model. | No transcription model selected |
| Choose an audio file first. | Transcription has nothing to work on |
| Please upload an audio or video file. | The upload was the wrong kind of file |
| That file is too large. The limit is %d MB. | Over the size ceiling — 25 MB here |
| That audio file is empty. / That file could not be read. | The file is unusable — re-export it |
| That file could not be uploaded. Please try again. | The upload itself failed — retry |
| Recording ready — press Transcribe. | The mic take is captured and waiting |
| Nothing was recorded. Please try again. | The recording came back empty |
| Your browser does not support microphone recording. | Use upload instead, or another browser |
| No speech was detected. | The audio contains no recognisable speech |
| Transcribing… / Done. | Running; finished |
| Transcription failed. Please try again. / The transcription could not be completed. Please try again. | The run failed — retry |
| Not enough credits for this generation. | Top up, or use your own key — see How you pay |
| Generation failed. Please try again. | The model failed; the reason is in Your Activity |
| The model could not start. Please try again. | The job never reached the provider |
| You are generating too quickly — please wait a moment. | Rate limit on generation — pause |
| You are transcribing too quickly — please wait a moment. | Rate limit on transcription — pause |
| This generation cannot be retried. | That run is not repeatable |
| Missing generation. | Removed, or the page is stale — reload |
Studios
Lip Sync Studio
Inputs, models, resolution, frame tools, and getting a clean sync.
Lip Sync Studio makes a face speak: give it a face and a voice track, it returns the performance.
What it needs #
- A face — add a source video.
- A voice — an audio take, usually from Audio Studio.
Controls #
- Model — "Choose an available lip-sync model." Auto (by cost) picks by price, or choose by weight: Balanced, Flagship, Fast.
- Resolution — 720p (HD) to iterate, 1080p (FHD) for the final.
- 2x / 4x — upscale.
- Prompt helpers — Copy prompt, Copy seed, or have a text model draft the prompt ("Choose a text model." / "Choose an available text model."; on failure "Could not generate a prompt. Try another model.").
Auto-fix repairs an input the model rejects; if it cannot, it says so: "Auto-fix failed: …".
Frame tools #
The studio carries the image toolkit so you can fix a face before syncing: AI Edit, AI Lighting, Auto Enhance, Color Match ("Choose a background image"), Compose Images, Expand Canvas. Style presets (Cinematic, Photoreal, Anime, 3D Animation, 3D Render, Concept Art, Clean cut, Commercial Safe, Custom…) apply to those edits. Coming soon marks tools not yet live.
Getting good results #
- Faces looking at the camera sync markedly better than profiles.
- Clean speech syncs better than speech buried in music — generate the voice dry, add music later.
- Short takes iterate faster; lock the read before rendering a long performance.
Results #
Queued → Generating… → Completed or Failed; AI Lip Sync Generated marks a finished run. Download, Open original, Move to folder, Compare. Length follows the audio, and cost follows length.
Messages you may meet #
| Message | Meaning |
|---|---|
| Not enough credits for this generation. | Top up or use your own key |
| Generation failed. Please try again. | The model failed; reason in the activity feed |
| Not available for this model | This model ignores that control |
| Missing image. / Missing generation. | Item removed or page stale — reload |
| Not allowed. / Please log in. | Permissions, or an expired session |
Studios
EFL Copilot
Model choice explained, context windows, attachments, actions and export.
EFL Copilot is the assistant threaded through the suite — a full chat surface with fourteen frontier models to choose from, real file understanding, and the ability to turn a conversation into a task list or a finished document. This page covers everything it does.
The chat #
The field says Ask anything… — and it means it: craft questions, planning, unblocking, drafting, code.
Replies stream in as they are written. Under each one:
- Copy (Copied) — the reply to your clipboard.
- Download — save it as a file.
- Regenerate — run the same turn again, on the same or a different model, when the first answer was not the one (the re-run is marked Regenerated reply). An administrator can switch this off — "Regenerate is disabled by the administrator."
Every turn is metered like any other generation: Credits metering shows the cost, and the line lands in Your Activity with which system paid — see How you pay.
Attachments — the Copilot reads your files #
This is the feature people underestimate. Attach uploads from your machine; Attach from Assets (with Search your assets…) pulls from your library. What it accepts:
- Documents — PDF, Word (doc/docx), Excel (xls/xlsx/xlsm), PowerPoint (ppt/pptx). The text is extracted and handed to the model, so "summarise this deck" and "what does clause 4 mean" are one attachment away.
- Data & text — txt, md, csv, tsv, json, xml, html.
- Code files — source files attach as text, so "review this" works on the actual file.
- Images — png, jpg, webp, gif. On a vision model the Copilot sees them: Describe the attached image(s). is a built-in action, and "why does this frame look flat" is a real question.
Choosing the model #
Auto (recommended) lets the platform pick. Beyond it, fourteen models with honest cards — each shows its Best For line, a speed rating, its real Context Window, and its traits, with Search models by name or provider… to find one fast. "Choose an available model to start."
| Model | Card | Speed | Best For | Context |
|---|---|---|---|---|
| Claude Opus 4.8 | Flagship | Moderate | The hardest reasoning & coding tasks | 1M tokens |
| GPT-5.5 | Flagship | Moderate | Complex reasoning, coding & agents | 1M tokens |
| Claude Opus 4.7 | Premium | Moderate | Complex reasoning & long projects | 1M tokens |
| Claude Opus 4.6 | Premium | Moderate | Complex reasoning & long tasks | 1M tokens |
| GPT-5.4 | Pro | Fast | General work, coding & analysis | 1M tokens |
| Gemini 3.5 Flash | Pro | Fast | Capable multimodal work at speed | 1M tokens |
| Claude Sonnet 4.6 | Balanced | Fast | Coding, writing & everyday work | 1M tokens |
| Grok 4.3 | Reasoning | Fast | Research, analysis & reasoning | 1M tokens |
| Gemini 3 Flash Preview | New | Very Fast | Fast multimodal tasks | 1M tokens |
| GPT-5.4 Mini | Fast & Efficient | Very Fast | Quick tasks at lower cost | 400K tokens |
| Gemini 2.5 Flash | Fast Multimodal | Very Fast | High-volume multimodal chat | 1M tokens |
| Gemini 2.5 Flash Lite | Lightweight | Very Fast | Ultra-cheap, high-speed tasks | 1M tokens |
| DeepSeek V4 Pro | Value | Fast | Coding & analysis on a budget | 1M tokens |
| DeepSeek V4 Flash | Budget | Very Fast | High-volume chat, drafting & summaries | 1M tokens |
Every model here understands images except the two DeepSeeks — they are text-only, and their cards say so ("Text only — no image input").
How to actually choose #
- Daily driver: Claude Sonnet 4.6 — "Excellent coding & writing", fast, sees images. When in doubt, this.
- The hard problem: Claude Opus 4.8 ("Deepest reasoning & strongest coding") or GPT-5.5 ("Excellent coding & problem-solving") — the two flagships, for the work that deserves them.
- Volume on a budget: DeepSeek V4 Flash ("Lowest cost per reply") for drafting and summaries by the hundred; V4 Pro when the cheap work still needs brains.
- Speed above all: Gemini 2.5 Flash Lite ("Fastest, cheapest Gemini") — instant, sees images, costs next to nothing.
- Research: Grok 4.3 — "Strong general reasoning", built for analysis.
Beyond these fourteen, the picker also lists the platform's fast lane — smaller models like Kimi K2.6 (262K context, vision), Gemma 4 26B and Llama 4 Scout 17B — cheap, quick, and exactly right for throwaway questions.
Context Usage #
The meter that answers "how much room is left". Context Window is the model's total capacity; Current Session and Context Usage show how much of it this conversation — messages plus attachments — is already using. When a long session grows heavy, start a fresh chat for the next topic: it is faster and cheaper than dragging the whole history along.
Quick actions #
Common actions for this chat — one press each:
- Analyze & Research — work through the material in front of it, attachments included.
- Create & Brainstorm — "Articles, stories, scripts, emails, and more." Generative mode: ideas, drafts, variations.
- Create Task List — "Create a task list from our conversation." The rambling chat becomes numbered, actionable steps (Task list). This is the bridge from talking to doing.
- AI Tips / View Tips — contextual suggestions for the work you are in.
- Workspace Actions — operations on the current workspace.
Conversations #
Chats / Chat History keeps everything. Per conversation:
- Rename ("Rename conversation:") — name it what it is; future-you will search for it.
- Delete — asks first ("Delete this conversation? This cannot be undone."), confirms after (Conversation deleted.). Already gone: "Conversation not found."
- New Chat starts clean — the right move whenever the topic changes.
Export #
Export Chat → Export as Doc: "Export this chat as a professional document" — a real Word file, not a text dump, ready to send. Research sessions, decisions, briefs: chat first, export, done. Where the owner has switched it off: "Export is disabled by the administrator."
Three real builds #
The script doctor #
- Attach your script from Assets (a Word file or the saved text — both attach).
- Claude Sonnet 4.6. Ask the sharp question: "Which scenes carry no conflict? Be specific."
- Push back, iterate, then have it draft prompts for Image Studio — a model writing for another model phrases things the way the second one likes.
- Export as Doc — the notes go to the writing session as a document.
Research into a plan #
- Attach the PDFs and the spreadsheet. Grok 4.3 or DeepSeek V4 Pro if there are many.
- Analyze & Research, then interrogate: "What contradicts what? What is missing?"
- Create Task List — the analysis becomes numbered steps.
- Export as Doc and the plan ships.
The frame critic #
- Attach a generated frame from Assets. Any vision model — Gemini 2.5 Flash is fast and cheap for this.
- Describe the attached image(s)., then push: "Why does it look flat? Give me the exact prompt changes."
- Take the rewritten prompt straight back to Image Studio or Video Studio. Repeat until the frame earns its render.
Messages you may meet #
| Message | Meaning |
|---|---|
| Choose an available model to start. | Pick a model before the first message |
| Could not start the conversation. Please try again. | The chat never opened — retry |
| Could not start the reply. Please try again. | The model did not begin — retry or switch model |
| Could not start the task list. Please try again. | Same, for the task action |
| Could not delete the conversation. | The delete failed — retry |
| Conversation not found. | Already gone — refresh |
| Could not load. Please try again. | History did not load — refresh |
| Regenerate is disabled by the administrator. | The owner switched re-runs off |
| Export is disabled by the administrator. | The owner switched export off |
| Reply delivered, but the credit charge did not go through | You got the answer; the meter hiccuped — it is logged, nothing to do |
| The AI engine or credit system is not available. | A required component is inactive — tell the site owner |
Help
Troubleshooting
Every failure you can meet, worded as the app words it, with its cause and fix.
Every entry follows the same shape: what you see — exactly as the app words it — why it happens, and the fix.
A generation failed #
You see: a red line in Your Activity ("Generation failed.") and nothing new in the library.
The red line carries the provider's reason. The frequent ones, verbatim, from the key screen's own vocabulary:
- That API key was rejected by the provider. — wrong, revoked, or pasted with a space. Fresh key, careful paste.
- The provider is rate-limiting this key right now. Try again shortly. — too many requests at once; wait a minute.
- The provider returned an unexpected response (HTTP 500). — the provider's own error; retry later.
- Could not reach the provider. Please try again. — network between platform and provider; retry.
- Insufficient provider balance — your fal.ai / OpenRouter account is empty. Top up on their site; this is separate from EFL credits.
"Enter your API key." / key won't save #
The field was empty, or — rarer — the server reports "Secure key storage is unavailable on this server, so the key was not saved." The first is a paste-again; the second means encryption at rest is missing and support must fix it, because keys are never stored unencrypted.
The key card says Unverified #
Saved, but not yet proven against the provider. Press Save & test again and watch for Key saved and verified. with the Valid chip. If it flips to a rejection message instead, the table on API keys & the three ways to pay maps every message to its fix.
I paid, but credits did not appear #
The banner on Billing & Plan narrates the truth of your exact order:
- "Confirming your payment — your credits will appear here within a moment. You can safely leave this page." — normal; the confirmation is travelling and lands within seconds.
- Still confirming after a few minutes? The confirmation callback is delayed. Your money is safe and the order is recorded — refresh once, then contact support with the purchase time. Do not buy again; a pending order settles, it does not vanish.
- "That payment did not go through, so nothing was charged. You can try again below." — the card was declined; nothing was taken, no credits were due.
Available is lower than Balance #
Not a loss. The difference equals the On hold chip — credits reserved by jobs still running. They return to Available the moment the job lands (or fails). The Usage Overview bar shows used, on hold and available in proportion.
The top-up form rejects my amount #
The minimum is printed on the form ("from $5.00") and the field turns red outside the range, with the exact bound named under it. The Continue to payment button stays disabled until the amount is valid — by design, so a doomed checkout can never start.
A studio shows "Upgrade required" #
That studio belongs to a higher tier — the badge is the plan boundary, not a fault. Plans & what's included explains what each tier opens.
A gift card code is refused #
The message under Gift card code says which it is: unknown code (typo — the format is EFLG-XXXX-XXXX-XXXX), already redeemed, or expired. Codes you bought are listed under Your gift cards with exactly these states.
Still stuck? The red activity line plus your purchase time is everything support needs — "Something went wrong. Please try again." moments included.
Help
FAQ
Short answers to the questions everyone asks.
Short answers, each linking to the page that explains it fully.
Do credits expire? #
yes. Credits stay in your wallet for one year.
Do I have to bring my own API keys? #
No. Your account starts on Use platform credits and works immediately — no provider account, no key, no setup. Bringing your own keys is an optional second mode for people generating at high, steady volume, where paying the providers directly beats the admin of two extra accounts. Most people should stay on credits. The comparison, with worked examples.
How do I actually switch to my own keys? #
In order: create the provider account, fund it, create a key and copy it immediately, paste it into API & Billing and press Save & test, wait for Key saved and verified. — and only then choose Use my own API keys. Switching the mode before a key is verified means every generation fails. You can switch back to credits any time with nothing lost. Every step, every message.
Does EFL add a markup on my own keys? #
No. BYOK requests run on your provider account; the provider bills you at their list price and EFL adds nothing. The usage table says it plainly: "Real provider costs on your own keys — no site credits deducted."
Why is Available lower than my Balance? #
Because a running job has credits on hold. Holds stop the same credits being spent twice; a failed job releases the hold in full. The difference always equals the "on hold" chip — see the arithmetic.
Why is the checkout price higher than the amount I typed? #
Sales tax or VAT for your country, calculated and collected by the payment provider — a Merchant of Record — and itemised before you pay. It is a tax, not an EFL fee. A processing line may also appear if your account passes it on; the billing page shows both before you confirm.
Why is there a minimum top-up? #
Payment processors charge a fixed fee per transaction. Below the minimum, most of a payment would buy fees rather than credits. The form prints the minimum ("from $5.00") and disables the button outside the range — nothing can be charged in error.
I paid but no credits arrived. What now? #
Read the banner. "Confirming your payment…" means it is settling — seconds, normally. If it stays pending for minutes, contact support with the purchase time. Do not buy again; a pending order settles, it does not vanish. If it says the payment did not go through, nothing was charged. Full detail.
What happens if a purchase is refunded? #
The credits it bought are removed (never below zero) and the order is marked refunded. This happens automatically when the payment provider reverses a payment — including a bank dispute you did not initiate. Work you already made is yours.
Is my API key safe? #
Keys are encrypted at rest, stored with your account, and used only for your own requests. Rotate at the provider any time and paste the new one over the old. If the server cannot encrypt, the key is refused rather than stored — "Secure key storage is unavailable on this server, so the key was not saved."
A studio says "Upgrade required" — is it broken? #
No. That studio belongs to a higher tier. A studio saying LOCKED with "…until the licence is active" is a different thing entirely — a system state, covered in Troubleshooting.
Where does my work live, and can I take it with me? #
In your asset library, inside the project you were working in. Assets download individually. A whole book — text, structure and images — exports as one archive and re-imports anywhere, rebuilt exactly.
What happens when a generation fails? #
Nothing is charged. The failure appears in Your Activity in red with the provider's reason, credit holds are released in full, and allowances are returned. That red line is the fastest diagnosis in the product.
Why did my video cost so much? #
Video is the most expensive thing an AI can make, and cost scales with duration and resolution. Prototype at 720p (HD) and short duration; render the keeper once at 1080p (FHD). Every clip's cost is listed next to it in the feed — cost habits.
Can I use the output commercially? #
The suite offers a Commercial Safe setting in the image, video and lip sync studios that biases generation toward output you can use commercially. Licensing ultimately follows the model provider's own terms — check them for the models you use.
Help
Policy & Terms
The rules of the platform: accounts, credits, refunds, acceptable use, your content, privacy.
# Policy & Terms
Last updated: 18 July 2026
This document governs your use of EFL.ai — the cinematic AI production suite, including every studio, the Copilot, credits, storage, and support (together, the "Service"). By creating an account, purchasing credits, or generating anything with the Service, you agree to everything below. If you do not agree, do not use the Service.
1. Who we are, and definitions #
The Service is operated by EFL.ai ("EFL", "we", "us"). "You" means the person or organisation using the Service. "Content" means anything you upload, type, or reference (prompts, scripts, images, audio, documents, URLs). "Output" means anything the Service generates for you. "Credits" means the prepaid balance used to pay for generation on our platform keys. "BYOK" means Bring Your Own Key — running generation on provider accounts that you own.
2. Accounts and eligibility #
You must be of legal age to form a binding contract in your country, and in any case at least 18 to purchase credits. You are responsible for your account: keep your password private, and everything done under your login is treated as done by you. One person or organisation per account unless your plan says otherwise. We may refuse, suspend, or close accounts that break this document.
3. The Service and third-party providers #
EFL.ai orchestrates leading AI providers rather than training its own frontier models. Media and speech run through fal.ai; text generation runs through OpenRouter; payments are processed by Dodo Payments. When you generate, your prompt and any reference Content are transmitted to the relevant provider to produce the Output, under that provider's own terms and privacy policy. We choose providers carefully, but we do not control them: model behaviour, latency, deprecations, and regional availability can change without notice, and we may add, replace, or remove models at any time.
If you use BYOK, you connect your own provider accounts. You are solely responsible for those keys: their security, their billing, their rate limits, and their compliance with the provider's terms. Platform credits are never charged for generations that run on your keys.
4. Credits, billing, and refunds #
Credits are prepaid, denominated on our published rate, and consumed when a generation is delivered to you. Estimated costs are shown before you confirm expensive operations; the estimate is our best calculation, and the final charge follows the provider's actual usage. Credits are not money, carry no interest, are non-transferable between accounts, and have no cash value except where the law says otherwise.
Credits becomes expire after one year so use it in this period. we can not guarantee you will get the same credits after one year from purchasing them.
Payments are handled by Dodo Payments; we never see or store your full card number. Prices may change, but a change never reduces a balance you already hold. If a generation fails on our side after credits were taken, the hold is released or the charge is reversed automatically — if you believe one was not, contact support from inside the app and we will trace the exact ledger entry with you.
Refunds. You are not able to refund your money after purchasing any credits unless you provided a real issue makes you but credits by wrong.
5. Acceptable use #
You may not use the Service to create, upload, or distribute:
- Any sexual content involving minors, in any style, real or generated — this is an absolute line; violations end the account immediately and are reported where the law requires.
- Content that infringes someone else's copyright, trademark, or publicity rights, including generating in a living artist's protected style for commercial passing-off.
- Deepfakes or realistic depictions of identifiable real people without their documented consent, or any content intended to deceive about a real person's words or actions.
- Malware, phishing material, spam, or content facilitating fraud or illegal activity.
- Harassment, incitement to violence, or content that a reasonable person would consider hateful toward a protected group.
You also may not probe, overload, scrape, resell, or reverse-engineer the Service, share one account across many users, or attempt to bypass rate limits, credit accounting, or safety systems. The Commercial Safe toggle in the studios is an assistive filter, not a legal clearance — final responsibility for what you publish is yours.
6. Your Content and your Output #
You keep what is yours. You retain all rights you already hold in the Content you bring. You grant us a limited, worldwide, non-exclusive licence to host, process, transmit, and display that Content solely to operate the Service for you — including sending it to the providers above to fulfil your generation requests.
Output belongs to you to the fullest extent permitted by applicable law and the relevant provider's terms, for personal and commercial use. Be aware of the nature of generative AI: similar prompts can produce similar results for different people, and no one — including us — can guarantee that an Output is unique or that it is protectable by copyright in your jurisdiction. You are responsible for ensuring you hold sufficient rights in any reference material you upload, and for how you use what you generate.
We do not use your private Content or Output to train models. Aggregated, de-identified usage statistics (counts, durations, error rates) may be used to run and improve the Service.
7. Privacy and data #
We store what the Service needs to work: your account details, your projects and assets, your credit ledger, your generation history and its metadata, and — when you contact support — your ticket, its conversation, and a snapshot of account context (plan, balance, recent activity) so we can actually help. Uploaded files and generated media are kept in our cloud storage until you delete them or your account closes.
We do not sell your personal data. We share it only with the processors named in section 3, strictly to provide the Service, and with authorities when the law genuinely compels us. Support email notifications carry conversation text but never your attached files.
You can request a copy or deletion of your personal data from inside the app via support. Deletion removes your account, projects, tickets, and stored media within 30 days, except minimal records we must keep for tax, fraud-prevention, or legal-compliance purposes.
8. Availability and changes #
We work to keep the Service fast and up, but it is provided without a guaranteed service level unless your written agreement with us says otherwise. Features marked beta may change or disappear. We may update this document; material changes will be announced in the app, and continuing to use the Service after the effective date means you accept the new version.
9. Copyright complaints #
If you believe content on the Service infringes your copyright, email main@efl.ai with: your contact details, identification of the work, the exact location of the material, a good-faith statement, and a statement under penalty of perjury that you are authorised to act. We remove infringing material and terminate repeat infringers.
10. Disclaimers and limitation of liability #
The Service and every Output are provided "as is" and "as available". Generative models can be wrong, biased, or produce content you did not intend — review everything before you rely on it or publish it. To the maximum extent permitted by law, we disclaim all implied warranties, and our total liability for any claim arising out of the Service is limited to the amounts you paid us in the three months before the event giving rise to the claim. Nothing in this document excludes liability that cannot lawfully be excluded.
11. Termination #
You can stop using the Service and close your account at any time. We may suspend or terminate accounts that violate section 5 or otherwise break this document; in serious violations, remaining credits are forfeited to the extent the law allows. Sections 6, 7, 10, and 12 survive termination.
12. Rights #
We as EFL.ai have al the rights to change any law in this policy as we want and anytime, you need to check it regularly to see updates.
13. Contact #
Questions about this document, privacy requests, or refunds: open the AI Assistant in the app and ask for a human, or email main@efl.ai. We reply to every ticket.
This policy is provided as a general framework and does not constitute legal advice; organisations with specific regulatory obligations should review it with their own counsel.
EFL Copilot
Your AI Coding & Creative Assistant
Select the model that best fits your needs. You can change the model after the chat begins.
- 1M-token context window
- Efficiency-optimized MoE (284B / 13B active)
- Strong reasoning & coding
- High throughput, low cost
- Streams the reply in real time
- 1M-token context window
- Large-scale MoE (1.6T / 49B active)
- Advanced reasoning & coding
- Long-horizon agent workflows
- Streams the reply in real time
- Advanced reasoning
- Best for complex tasks
- Deep analysis & long context
- Reads images (vision input)
- 1M-token context window, no output limit
- High factual accuracy
- Configurable reasoning effort
- Streams the reply in real time
- Reads images (vision input)
- 1M-token context window
- Frontier coding & agent performance
- Polished document creation
- Streams the reply in real time
- Reads images (vision input)
- 1M-token context window
- Long-running asynchronous agents
- Multi-stage debugging & orchestration
- Streams the reply in real time
- Reads images & files (vision input)
- 1M-token context window
- Reasoning support
- Highly autonomous, memory-driven agents
- Streams the reply in real time
- Reads images (multimodal input)
- 1M-token context window
- Near-Pro reasoning at low latency
- Configurable thinking levels
- Streams the reply in real time
- Reads images (multimodal input)
- 1M-token context window
- Built-in thinking
- Strong reasoning & coding
- Streams the reply in real time
- Reads images (multimodal input)
- 1M-token context window
- Ultra-low latency
- Most cost-efficient Gemini Flash
- Streams the reply in real time
- Reads images, video, audio & PDF
- 1M-token context window
- Near-Pro coding & reasoning
- Parallel agentic execution
- Streams the reply in real time
- Reads images (vision input)
- 1M-token context window
- Strongest for coding & refactors
- Sustained knowledge work
- Streams the reply in real time
- Reads images (vision input)
- 1M+ token context (922K in / 128K out)
- Strongest reasoning on hard tasks
- High reliability & token efficiency
- Streams the reply in real time
- Reads images (vision input)
- 1M+ token context (922K in / 128K out)
- Unifies Codex & GPT lines
- Production-quality code & tool use
- Streams the reply in real time
- Reads images (vision input)
- 400,000-token context window
- Core GPT-5.4 capability, faster
- Reliable reasoning & tool use
- Streams the reply in real time
- 32,000-token context window
- FP8-accelerated — very fast replies
- Streams the reply in real time
- Function calling & JSON mode
- Open Meta Llama 3.1 model
- Reads images (native vision)
- Huge 131,000-token context window
- 17B mixture-of-experts (16 experts)
- Streams the reply in real time
- Function calling & batch support
- Strong reasoning & agentic tasks
- 128,000-token context window
- Low latency — tuned for speed
- Streams the reply in real time
- Open OpenAI GPT-OSS weights
- Production-grade high reasoning
- 128,000-token context window
- Agentic tasks & function calling
- Streams the reply in real time
- Open OpenAI GPT-OSS weights
- Reads images (native vision)
- Massive 256,000-token context window
- Google's most intelligent open model
- Streams the reply in real time
- Reasoning & function calling
- Latest Qwen3 generation
- Strong reasoning & agent capabilities
- 32,768-token context window
- Streams the reply in real time
- Multilingual & function calling
- Reads images (native vision)
- Enormous 262,144-token context window
- Frontier-scale 1T-parameter model
- Reasoning & multi-turn tool calling
- Streams the reply in real time
- Compact & very low cost
- Industry-leading function calling
- 131,000-token context window
- Great for RAG & multi-agent workflows
- Streams the reply in real time
- Leading accuracy for multi-agent systems
- Hybrid mixture-of-experts (120B/12B active)
- 256,000-token context window
- Reasoning & function calling
- Streams the reply in real time
What you can do
Articles, stories, scripts, emails, and more.
Plan workflows, organize tasks, and manage creative work.
Get insights, summaries, and deep analysis.
Ideas, plans, outlines, and creative content.
Math, logic, strategy, and technical issues.
EFL Copilot
Your AI Coding & Creative Assistant
Start a conversation
Ask anything, brainstorm ideas, analyze data, or get help with your projects.
Audio Studio
Turn a script into natural narration, or describe a piece of music.
Script
Audio file
or drag & drop — MP3, M4A, WAV, OGG, FLAC, or a video file
Voice & Controls
Billing & Plan
Manage your subscription, billing details, and usage
Billing & Plan
Please log in to view your balance, plans, and usage.
Log inImage Studio
Create stunning AI images, ads, concept art, product shots, posters, and cinematic scenes.
Maximum detail and prompt fidelity for hero and cinematic shots.
802 Credits / Image · 1604 total
Your generated images will appear here.
Write a prompt and press Generate to begin.Generated Results
Generation Queue
Generation History
Browse Assets
Style Library
Choose from Assets
Prompt Assist
Pick a model to turn your idea into a rich, detailed prompt.
Move to folder
Loading Lip Sync Studio…
Script Writer
Create outlines, scenes, dialogue, and production-ready scripts with AI.
Script Editor
Auto-save Saved 2:38 AMNew Script
Open from Storage
Browse your folders and open a saved .txt script.
Assets
Manage, organize, search, and access all your files across every studio and format.
No assets yet
Upload your first file to get started. Everything you add is private to your account.
Recent Folders
Loading Video Studio…
Generation Queue
0Scene and storyboard jobs will appear here while they generate.
Recent Scenes
Generated scene clips will show up here.
Project Overview
No project selected.
New Project
Create Script
Storyboard
For each scene, either generate its frame in the Image Studio (its prompt is pre-filled and every image saves into this project's Storyboard folder), or add your own image from your device or your Assets. Use the studio's full toolkit (character references, edits, and more) to keep your scenes consistent.