Skip to content

Highpass

Audio Single output Transform

Apply a high-pass filter with 3dB point frequency.

FFmpeg filter: highpass — 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 = $audio->addFilter(new Highpass(…));
$result = $node->outputs()[0];

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

$result = $audio->apply(new Highpass(…));

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
frequencyfloat30000–999999set frequency
width_typeHighpassWidthTypeqh, q, o, s, kset filter-width type
widthfloat0.7070–99999set width
polesint21–2set number of poles
mixfloat10–1set mix
channelsstringall—set channels to filter
normalizeboolfalse—normalize coefficients
transformHighpassTransformTypedidi, dii, tdi, tdii, latt, svf, zdfset transform type
precisionHighpassPrecisionautoauto, s16, s32, f32, f64set filtering precision
blocksizeint00–32768set the block size

FFmpeg also names these options (use the parameter shown above): f → frequency, t → width_type, w → width, p → poles, m → mix, c → channels, n → normalize, a → transform, r → precision, b → blocksize.


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