
Video APIs that deliver output to your own bucket
Compare 13 video processing APIs on delivering output to a bucket you own. Three can write to S3 through an IAM role, and five document no delivery at all.
The Rendobar Blog
Engineering deep dives and developer guides on processing video at scale. How the Rendobar API works under the hood, FFmpeg techniques you can run today, and the stack that keeps it fast.

Compare 13 video processing APIs on delivering output to a bucket you own. Three can write to S3 through an IAM role, and five document no delivery at all.
Send job outputs to an S3 bucket through an IAM role instead of an access key. In our test the role connected 32 seconds after its stack started.
Run FFmpeg, compression and captions on n8n Cloud with the verified Rendobar node, installed from the nodes panel, with long jobs parked instead of polled.
Read why an S3 presigned URL stops working before its expiry time. Signed with a 1-hour expiry by a 15-minute role session, ours failed once the session ended.
Generate a thumbnail for every video that lands in S3. Our test clip's first frame was almost black, and a 320 px JPEG of a later frame came to 5,970 bytes.
Process video stored in S3 past Lambda's 900-second limit. One FFmpeg job on our API ran for 1,002 seconds end to end and billed $1.02 for the run.
Send FFmpeg output to an S3 bucket three ways. A pipe-safe fragmented MP4 came out 240 bytes smaller than the default MP4 on the same measured encode.
Run transcodes, captions and image generation from an Activepieces flow. A long job parks on a waitpoint instead of holding a worker open while it runs.
Find out what happens when a video API cannot find your font. 30 of 46 production jobs asked for a typeface that was not installed and were billed anyway.
Compare Opus, AAC, MP3 and FLAC on one file. Opus at 64k beat AAC at 128k on size, and one codec missed its own nominal bitrate by 16 percent.
Compare H.264, HEVC and AV1 held to an identical byte budget and scored with VMAF. AV1 delivered 84.8 against H.264's 64.3 for the same 146 KB.
Compare four video codecs measured on one file, with encode times, output sizes and cost. SVT-AV1 beat VP9 on every axis, which settles a common argument.
Compare AVIF, WebP, JPEG and PNG encoded from one identical frame. AVIF came out 43 percent smaller than JPEG and 45 percent smaller than WebP.
Convert a size target into encoder settings, measured over 120 jobs and 667 probe encodes. Median compression was only 1.41x and 20 jobs refused to encode.
See what happens when a compression job decides re-encoding would make the file bigger. Three of seventeen cases passed the original through untouched.
Compare constant quality against target bitrate in FFmpeg. ABR overshot its own target by 10 percent, and CRF with a VBV cap produced the smallest file.
Compare 6 FFmpeg API services on billing unit and real cost, normalised against 1,770 billed jobs that came to $14.16 across five months of production use.
Render SRT or ASS captions permanently into the picture with FFmpeg, including the escaping rule that broke all 8 raw subtitle attempts in our job archive.
Compare FFmpeg CRF from 18 to 32 on one file. Every 3 points of CRF removed about a fifth of the bytes, and the encode time barely moved at all.
Compare every FFmpeg encoding setting that changes output size, measured on one file: preset, CRF, tune, keyframe interval, pixel format, threads and scaler.
Read the failure distribution from 208 failed video jobs. More died on an unreachable input URL than on a bad FFmpeg command, and one message caused 25 of them.
Compare FFmpeg keyframe intervals from every frame to 250. A 1-second GOP cost 35 percent more bytes than the default, and it barely changed encode time.
Compare FFmpeg scaling algorithms on the same downscale. Encode time varied by under 3 percent while output size varied by 66 percent, so the flag is free.
Compare FFmpeg thread counts from 1 to 8, five runs each. Eight threads gave a 3x speedup rather than 8x, and pinning threads made the benchmark reproducible.
Compare all seven x264 -tune values on one clip. zerolatency produced 2.2x the bytes and fastdecode 1.7x, which is not what a performance flag implies.
Add an image or text watermark to a video, with copyable corner positions and why 21 of 40 overlay jobs in our archive failed outright.
Compare 25 ffprobe command shapes on median run time and billed cost, measured across 213 real probe jobs run on production infrastructure.
Probe an uploaded file to confirm it is real media before you pay to encode it. Measured on 213 jobs, including 3 named .mp4 that were not video at all.
Read a video's duration with ffprobe when three fields disagree. Measured across 200 probe jobs, showing which field to trust and where the gap hits 493 ms.
Compare 6 free FFmpeg API tiers on what they let you run before payment, including runtime ceilings, card checks, and which one watermarks your output.
Read what happens when one FFmpeg command runs ten times. Output was byte-identical, encode time varied 2.13x, and one of our own claims did not survive.
Build an n8n AI Agent that transcodes video, reads its own job logs, and checks its balance before spending credits, with no glue code to write.
Compare NVENC hardware encoding against libx264 on the same clip. The GPU job cost far less and produced a file twice the size, which is the real trade.
Compare SVT-AV1 speed presets 4 to 12, three runs each. Preset 12 was both faster and smaller than preset 10, so one rung of the dial is strictly dominated.
Compare every rung of a 1080p to 240p transcode ladder. The top rung cost more than the other four combined, and on a 720p source it adds nothing.
Compare AV1, HEVC, VP9 and H.264 on size, speed, cost and VMAF quality, measured on one file. AV1 delivered 20 more VMAF points at an identical byte budget.
Compare video processing tools across 4 categories, from $0.0025 per FFmpeg job to $0.0075 per normalized minute on AWS MediaConvert, and pick by shape first.
Read the real latency breakdown from 1,770 completed jobs. The encode ran a median 861 ms while waiting to start took 3,626 ms, which is 57% of total time.
Compare all nine x264 presets on one file with real encode times and output sizes. The slower presets are not monotonically smaller, and one is backwards.
Compare chroma subsampling in FFmpeg. yuv420p was the smallest and the fastest, and the higher formats cost up to 65 percent more encode time for nothing.
Read the measured numbers behind FFmpeg on Vercel. The binary is 76 MB against a 250 MB cap, and the 4.5 MB body limit is what actually stops you.
Read a media file's metadata with ffprobe, then watch the traps: rotation, HDR, fake image durations, missing channel layouts, and cover art as video.
Compare 8 FFmpeg APIs on raw command support, billing unit, free tier and agent access, with entry plans from $12 to $49 verified in September 2026.
Read why ffmpeg.wasm can't run in a standard Cloudflare Worker. workerd blocks runtime WASM compilation, and the 31 MB core barely survives gzip.