Word-level synced, animated captions for Remotion. Feed it audio — get 14 studio-grade styles, auto-emphasis on the words that matter, and MP4s rendered straight from the CLI.
npx captioneer init my-video
Click to copy · works with existing Remotion projects too
Auto-cycles through all 14 styles — click a style below to lock it, then tune colors, font, and position in the configurator.
Everything between raw audio and a finished, watchable clip.
Stretched, shouted, and loud words get flagged from timing and audio energy alone — then pop with scale, color, or glow in 12 of 14 styles.
captioneer render turns captions plus audio — or existing footage with --video — into a captioned MP4. No React project required.
Word pops land on the music. Beat detection nudges word starts to the nearest beat with strict monotonic ordering.
Diarized captions recolor per speaker automatically, with label chips and a stable palette across the whole clip.
Style packages ship their own keyframe word motion as pure data — bounded numbers and hex colors, no code execution.
Install third-party style packages from a file or URL, or scaffold your own in one command — validated against a strict schema.
Translate caption data with word timing preserved, keep brand terms verbatim with a glossary, and render RTL scripts with one prop.
Characters-per-second pacing gates for readability, conservative profanity filtering, and filler-word removal that closes timing gaps.
One command with autopilot — or the same primitives step by step, in your own Remotion compositions.
Plus word-level SRT and WebVTT, and full @remotion/captions compatibility.
Translate with preserved word timing and a glossary that keeps brand terms verbatim; RTL scripts render with one prop.
useBeatPulse, useVolume, useEnergy — frame-accurate reactive animation.
Each style animates differently — click a card to preview it in the player above.
Click a preset to apply it in the demo player.
Choose your speed, accuracy, and privacy trade-off — swap with a flag.
Offline transcription on your machine.
Production-grade accuracy.
Low-latency cloud inference.
Word-level timestamps at scale.
Word-level timestamps and optional speaker diarization.
Word-level Scribe transcription via API.
One binary covers the whole pipeline.
| Command | What it does |
|---|---|
npx captioneer init my-video | Scaffold a new project |
npx captioneer autopilot clip.mp3 --preset tiktok | Transcribe → tighten → emphasize → render, one command |
npx captioneer process audio.mp3 | Transcribe with any of the 6 STT providers |
npx captioneer batch ./audio/ | Process a whole directory |
npx captioneer tighten captions.json | Remove filler words and close timing gaps |
npx captioneer emphasize captions.json | Auto-flag the words worth popping |
npx captioneer pacing captions.json --strict | Broadcast readability gate (CI-ready exit code) |
npx captioneer clean captions.json | Mask or remove profanity |
npx captioneer translate captions.json -t es | Translate with word timing preserved; --glossary keeps brand terms verbatim |
npx captioneer export captions.json --format srt | Export SRT · VTT · ASS · TXT · word-level variants |
npx captioneer render captions.json --audio clip.mp3 | Render a captioned MP4 — or --video for footage |
npx captioneer styles create "My Style" | Scaffold a shareable marketplace style package |
npx captioneer styles install <file|url> | Install a style package (list/validate subcommands too) |
npx captioneer doctor | Environment health check — STT keys, renderer, runtime |
npx captioneer preview | Live preview editor with the Remotion Player |
npx captioneer demo | Open Remotion Studio (all 14 styles) |
From word-level timing to industry-standard subtitle formats — try them on the demo captions.
Free, MIT-licensed, and fully typed. Star the repo if it saves you an afternoon.