Communitygithub.com

Captions From Transcript

Produce an accurate, properly timed caption track (SRT or WebVTT) from a video

Captions From Transcript 是什麼?

Captions From Transcript is a Claude Code agent skill that produce an accurate, properly timed caption track (SRT or WebVTT) from a video.

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SkillMedev/tutorial-video-studio/tree/main/skills/captions-from-transcript

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Captions From Transcript 是做什麼的?

Captions are not optional polish - they are accessibility, they hold viewers watching muted, and for tutorials they reinforce exact UI terms. This skill produces a clean, accurately timed caption file. Styling and burn-in happen downstream.

Source the most accurate text first

Accuracy comes from where you start:

  • If a narration script exists, use it as ground truth. It is already correct on technical terms and UI labels. Align it to the audio rather than re-transcribing from scratch.
  • Otherwise transcribe the audio (Whisper, a platform's auto-caption, or any ASR), then correct it against the video. ASR reliably mangles product names, code, and acronyms - fix every one to match what is on screen exactly.

Never ship raw ASR output. The errors are always in the highest-value words.

Time the cues to speech

  • Each cue appears as its line is spoken and clears when it ends - align to speech, not to arbitrary intervals.
  • Minimum ~1 second on screen (even for a short cue), maximum ~7 seconds. Split anything longer.
  • No gaps mid-sentence; small gaps between sentences are fine and aid readability.

Line and reading rules

  • 1-2 lines per cue, never 3.
  • ~32-42 characters per line. Past that it crowds the frame and overruns safe areas.
  • Reading speed ≤ ~17 characters/second (≈160-180 wpm). If a cue exceeds it, the words flash by - split the cue or extend its duration.
  • Break lines at clause boundaries, never mid-phrase. Keep "to the Settings page" together; don't strand "the" alone on a line.

Choose the format

  • SRT - universal, index + HH:MM:SS,mmm --> HH:MM:SS,mmm + text. Use for upload to most platforms and editors.
  • WebVTT (.vtt) - WEBVTT header, HH:MM:SS.mmm timestamps, supports positioning/styling cues. Use for HTML5 <track> and the web player.

Produce valid, parseable output - correct timestamp punctuation (SRT uses a comma before milliseconds, VTT a period), blank line between cues, no trailing whitespace.

Clean vs verbatim

For tutorials, caption clean: drop filler ("um", "uh", false starts), keep meaning verbatim. Preserve technical terms, code, and UI labels exactly. Only go strict-verbatim if the user explicitly needs it (legal, research, exact-quote contexts).

QA the sync

Spot-check against the actual video at the start, a middle point, and the end - drift accumulates. Confirm cues land on their lines and clear before the next begins. Fix any caption that lingers over the wrong shot.

Hand off

The finished .srt / .vtt feeds social-video-formatter for burn-in and platform styling, or the web player's <track> element directly. Leave color, font, position, and animation to those steps - this skill outputs accurate, well-timed text and nothing more.

Don't

  • Don't style, color, position, or burn captions into the frame - that is social-video-formatter.
  • Don't animate words word-by-word - that is kinetic-typography.
  • Don't ship uncorrected ASR; the mistakes cluster exactly on the terms that matter.
  • Don't pack 3 lines or overrun the reading-speed budget to avoid splitting a cue - split it.

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

Kinetic Typography

Put text in motion the right way - title cards, animated captions, lower-thirds, callouts, and word-by-word reveals - with a reading-time-per-word budget so copy holds long enough to read, plus enter/exit timing, weight and size transitions, and type hierarchy in motion. Use when someone asks to

Motion Design Principles

The craft layer for motion: pick the right easing (ease-in / ease-out / ease-in-out / spring), get timing and spacing right, build the anticipation→action→follow-through arc, and apply Disney

Narration Script

Write the spoken voiceover for a tutorial or demo - the actual words, phrased for the ear and synced one-instruction-per-action to what is on screen, with a pacing budget and a confident, jargon-checked tone. Use when someone says

Product Demo Director

Direct the craft of putting a real software UI on screen - cursor choreography, zoom/pan/callout language, screen-recording vs recreated-UI, and making state changes legible with highlights, focus pulls, and slow-downs. Use when filming or recreating an app for a product demo, feature walkthrough, onboarding clip, or release reel and asking

Remotion Compose

Turns a natural-language video brief into a complete, ready-to-preview Remotion composition - extracts duration, scenes, brand colors, aspect ratio, and real copy; plans the frame budget; and writes data-driven React/TypeScript using useCurrentFrame, interpolate, spring, AbsoluteFill, and Sequence, registered in Root.tsx. Use when someone says

Remotion Render

Renders a Remotion composition to MP4 and runs the edit-and-re-render loop - CLI render commands, 1080p/4K/9:16 presets, concurrency tuning, codec selection, batch variants from a JSON data file, and Lambda for cloud rendering. Use when someone says

Remotion Setup

Scaffolds a new Remotion video project wired for Claude Code Agent Skills - Node check, create-video scaffold, skills install, folder conventions, Google Fonts, and a smoke-test render. Use whenever someone wants to start making videos with Remotion and Claude, even just

Screencast Capture

Capture clean raw screen and camera footage for a tutorial or product demo - choosing the recorder (macOS Screenshot toolbar, QuickTime, OBS, Windows Game Bar), setting resolution / frame-rate / cursor / microphone, prepping a distraction-free stage, and recording in retakeable segments. Use when someone says

Social Video Formatter

Reframe and export a finished video for social platforms - 9:16 ↔ 16:9 cropping, burned-in captions, a platform-native first frame, loop design, and per-platform specs (aspect, length, safe areas) for TikTok, Reels, Shorts, X, and LinkedIn. Use when someone says

Sound and Music Sync

Score a video like an editor: beat-match cuts to the music, land SFX on transitions, pace the voiceover so it breathes, source royalty-free tracks safely, and duck the music so the VO sits clearly on top. Use when adding music, sound effects, or voiceover to a video, when asked to

Video Storyboard

Plan a product demo, feature announcement, or launch video as a beat sheet and shot list BEFORE animating - hook in the first 3s, problem, reveal, proof, CTA - with target duration and pacing per scene type, output as a JSON scene plan that remotion-compose consumes directly. Use when someone says

相關技能