Skip to content

Waveform

Video Single output Transform

Video waveform monitor.

FFmpeg filter: waveform — the official reference.

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

$node = $video->addFilter(new Waveform(…));
$result = $node->outputs()[0];

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

$result = $video->apply(new Waveform(…));

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
modeWaveformModecolumnrow, columnset mode
intensityfloat0.040–1set intensity
mirrorbooltrue—set mirroring
displayWaveformDisplaystackoverlay, stack, paradeset display mode
componentsint11–15set components to display
envelopeWaveformEnvelopenonenone, instant, peak, peak+instantset envelope to display
filterWaveformFilterlowpasslowpass, flat, aflat, chroma, color, acolor, xflat, yflatset filter
graticuleWaveformGraticulenonenone, green, orange, invertset graticule
opacityfloat0.750–1set graticule opacity
flagsint|string1—set graticule flags
scaleWaveformScaledigitaldigital, millivolts, ireset scale
bgopacityfloat0.750–1set background opacity
tint0float0-1–1set 1st tint
tint1float0-1–1set 2nd tint
fitmodeWaveformFitmodenonenone, sizeset fit mode
inputWaveformInputfirstall, firstset input formats selection

FFmpeg also names these options (use the parameter shown above): m → mode, i → intensity, r → mirror, d → display, c → components, e → envelope, f → filter, g → graticule, o → opacity, fl → flags, s → scale, b → bgopacity, t0 → tint0, t1 → tint1, fm → fitmode.


Maps to FFmpeg’s waveform 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.