# FFmpeg Captions and Subtitles — guide 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.

FFmpeg subtitle reference: burn SRT/ASS/VTT with libass, soft tracks, conversion, styling and FFmpeg 8's Whisper filter.

- **Type:** [Guide](https://skills.varg.ai/guides.md) · [Captions & subtitles](https://skills.varg.ai/browse/skills/captions.md)
- **Slug:** `josiahsiegel-ffmpeg-captions`
- **Status:** live
- **Publisher:** Josiah Siegel (community)
- **License:** MIT
- **Source:** https://github.com/JosiahSiegel/claude-plugin-marketplace/tree/main/plugins/ffmpeg-core/skills/ffmpeg-captions-subtitles
- **Works in:** Claude Code
- **Requires:** ffmpeg built with libass (FFmpeg 8 built with whisper.cpp for the whisper filter)
- **Cost:** Free — runs locally with ffmpeg
- **Adoption:** 469 installs, 59 GitHub stars (GitHub + skills.sh, 2026-10-26)

## What it does

A reference skill for subtitle work in FFmpeg 7.1 and 8.0: burning SRT, ASS and VTT with the `subtitles` and `ass` filters, `force_style` styling and alignment, soft `mov_text` tracks, extraction and format conversion, CEA-608/708 closed captions and `drawtext` overlays. It documents FFmpeg 8's `whisper` audio filter for writing SRT straight from audio (needs a build configured with whisper.cpp), and the plugin ships a helper that fetches a ggml model and writes SRT plus VTT. Sibling skills in the same plugin marketplace cover ASS karaoke and kinetic captions (`ffmpeg-karaoke-animated-text`, `ffmpeg-kinetic-captions`). It comes from a large generalist plugin marketplace, and the SKILL.md opens with generic boilerplate rules (Windows paths, no new docs).

## Use when

- Burn SRT, ASS or VTT subtitles into a video
- Add a soft subtitle track or extract subtitles
- Style captions (font, outline, position) with force_style
- Generate subtitles with FFmpeg 8's Whisper filter

## Not for

- Word-by-word animated captions (use caption-animation or the sibling ffmpeg-kinetic-captions)
- General encoding and editing (kajisho5/ffmpeg-skill)

## Install

- Claude Code: `npx skills add https://github.com/josiahsiegel/claude-plugin-marketplace --skill ffmpeg-captions-subtitles`

## 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.
