Vibe-Skills video-studio

Use when the user asks to create or edit videos end-to-end (script→video, auto-cut/jumpcut, captions/subtitles, polishing for Shorts/Reels/TikTok). Current implemented backend: local FFmpeg (probe/render/jumpcut/burn-subtitles/polish). Planned/optional backends: Remotion (motion graphics templates), VectCutAPI (CapCut/剪映 timeline editing), and video-audio-mcp (MCP tool wrapper) when available. Produces a finished video artifact (MP4 by default) from assets + copy + a design/storyboard plan.

install
source · Clone the upstream repo
git clone https://github.com/foryourhealth111-pixel/Vibe-Skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/foryourhealth111-pixel/Vibe-Skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/bundled/skills/video-studio" ~/.claude/skills/foryourhealth111-pixel-vibe-skills-video-studio && rm -rf "$T"
manifest: bundled/skills/video-studio/SKILL.md
source content

Video Studio (自动视频制作 / 剪辑 / 打磨)

目标:把「素材(视频/音频/图片)+ 文案 + 编排/设计方案」自动变成可发布的成片,并在最后做一轮“打磨”(节奏、转场、字幕、音量、编码)。

何时使用

  • 你要“从 0 生成一个视频”(口播/科普/产品介绍/短视频)
  • 你要“自动剪辑已有视频/音频”(去静音、裁切、拼接、转场、加字幕、加 Logo/BGM)
  • 你要“适配平台规格”(9:16 / 1:1 / 16:9、码率、分辨率、时长上限)
  • 你要“自动抛光”(音量标准化、fade in/out、H.264/yuv420p、帧率、字幕烧录)

背后能力(融合方案)

本 skill 不绑定单一引擎,而是按可用性选择 backend:

  1. FFmpeg(基线后端,必备)
    • 本地快速剪辑、拼接、字幕烧录、音频混音、编码打磨
  2. Remotion(可选,做“像设计稿一样”的动效视频)
    • 程序化动效、模板化片头片尾、动态字幕/图表
  3. VectCutAPI(可选,高阶时间线后端)
    • 如果你有剪映/CapCut + VectCutAPI 服务,可用 API/MCP 进行更复杂的轨道/特效/关键帧
  4. video-audio-mcp(可选,MCP 封装的 FFmpeg 工具箱)
    • 如果已配置该 MCP server,可把常用 FFmpeg 操作当成工具调用(trim/concat/subtitles/overlays/remove_silence)

先跑一次环境探测(强烈推荐)

在当前项目目录里执行:

python C:\Users\羽裳\.codex\skills\video-studio\scripts\video_studio.py probe

它会输出 JSON,说明:

  • ffmpeg/ffprobe
    是否可用(没有则给出安装建议)
  • node/npm/npx
    是否可用(Remotion 需要)
  • vectcut_base_url
    是否可连(可选)

产物约定(建议)

  • 中间文件:
    outputs/video-studio/tmp/
  • 最终成片:
    outputs/video-studio/final/

你可以把素材放在:

  • assets/video/
    assets/audio/
    assets/images/
    assets/fonts/

最小闭环:用 spec 直接生成视频(FFmpeg backend)

  1. 写一个 spec(可参考本 skill 的

    references/sample_spec.json

  2. 运行:

python C:\Users\羽裳\.codex\skills\video-studio\scripts\video_studio.py render --spec C:\path\to\spec.json

“打磨”步骤(推荐作为最后一步)

python C:\Users\羽裳\.codex\skills\video-studio\scripts\video_studio.py polish --in .\outputs\video-studio\final\video.mp4 --out .\outputs\video-studio\final\video.polished.mp4

打磨会尽量做到:

  • H.264 + yuv420p(平台兼容)
  • 统一帧率/分辨率
  • 音量标准化(EBU R128 loudnorm)
  • 可选 fade in/out

自动剪辑:JumpCut(去静音/去停顿)

适合“口播/访谈/课程录屏”这类有明显停顿的视频:自动检测静音区间并拼接,提高节奏流畅度。

python C:\Users\羽裳\.codex\skills\video-studio\scripts\video_studio.py jumpcut --in .\assets\video\talking.mp4 --out .\outputs\video-studio\final\talking.jumpcut.mp4

常用参数:

  • --silence-threshold-db
    :静音阈值(例如
    -35
  • --min-silence
    :最短静音时长(例如
    0.4
  • --pad
    :保留在静音边界的 padding(避免“咬字被切掉”)

字幕烧录(SRT → MP4)

如果你已经有

captions.srt
(来自转录或人工),可直接烧录:

python C:\Users\羽裳\.codex\skills\video-studio\scripts\video_studio.py burn-subtitles --in .\outputs\video-studio\final\video.mp4 --srt .\assets\captions.srt --out .\outputs\video-studio\final\video.subbed.mp4

需要 AI 生成素材时(可选)

这个 skill 优先复用既有 skill,避免重复造轮子:

  • 图片/背景:
    $imagegen
    (需要
    OPENAI_API_KEY
  • 配音:
    $speech
    (需要
    OPENAI_API_KEY
  • 转录:
    $transcribe
    (需要
    OPENAI_API_KEY

典型全自动流程:

  1. 文案 → 生成配音(speech)
  2. 配音 → 生成字幕(transcribe 或手工脚本)
  3. 文案/分镜 → 生成背景图(imagegen)
  4. 用本 skill 的
    render/polish
    合成出片

质量门禁(交付前自检)

  • 成片可播放(本地播放器 + 秒开)
  • 分辨率/帧率符合平台(例如 1080x1920@30fps)
  • 音量不过爆、不太小(主讲语音清晰,BGM 不盖人声)
  • 字幕不超出安全区(手机端不被 UI 遮挡)

边界

  • 本 skill 会生成/编辑视频文件,但不会替你发布到平台。
  • 高级“像剪映一样”的轨道编辑:优先走 VectCutAPI(如果你有服务),否则用 FFmpeg 的能力做到“够用的自动剪辑”。