lecture-recording-captions

Converts lecture recordings into captioned videos with karaoke subtitles, title cards, and endcards.

366|90|Updated Aug 22, 2026
One-click install
npx skills add https://github.com/bam-bam-2/solo-skills --skill lecture-recording-captions-bam-bam-2
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lecture-recording-captions
Source: https://github.com/bam-bam-2/solo-skills/tree/main/skills/lecture-recording-captions
Command: npx skills add https://github.com/bam-bam-2/solo-skills --skill lecture-recording-captions-bam-bam-2

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve? Turning long lecture, live-session, or cohort recordings into polished captioned videos requires manual transcription, subtitle timing, slide detection, and multi-part video assembly. This Skill automates that entire pipeline from raw Zoom or screen recordings to a distributable 1080p MP4. ## Core Features & Use Cases - Automated Transcription & Correction: Converts Zoom WEBVTT transcripts or chunked Whisper output into word-timestamped segments, with LLM-based proper-noun correction. - Karaoke-Style Subtitles & Assembly: Generates ASS subtitle files with word-level highlighting, slide title cards, zoom effects, illustration overlays, face PIP, and endcards via a config-driven ffmpeg render script. - Distribution Pipeline: Uploads to YouTube as unlisted and posts Discord forum announcements with automatic 7-day link expiry for cohort sessions. - Use Case: You have a 2-hour Zoom cohort session recording. Run the lightweight path to produce a captioned video with endcard in a few hours, upload it unlisted to YouTube, and post a Discord notice that expires automatically. ## Quick Start Ask the agent to turn the lecture recording in this folder into a captioned video and prepare it for Discord sharing.

Frequently Asked Questions about lecture-recording-captions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add subtitles to a lecture recording automatically?

Convert the audio to timestamped segments using Whisper in 10-minute chunks or reuse a Zoom WEBVTT transcript, then run the provided scripts to generate ASS subtitle files and an ffmpeg render script that burns karaoke-style captions into the video.

Can I use Zoom cloud transcripts instead of Whisper for subtitles?

Yes. Zoom cloud recordings include a WEBVTT transcript whose Korean quality is comparable to Whisper. Convert it with vtt_to_segs.py, fix proper nouns, then run add_words.py to create the word-level timestamps the renderer requires.

Why does make_video.py fail with KeyError: 'words'?

The renderer requires word-level timestamps in each segment for karaoke highlighting. Sentence-level sources like Zoom transcripts lack them, so you must run add_words.py first to distribute timing across words proportionally by character count.

What ffmpeg build is needed for ASS subtitle rendering on macOS?

The default Homebrew ffmpeg lacks libass and freetype, so ass and drawtext filters are unavailable. Install ffmpeg-full and use /opt/homebrew/opt/ffmpeg-full/bin/ffmpeg for subtitle burning and text rendering.

When should I skip slide title cards and zoom effects?

Skip them when the source screen constantly changes between slides, browser, and webcam, as with full Zoom window recordings. Set runs to a single full-length entry and leave titles, zoom, and illustrations empty so only subtitles and the endcard are applied.