>全自动短视频剪辑 Skill。接收结构化 EditPlan (Pydantic JSON),自动探测可用后端(剪映草稿 > FFmpeg/MoviePy > CapCut API),按后端能力差异自动降级不支持的效果,输出最终视频文件。支持多输出目标(视频号版+抖音版同时生成),进度实时输出。
auto-video-editor是一项面向实际任务的技能,主要用于将优化方案 JSON 自动 转为可执行的剪辑操作;支持多输出目标(如同时输出视频号版 + 抖音版);
有原始素材和一组叠加图(标题卡、CTA、信息图等),需要自动化。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
详见 models.py 中 EditPlan / 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
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
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章