Very Good FFmpeg
How it worksPricingDocsBlog
Documentation
API Reference
Documentation
Documentation
Getting Started
Fundamentals
Advanced Topics
Integrations

Getting Started

How to get started with Very Good FFmpeg.

What is Very Good FFmpeg?

Very Good FFmpeg runs FFmpeg commands behind an API. Send input URLs, output names, and command strings. The API queues the job and returns URLs for the files you create.

Quickstart

Before you start, get an API key from verygoodffmpeg.com.

This flow uses a public input URL. For local files, use Temporary Files.

Submit a job

POST /ffmpeg
POST /api/ffmpeg HTTP/1.1
Authorization: Bearer REPLACE_BEARER_TOKEN
Content-Type: application/json
Host: verygoodffmpeg.com

{
  "input_files": {
    "input.mp4": "https://storage.verygoodffmpeg.com/sample.mp4"
  },
  "output_files": [
    "output.mp4"
  ],
  "ffmpeg_commands": [
    "-i {{input.mp4}} -t 5 {{output.mp4}}"
  ],
  "webhook_url": "https://example.com/webhooks/ffmpeg",
  "machine": "cpu",
  "timeout_seconds": 300
}

Check the result

GET /jobs/{id}
GET /api/jobs/{id} HTTP/1.1
Authorization: Bearer REPLACE_BEARER_TOKEN
Host: verygoodffmpeg.com

What Next?

  • Need to upload local files? If your media isn't hosted on a public URL, see the Temporary Files guide.
  • Running complex pipelines? Learn how to run multiple commands sequentially on the same machine using Command Chaining.
  • Want to use GPUs? See the Hardware Selection guide for routing jobs to NVIDIA workers.
  • Building asynchronous workflows? Read about Webhooks to receive notifications when jobs complete.
  • Want official SDKs or MCP? See Integrations for TypeScript, Python, and MCP setup.
The Basics

Authentication, running commands, and API limits.

Advanced Topics

Chaining, GPU workers, temporary files, and webhooks.

Integrations

Official SDKs and remote MCP setup.

Fundamentals

Core concepts for working with the Very Good FFmpeg API.

On this page

What is Very Good FFmpeg?QuickstartSubmit a jobCheck the resultWhat Next?