Interview Video Processor

VerifiedCaution

Adds visual effects (animated text, cards, chapter titles) to interview videos. Analyzes subtitles to generate suggestions and renders the video.

Sby Skills Guide Bot
ContentIntermediate
7/28/2026
Claude Code
#video-editing#subtitles#motion-graphics#interview#playwright

Recommended for

Automated summary

This skill analyzes an interview video's subtitles, proposes visual effects (lower thirds, chapter titles, fancy text, term cards, quotes, stats) for user approval, then renders the final video using MoviePy and Playwright.

Strengths

  • Explicitly separates subtitle analysis, user approval, and rendering, preventing unwanted effects from being baked in
  • Provides eight configurable component types with a documented JSON config format and examples
  • Ships four visual themes (notion, cyberpunk, apple, aurora) suited to different tones
  • Encodes usage guidance, notably the distinction between fancy text (a phrase) and term cards (a single term)

Limitations

  • Requires manual setup: a Python virtualenv, requirements.txt, and a Chromium browser installed through Playwright
  • Assumes the user supplies an .srt subtitle file aligned with the video, otherwise effect timings will drift
  • Screenshot-based HTML rendering is heavier than native compositing and can noticeably lengthen processing time
When to use it

Use it when you want to quickly dress up a raw interview with consistent on-screen graphics instead of building effects by hand in an editor.

When not to use it

Avoid it for footage without usable subtitles or for bespoke creative editing that needs frame-level manual control.

Security analysis

Caution
Quality score86/100

The skill legitimately uses Bash, Python, MoviePy, Playwright, and package installation to render local video effects. No destructive commands, secret exfiltration, obfuscated payloads, or safety-disabling instructions are present, but dependency installation plus execution of local scripts warrants a caution rating pending review of the bundled code.

Findings
  • •Uses Bash to run local Python scripts and install Python/Playwright dependencies, which requires network access and execution of third-party packages.
  • •Processes user-supplied video/subtitle files and writes output files; file paths and output locations should be validated.
  • •Relies on bundled scripts/templates not shown in SKILL.md; the actual src/ files and requirements.txt should be audited before listing.
How this analysis is made

Examples

Analyse et proposition d'effets
Ajoute des effets visuels à interview.mp4 en te basant sur interview.srt : analyse les sous-titres et propose-moi d'abord les composants avant de rendre quoi que ce soit.
Rendu avec thème et config
Rends interview.mp4 avec les sous-titres subs.srt et ma config config.json en thème cyberpunk, sortie en interview_final.mp4.
Correction de la sélection
Dans tes suggestions, supprime les cartes de termes et garde seulement le bandeau nominatif et deux textes d'accroche, puis génère le rendu.

name: video-wrapper description: 为访谈视频添加综艺特效(花字、卡片、人物条、章节标题等)。支持 4 种视觉主题,先分析字幕内容生成建议供用户审批,再渲染视频。 argument-hint: <video-file> <subtitle-file> [config.json] [output.mp4] user-invocable: true allowed-tools: Bash, Read, Write context: fork agent: general-purpose

访谈视频处理器

基于 Python + Playwright + MoviePy 的视频特效处理工具,使用 HTML/CSS/Anime.js 渲染高质量视觉效果。

工作流程

第一步:分析字幕内容

当用户提供视频和字幕文件时,先分析字幕内容,生成特效建议:

  1. 读取字幕文件 (.srt)
  2. 分析内容,识别:
    • 嘉宾信息(用于人物条)
    • 话题切换点(用于章节标题)
    • 关键词和术语(用于花字)
    • 专业名词(用于名词卡片)
    • 精彩观点(用于金句卡片)
    • 数字数据(用于数据动画)
    • 核心要点(用于要点列表)
  3. 生成建议列表,展示给用户审核

第二步:用户审核

将建议以 Markdown 格式展示给用户:

## 视觉特效建议

**主题**: notion

### 1. 人物条 (Lower Third)
- **姓名**: Dario Amodei
- **职位**: CEO
- **公司**: Anthropic
- **出现时间**: 1000ms

### 2. 花字高亮 (Fancy Text)
1. **通用人工智能** (emphasis)
   时间: 2630ms - 5500ms
   原因: 核心概念首次提及

...

用户可以:

  • 确认全部建议
  • 修改部分建议
  • 删除不需要的组件
  • 添加新的组件

第三步:生成配置并渲染

根据用户审批后的建议生成 config.json,然后渲染视频。

可用组件

| 组件 | 用途 | 配置字段 | |------|------|----------| | 人物条 (lower_third) | 显示嘉宾信息 | name, role, company, startMs, durationMs | | 章节标题 (chapter_title) | 话题切换标题 | number, title, subtitle, startMs, durationMs | | 花字 (fancy_text) | 概括当前观点 | text, style, startMs, endMs, position | | 名词卡片 (term_card) | 解释术语 | chinese, english, description, firstAppearanceMs | | 金句卡片 (quote_callout) | 突出精彩观点 | text, author, startMs, durationMs, position | | 数据动画 (animated_stats) | 展示数字 | prefix, number, unit, label, startMs | | 要点列表 (bullet_points) | 总结核心要点 | title, points[], startMs, durationMs | | 社交媒体条 (social_bar) | 关注引导 | platform, label, handle, startMs, durationMs |

花字使用规范

⚠️ 重要:花字必须遵循以下规范:

  1. 必须是短语:用简短的句子概括说话人当时的观点

    • ✅ 正确:「AI发展是平滑曲线」「智能增长类似摩尔定律」
    • ❌ 错误:「人工智能」「摩尔定律」(这些是单词,应该用名词卡片)
  2. 与名词卡片互补:

    • 花字:概括观点(如「智能每年翻倍增长」)
    • 名词卡片:解释术语(如「摩尔定律:集成电路晶体管数量每18-24个月翻一番」)
  3. 位置在上方:默认显示在屏幕上方区域(字幕上方),避免遮挡人脸

社交媒体条使用规范

  • 默认显示时长:8 秒(比其他组件更长,给用户足够时间记住)
  • 通常在视频结尾出现
  • 支持平台:twitter, weibo, youtube

主题系统

支持 4 种视觉主题:

| 主题 | 风格 | 适用场景 | |------|------|----------| | notion | 温暖知识风 | 教育、知识分享 | | cyberpunk | 霓虹未来感 | 科技、前沿话题 | | apple | 极简优雅 | 商务、专业访谈 | | aurora | 渐变流光 | 创意、艺术内容 |

配置文件格式

{
  "theme": "notion",
  "lowerThirds": [
    {
      "name": "Dario Amodei",
      "role": "CEO",
      "company": "Anthropic",
      "startMs": 1000,
      "durationMs": 5000
    }
  ],
  "chapterTitles": [
    {
      "number": "Part 1",
      "title": "指数增长的本质",
      "subtitle": "The Nature of Exponential Growth",
      "startMs": 0,
      "durationMs": 4000
    }
  ],
  "keyPhrases": [
    {
      "text": "通用人工智能",
      "style": "emphasis",
      "startMs": 2630,
      "endMs": 5500
    }
  ],
  "termDefinitions": [
    {
      "chinese": "摩尔定律",
      "english": "Moore's Law",
      "description": "集成电路晶体管数量每18-24个月翻一番",
      "firstAppearanceMs": 37550,
      "displayDurationSeconds": 6
    }
  ],
  "quotes": [
    {
      "text": "AI 的发展是一个非常平滑的指数曲线",
      "author": "— Dario Amodei",
      "startMs": 30000,
      "durationMs": 5000
    }
  ],
  "stats": [
    {
      "prefix": "增长率 ",
      "number": 240,
      "unit": "%",
      "label": "计算能力年增长",
      "startMs": 45000,
      "durationMs": 4000
    }
  ],
  "bulletPoints": [
    {
      "title": "核心观点",
      "points": [
        "AI 发展是平滑的指数曲线",
        "类似摩尔定律的智能增长",
        "没有突然的奇点时刻"
      ],
      "startMs": 50000,
      "durationMs": 6000
    }
  ]
}

依赖安装

# 进入虚拟环境
cd ~/.claude/skills/video-wrapper
source venv/bin/activate

# 安装依赖
pip install -r requirements.txt

# 安装 Playwright 浏览器
playwright install chromium

命令行使用

# 使用浏览器渲染器(推荐)
python src/video_processor.py video.mp4 subs.srt config.json output.mp4

# 指定渲染器
python src/video_processor.py video.mp4 subs.srt config.json -r browser
python src/video_processor.py video.mp4 subs.srt config.json -r pil

技术实现

  • 视觉渲染: HTML + CSS + Anime.js (通过 Playwright 截图)
  • 视频合成: MoviePy
  • 动画引擎: Anime.js (Spring 物理动画)
  • 备用渲染: Python PIL

文件结构

~/.claude/skills/video-wrapper/
├── src/
│   ├── video_processor.py    # 主处理脚本
│   ├── browser_renderer.py   # Playwright 渲染器
│   ├── content_analyzer.py   # 内容分析器
│   ├── fancy_text.py         # PIL 花字(备用)
│   └── term_card.py          # PIL 卡片(备用)
├── templates/
│   ├── fancy-text.html       # 花字模板
│   ├── term-card.html        # 名词卡片模板
│   ├── lower-third.html      # 人物条模板
│   ├── chapter-title.html    # 章节标题模板
│   ├── quote-callout.html    # 金句卡片模板
│   ├── animated-stats.html   # 数据动画模板
│   └── bullet-points.html    # 要点列表模板
├── static/
│   ├── css/
│   │   ├── effects.css       # 基础效果
│   │   ├── theme-notion.css  # Notion 主题
│   │   ├── theme-cyberpunk.css
│   │   ├── theme-apple.css
│   │   └── theme-aurora.css
│   └── js/
│       └── anime.min.js      # Anime.js
└── requirements.txt

注意事项

  • 视频处理需要较长时间,请耐心等待
  • 确保有足够的磁盘空间存储输出视频
  • Playwright 渲染效果更好,但需要安装 Chromium
  • 如果 Playwright 不可用,会自动回退到 PIL 渲染

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/interview-video-processor-ms47voe9/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/interview-video-processor-ms47voe9' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/interview-video-processor-ms47voe9/download' --output '.skill-downloads/interview-video-processor-ms47voe9/SKILL.md.part' && mv '.skill-downloads/interview-video-processor-ms47voe9/SKILL.md.part' '.skill-downloads/interview-video-processor-ms47voe9/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Tools declared by the author (check availability in your agent): Bash, Read, Write

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/interview-video-processor-ms47voe9/SKILL.md' && test -s '.skill-downloads/interview-video-processor-ms47voe9/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/video-wrapper' && cp -R '.skill-downloads/interview-video-processor-ms47voe9' '.claude/skills/video-wrapper'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/interview-video-processor-ms47voe9'

openskills read 'interview-video-processor-ms47voe9'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/interview-video-processor-ms47voe9/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills