Skip to content

Overlay

Video Single output Transform

Overlay a video source on top of the input.

FFmpeg filter: overlay — the official reference.

Add it to a graph. The explicit form works for every filter — bind it to its inputs and read the result from outputs():

$node = $video->addFilter(new Overlay(), [$other]);
$result = $node->outputs()[0];

Shorthand. Single-output filters can skip the node — apply() returns the result stream directly:

$result = $video->apply(new Overlay(), $other);

TODO — when this filter shines: what it’s the right tool for, what to reach for instead when it isn’t, and how it composes with neighbouring filters.

TODO — prose: how the filter actually works and what its key parameters mean (the explanation FFmpeg’s terse option help omits).

TODO — runnable PHP, with the equivalent ffmpeg CLI alongside.

TODO

TODO

ParameterTypeDefaultRange / valuesDescription
xint|float|string0expressionset the x expression
yint|float|string0expressionset the y expression
eof_actionOverlayEofActionrepeatrepeat, endall, passAction to take when encountering EOF from secondary input
evalOverlayEvalframeinit, framespecify when to evaluate expressions
shortestboolfalseforce termination when the shortest input terminates
formatOverlayFormatyuv420yuv420, yuv420p10, yuv422, yuv422p10, yuv444, yuv444p10, rgb, gbrp, …set output format
repeatlastbooltruerepeat overlay of the last overlay frame
alphaOverlayAlphaFormatstraightstraight, premultipliedalpha format

Maps to FFmpeg’s overlay filter. Verified against ffmpeg n7.1.1.

An Artisan Build project.

Built on FFmpeg — an independent binding, not affiliated with or endorsed by the FFmpeg project. Support FFmpeg.