Skip to content

Aiir

Audio Multiple outputs Transform

Apply Infinite Impulse Response filter with supplied coefficients.

FFmpeg filter: aiir — 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():

$outputs = $audio->addFilter(new Aiir())->outputs(); // one stream per output pad

Shorthand. Not available — apply() returns a single stream, and Aiir has multiple outputs. Use addFilter() + outputs() above.

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
zerosstring1+0i 1-0iset B/numerator/zeros/reflection coefficients
polesstring1+0i 1-0iset A/denominator/poles/ladder coefficients
gainsstring1|1set channels gains
dryfloat101set dry gain
wetfloat101set wet gain
formatAiirFormatzpll, sf, tf, zp, pr, pd, spset coefficients format
processAiirProcesssd, s, pset kind of processing
precisionAiirPrecisiondbldbl, flt, i32, i16set filtering precision
normalizebooltruenormalize coefficients
mixfloat101set mix
responseboolfalseshow IR frequency response
channelint001024set IR channel to display frequency response
sizestringhd720set video size
ratestring25set video rate

FFmpeg also names these options (use the parameter shown above): zzeros, ppoles, kgains, fformat, rprocess, eprecision, nnormalize.


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