Serverless FFmpeg

FFmpeg API

An FFmpeg API runs FFmpeg commands on cloud servers instead of your own machine. Rendobar's runs your exact command and returns the output URL on a webhook. The FFmpeg you already write, running from runtimes that can't spawn it. No presets, no wrappers, no servers to scale.

$5 in free credits. No credit card required.

POST /jobs Bearer rb_••••
"type": "ffmpeg",
"params":
"command": "ffmpeg -i in.mp4 -c:v libx264 out.mp4"
200 OK 8.1s · $0.004
"id": "job_8f3a",
"status": "complete",
"output":
"file": "url": "cdn.rendobar.com/jobs/8f3a/out.mp4"

Run FFmpeg where you can't install FFmpeg

Vercel AWS Lambda Cloudflare Supabase Netlify Next.js

Usage

POST a command, get the output

import { createClient } from "@rendobar/sdk";
const rb = createClient({ apiKey: process.env.RENDOBAR_API_KEY });
const job = await rb.jobs.create({
type: "ffmpeg",
params: {
command: "ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -c:v libx264 -crf 23 out.mp4",
},
});
const result = await rb.jobs.wait(job.id);
console.log(result.output); // { data, file, files, expiresAt }
Idle | ffmpeg simulated
Console
$ Press Run example to stream logs
Output
Run the example to see output

Simulated run with an example asset. Run real jobs in the playground.

Serverless

Your runtime can't run FFmpeg

Edge and serverless functions can't ship a system binary or spawn a subprocess, so FFmpeg won't run there. Even ffmpeg.wasm can't run inside a Cloudflare Worker. Offload the command to Rendobar and the same call works from any runtime.

Netlify, Node, Deno, and any other runtime follow the same pattern.

Capabilities

What you can do with the FFmpeg API

Rendobar's FFmpeg API is FFmpeg as a service. Each operation below is one command sent to POST /jobs. No preset menu, no per-feature pricing. See the FFmpeg guide for the full reference.

Convert & transcode

  • Convert MOV to MP4, WebM, or MKV
  • Transcode to H.264, H.265, VP9, or AV1
  • Compress a video and reduce file size
  • Resize, scale, or change resolution
  • Change the frame rate (fps)
  • Remux containers without re-encoding

Trim, merge & edit

  • Trim, cut, or clip by timestamp
  • Merge or concatenate multiple videos
  • Crop, pad, rotate, or flip
  • Speed up, slow down, or reverse
  • Add a watermark or image overlay

Audio

  • Extract audio from video to MP3
  • Remove, mute, or replace the audio track
  • Normalize loudness (EBU R128)
  • Convert between MP3, AAC, WAV, and Opus
  • Mix or merge audio tracks

Thumbnails & images

  • Generate a thumbnail or screenshot
  • Build a sprite sheet or thumbnail grid
  • Convert a video to an animated GIF
  • Extract frames as JPEG or PNG
  • Turn images into a video or slideshow

Subtitles & captions

  • Burn subtitles into the video
  • Convert SRT to VTT and back
  • Add text or captions with drawtext

Streaming & metadata

  • Package for HLS or DASH streaming
  • Web-optimize MP4 with faststart
  • Read metadata and codecs with ffprobe

Common codecs

H.264H.265 / HEVCVP9VP8AV1ProResAACMP3OpusVorbisFLACPCM

Common formats

MP4WebMMOVMKVAVIGIFMPEG-TSFLVMP3WAVFLACOGGJPEG / PNGWebP

These are the common ones. Anything else the latest FFmpeg can encode or decode works too. You run the real binary, not a limited subset.

GPU acceleration

Encode on GPU with NVENC

Rendobar's FFmpeg API runs your commands on CPU-powered or GPU-powered machines. The hardware encoders h264_nvenc, hevc_nvenc and av1_nvenc on NVIDIA L4 GPUs encode H.264, HEVC and AV1 in dedicated hardware. There are no GPU instances to provision and no drivers to install.

Pick the hardware with the optional compute param, or leave it on auto. Auto sends any command that already uses NVENC or CUDA to a GPU, so an existing ffmpeg command needs nothing new. Billing is per second of processing.

one-line change
+ffmpeg -i in.mp4 \
--c:v libx264CPU, every plan
+-c:v h264_nvencGPU, Pro · NVIDIA L4
+-crf 23 out.mp4
Dedicated hardware encoders, several times faster than software x264.

GPU acceleration is on the Pro plan. CPU and auto run on every plan. For archival masters or the lowest bitrates, software libx264 at a slow preset still wins on quality per bit, and you keep that option.

Integrations

Trigger jobs from anywhere

Beyond a raw HTTP request: no-code automations, a typed SDK, and native MCP for AI agents.

No-code automation Via webhooks
Zapier
Make
n8n
Any HTTP client

Compare

Full FFmpeg, zero ops

Self-host FFmpeg and you own the servers, scaling, and security. Use a preset-based API and you lose raw control. Rendobar gives you both: every FFmpeg command, nothing to run.

Compared onRendobarSelf-hosted FFmpegPreset-based APIs
Run any FFmpeg command Yes Yes Presets only
Servers to run None You manage them None
Time to first job One POST Hours to days Minutes
Pay only for what runs Per compute second Servers bill 24/7 Often GB-metered
Sandboxed per job Yes, isolated Your responsibility Not exposed
Async webhooks + realtime Built in Build it yourself Varies
Native MCP for AI agents Yes No No
Zero egress on output Yes Depends on host Often charged
FFmpeg upgrades + security Managed Your job Managed
Free to start $5, no card Pay for infra Card required

Compared against the two common alternatives to a managed FFmpeg API. Comparing a specific provider? See Rendobar vs Rendi, vs Transloadit, or all comparisons. For a full breakdown, read our FFmpeg API comparison.

FAQ

Frequently asked questions

What is an FFmpeg API?

An FFmpeg API runs FFmpeg commands on a remote server instead of on your own machine. Rendobar's FFmpeg API does exactly that. You POST an FFmpeg command with input URLs, it runs them in a sandboxed cloud container, and returns the output URL on a webhook. You get the full power of FFmpeg without installing the binary or running servers.

Is the API async? How do I get the result?

Jobs are async by default. POST returns a job ID immediately. Rendobar sends a webhook to your URL on completion. You can also poll GET /jobs/{id} or subscribe via the realtime SDK.

How much does the FFmpeg API cost?

Jobs are billed by compute time at $0.05 per minute, usually a few cents each. Every account starts with $5 in free credits, no card required. Pro is $9/month for higher limits and longer timeouts. At low to medium volume this beats self-hosting FFmpeg, where idle servers bill 24/7 even when no job is running.

How long can a single job run?

Free tier jobs run up to 5 minutes. Pro plan ($9/month) raises that to 15 minutes. For renders longer than 15 minutes, contact us about higher limits.

Can I run FFmpeg on Cloudflare Workers, Vercel, or AWS Lambda?

Not natively. Those runtimes can't ship the FFmpeg binary or spawn a subprocess, and Cloudflare Workers can't run ffmpeg.wasm because the core exceeds the 10 MB bundle limit. Instead you call Rendobar's FFmpeg API over HTTP from any of them, and the command runs in a sandboxed container. You pass public or presigned input URLs directly in the command. See the Vercel, Cloudflare, and Supabase guides for setup.

Is there a file size limit?

Free tier accepts inputs up to 500 MB. Pro stores assets up to 10 GB and processes up to 8 GB in a single job. Contact us for higher limits.

How long are output files stored?

Outputs stay available for 7 days on the free tier and 30 days on Pro. Download or copy them to your own storage before they expire.

What FFmpeg version and codecs are supported?

You run the latest FFmpeg build, not a limited subset. That covers H.264, H.265 / HEVC, VP9, AV1, ProRes, AAC, Opus, and every other codec and filter the binary ships with.

Does the FFmpeg API support GPU encoding (NVENC)?

Yes. Rendobar's FFmpeg API runs h264_nvenc, hevc_nvenc, and av1_nvenc on NVIDIA L4 GPUs, billed per second. Add a compute param to pick the hardware. It defaults to auto, so an NVENC or CUDA command routes to a GPU on its own. GPU acceleration is available on the Pro plan. CPU and auto work on every plan.

Do you charge for failed jobs?

Yes, because the infrastructure ran. If a failure was caused by our infrastructure or a third-party outage, contact support for a discretionary refund.

How is this different from AWS MediaConvert or Coconut?

MediaConvert and Coconut are preset-driven. You pick a preset, they encode. Rendobar runs the FFmpeg command you write. Anything FFmpeg can do, the API can do, including filter graphs that presets cannot express.

Your command. Our infrastructure.

You write the FFmpeg command. We run it on powerful, scalable infrastructure that handles anything from a single clip to your entire pipeline. No servers to provision, patch, or scale.