视频处理工具箱
面向所有用户的本地视频处理工具,无需上传云端,安全可靠。
🎯 技能使用规范
适用场景
本技能适用于以下场景:
- 查看视频信息: 快速获取视频的分辨率、时长、编码格式、文件大小等详细信息
- 视频转GIF: 将视频片段转换为GIF动图,适合制作表情、演示动画
- 提取封面/缩略图: 从视频中提取指定时间点的画面作为封面图
- 截取片段/裁剪时长: 从长视频中截取指定时间段,生成新的视频文件
- 预览模式: 所有操作支持 --preview 先查看效果,确认后再执行
常见用途
- "看看这个视频的基本信息"
- "把这段视频转成GIF"
- "提取第5秒的画面做封面"
- "截取从1分钟到3分钟的片段"
- "把视频前30秒剪出来"
- "预览一下处理效果"
前置条件
使用前请确保:
1. ✅ 安装依赖(首次使用): 在终端中 cd 进入本技能目录,然后运行 python3 scripts/install_deps.py
2. ✅ 确认Python环境: 运行 python3 --version(需要 Python 3.8+)
3. ✅ 建议使用预览模式: 首次操作请先用 --preview 查看效果
📁 路径与入口
- 技能目录:
{baseDir}/video-toolkit-expert/ - 统一入口:
python3 scripts/main.py [功能] [参数](必须在技能目录下执行) - 依赖安装:
python3 scripts/install_deps.py - 输出目录: 可通过
--output参数指定,默认为源文件同目录
🔧 执行规范
详细的操作流程、调用规范、错误处理等,请参考以下文档:
使用指南
该文档定义:
- 各功能模块的标准调用格式
- --preview 预览模式的最佳实践
- 错误处理和友好提示机制
- 跨平台兼容性注意事项
📋 输出产物
严格按照执行规范执行完成后生成:
- info: 终端显示视频信息,无文件产生
- to-gif: GIF 动图文件(默认与源文件同目录,或 --output 指定)
- extract-cover: 封面图片文件(JPG/PNG 格式)
- trim: 裁剪后的视频片段文件(MP4 格式)
- 预览模式: 无文件产生,仅显示处理计划
💡 快捷命令速查
依赖安装(首次使用)
python3 scripts/install_deps.py
查看视频信息
python3 scripts/main.py info \
--input video.mp4
视频转 GIF
# 转换整个视频
python3 scripts/main.py to-gif \
--input video.mp4 \
--preview
# 转换指定片段,设置帧率和尺寸
python3 scripts/main.py to-gif \
--input video.mp4 \
--start 5 \
--duration 3 \
--fps 15 \
--width 480 \
--output ./output/
提取封面
# 提取第 5 秒的画面
python3 scripts/main.py extract-cover \
--input video.mp4 \
--time 5 \
--preview
# 提取第一帧作为封面
python3 scripts/main.py extract-cover \
--input video.mp4 \
--output ./covers/
截取片段
# 从 1 分钟截取到 3 分钟
python3 scripts/main.py trim \
--input video.mp4 \
--start 60 \
--end 180 \
--preview
# 截取前 30 秒
python3 scripts/main.py trim \
--input video.mp4 \
--start 0 \
--end 30 \
--output ./output/
预览模式
# 查看视频信息(预览)
python3 scripts/main.py info \
--input video.mp4 \
--preview
# 查看 GIF 转换计划
python3 scripts/main.py to-gif \
--input video.mp4 \
--start 5 \
--duration 3 \
--preview
🗣️ 口语化触发词
当用户提到以下任何说法时,请立即使用本技能:
视频信息类
- "查看视频信息" / "看看这个视频的参数"
- "视频有多长" / "分辨率是多少"
- "视频编码格式" / "文件大小"
视频转GIF类
- "视频转GIF" / "把视频转成动图"
- "做成GIF表情" / "导出GIF"
- "这段视频做成动图"
封面提取类
- "提取封面" / "提取缩略图"
- "截取第X秒的画面"
- "视频的第一帧截图"
片段截取类
- "截取视频片段" / "剪一段视频"
- "从X秒到Y秒" / "截取前X秒"
- "裁剪视频时长" / "剪掉后面部分"
批量处理类
- "批量查看视频信息"
- "把这个文件夹的视频都转GIF"
- "提取所有视频的封面"
通用处理类
- "视频处理" / "处理一下这个视频"
- "本地处理视频" / "不上传云端的视频工具"
🚨 重要限制(明令禁止)
- 禁止依赖外部API: 所有处理必须本地完成,不上传任何文件到云端
- 禁止改变源文件: 所有操作必须生成新文件,绝不能修改原始视频
- 禁止跳过依赖检查: 处理前必须验证依赖安装状态,不可强行执行
- 禁止技术错误输出: 错误信息必须翻译为用户可理解的语言
- ❌ 错误:
ModuleNotFoundError: No module named 'moviepy' - ✅ 正确: "缺少视频处理组件,请先运行 python3 scripts/install_deps.py 安装依赖"
- ❌ 错误:
ValueError: start time exceeds video duration - ✅ 正确: "开始时间超过了视频总时长,请检查您设置的时间点"
- ❌ 错误:
OSError: [Errno 2] No such file or directory - ✅ 正确: "找不到指定的文件,请确认路径是否正确"
📚 参考文档
完整操作指南请参考以下文档:
- 安装与使用指南 - 依赖安装、基本用法、跨平台注意事项
- 支持格式 - 输入输出视频格式对照表
- 故障排除 - 常见问题与解决方案