talking-head-recut

Overlay timed, designed graphic cards onto talking-head videos synced to the transcript.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/celeroncoder/skills --skill talking-head-recut-celeroncoder
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: talking-head-recut
Source: https://github.com/celeroncoder/skills/tree/main/talking-head-recut
Command: npx skills add https://github.com/celeroncoder/skills --skill talking-head-recut-celeroncoder

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires hyperframes, gsap, and includes references (resource) and assets (resource) components.

What problem does it solve? Raw talking-head, interview, or podcast footage lacks visual structure, making it hard to highlight key takeaways for social or presentation audiences. This Skill packages an existing clip with timed, designed graphic overlay cards — kinetic titles, lower-thirds, data callouts, quotes, side panels, and picture-in-picture — synced to what is actually being said, while the original video plays untouched underneath. ## Core Features & Use Cases - Transcript-driven card design: Extracts audio with ffmpeg, transcribes locally via Whisper (hyperframes transcribe), and derives card timing and content directly from the word-level transcript. - Flexible visual system: Choose output ratio (16:9, 9:16, 4:5), layout (split, stack, pip, overlay), one of 10 card styles, and a video frame; card count auto-infers from video duration and information density. - HTML/GSAP composition rendering: The agent writes each card as an HTML fragment, assembles a single GSAP-driven composition, and renders it to MP4 via the hyperframes CLI. - Use Case: Take a 2-minute founder interview clip, confirm a 9:16 portrait canvas with a stack layout and editorial style, and produce an MP4 where 12 designed takeaway cards appear in rhythm with the speaker's points — ready for TikTok or Reels. ## Quick Start Ask the agent to package your talking-head video with designed graphic overlay cards, for example: "Dress up my interview clip interview.mp4 with on-screen graphic cards for a 9:16 vertical output."

Frequently Asked Questions about talking-head-recut

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

FAQPage Schema
How do I add graphic overlays to a talking-head video?▼

Provide the video file and confirm the aspect ratio, layout, style group, and card count when asked. The skill transcribes the audio with local Whisper, designs timed HTML cards from the transcript, and renders the final composition to MP4 with hyperframes.

What is the difference between graphic overlays and embedded captions?▼

Embedded captions render the spoken words as subtitle text on the video. Graphic overlays add designed cards — titles, data callouts, quotes, side panels — that summarize or emphasize content, while the original clip plays untouched underneath.

Does video transcription require an API key or external service?▼

No. Transcription runs locally through Whisper via the hyperframes transcribe command, so there is no API key, proxy, or rate limit. Only system ffmpeg and ffprobe are required alongside the hyperframes CLI.

What aspect ratios and layouts are supported for output video?▼

Three canvas ratios are supported: 16:9 (1920x1080), 9:16 (1080x1920), and 4:5 (1080x1350). Layouts include side-by-side split, top-bottom stack, picture-in-picture, and full-screen overlay, each paired with a matching video frame style.

How many overlay cards will my video get?▼

Card count is inferred from video duration and transcript information density, with a minimum of five cards. A dense two-minute clip might get around 17 cards, while a slow one-hour podcast might get about 53; you can also request fewer, more, or an exact number.

Why does my rendered video show a black tail at the end?▼

Whisper can return a final word timestamp slightly past the actual clip duration. Clamp every card end time and the composition duration to the duration reported in metadata.json so the render does not extend beyond the source video.