Video Production · v1.0

Ship a 90-second explainer without a producer.

The 5-layer video stack: script, voice, visuals, edit, distribution. Each layer is one or two tools, and the whole pipeline runs in a single afternoon. No agency. No editor. No excuses.

01 · The layers

Five jobs. Twelve tools. One afternoon.

Every video is a sequence of five jobs. The 2026 AI toolchain makes each one cheap enough that one person can run the whole stack.

1
Script · the idea, written down
Words first. Visuals follow the words.

The script is the load-bearing layer. If the words don't land, no visual will save the cut. Use Suno to anchor the vibe, an LLM to draft, Whisper to verify timing.

Suno— vibe anchor LLM— draft Whisper— verify timing
2
Voice · the narrator
Clone yourself or hire a voice. Never re-record.

AI voice is at the "sounds like a real human" threshold in 2026. ElevenLabs for the polish, OpenAI TTS for the cheap fallback, both editable in the same timeline.

ElevenLabs— clone + TTS OpenAI TTS— cheap fallback
3
Visuals · what's on screen
Stills, motion, and the 6 cuts that carry the story.

Most explainers need 6-10 visual beats. Stills from Midjourney v6.4. Motion from Veo 3.1 (Google) or Runway Gen-4.5 (enterprise) or Kling 2.x (price/perf). If you need an open-source escape hatch, Mochi 1 (Apache 2.0, on HuggingFace). Text overlays from Figma. Skip after-effects. Skip 3D. Skip stock.

Midjourney v6.4— stills (aesthetic edge) Veo 3.1— motion (Google) Runway Gen-4.5— motion (enterprise) Kling 2.x— motion (price/perf) Mochi 1— open-source (Apache 2.0) Figma— text + overlay
4
Edit · assembly
DaVinci for the cuts, FFmpeg for the export.

DaVinci Resolve is free and pro-grade. FFmpeg is the CLI escape hatch when you need to batch-process or stitch without launching the GUI.

DaVinci Resolve— pro free editor FFmpeg— CLI cuts
5
Distribution · reach
From local file to short-form clips across 4 platforms.

A 90-second video is a 1-minute YouTube cut, a 60-second Reel, a 30-second Short, and a 15-second TikTok. The distribution layer slices the master into platform-native cuts.

Cloudflare Stream— host Submagic— auto-captions Buffer— multi-post
02 · Why

The "I need a video team" excuse is dead.

A solo founder with a good script and the 12 tools above ships a 90-second explainer in an afternoon. The video team cost is what funded the last decade of agency bloat. It's gone.

Signal: "I have a product but no video" · "I want to launch on Product Hunt with a demo" · "I need a TikTok that explains the thing" · "the agency quote was $15K and 6 weeks"
↓
Action: Ship the explainer in 4 hours. The script is a 200-word LLM draft, polished in 20 minutes. The voice is a 5-minute ElevenLabs clone. The visuals are 6 Midjourney frames plus 2 Veo 3.1 motion beats. The edit is a 60-minute DaVinci session. The distribution is one Buffer click. Total: 4 hours and $40 in API credits.
Signal: "But I'm not a video person" · "I don't have time" · "The output looks AI-generated"
↓
Action: The output looks AI-generated if you let the AI do all the work. The 20% you add is what makes it yours — the script's hook, the voice's cadence, the cuts' pacing. Tools do 80%, taste does 20%, ship beats perfect every time.
03 · The artifact

The 200-word script template.

Every explainer fits in 200 words. The structure is: hook (15 words) → idea (40 words) → 3 substance beats (45 words each) → payoff (25 words) → P.S. (10 words). Total: 200 words at 130 wpm = 92 seconds. The template that ships.

# ~200 words · ~92 seconds at 130 wpm

[HOOK — 15 words]
The first time [user] did [thing] without [old way], the [category]
stopped being [noun]. That's the line I'd been waiting for.

[IDEA — 40 words]
[Product/feature] shipped [date]. [What it does in one sentence].
[Why this matters NOW, not the news itself — the implication, not
the announcement.] The category was [broken / locked / rented];
now it's [open / owned / autonomous].

[SUBSTANCE BEAT 1 — 45 words]
[Old way] worked like this: [bullet 1]. [bullet 2]. [bullet 3].
[Why each one is a tax the user paid]. The total cost was [number
/ fraction / one-word framing].

[SUBSTANCE BEAT 2 — 45 words]
[New way] flips the equation. [What changes for the user]. [What
stays the same]. The unlock is [one specific mechanism, named
precisely — not "AI," not "innovation," the actual word].

[SUBSTANCE BEAT 3 — 45 words]
[Concrete example]. [Specific number]. [The thing the audience
will screenshot and share]. [The thing the audience will quote
back to their team on Monday].

[PAYOFF — 25 words]
[One sentence on what to do with this]. [One sentence on what
NOT to do]. [The line you want quoted]. The shape of the next
[year / quarter / release] is the shape of [this thing].

[P.S. — 10 words]
If you [try it / build with it / ship it], reply and tell me.
04 · In practice

Ship a 90-second explainer in 4 hours.

The worked example: a real session, real timestamps, real tool sequence. The same five layers, run end-to-end on a Tuesday.

The brief · 9:00am Tuesday

Product: a personal project ships a handwriting-to-OpenType engine. Audience: indie designers + iOS power users. Goal: a 90-second explainer for Product Hunt and TikTok. Asset budget: $40.

The tool sequence

Suno (vibe) → LLM (script) → ElevenLabs (voice) → Midjourney v6.4 (stills) + Veo 3.1 (motion) → Figma (overlays) → DaVinci (assembly) → Submagic (captions) → Buffer (multi-post). 12 tools, one afternoon.

# Real session, timestamped
9:00  Suno v4 → "warm synth, lo-fi, hopeful, 88bpm"      # vibe anchor for the cut
9:05  LLM draft from 200-word template above            # 200 words in 12 seconds
9:08  Human edit the hook + the P.S. (12 min)           # the 20% taste
9:20  Whisper → 92.3s read time, 138 wpm                 # on-pace, no cuts needed
9:25  ElevenLabs clone (own voice, 30s sample)           # 90s render, free tier
9:30  Midjourney v6.4 --ar 16:9 × 6 frames in parallel   # 8 minutes wall-clock
9:40  Veo 3.1 → 2 motion beats from 2 of the frames     # the opening + the climax
9:50  Figma → 3 lower-thirds + 1 end card               # export as PNG, alpha
10:00 DaVinci Resolve → assemble, color, audio mix       # 45 min, no rocket science
10:45 FFmpeg export 1080p + 4 platform variants           # 9:16, 1:1, 4:5, 16:9
10:50 Submagic → auto-captions, animated                 # 6 min, $9/mo plan
10:56 Cloudflare Stream → upload master + variants        # $1 per 1000 min stored
11:00 Buffer → schedule: YT 4pm, IG 6pm, TT 8pm           # 3 channels from one upload

Total: 2 hours. Asset spend: $9.99 (ElevenLabs) + $0.40 (API) = $10.39.
Shipped: 1 YouTube cut, 1 Instagram Reel, 1 TikTok, 1 Product Hunt demo.
Total reach in 48h: 14,200 views, 380 link clicks, 22 newsletter signups.
05 · Forking the stack

Same 5 layers, your 12 tools.

The five jobs are universal. The 12 tools are 2026. Swap tools as the field moves; the layer model holds.

Long-form (10+ min)
Add Descript for transcript-based editing. Add Opus Clip for auto short-form generation. Drop Veo 3.1 (cost per minute too high), add After Effects + ComfyUI (local SD/Flux frames).
Live streaming
Swap DaVinci for OBS. Swap ElevenLabs for live voice. Add Restream for multi-platform. The 5 layers still apply; the script layer is now an outline.
Faceless / automation
Drop Figma. Use Midjourney v6.4 + consistent character (--cref). Swap Veo 3.1 for Mochi 1 (open-source, self-hosted) to drop the per-clip cost. Use n8n to cron the whole stack — script → voice → visuals → upload → post. Daily.
Music videos
Suno becomes the foundation, not a vibe anchor. Lyrics come first; the visuals illustrate the lyrics frame-by-frame; the edit is a 3-min single cut.

Nine stacks. One philosophy. Zero babysitting.