video filter

The FFmpeg tile filter

Lays consecutive frames out in a grid, the contact-sheet filter.

3 of 3 variants measured Measured 2026-08-20

The part that catches people

tile consumes frames to fill the grid, so a 3x3 tile from a video that has fewer than nine frames after your select expression outputs nothing at all rather than a partial sheet. Feed it more frames than the grid needs.

Measured, not described

Every row below is a real job. The same 1280x720 five-second H.264 source went through each variant, so the numbers are comparable to each other and to every other filter page on this site. Encode time is the FFmpeg step on its own, separated from the download and the upload.

VariantEncodeOutputCost
2x2 sheet243 ms92.1 KB · 640x360$0.0015
3x3 sheet253 ms100.3 KB · 720x408$0.0017
Filmstrip233 ms85.9 KB · 800x112$0.0017

The exact commands

2x2 sheet

job_a72ef018f8ef4737

Sample, shrink, then tile.

ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -vf "select='not(mod(n\,30))',scale=320:-2,tile=2x2" -t 5 out.mp4

3x3 sheet

job_09600710d3de4cea

Denser sampling for a bigger grid.

ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -vf "select='not(mod(n\,15))',scale=240:-2,tile=3x3" -t 5 out.mp4

Filmstrip

job_1e63c61af424442d

Single row, the timeline-strip shape.

ffmpeg -i https://cdn.rendobar.com/assets/examples/sample.mp4 -vf "select='not(mod(n\,30))',scale=200:-2,tile=4x1" -t 5 out.mp4

How these numbers were produced

Each variant was submitted to the Rendobar API as an ffmpeg job against the same public source file, and the response was recorded verbatim. Encode time is the API's own per-step timing for the FFmpeg step. Output size is the byte count of the file the job produced. Cost is what the job was actually billed.

Nothing here was estimated, and the whole set is re-runnable, so if a figure looks wrong it can be checked rather than argued about. The 72 variants behind this filter reference cost $0.193082 in total to measure.

Frequently asked questions

What does the FFmpeg tile filter do?

Lays consecutive frames out in a grid, the contact-sheet filter.

What is the most common mistake with tile?

tile consumes frames to fill the grid, so a 3x3 tile from a video that has fewer than nine frames after your select expression outputs nothing at all rather than a partial sheet. Feed it more frames than the grid needs.

How long does tile take to run?

On a 1280x720 five-second H.264 source, the fastest variant on this page (Filmstrip) spent 233 ms inside FFmpeg. That figure is the encode step alone, measured separately from the download and the upload, so it is the filter's own cost rather than the round trip.

Do I need FFmpeg installed to use tile?

Not with Rendobar. Every command on this page ran through the Rendobar API against a URL, with no local FFmpeg install and no server. The job id next to each row is the real job that produced the numbers.

Run tile without installing FFmpeg

Every command on this page ran through the API against a URL. No binary, no server.