raw.ffmpeg job type lets you execute arbitrary FFmpeg commands through the Rendobar API. This gives you full FFmpeg power while Rendobar handles file transfer, execution isolation, timeout enforcement, and output upload.
Raw FFmpeg is available on Starter plans and above.
How it works
You provide the input file URLs and the FFmpeg command string. Rendobar handles everything else.
Submitting a raw FFmpeg job
Input references
Use{0}, {1}, {2}, etc. to reference input files by their position in the files array. Use {output} for the output file path.
The executor replaces these placeholders with actual local file paths before running the command. You never handle file paths directly.
Allowed flags
Only whitelisted FFmpeg flags are permitted. Any flag not on this list causes the job to be rejected with a validation error.| Flag | Purpose |
|---|---|
-i | Input file |
-f | Force format |
-c:v | Video codec |
-c:a | Audio codec |
-vf | Video filter |
-af | Audio filter |
-filter_complex | Complex filter graph |
-map | Stream mapping |
-ss | Seek position |
-t | Duration |
-r | Frame rate |
-s | Resolution |
-b:v | Video bitrate |
-b:a | Audio bitrate |
-crf | Constant rate factor |
-preset | Encoding preset |
-an | Disable audio |
-vn | Disable video |
-y | Overwrite output |
-movflags | MOV/MP4 flags |
Blocked flags
The following flags are explicitly blocked because they enable network access or other unsafe behavior:| Flag | Reason |
|---|---|
-protocol_whitelist | Could enable network protocols |
-re | Real-time streaming |
-listen | Opens a listening socket |
-rtmp_live | RTMP streaming |
-http_proxy | HTTP proxy access |
-ftp_proxy | FTP proxy access |
Security model
Rendobar applies multiple security layers to raw FFmpeg jobs:- Flag whitelist. Only known-safe flags are permitted.
- Network isolation. Blocked flags prevent any network access from within the FFmpeg process.
- Input substitution. You provide R2 keys or public URLs. The executor downloads files and substitutes local paths, so FFmpeg only accesses local files.
- Output sandboxing. The output path is forced to a sandboxed directory. FFmpeg cannot write to arbitrary file system locations.
- Timeout enforcement. Each plan has a maximum job timeout. The FFmpeg process is killed if it exceeds this limit.
- Container isolation. The execution environment runs in an isolated Trigger.dev container with no access to other jobs or system resources.
Cost
Raw FFmpeg jobs cost $1.00 per 2 minutes of compute time. Compute time is measured from when FFmpeg starts to when it finishes, not including file transfer time. For example, a command that takes 3 minutes of FFmpeg execution time costs $1.50.Timeout limits
Maximum job timeout varies by plan:| Plan | Max timeout |
|---|---|
| Starter | 5 minutes |
| Pro | 15 minutes |
| Scale | 30 minutes |
PROVIDER_TIMEOUT error and no credits are deducted.
Examples
Scale a video to 720p
Extract audio from video
Trim a video (30 seconds starting at 1 minute)
Merge video and audio tracks
Error handling
If FFmpeg exits with a non-zero status code, the job fails with aPROVIDER_ERROR:
Job Types
Simplified alternatives to raw FFmpeg
Credits
Billing and cost details
Webhooks
Push-based job status updates
Authentication
API key setup