Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计异常

video-edit视频编辑

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

667

周安装

27

GitHub Stars

9

下载量

210
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:video-edit(视频编辑)
来源仓库:https://github.com/aiagentwithdhruv/skills
仓库路径:skills/video-edit
安装命令:
npx skills add https://github.com/aiagentwithdhruv/skills --skill video-edit
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/aiagentwithdhruv/skills --skill video-edit

简介

video-edit 提供完整的视频后期流水线,包括静音去除、字幕生成、竖屏裁剪与压缩优化。

  • 支持 Remotion 项目开发与 YouTube 自动分章剪辑,适合社交媒体内容批量处理。
  • 通过 npx skills add 命令安装,各脚本需单独调用并传入对应参数。
  • 使用第三方素材时应确保拥有合法使用权,避免侵权风险。
  • video-edit 属于开发类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Video Editing Toolkit

Goal

Complete video production pipeline: silence removal, auto-captions, vertical cropping, YouTube clipping, compression, and 3D transitions.

Scripts (7 total)

ScriptPurpose
jump_cut_vad_singlepass.pyRemove silences with neural VAD (Silero)
auto_captions.pyGenerate + burn styled subtitles (Whisper + FFmpeg)
vertical_crop.pyAuto-crop 16:9 → 9:16 with face tracking
youtube_clip.pyDownload YouTube + AI chapter clipping
compress_video.pySocial media compression with platform presets
simple_video_edit.pyFull pipeline: silence removal + transcription + metadata + upload
insert_3d_transition.py3D swivel teaser insertion

Quick Start Recipes

Recipe 1: Full Social Media Pipeline

# 1. Remove silences
python3 ./scripts/jump_cut_vad_singlepass.py input.mp4 .tmp/edited.mp4

# 2. Add captions
python3 ./scripts/auto_captions.py .tmp/edited.mp4 .tmp/captioned.mp4 --word-level --max-words 2

# 3. Crop to vertical for Shorts/Reels
python3 ./scripts/vertical_crop.py .tmp/captioned.mp4 .tmp/vertical.mp4

# 4. Compress for platform
python3 ./scripts/compress_video.py .tmp/vertical.mp4 output.mp4 --preset instagram-reel

Recipe 2: YouTube → Shorts Pipeline

# 1. Download + auto-clip YouTube video
python3 ./scripts/youtube_clip.py "https://youtube.com/watch?v=..." --auto-clip --output-dir clips/

# 2. Add captions to best clip
python3 ./scripts/auto_captions.py clips/chapters/01_intro.mp4 .tmp/captioned.mp4 --word-level

# 3. Crop to vertical
python3 ./scripts/vertical_crop.py .tmp/captioned.mp4 .tmp/vertical.mp4

# 4. Compress for YouTube Shorts
python3 ./scripts/compress_video.py .tmp/vertical.mp4 short.mp4 --preset youtube-shorts

Recipe 3: Quick Edit + Upload

# All-in-one: silence removal + transcription + metadata + Auphonic upload
python3 ./scripts/simple_video_edit.py --video input.mp4 --title "My Video"

Script 1: VAD Silence Removal

File: ./scripts/jump_cut_vad_singlepass.py

How It Works

  1. Extracts audio as WAV (16kHz mono)
  2. Runs Silero VAD to detect speech segments
  3. Merges close segments, adds padding
  4. Uses FFmpeg trim+concat to join segments in single pass
  5. Hardware encodes with hevc_videotoolbox (H.265, 17Mbps, 30fps)

CLI Arguments

ArgumentDefaultDescription
--min-silence0.5Min silence duration to cut (seconds)
--min-speech0.25Min speech duration to keep (seconds)
--padding100Padding around speech (ms)
--merge-gap0.3Merge segments closer than this (seconds)
--keep-starttrueAlways start from 0:00

Usage

python3 ./scripts/jump_cut_vad_singlepass.py input.mp4 output.mp4
python3 ./scripts/jump_cut_vad_singlepass.py input.mp4 output.mp4 --min-silence 1.0 --padding 200

Processing Time

~8 minutes for a 49-min 4K video


Script 2: Auto-Captions

File: ./scripts/auto_captions.py

How It Works

  1. Transcribes video using faster-whisper (word-level timestamps)
  2. Generates SRT subtitles (segment-level or word-level)
  3. Burns styled captions into video with FFmpeg

CLI Arguments

ArgumentDefaultDescription
--modelbaseWhisper model: tiny, base, small, medium, large-v3
--languageautoForce language (en, es, hi, etc.)
--word-levelfalseShort punchy captions (1-3 words at a time)
--max-words3Max words per caption in word-level mode
--font-size22Caption font size (auto-scales for vertical)
--font-colorwhiteText color: white, yellow, cyan, green, red, orange, pink
--outline-colorblackOutline color
--positionbottomCaption position: bottom, top, middle
--srt-onlyfalseOnly generate SRT, don't burn
--srt-pathautoCustom SRT output path
--boldtrueBold text

Usage

# Basic captions
python3 ./scripts/auto_captions.py input.mp4 output.mp4

# Word-level (CapCut/Submagic style)
python3 ./scripts/auto_captions.py input.mp4 output.mp4 --word-level --max-words 2

# Yellow captions at top
python3 ./scripts/auto_captions.py input.mp4 output.mp4 --font-color yellow --position top

# SRT only (no burn)
python3 ./scripts/auto_captions.py input.mp4 --srt-only

# High accuracy
python3 ./scripts/auto_captions.py input.mp4 output.mp4 --model large-v3

Dependencies

pip install faster-whisper

Script 3: Vertical Crop

File: ./scripts/vertical_crop.py

How It Works

  1. Samples frames throughout the video
  2. Detects faces using OpenCV Haar cascade
  3. Smooths face positions to avoid jitter
  4. Crops 16:9 → 9:16 centered on the speaker
  5. For moving subjects: segments video into 2s chunks with per-segment tracking

CLI Arguments

ArgumentDefaultDescription
--ratio9:16Target aspect ratio (e.g., 9:16, 4:5, 1:1)
--positionautoCrop position: auto (face tracking), left, center, right
--smoothing30Smoothing window in frames
--sample-interval5Sample every N frames for detection

Usage

# Auto face-tracking crop
python3 ./scripts/vertical_crop.py input.mp4 output.mp4

# Square crop (Instagram post)
python3 ./scripts/vertical_crop.py input.mp4 output.mp4 --ratio 1:1

# 4:5 crop (Instagram feed)
python3 ./scripts/vertical_crop.py input.mp4 output.mp4 --ratio 4:5

# Center crop (no tracking)
python3 ./scripts/vertical_crop.py input.mp4 output.mp4 --position center

Dependencies

pip install opencv-python numpy

Script 4: YouTube Clip

File: ./scripts/youtube_clip.py

How It Works

  1. Downloads video via yt-dlp (up to 4K)
  2. Extracts YouTube chapters if available
  3. Falls back to AI chapter generation (Whisper + Claude)
  4. Clips video into individual chapter files

CLI Arguments

ArgumentDefaultDescription
--download-onlyfalseOnly download, don't clip
--max-quality1080Max quality: 480, 720, 1080, 1440, 2160
--audio-onlyfalseDownload audio only (MP3)
--startnoneManual clip start (seconds)
--endnoneManual clip end (seconds)
--auto-clipfalseAI-powered chapter detection and clipping
--use-yt-chapterstrueUse YouTube chapters if available
--max-clipsnoneLimit number of clips
--whisper-modelbaseWhisper model for transcription
--reencodefalseRe-encode clips (precise cuts)
--output-dir.tmp/clipsOutput directory

Usage

# Download only
python3 ./scripts/youtube_clip.py "https://youtube.com/watch?v=..." --download-only

# Auto-clip into chapters
python3 ./scripts/youtube_clip.py "https://youtube.com/watch?v=..." --auto-clip

# Extract specific range
python3 ./scripts/youtube_clip.py "https://youtube.com/watch?v=..." --start 60 --end 180 -o clip.mp4

# Download audio only
python3 ./scripts/youtube_clip.py "https://youtube.com/watch?v=..." --audio-only

# Top 3 clips only
python3 ./scripts/youtube_clip.py "https://youtube.com/watch?v=..." --auto-clip --max-clips 3

Dependencies

pip install yt-dlp faster-whisper anthropic

Script 5: Video Compressor

File: ./scripts/compress_video.py

Platform Presets

PresetResolutionCRFMax DurationMax SizeNotes
youtube1080p18nonenoneHigh quality
youtube-shorts1080x19202060snoneVertical
instagram-reel1080x19202390snoneVertical
instagram-post1080x10802360snoneSquare/vertical
tiktok1080x192023180snoneVertical
twitter1080p23140s512MBAuto-bitrate
linkedin1080p23600s200MBAuto-bitrate
telegram720p28none50MBFor bots
whatsapp720p28120s16MBAggressive
small480p30nonenoneQuick sharing

CLI Arguments

ArgumentDefaultDescription
--presetnonePlatform preset (see table above)
--resolution1080Max height in pixels
--crf23Quality (0=lossless, 51=worst)
--audio-bitrate128kAudio bitrate
--target-sizenoneTarget file size in MB
--max-durationnoneMax duration in seconds
--list-presetsfalseShow all presets

Usage

# Platform preset
python3 ./scripts/compress_video.py input.mp4 output.mp4 --preset instagram-reel
python3 ./scripts/compress_video.py input.mp4 output.mp4 --preset whatsapp

# Target file size
python3 ./scripts/compress_video.py input.mp4 output.mp4 --target-size 25

# Custom
python3 ./scripts/compress_video.py input.mp4 output.mp4 --resolution 720 --crf 28

# List all presets
python3 ./scripts/compress_video.py input.mp4 output.mp4 --list-presets

Script 6: Simple Video Edit (Full Pipeline)

File: ./scripts/simple_video_edit.py

How It Works

  1. FFmpeg silence detection + cutting
  2. Audio normalization (loudnorm)
  3. Whisper transcription
  4. Claude-generated YouTube metadata (summary + chapters)
  5. Auphonic upload → YouTube (private draft)

CLI Arguments

ArgumentDefaultDescription
--videorequiredInput video path
--titlerequiredYouTube title
--thumbnailnoneThumbnail image path
--no-uploadfalseSkip Auphonic upload
--no-normalizefalseSkip audio normalization
--upload-onlyfalseSkip editing, just upload
--silence-threshold-35Silence threshold in dB
--silence-duration3.0Min silence duration (seconds)

Usage

# Full pipeline
python3 ./scripts/simple_video_edit.py --video input.mp4 --title "My Video"

# Local only
python3 ./scripts/simple_video_edit.py --video input.mp4 --title "Test" --no-upload

Dependencies

pip install anthropic faster-whisper requests python-dotenv
# Requires: ANTHROPIC_API_KEY, AUPHONIC_API_KEY in .env

Script 7: 3D Swivel Teaser

File: ./scripts/insert_3d_transition.py

How It Works

  1. Extracts frames from later in video (default: 60s onwards)
  2. Creates 3D rotating "swivel" animation via Remotion
  3. Splits video: intro → transition → main content
  4. Re-encodes and concatenates with audio preserved

CLI Arguments

ArgumentDefaultDescription
--insert-at3Where to insert teaser (seconds)
--duration5Teaser duration (seconds)
--teaser-start60Where to sample content from (seconds)
--bg-color#2d3436Background color (hex)
--bg-imagenoneBackground image path

Final Timeline

[0-3s intro] [3-8s swivel teaser @ 100x] [8s onwards: edited content]
Audio: Original audio plays continuously

Dependencies

pip install torch  # For Silero VAD (jump_cut script)
brew install ffmpeg node  # macOS
cd video_effects && npm install  # For Remotion 3D rendering

All Dependencies (Install Once)

# Core (required for all scripts)
brew install ffmpeg

# Silence removal
pip install torch

# Auto-captions + YouTube clip
pip install faster-whisper

# Vertical crop
pip install opencv-python numpy

# YouTube download
pip install yt-dlp

# AI features (chapters, metadata)
pip install anthropic

# Full pipeline (simple_video_edit)
pip install requests python-dotenv

# 3D transitions
brew install node
cd scripts/video_effects && npm install

Troubleshooting

IssueSolution
Cuts feel abrupt--padding 200 in jump_cut
Too much cut--min-silence 1.0 in jump_cut
Captions too small--font-size 32 in auto_captions
Vertical video detectedFont auto-scales 1.3x
Won't play in QuickTimeEnsure hvc1 codec tag
Face not detectedTry --position center in vertical_crop
YouTube download failsUpdate yt-dlp: pip install -U yt-dlp
File too largeUse --preset whatsapp or --target-size 25
Hardware encoder failsAuto-falls back to software (libx264)

Technical Details

  • macOS: Hardware encoding (hevc_videotoolbox / h264_videotoolbox)
  • Fallback: libx264/libx265 with CRF
  • Audio: AAC 128-192kbps
  • Uses hvc1 codec tag for QuickTime compatibility
  • All scripts support --help for full argument list

Schema

Inputs

NameTypeRequiredDescription
input_videofile_pathYesInput video file path
recipestringNoPipeline recipe: full-social, youtube-shorts, quick-edit
presetstringNoCompression preset: youtube, instagram-reel, tiktok, whatsapp, etc.

Outputs

NameTypeDescription
output_videofile_pathProcessed video file path

Credentials

NameSource
ANTHROPIC_API_KEY.env (for AI chapters)
AUPHONIC_API_KEY.env (for upload)

Composable With

Skills that chain well with this one: pan-3d-transition, recreate-thumbnails

Cost

Free locally (FFmpeg + Silero VAD)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.12%
按下载量换算70

Claude

31.97%
按下载量换算67

Cursor

20.14%
按下载量换算42

Gemini CLI

9.07%
按下载量换算19

安全审计

Gen Agent Trust Hub

通过

Socket

未通过

Snyk

可疑

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills