Communitygithub.com

AragornZJF/video-clip-assistant

视频自动剪辑助手。基于 FFmpeg 自动提取精彩片段、生成字幕、裁剪时长、制作短视视频,支持多平台导出。当用户需要:自动剪辑视频、提取关键词片段、生成字幕并烧录、导出短视频、提取视频精华、生成视频摘要时使用此技能。

video-clip-assistant 是什么?

video-clip-assistant is a Codex agent skill that 视频自动剪辑助手。基于 FFmpeg 自动提取精彩片段、生成字幕、裁剪时长、制作短视视频,支持多平台导出。当用户需要:自动剪辑视频、提取关键词片段、生成字幕并烧录、导出短视频、提取视频精华、生成视频摘要时使用此技能。.

兼容平台~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/AragornZJF/skill-tools/tree/HEAD/skills/video-processing/video-clip-assistant

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Video Clip Assistant

Automated video clipping assistant. Based on FFmpeg, it provides video trimming, subtitle generation, short video export, and more.

Core Capabilities

  1. Timeline Trimming — Extract clips by timestamp
  2. Keyword Slicing — Find segments matching keywords via ASR subtitles
  3. Subtitle Burning — Burn SRT subtitles into video
  4. Short Video Export — Crop to 9:16 / 1:1 / 16:9 multi-ratios
  5. Highlight Extraction — Automatically extract highlight segments from long videos

Quick Start

Trim by Time

python3 scripts/cut_video.py --input video.mp4 --start 10 --duration 30 --output clip.mp4

Extract Multiple Segments

python3 scripts/cut_video.py --input video.mp4 --segments "0-30,60-90,120-150" --output ./clips/

Burn Subtitles

python3 scripts/burn_subtitles.py --input video.mp4 --srt subs.srt --output subtitled.mp4

Export Short Video

python3 scripts/export_social.py --input video.mp4 --format vertical --duration 60 --output shorts/

Scripts Overview

scripts/cut_video.py

Trim video by timeline.

python3 scripts/cut_video.py \
  --input <video_file> \
  --start <seconds> \
  --duration <seconds> \
  [--segments "0-30,60-90"] \
  --output <output>

scripts/burn_subtitles.py

Burn SRT subtitles into video.

python3 scripts/burn_subtitles.py \
  --input <video> \
  --srt <subtitle_file> \
  --output <output>

Supports custom subtitle position, font size, and color.

scripts/export_social.py

Export to multi-platform compatible format.

python3 scripts/export_social.py \
  --input <video> \
  --format <vertical|square|horizontal> \
  --duration <seconds> \
  --output <output_directory>
FormatRatioUse Case
vertical9:16TikTok / Kuaishou / Xiaohongshu
square1:1Instagram
horizontal16:9YouTube / Bilibili

scripts/extract_highlights.py

Automatically extract highlight segments from a long video.

python3 scripts/extract_highlights.py \
  --input <video> \
  --num-clips <number_of_clips> \
  --min-duration <minimum_seconds> \
  --output <output_directory>

Uses scene detection algorithm to locate interesting transition points.

scripts/generate_subtitles.py

Generate SRT subtitle file (requires ASR service).

python3 scripts/generate_subtitles.py \
  --input <video> \
  --provider <whisper|funclip> \
  --output <subtitles.srt>

Typical Workflows

Workflow 1: Extract 3 highlight clips from a meeting recording

# 1. Cut 3 segments
python3 scripts/cut_video.py \
  --input meeting.mp4 \
  --segments "300-360,720-780,1200-1260" \
  --output ./clips/

# 2. Export each for TikTok format
for f in ./clips/*.mp4; do
  python3 scripts/export_social.py \
    --input "$f" \
    --format vertical \
    --output ./shorts/
done

Workflow 2: Add subtitles to a video

# 1. Generate subtitles
python3 scripts/generate_subtitles.py \
  --input video.mp4 \
  --provider whisper \
  --output video.srt

# 2. Burn subtitles
python3 scripts/burn_subtitles.py \
  --input video.mp4 \
  --srt video.srt \
  --output subtitled.mp4

Workflow 3: One-click generate multiple short videos

python3 scripts/export_social.py \
  --input long_video.mp4 \
  --format vertical \
  --duration 60 \
  --output ./shorts/

Environment Requirements

  • Required: FFmpeg (ffmpeg / ffprobe)
  • Optional: FunClip (Alibaba open-source ASR video clipping)
  • Optional: Whisper (local or API mode)

Installation Reference

# Install FunClip (recommended)
pip install funclip

# Install Whisper
pip install openai-whisper

# FFmpeg (already installed)
which ffmpeg  # should return a path

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相关技能