Cadmus adds a notification icon to your shell which allows you to easily select a microphone as a source, and subsequently creates a PulseAudio output which removes all recorded background noise (typing, ambient noise, etc).
Whilst software exists on Windows & MacOS (Krisp, RTX Voice, etc) to remove background noise from recorded audio in real-time, no user-friendly solution seemed to exist on Linux.
Cadmus was written to address this shortcoming, allowing users to remove background noise from audio in Discord/Zoom/Skype/Slack/etc calls without having to use the commandline. It is primarily a GUI frontend for @werman’sย PulseAudio Noise Suppression Plugin.
When you run Cadmus noise cancellation on your Linux system, you’ll see a new notification icon showing a microphone in your chosen shell. On click, you’ll be able to select the microphone whose noise you wish to suppress. Cadmus will then set the default PulseAudio microphone to use the virtual denoised output of the chosen microphone.
Note that if you’re currently recording audio, you’ll have to stop recording and start again in order for changes to occur – streams which are currently being recorded will not be hot-swapped to the new input.
Cadmus has been tested on Arch Linux, Debian, and Ubuntu. It should work with all flavors of Linux with PulseAudio installed – but if you find a bug, please do report it on the GitHub issue tracker. It’s still relatively early in development & hasn’t been tested extensively.
Those interested in learning more about Cadmus can visit the projectโs GitHub page.