Video Wrapper logo

Video Wrapper

Community
op7418
video-wrapper

为访谈视频添加综艺特效(花字、卡片、人物条、章节标题等)。支持 4 种视觉主题,先分析字幕内容生成建议供用户审批,再渲染视频。

Overview

Publisherop7418
RepositoryVideo-Wrapper-Skills
Skill namevideo-wrapper
Stars
342
Forks
34
Bundled files
24
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 24 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by op7418 on GitHub. Read the source before you install it.

Installation

Install the Video Wrapper AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/op7418/Video-Wrapper-Skills/tree/main
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/op7418/Video-Wrapper-Skills.git \
  .claude/skills/video-wrapper
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Video Wrapper in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Video Wrapper on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Video Wrapper is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

访谈视频处理器

基于 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渐变流光创意、艺术内容

配置文件格式

json
{
  "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
    }
  ]
}

依赖安装

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

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

# 安装 Playwright 浏览器
playwright install chromium

命令行使用

bash
# 使用浏览器渲染器(推荐)
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 渲染

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Video Wrapper AI skill do?

为访谈视频添加综艺特效(花字、卡片、人物条、章节标题等)。支持 4 种视觉主题,先分析字幕内容生成建议供用户审批,再渲染视频。

Why use Video Wrapper on TypingMind?

Because you install it once and use it with any model. Video Wrapper is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Video Wrapper in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/op7418/Video-Wrapper-Skills/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Video Wrapper?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Video Wrapper?

As many as you like. As long as a model supports skills, you can use Video Wrapper with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Video Wrapper AI skill free?

It is published on GitHub by op7418. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇