返回 Skill 列表
extension
分类: 其它无需 API Key

auto-video-editor

>全自动短视频剪辑 Skill。接收结构化 EditPlan (Pydantic JSON),自动探测可用后端(剪映草稿 > FFmpeg/MoviePy > CapCut API),按后端能力差异自动降级不支持的效果,输出最终视频文件。支持多输出目标(视频号版+抖音版同时生成),进度实时输出。

person作者: user_edc04a5ahubcommunity

auto-video-editor

功能描述

  • 将优化方案 JSON 自动转为可执行的剪辑操作
  • 支持多输出目标(如同时输出视频号版 + 抖音版)
  • 后端自动探测 + 自动降级(遇到不支持的效果自动用最近似效果替代)
  • 进度实时输出(每条片段一行,含状态标记)

适用场景

  1. 已经完成了短视频脚本/选题审核,需要把优化方案落地为实际视频文件
  2. 有原始素材和一组叠加图(标题卡、CTA、信息图等),需要自动化组装
  3. 需要同时输出多个平台版本(视频号、抖音、小红书等)

参数说明

EditPlan JSON Schema

详见 models.pyEditPlan / Output / Clip / OutputConfig 等 Pydantic 模型。

核心字段:

| 字段 | 类型 | 说明 | |------|------|------| | project | str | 项目名称 | | source | str | 源素材绝对路径 | | outputs[].name | str | 输出名称,如 "视频号版" | | outputs[].clips[].source_file | str | 源文件名 | | outputs[].clips[].start_ms | int | 裁剪起始毫秒 | | outputs[].clips[].end_ms | int | 裁剪结束毫秒 | | outputs[].clips[].type | str | video_cut / title_card / cta_card | | outputs[].clips[].overlay_image | str | 叠加图文件名 | | outputs[].clips[].speed | float | 播放速度倍率 | | outputs[].clips[].caption | str | 字幕文字 | | outputs[].clips[].transition | str | cut / fade / zoom / none |

后端支持

| 优先级 | 后端 | 能力 | 局限 | |--------|------|------|------| | 1 | 剪映草稿 (pyJianYingDraft) | 完整支持:叠加层、文字、转场、滤镜、变速 | 最终导出需手动在剪映中完成(或通过 JianyingController 自动化) | | 2 | FFmpeg + MoviePy | 基本支持:裁剪、变速、图像叠加、文字、淡入淡出 | 不支持蒙版/关键帧/滤镜,这些效果会降级 | | 3 | CapCut API | 占位,未实现 | - |

后端自动按优先级探测,也可通过 run()backend= 参数强制指定。

安装方法

# 依赖已预装在运行环境中
# 如需手动安装:
pip install pyJianYingDraft moviepy Pillow opencv-python pydantic

使用方法

方式一:Python API

from auto_video_editor import run
from auto_video_editor.models import EditPlan

# 从 JSON 构建 plan
plan_json = {...}  # 符合 EditPlan schema 的字典
plan = EditPlan.model_validate(plan_json)

# 执行剪辑
result = run(plan, media_dir="/path/to/media", output_path="/path/to/output.mp4")
print(f"输出文件: {result}")

方式二:命令行

python -m auto_video_editor --plan plan.json --media-dir ./media --output ./output.mp4