Skip to content

Silenceremove

Audio Single output Transform

Remove silence.

FFmpeg filter: silenceremove — 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 Silenceremove(…));
$result = $node->outputs()[0];

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

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

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
start_periodsint00–9000set periods of silence parts to skip from start
start_durationint0≥ 0set start duration of non-silence part
start_thresholdfloat0≥ 0set threshold for start silence detection
start_silenceint0≥ 0set start duration of silence part to keep
start_modeSilenceremoveModeanyany, allset which channel will trigger trimming from start
stop_periodsint0-9000–9000set periods of silence parts to skip from end
stop_durationint0≥ 0set stop duration of silence part
stop_thresholdfloat0≥ 0set threshold for stop silence detection
stop_silenceint0≥ 0set stop duration of silence part to keep
stop_modeSilenceremoveModeallany, allset which channel will trigger trimming from end
detectionSilenceremoveDetectionrmsavg, rms, peak, median, ptp, devset how silence is detected
windowint200000–100000000set duration of window for silence detection
timestampSilenceremoveTimestampwritewrite, copyset how every output frame timestamp is processed

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