silan(1) Soundfile Silence Analyzer


silan [ OPTIONS ] <file-name>


silan - Audiofile Silence Analyzer.


-h, --help
display this help and exit
-b, --bounds
skip silence mid file. print start/end boundaries only.
-B, --fastbounds
same as -b, except the sound-off is detected by decoding backwards from the end. This is much faster but also inacurate.
-f, --format <format>
specify output format (default: 'txt')
-F, --filter <float>
high-pass filter coefficient (default:0.98) disable: 1.0; range 0 < val <= 1.0
-o, --output <filename>
write data to file instead of stdout
-p, --progress
show progress info on stderr
-q, --quiet
inhibit error messages
-s, --threshold <float>
RMS signal threshold (default 0.001 ^= -60dB) postfix with 'd' to specify decibels
-t, --holdoff <float>
holdoff time in seconds (default 0.5)
-u, --unit <unit>
specify output unit (default: 'seconds')
-v, --verbose
increase debug-level (can be used multiple times)
-V, --version
print version information and exit

This application reads a single audio file and analyzes it for silent periods. Timestamps/ranges of silence are printed to standard output.

Valid output formats are: txt, JSON, audacity (label file)

Valid output units are: samples, seconds (audacity format uses seconds regardless).

Sound is detected if the signal level exceeds a given threshold for a duration of at least <holdoff> time. Note that the returned timestamps are corrected for the holdoff-time.

The fast boundary scan can decrease the time it takes to analyze a file at the cost of accuracy. Use --fastbounds with care. Due to low-pass filtering and RMS calculation the results will be different (+- .1 sec), furthermore some codecs are not suitable for backwards decoding or sample-accurate seeking and may skew the timestamp by one second or more. The fast boundary scan mode requires a seekable file and does not work with streams.


Report bugs to Robin Gareus <[email protected]>
Website and manual: <>


Copyright © GPL 2012 Robin Gareus <[email protected]>