Get alerts when you are too loud.
This app monitors the microphone input on your computer and plays a "SHHH!" sound when you exceed a certain decibel threshold.
Download the binary for your platform and add it to your PATH:
OR, if you have the Rust toolchain installed:
cargo install shhhCalibrate for your microphone and environment:
shhh calibrateThen just run it:
shhhGenerate a commented config file:
shhh initSelect a specific input device:
shhh devicesSettings can be passed as CLI flags, environment variables, or in a config file. CLI flags take precedence over env vars, which take precedence over the config file.
Config file locations:
- Linux:
~/.config/shhh/shhh.toml - macOS:
~/Library/Application Support/shhh/shhh.toml - Windows:
C:\Users\<User>\AppData\Roaming\shhh\shhh.toml
Run shhh --help for all available options.
| Setting | Flag | Env Var | Default | Description |
|---|---|---|---|---|
alert_frequency |
-f |
SHHH_ALERT_FREQUENCY |
1 | Time between alerts (seconds) |
decibel_threshold |
-t |
SHHH_DECIBEL_THRESHOLD |
-35.0 | dB threshold for an alert |
sensitivity |
-s |
SHHH_SENSITIVITY |
0.8 | 0 = sustained loudness, 1 = spikes |
notify |
-n |
SHHH_NOTIFY |
true | Enable system notifications |
verbose |
-v |
SHHH_VERBOSE |
0 | Verbosity level |
device |
-d |
SHHH_DEVICE |
Input device (substring match) | |
alert |
-a |
SHHH_ALERT |
Custom alert sound (WAV, FLAC, OGG, MP3) |
Audio on Linux currently goes through ALSA, which works for most setups via PulseAudio/PipeWire compatibility layers. Device names may appear as raw ALSA identifiers. Native PipeWire and PulseAudio support is coming in an upcoming release of cpal, which will bring cleaner device names and better integration.
MIT.