FFHub 介绍
FFHub 把 FFmpeg 包装成 REST API,发命令拿结果,不用自己搭机器。
FFHub 把 FFmpeg 做成 REST API。你发一条普通的 ffmpeg 命令,我们在云端跑完,把输出文件的 URL 还你。不用配服务器、不用装编解码器、不用运维。
用 AI 接入(最快上手)
接入 FFHub 最快的方式是把文档丢给 AI,让它直接给你写客户端代码。把下面这段提示词粘进 ChatGPT、Claude.ai、Gemini,或者 IDE 里的 AI 助手(Cursor / Claude Code 之类)。模板里已经带了我们的 llms.txt,模型自己就能拿到所需的上下文。
我想把 FFHub 视频处理 API 接入我的项目。
参考上下文:
- 项目介绍:https://www.ffhub.io/llms.txt
- API 规范:https://api.ffhub.io/openapi.json
我要做的事:<填具体任务,比如「MP4 转 MP3 192kbps」「提取视频第 5 秒的缩略图」「把视频压到 10MB 以下」>
我用的语言/运行时:<Node.js / Python / Go / Bash / …>
请帮我写一个完整、可直接运行的脚本:
1. 如果是本地文件:先 POST /v1/uploads/sign 拿到一个预签名 URL,再用 PUT 把文件直接传到那个 URL,把返回的 public_url 当作 FFmpeg 的输入。
2. POST /v1/tasks,body 里带一个 `command` 字段,内容是 FFmpeg 参数加上面那个输入 URL。
3. 用 GET /v1/tasks/{id} 轮询任务,直到 status 变成 succeeded 或 failed,然后从 outputs[0].url 下载结果。
我的 API key 从 FFHUB_API_KEY 环境变量读。
在 Postman 里试
想最快上手,直接用我们的 Postman 公共工作区:
- FFHub 公共工作区 — fork 到你自己的 Postman,填上 access token,几秒就能发请求。
OpenAPI 规范
完整的机读规范在 api.ffhub.io/openapi.json — 涵盖任务管理、账号信息,以及上传签名端点。把这个 URL 贴进 Postman / Bruno / Insomnia,或者喂给 openapi-generator / openapi-typescript,就能一键生成各语言的类型化客户端。
所有接口都用 Bearer access token 鉴权,去 /dashboard/api-keys 创建。GET /v1/tasks/{id} 目前为了兼容老版本 ffhub-cli 没强制鉴权,后续版本会改为必须传 token。
能干啥
- 转码格式互转:任意格式互转,MP4 / WebM / HLS / GIF,换编码
- 压缩缩放:缩小体积、改码率、调分辨率
- 编辑:裁剪、合并、截取、旋转、加水印、加字幕
- 提取:音频、帧、缩略图、元数据
- FFmpeg 能做的事我们都能跑——你的命令我们照单全收
计费
- 1 积分 = 5 秒处理时长,按秒计费
- $1 ≈ 1,000 积分
- 注册送免费积分,不订阅、积分不过期
只为真正处理的时间付费,排队时间不算钱。
文档大纲
按你打算怎么用 FFHub 挑路径:
入门 — 第一次用按顺序看就行。
- 快速开始 — 3 分钟跑通第一个任务(curl + Node.js + Python 都给了)。
- 上传文件 — 把本地文件转成 API 能读的 URL(multipart / Base64 / 远程 URL 三选一)。
代码示例 — 想直接抄能跑的代码。
- 示例 — FFmpeg 常用配方(转码、压缩、剪辑、提取音频、加水印)。
- SDK & 代码示例 — 同样的任务用 Node.js / Python / Go 怎么写。
- 视频压缩 — H.264 vs H.265 vs VP9、CRF 怎么调、二次编码。
集成 — 完全不想写 HTTP 代码。
- CLI 工具 —
npm install -g ffhub,终端直接跑命令,本地文件自动上传。 - n8n 节点 — FFHub 直接塞进 n8n 可视化工作流。
- Claude Code 技能 — 在 Claude Code 里把 FFHub 当 FFmpeg 工具箱用。
想先看高一层的产品介绍,再钻具体端点?FFmpeg API 指南 讲清楚 API 是干啥的、比自己跑 FFmpeg 强在哪、适合什么场景。
支持
- GitHub — ffhub-io/ffmpeg-cookbook,提 issue 和示例
- 邮箱 — [email protected]
- 反馈 — 有问题/想要的功能去 /dashboard/feedback 留言