Install
openclaw skills install @thcjp/video-frames-tool-freeopenclaw skills install @thcjp/video-frames-tool-free视频帧提取免费版是一款面向个人创作者的轻量级视频抓帧工具。它依托 ffmpeg 命令行能力,让 AI Agent 通过自然语言指令即可从任意视频中提取关键帧,无需编写复杂脚本.
免费版聚焦核心抓帧场景:单帧抓取、首帧预览、基础缩略图生成。配置极简,开箱即用,适合以下用户:
免费版限制:单次最多处理 1 个视频,最多生成 10 张缩略图。如需批量处理、区间提取、短视频剪辑等高级能力,请使用 PRO 版本.
| 能力 | 描述 | 免费版 |
|---|---|---|
| 单帧抓取 | 指定时间点提取一帧图像 | 支持 |
| 首帧抓取 | 快速获取视频第一帧 | 支持 |
| 缩略图生成 | 按间隔生成多张缩略图 | 支持(≤10 张) |
| 输出格式 | JPG / PNG 切换 | 支持 |
| 区间提取 | 提取视频片段为 GIF/MP4 | 不支持 |
| 批量处理 | 多视频并行处理 | 不支持 |
| 水印添加 | 自定义水印与位置 | 不支持 |
| 自定义分辨率 | 输出指定分辨率 | 不支持 |
处理: 解析能力清单的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回能力清单的响应数据,包含状态码、结果和日志.
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 视频帧提取-免费版处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
用户输入视频路径
↓
选择抓帧模式(首帧 / 时间点 / 缩略图)
↓
设置输出参数(格式、保存路径)
↓
调用 ffmpeg 执行抓帧
↓
返回结果路径供用户查看
处理: 解析工作流程的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回工作流程的响应数据,包含状态码、结果和日志.
input_params参数,支持创建/查询/导出操作用input_params参数进行配置.
处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志.
input_params参数,支持创建/查询/导出操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:轻量级视频帧提取、支持单帧抓取与时、间点截图、适合个人创作者快、速生成缩略图、视频帧提取免费版、专注于为个人用户、提供简洁高效的视、频帧抓取能力、核心能力、单帧精准提取、指定时间点抓取、首帧快速抓取、一秒生成预览图、输出格式切换、基础缩略图批量生等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.执行核心功能执行操作,使用input_params参数进行配置.
input_params参数,支持创建/查询/导出操作小张是一名短视频博主,每次发视频都需要从成片中挑选一帧作为封面. 操作步骤:
/videos/vlog-01.mp4 的第 8 秒抓一张封面图」/tmp/cover-08s.jpg示例命令:
{baseDir}/(请参考skill目录中的脚本文件) /videos/vlog-01.mp4 --time 00:00:08 --out /tmp/cover-08s.jpg
小李收到一段 30 分钟的会议录像,想快速了解大致内容. 操作步骤:
/videos/meeting.mp4 生成 6 张缩略图」/tmp/thumbs/示例命令:
# 免费版支持最多 10 张缩略图
{baseDir}/(请参考skill目录中的脚本文件) /videos/meeting.mp4 --thumbs 6 --out /tmp/thumbs/
小王在观看技术教程视频时,希望把关键操作步骤截图保存到笔记中. 操作步骤:
示例命令:
{baseDir}/(请参考skill目录中的脚本文件) /videos/tutorial.mp4 --time 00:02:15 --out /tmp/step-1.png
mp4 --time 00:05:30 --out /tmp/step-2.png
mp4 --time 00:08:45 --out /tmp/step-3.png
以下场景视频帧提取-免费版不适合处理:
需要视频处理、音频编辑、媒体转换、配音生成时使用。不适用于非本工具能力范围的需求.
确认本地已安装 ffmpeg:
ffmpeg -version
若未安装,请参考「依赖说明」章节完成安装.
最简单的用法 - 抓取视频第一帧:
{baseDir}/(请参考skill目录中的脚本文件) /path/to/video.mp4 --out /tmp/first-frame.jpg
抓取第 10 秒的画面:
mp4 --time 00:00:10 --out /tmp/frame-10s.jpg
为长视频生成预览缩略图:
mp4 --thumbs 8 --out /tmp/thumbs/
响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤.
# 免费版默认配置
video_frames_free:
max_thumbnails: 10 # 最大缩略图数量
default_format: jpg # 默认输出格式
default_quality: 2 # JPEG 质量(2=最佳)
supported_inputs:
- mp4
- mov
- avi
- mkv
- webm
supported_outputs:
- jpg
- png
| 格式 | 适用场景 | 文件大小 | 画质 |
|---|---|---|---|
| JPG | 快速分享、网络传输 | 较小 | 有损 |
| PNG | UI 截图、需要透明度 | 较大 | 无损 |
--time 参数精准定位关键画面HH:MM:SS(如 00:01:30 表示 1 分 30 秒)# 网络分享用 JPG(体积小)
{baseDir}/(请参考skill目录中的脚本文件) video.mp4 --time 00:00:05 --out /tmp/share.jpg
# ...
# UI 设计稿用 PNG(无损画质)
mp4 --time 00:00:05 --out /tmp/ui-frame.png
| 视频时长 | 建议缩略图数 |
|---|---|
| < 1 分钟 | 3-4 张 |
| 1-5 分钟 | 4-6 张 |
| 5-30 分钟 | 6-8 张 |
| > 30 分钟 | 8-10 张 |
建议为不同项目创建独立目录:
mkdir -p /tmp/frames/project-a
mkdir -p /tmp/frames/project-b
A: 请先安装 ffmpeg:
winget install ffmpeg 或下载官方压缩包brew install ffmpegsudo apt install ffmpegA: 可能原因:
--time 00:00:03 或更晚时间点-vsync vfr 参数ffmpeg -i video.mp4 检查完整性A: 免费版单次最多 10 张。如需更多,可分多次执行,或升级至 PRO 版本(支持 100+ 张批量生成).
A: 免费版支持所有 ffmpeg 可解码的格式,包括 mp4、mov、avi、mkv、webm、flv 等主流格式.
A: 免费版仅支持本地视频文件。请先下载视频到本地后再执行抓帧。PRO 版本支持直接输入 URL.
A: 默认输出为原始分辨率。如需调整,可手动修改 ffmpeg 参数(PRO 版本内置分辨率调整功能):
ffmpeg -ss 00:00:10 -i video.mp4 -vf scale=1280:-1 -frames:v 1 output.jpg
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| ffmpeg | 命令行工具 | 必需 | 系统包管理器安装 |
| LLM API | API | 必需 | 由 Agent 内置 LLM 提供 |
| Python 3 | 运行时 | 可选 | python.org 官网下载 |
# Windows (PowerShell)
winget install Gyan.FFmpeg
# ...
# macOS
brew install ffmpeg
# ...
# Ubuntu / Debian
sudo apt update && sudo apt install ffmpeg
# ...
# CentOS / RHEL
sudo yum install epel-release && sudo yum install ffmpeg
ffmpeg 完成视频帧提取video-frames-tool-pro| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |