- Integrations
- n8n
n8n
Run FFmpeg jobs in n8n workflows with the Very Good FFmpeg community node.
Use the Very Good FFmpeg n8n node to run FFmpeg jobs, upload files, and receive job completion events in n8n workflows.
Setup
The node currently requires a self-hosted n8n instance. It has been submitted for n8n verification and will be available to n8n Cloud users once approved.
- Create an API key in the Very Good FFmpeg dashboard.
- In n8n, go to Settings > Community Nodes > Install and enter
@verygoodffmpeg/n8n-nodes-verygoodffmpeg. - Add a Very Good FFmpeg API credential and paste your API key. Leave Base URL empty.
If Community Nodes is missing from settings, your instance has community nodes disabled.
Set the N8N_COMMUNITY_PACKAGES_ENABLED environment variable to true (it is on by default).
Operations
The Very Good FFmpeg node provides:
- Job > Run: submit an FFmpeg job with named input URLs, output filenames, and FFmpeg command lines.
- Job > Get: fetch one job by ID, including status and output file URLs.
- Job > List: list recent jobs with limit and offset paging.
- Job > Cancel: cancel a queued or running job.
- File > Upload: upload binary data from the workflow and get back a URL usable as a job input.
The Very Good FFmpeg Trigger node is a webhook trigger that fires when a job finishes.
Example: trim a video to 5 seconds
- Add a Very Good FFmpeg node, Job > Run:
- Input Files: key
input, URLhttps://storage.verygoodffmpeg.com/sample.mp4 - Output Files:
output.mp4 - FFmpeg Commands:
-i {{input}} -t 5 {{output.mp4}} - Wait for Completion: on (fine for short jobs)
- Input Files: key
- Execute. The output item contains
status: "succeeded"andoutput_files["output.mp4"], a download URL for the result.
Reference inputs and outputs in commands by their placeholder names in double braces. Multiple commands run in order in the same workspace.
Long jobs without blocking
n8n executions time out on long transcodes, so run anything substantial asynchronously:
- Add a Very Good FFmpeg Trigger to a workflow and copy its production webhook URL.
- In Job > Run, paste that URL into Webhook URL and leave Wait for Completion off.
- The run node returns immediately with the queued job. When the job completes, the trigger workflow receives the full job object, including output URLs.
Working with binary data
Files already in your workflow (from HTTP Request, Google Drive, etc.) can be sent through
File > Upload. It uploads the item's binary property to temporary storage and returns a
download_url to use as a Job > Run input.
Use with AI Agents and MCP
Both nodes are marked usableAsTool. Attach the Very Good FFmpeg node to an AI Agent
node as a tool, or expose it to external MCP clients via n8n's MCP Server Trigger. Each
operation surfaces as a callable tool.
Errors
API failures surface as standard n8n node errors with the HTTP status and the API's message
(e.g. 402: Add credit before submitting another job). Use n8n's On Error node settings
for retry and continue behavior.