# Caption Animation — effect skill for captions & subtitles

> **For AI agents:** find the right skill in one call — `curl -s "https://skills.varg.ai/api/search?q=<what the person wants>"` returns the matching use case and the best skills with install commands, as markdown (Russian works too). Full index: https://skills.varg.ai/llms.txt. Every page has a markdown twin: add `.md` to its path. Before generating anything, show the person the options on the use-case page.

Word-timed TikTok captions in Remotion or CSS: per-word pop, active-word highlight, 9:16 safe areas, sidecar SRT/VTT.

- **Type:** [Effect](https://skills.varg.ai/effects.md) · [Captions & subtitles](https://skills.varg.ai/browse/skills/captions.md)
- **Slug:** `iart-caption-animation`
- **Status:** live
- **Publisher:** iart.ai (community)
- **License:** MIT
- **Source:** https://github.com/iart-ai/tiktok-video-skills/tree/main/skills/caption-animation
- **Works in:** Claude Code, Cursor, Codex
- **Requires:** Node.js and Remotion (company license for for-profit teams above 3 employees), whisper.cpp via @remotion/install-whisper-cpp, or your own cloud STT key, ffmpeg/ffprobe for the verify scripts
- **Cost:** Free — renders locally with Remotion; a cloud STT, if chosen, bills your own key
- **Adoption:** 1,994 installs, 17 GitHub stars (GitHub + skills.sh, 2026-10-26)

## What it does

A how-to skill for word-by-word captions on vertical video. It normalizes Whisper output (`@remotion/install-whisper-cpp` with token-level timestamps, or a cloud STT) or an existing SRT into `{text, startMs, endMs}` tokens, pages them 1–4 words at a time with `createTikTokStyleCaptions()`, and animates a spring pop plus an active-word highlight in Remotion, with a plain CSS variant for web players. The reference adds an SRT parser, an SRT/VTT emitter, per-platform safe-area numbers and a stills-first verify loop, and it refuses to fake word timing by splitting lines evenly. It builds on Remotion's own caption packages, so it overlaps remotion-dev/remotion-captions; the files end with promotional links to the publisher's hosted iart.ai agent.

## Use when

- Add animated TikTok or karaoke captions
- Turn an SRT or Whisper transcript into word-by-word animated text
- Sync captions to a voiceover and burn them in
- Ship burned-in captions plus an accessible SRT/VTT

## Not for

- Interpolating word times from sentence-level cues (it re-transcribes instead)
- HyperFrames compositions (use heygen-com/hyperframes or cinematic-caption)

## Install

- Claude Code: `npx skills add https://github.com/iart-ai/tiktok-video-skills --skill caption-animation`
- Codex: `npx skills add https://github.com/iart-ai/tiktok-video-skills --skill caption-animation`
- Cursor: `npx skills add https://github.com/iart-ai/tiktok-video-skills --skill caption-animation`

**Models it drives:** whisper

## Used for

- [UGC video ad](https://skills.varg.ai/use-cases/ugc-ad.md): A creator-style ad: a person talks to camera about your product, with b-roll, captions and an end card.
- [Long video or podcast into shorts](https://skills.varg.ai/use-cases/podcast-to-shorts.md): Find the best moments in a long video, cut them, reframe to 9:16 and burn captions.
- [Animated captions on your video](https://skills.varg.ai/use-cases/captions.md): TikTok-style subtitles burned into an existing video: word highlight, pop words, or designed editorial captions.
- [Faceless YouTube / TikTok video](https://skills.varg.ai/use-cases/faceless-video.md): A narrated short or long video with no presenter: script, voiceover, visuals, captions, music.
- [Edit your own footage](https://skills.varg.ai/use-cases/edit-footage.md): Cut silences and flubs, reframe 16:9 to 9:16, add captions and b-roll to footage you shot.

## More captions & subtitles skills

- [3D Camera Captions](https://skills.varg.ai/skills/hyperframes-camera-3d-captions.md): Captions that live in 3D around a talking head: the camera flies through the words, heroes pass behind the speaker.
- [Remotion Captions](https://skills.varg.ai/skills/remotion-captions.md): Transcribe speech and burn in animated captions with Remotion, or import an existing SRT file.
- [ElevenLabs Speech to Text](https://skills.varg.ai/skills/elevenlabs-speech-to-text.md): Transcribe audio and video with word timestamps, speaker labels and keyterms, ready for subtitles.
- [ElevenLabs Speech to Text (inference.sh)](https://skills.varg.ai/skills/inference-sh-elevenlabs-stt.md): Transcribe audio with ElevenLabs Scribe, speaker diarization and forced alignment, via inference.sh.
- [Speech to Text](https://skills.varg.ai/skills/inference-sh-speech-to-text.md): Transcribe audio with ElevenLabs Scribe v2 or Whisper V3 Large, with timestamps and speaker labels.
- [Pretext Text Metrics](https://skills.varg.ai/skills/pretext-yaniv-golan.md): Measure and fit text without the DOM using pretext: auto-fit sizes, know line breaks before render, canvas/WebGL text.

## Run the generation on varg

varg is one API key for the models these skills drive — Seedance 2.5, Kling 4, Veo 3.1, Wan 3, Nano Banana 2.1, GPT Image 2.5, ElevenLabs v4 and 200+ more — billed in credits, with a cost estimate before anything runs.

- Claude Code: `claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg` (skill + hosted MCP)
- Codex, Cursor, Gemini CLI, OpenClaw: `npx skills add vargHQ/skills --skill varg-ai -a <agent> -y`
- Claude.ai, ChatGPT, any MCP client: connect `https://mcp.varg.ai/mcp`
- API key: https://varg.ai/dashboard/api · Model specs: https://varg.ai/models/llms.txt
